🚀 HPLT MT 发布 v1.0
本仓库包含仅使用 HPLT 数据训练的阿拉伯语 - 英语翻译模型。该模型同时提供 Marian 和 Hugging Face 两种格式。
🚀 快速开始
本项目提供了一个阿拉伯语 - 英语的翻译模型,支持 Marian 和 Hugging Face 两种格式。在使用时,考虑到质量因素,建议使用 HPLT/translate-ar-en-v1.0-hplt_opus 而非本模型。
✨ 主要特性
- 多格式支持:模型同时提供 Marian 和 Hugging Face 格式,方便不同场景使用。
- 数据纯净:仅使用 HPLT 数据进行训练,并使用 OpusCleaner 进行数据清洗。
📦 安装指南
使用 Marian
若要使用 MarianNMT 进行推理,请参考我们 GitHub 仓库的 推理/解码/翻译 部分。你需要从本仓库获取模型文件 model.npz.best-chrf.npz
和词汇文件 model.ar-en.spm
。
使用 transformers
我们已将该模型转换为 Hugging Face 格式,你可以使用以下脚本开始使用。由于权重转换存在 已知问题,该检查点无法在 transformer 版本 <4.26 或 >4.30 下工作。我们测试并建议使用 pip install transformers==4.28
。
💻 使用示例
基础用法
from transformers import AutoTokenizer, AutoModelForSeq2SeqLM
tokenizer = AutoTokenizer.from_pretrained("HPLT/translate-ar-en-v1.0-hplt")
model = AutoModelForSeq2SeqLM.from_pretrained("HPLT/translate-ar-en-v1.0-hplt")
inputs = ["Input goes here.", "Make sure the language is right."]
batch_tokenized = tokenizer(inputs, return_tensors="pt", padding=True)
model_output = model.generate(
**batch_tokenized, num_beams=6, max_new_tokens=512
)
batch_detokenized = tokenizer.batch_decode(
model_output,
skip_special_tokens=True,
)
print(batch_detokenized)
📚 详细文档
模型信息
属性 |
详情 |
源语言 |
阿拉伯语 |
目标语言 |
英语 |
训练数据 |
仅 HPLT 数据 |
模型架构 |
Transformer-base |
分词器 |
SentencePiece (Unigram) |
数据清洗 |
使用 OpusCleaner 并遵循一组基本规则,详细信息可在 此处 的过滤文件中找到。 |
你可以查看我们的 交付报告、GitHub 仓库 和 网站 以获取更多详细信息。
基准测试
使用 Marian 进行解码时,该模型在以下测试集上的得分如下:
测试集 |
BLEU |
chrF++ |
COMET22 |
FLORES200 |
35.0 |
58.5 |
0.8396 |
NTREX |
28.6 |
54.6 |
0.8194 |
📄 许可证
本项目采用 CC BY 4.0 许可证。
致谢
本项目获得了欧盟地平线欧洲研究与创新计划(资助协议编号 101070350)以及英国研究与创新署(UKRI)根据英国政府地平线欧洲资助保障计划(资助编号 10052546)的资助。
本项目由爱丁堡大学和布拉格查理大学的研究人员共同完成,并得到了整个 HPLT 联盟的支持。
⚠️ 重要提示
考虑到质量因素,建议使用 HPLT/translate-ar-en-v1.0-hplt_opus 而非本模型。由于权重转换存在 已知问题,该检查点无法在 transformer 版本 <4.26 或 >4.30 下工作,建议使用 pip install transformers==4.28
。
💡 使用建议
在使用模型进行推理时,可参考 GitHub 仓库的 推理/解码/翻译 部分获取详细指导。