🚀 WiNGPT-Babel-2:多语言翻译语言模型
WiNGPT-Babel-2 是一款专为多语言翻译任务优化的语言模型。作为 WiNGPT-Babel 的迭代版本,它在语言覆盖范围、数据格式处理以及复杂内容翻译准确性方面都有显著提升。该模型延续了 “Human-in-the-loop” 训练策略,通过分析实际应用场景的日志数据进行迭代优化,确保在实际使用中的有效性和可靠性。

这是 WiNGPT-Babel-2 的量化版本(llama.cpp)。
示例
./llama-server -m WiNGPT-Babel-2-GGUF/WiNGPT-Babel-2-IQ4_XS.gguf --jinja --chat-template-file WiNGPT-Babel-2-GGUF/WiNGPT-Babel-2.jinja
- --jinja:此标志激活 Jinja2 聊天模板处理器。
- --chat-template-file:此标志指示服务器指向定义 WiNGPT-Babel-2 自定义提示格式的所需模板文件。
✨ 主要特性
2.0 版本核心改进
WiNGPT-Babel-2 相较于前代版本引入了以下关键技术升级:
- 扩展语言支持:通过使用
wmt24pp
数据集进行训练,语言支持扩展到了 55 种语言,主要增强了从英语(en)到其他目标语言(xx)的翻译能力。
- 增强中文翻译:专门优化了从其他源语言到中文(xx → zh)的翻译流程,提高了翻译结果的准确性和流畅性。
- 结构化数据翻译:模型现在能够识别并翻译嵌入在 结构化数据(如 JSON) 中的文本字段,同时保留原始数据结构。此功能适用于 API 国际化和多语言数据集预处理等场景。
- 混合内容处理:处理混合内容文本的能力得到提升,能够更准确地翻译包含 数学表达式(LaTeX)、代码片段和网页标记(HTML/Markdown) 的段落,同时保留这些不可翻译元素的格式和完整性。
训练方法
WiNGPT-Babel-2 的性能提升归功于持续的数据驱动迭代训练过程:
- 数据收集:从集成应用(如 Immersive Translate、Videolingo)中收集匿名的实际翻译任务日志。
- 数据精炼:使用奖励模型对收集的数据进行拒绝采样,并辅以人工审核,筛选出高质量、高价值的样本,用于构建新的训练数据集。
- 迭代再训练:使用精炼后的数据对模型进行增量训练,通过循环迭代过程不断提高其在特定领域和场景中的性能。
📦 安装指南
文档未提及安装步骤,故跳过此章节。
💻 使用示例
基础用法
为获得最佳推理性能,建议使用 vllm
等框架。以下是使用 Hugging Face transformers
库的基本使用示例:
from transformers import AutoModelForCausalLM, AutoTokenizer
model_name = "winninghealth/WiNGPT-Babel-2-AWQ"
model = AutoModelForCausalLM.from_pretrained(
model_name,
torch_dtype="auto",
device_map="auto"
)
tokenizer = AutoTokenizer.from_pretrained(model_name)
prompt_json = """{
"product_name": "High-Performance Laptop",
"features": ["Fast Processor", "Long Battery Life", "Lightweight Design"]
}"""
messages = [
{"role": "system", "content": "Translate this to Simplified Chinese Language"},
{"role": "user", "content": prompt_json}
]
text = tokenizer.apply_chat_template(
messages,
tokenize=False,
add_generation_prompt=True
)
model_inputs = tokenizer([text], return_tensors="pt").to(model.device)
generated_ids = model.generate(
**model_inputs,
max_new_tokens=4096,
temperature=0
)
generated_ids = [
output_ids[len(input_ids):] for input_ids, output_ids in zip(model_inputs.input_ids, generated_ids)
]
response = tokenizer.batch_decode(generated_ids, skip_special_tokens=True)[0]
如需更多使用演示,可参考原始 WiNGPT-Babel。
📚 详细文档
技术规格
语言支持
方向 |
描述 |
支持的语言(部分列表) |
核心支持 |
质量最高,经过广泛优化。 |
en ↔ zh |
扩展支持 |
通过 wmt24pp 数据集训练支持。 |
en → 55+ 种语言 ,包括:fr 、de 、es 、ru 、ar 、pt 、ko 、it 、nl 、tr 、pl 、sv ... |
增强中文翻译 |
专门针对翻译成中文进行优化。 |
xx → zh |
性能
模型 |
FLORES-200 xx → en |
FLORES-200 xx → zh |
WiNGPT-Babel-AWQ |
33.91 |
17.29 |
WiNGPT-Babel-2-AWQ |
36.43 |
30.74 |
注意:
- 评估指标为 spBLEU,使用 FLORES-200 分词器。
- 'xx' 代表 wmt24pp 数据集中的 52 种源语言。
🔧 技术细节
文档未提及技术实现细节,故跳过此章节。
📄 许可证
- 本项目的许可协议为 Apache License 2.0。
- 使用其模型权重时,请引用本项目:https://huggingface.co/winninghealth/WiNGPT-Babel-2。
- 遵守 gemma-2-2b、GemmaX2-28-2B-v0.1、immersive-translate、VideoLingo 的协议和许可证,详情请访问其网站。
联系我们
- 通过 WiNGPT 平台申请令牌。
- 或联系我们:wair@winning.com.cn,申请免费试用 API_KEY。