模型简介
模型特点
模型能力
使用案例
🚀 EuroLLM-1.7B-Instruct
EuroLLM-1.7B-Instruct是EuroLLM系列的首个指令微调模型,具备多语言处理能力,可理解和生成多种欧洲及其他相关语言的文本,在机器翻译等任务上表现出色。
🚀 快速开始
from transformers import AutoModelForCausalLM, AutoTokenizer
model_id = "utter-project/EuroLLM-1.7B-Instruct"
tokenizer = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained(model_id)
text = '<|im_start|>system\n<|im_end|>\n<|im_start|>user\nTranslate the following English source text to Portuguese:\nEnglish: I am a language model for european languages. \nPortuguese: <|im_end|>\n<|im_start|>assistant\n'
inputs = tokenizer(text, return_tensors="pt")
outputs = model.generate(**inputs, max_new_tokens=20)
print(tokenizer.decode(outputs[0], skip_special_tokens=True))
✨ 主要特性
- 多语言支持:支持保加利亚语、克罗地亚语、捷克语、丹麦语、荷兰语、英语、爱沙尼亚语、芬兰语、法语、德语、希腊语、匈牙利语、爱尔兰语、意大利语、拉脱维亚语、立陶宛语、马耳他语、波兰语、葡萄牙语、罗马尼亚语、斯洛伐克语、斯洛文尼亚语、西班牙语、瑞典语、阿拉伯语、加泰罗尼亚语、中文、加利西亚语、印地语、日语、韩语、挪威语、俄语、土耳其语和乌克兰语等多种语言。
- 指令微调:在EuroBlocks指令微调数据集上进行了进一步微调,专注于通用指令遵循和机器翻译。
- 高性能表现:在机器翻译和通用基准测试中,与其他模型相比具有竞争力。
📦 安装指南
文档未提及具体安装步骤,可参考transformers
库的官方文档进行安装。
💻 使用示例
基础用法
from transformers import AutoModelForCausalLM, AutoTokenizer
model_id = "utter-project/EuroLLM-1.7B-Instruct"
tokenizer = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained(model_id)
text = '<|im_start|>system\n<|im_end|>\n<|im_start|>user\nTranslate the following English source text to Portuguese:\nEnglish: I am a language model for european languages. \nPortuguese: <|im_end|>\n<|im_start|>assistant\n'
inputs = tokenizer(text, return_tensors="pt")
outputs = model.generate(**inputs, max_new_tokens=20)
print(tokenizer.decode(outputs[0], skip_special_tokens=True))
📚 详细文档
模型详情
EuroLLM项目旨在创建一套能够理解和生成所有欧盟语言以及一些其他相关语言文本的大语言模型。EuroLLM-1.7B是一个具有17亿参数的模型,在4万亿个标记上进行训练,这些标记分布在多种语言和多个数据源中,包括网络数据、平行数据(英语与其他语言互译)和高质量数据集。EuroLLM-1.7B-Instruct在EuroBlocks指令微调数据集上进行了进一步的指令微调,该数据集专注于通用指令遵循和机器翻译。
模型描述
EuroLLM使用标准的密集Transformer架构:
- 分组查询注意力(GQA):使用8个键值头,在推理时提高速度,同时保持下游任务的性能。
- 预层归一化:采用RMSNorm,提高训练稳定性且速度更快。
- SwiGLU激活函数:在下游任务中表现良好。
- 旋转位置嵌入(RoPE):在每一层都使用,在允许扩展上下文长度的同时表现出色。
预训练时,使用Marenostrum 5超级计算机的256个Nvidia H100 GPU,以恒定的3072个序列的批量大小训练模型,对应约1200万个标记,使用Adam优化器和BF16精度。以下是模型超参数的总结:
属性 | 详情 |
---|---|
序列长度 | 4096 |
层数 | 24 |
嵌入大小 | 2048 |
前馈网络隐藏大小 | 5632 |
头数 | 16 |
键值头数(GQA) | 8 |
激活函数 | SwiGLU |
位置编码 | RoPE (\Theta=10,000) |
层归一化 | RMSNorm |
绑定嵌入 | 否 |
嵌入参数 | 2.62亿 |
语言模型头参数 | 2.62亿 |
非嵌入参数 | 11.33亿 |
总参数 | 16.57亿 |
结果
机器翻译
在多个机器翻译基准测试(FLORES-200、WMT-23和WMT-24)中评估EuroLLM-1.7B-Instruct,并与Gemma-2B和Gemma-7B(也在EuroBlocks上进行了指令微调)进行比较。结果表明,EuroLLM-1.7B在机器翻译方面明显优于Gemma-2B,并且与Gemma-7B具有竞争力。
FLORES-200测试结果
模型 | AVG | AVG en-xx | AVG xx-en | en-ar | en-bg | en-ca | en-cs | en-da | en-de | en-el | en-es-latam | en-et | en-fi | en-fr | en-ga | en-gl | en-hi | en-hr | en-hu | en-it | en-ja | en-ko | en-lt | en-lv | en-mt | en-nl | en-no | en-pl | en-pt-br | en-ro | en-ru | en-sk | en-sl | en-sv | en-tr | en-uk | en-zh-cn | ar-en | bg-en | ca-en | cs-en | da-en | de-en | el-en | es-latam-en | et-en | fi-en | fr-en | ga-en | gl-en | hi-en | hr-en | hu-en | it-en | ja-en | ko-en | lt-en | lv-en | mt-en | nl-en | no-en | pl-en | pt-br-en | ro-en | ru-en | sk-en | sl-en | sv-en | tr-en | uk-en | zh-cn-en |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
EuroLLM-1.7B-Instruct | 86.89 | 86.53 | 87.25 | 85.17 | 89.42 | 84.72 | 89.13 | 89.47 | 86.90 | 87.60 | 86.29 | 88.95 | 89.40 | 87.69 | 74.89 | 86.41 | 76.92 | 84.79 | 86.78 | 88.17 | 89.76 | 87.70 | 87.27 | 87.62 | 67.84 | 87.10 | 90.00 | 88.18 | 89.29 | 89.49 | 88.32 | 88.18 | 86.85 | 90.00 | 87.31 | 87.89 | 86.60 | 86.34 | 87.45 | 87.57 | 87.95 | 89.72 | 88.80 | 87.00 | 86.77 | 88.34 | 89.09 | 88.95 | 82.69 | 87.80 | 88.37 | 86.71 | 87.20 | 87.81 | 86.79 | 86.79 | 85.62 | 86.48 | 81.10 | 86.97 | 90.25 | 85.75 | 89.20 | 88.88 | 86.00 | 87.38 | 86.76 | 89.61 | 87.94 | ||
Gemma-2B-EuroBlocks | 81.59 | 78.97 | 84.21 | 76.68 | 82.73 | 83.14 | 81.63 | 84.63 | 83.15 | 79.42 | 84.05 | 72.58 | 79.73 | 84.97 | 40.50 | 82.13 | 67.79 | 80.53 | 78.36 | 84.90 | 87.43 | 82.98 | 72.29 | 68.68 | 58.55 | 83.13 | 86.15 | 82.78 | 86.79 | 83.14 | 84.61 | 78.18 | 75.37 | 80.89 | 78.38 | 84.38 | 84.35 | 83.88 | 85.77 | 86.85 | 86.31 | 88.24 | 88.12 | 84.79 | 84.90 | 82.51 | 86.32 | 88.29 | 54.78 | 86.53 | 85.83 | 85.41 | 85.18 | 86.77 | 85.78 | 84.99 | 81.65 | 81.78 | 67.27 | 85.92 | 89.07 | 84.14 | 88.07 | 87.17 | 85.23 | 85.09 | 83.95 | 87.57 | 84.77 | ||
Gemma-7B-EuroBlocks | 85.27 | 83.90 | 86.64 | 86.38 | 87.87 | 85.74 | 84.25 | 85.69 | 81.49 | 85.52 | 86.93 | 62.83 | 84.96 | 75.34 | 84.93 | 83.91 | 86.92 | 88.19 | 86.11 | 81.73 | 80.55 | 66.85 | 85.31 | 89.36 | 85.87 | 88.62 | 88.06 | 86.67 | 84.79 | 82.71 | 86.45 | 85.19 | 86.67 | 85.77 | 86.36 | 87.21 | 88.09 | 87.17 | 89.40 | 88.26 | 86.74 | 86.73 | 87.25 | 88.87 | 88.81 | 72.45 | 87.62 | 87.86 | 87.08 | 87.01 | 87.58 | 86.92 | 86.70 | 85.10 | 85.74 | 77.81 | 86.83 | 90.40 | 85.41 | 89.04 | 88.77 | 86.13 | 86.67 | 86.32 | 89.27 | 87.92 |
WMT-23测试结果
模型 | AVG | AVG en-xx | AVG xx-en | AVG xx-xx | en-de | en-cs | en-uk | en-ru | en-zh-cn | de-en | uk-en | ru-en | zh-cn-en | cs-uk |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
EuroLLM-1.7B-Instruct | 82.91 | 83.20 | 81.77 | 86.82 | 81.56 | 85.23 | 81.30 | 82.47 | 83.61 | 85.03 | 84.06 | 85.25 | 81.31 | 78.83 |
Gemma-2B-EuroBlocks | 79.96 | 79.01 | 80.86 | 81.15 | 76.82 | 76.05 | 77.92 | 78.98 | 81.58 | 82.73 | 82.71 | 83.99 | 80.35 | 78.27 |
Gemma-7B-EuroBlocks | 82.76 | 82.26 | 82.70 | 85.98 | 81.37 | 82.42 | 81.54 | 82.18 | 82.90 | 83.17 | 84.29 | 85.70 | 82.46 | 79.73 |
WMT-24测试结果
模型 | AVG | AVG en-xx | AVG xx-xx | en-de | en-es-latam | en-cs | en-ru | en-uk | en-ja | en-zh-cn | en-hi | cs-uk | ja-zh-cn |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
EuroLLM-1.7B-Instruct | 79.32 | 79.32 | 79.34 | 79.42 | 80.67 | 80.55 | 78.65 | 80.12 | 82.96 | 80.60 | 71.59 | 83.48 | 75.20 |
Gemma-2B-EuroBlocks | 74.72 | 74.41 | 75.97 | 74.93 | 78.81 | 70.54 | 74.90 | 75.84 | 79.48 | 78.06 | 62.70 | 79.87 | 72.07 |
Gemma-7B-EuroBlocks | 78.67 | 78.34 | 80.00 | 78.88 | 80.47 | 78.55 | 78.55 | 80.12 | 80.55 | 78.90 | 70.71 | 84.33 | 75.66 |
通用基准测试
在3个通用基准测试(Arc Challenge和Hellaswag)中,将EuroLLM-1.7B与TinyLlama-v1.1和Gemma-2B进行比较。对于非英语语言,使用Okapi数据集。结果显示,EuroLLM-1.7B在Hellaswag测试中优于TinyLlama-v1.1,与Gemma-2B表现相似,但在Arc Challenge测试中表现较差,这可能是由于EuroLLM-1.7B的参数数量较少(11.33亿非嵌入参数,而TinyLlama-v1.1为19.81亿)。
Arc Challenge测试结果
模型 | 平均 | 英语 | 德语 | 西班牙语 | 法语 | 意大利语 | 葡萄牙语 | 中文 | 俄语 | 荷兰语 | 阿拉伯语 | 瑞典语 | 印地语 | 匈牙利语 | 罗马尼亚语 | 乌克兰语 | 丹麦语 | 加泰罗尼亚语 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
EuroLLM-1.7B | 0.3496 | 0.4061 | 0.3464 | 0.3684 | 0.3627 | 0.3738 | 0.3855 | 0.3521 | 0.3208 | 0.3507 | 0.3045 | 0.3605 | 0.2928 | 0.3271 | 0.3488 | 0.3516 | 0.3513 | 0.3396 |
TinyLlama-v1.1 | 0.2650 | 0.3712 | 0.2524 | 0.2795 | 0.2883 | 0.2652 | 0.2906 | 0.2410 | 0.2669 | 0.2404 | 0.2310 | 0.2687 | 0.2354 | 0.2449 | 0.2476 | 0.2524 | 0.2494 | 0.2796 |
Gemma-2B | 0.3617 | 0.4846 | 0.3755 | 0.3940 | 0.4080 | 0.3687 | 0.3872 | 0.3726 | 0.3456 | 0.3328 | 0.3122 | 0.3519 | 0.2851 | 0.3039 | 0.3590 | 0.3601 | 0.3565 | 0.3516 |
Hellaswag测试结果
模型 | 平均 | 英语 | 德语 | 西班牙语 | 法语 | 意大利语 | 葡萄牙语 | 俄语 | 荷兰语 | 阿拉伯语 | 瑞典语 | 印地语 | 匈牙利语 | 罗马尼亚语 | 乌克兰语 | 丹麦语 | 加泰罗尼亚语 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
EuroLLM-1.7B | 0.4744 | 0.4760 | 0.6057 | 0.4793 | 0.5337 | 0.5298 | 0.5085 | 0.5224 | 0.4654 | 0.4949 | 0.4104 | 0.4800 | 0.3655 | 0.4097 | 0.4606 | 0.436 | 0.4702 |
TinyLlama-v1.1 | 0.3674 | 0.6248 | 0.3650 | 0.4137 | 0.4010 | 0.3780 | 0.3892 | 0.3494 | 0.3588 | 0.2880 | 0.3561 | 0.2841 | 0.3073 | 0.3267 | 0.3349 | 0.3408 | 0.3613 |
Gemma-2B | 0.4666 | 0.7165 | 0.4756 | 0.5414 | 0.5180 | 0.4841 | 0.5081 | 0.4664 | 0.4655 | 0.3868 | 0.4383 | 0.3413 | 0.3710 | 0.4316 | 0.4291 | 0.4471 | 0.4448 |
偏差、风险和局限性
EuroLLM-1.7B-Instruct未进行人类偏好对齐,因此模型可能会生成有问题的输出(例如,幻觉内容、有害内容或虚假陈述)。
论文
论文链接:EuroLLM: Multilingual Language Models for Europe
🔧 技术细节
模型架构
EuroLLM使用标准的密集Transformer架构,采用分组查询注意力(GQA)、预层归一化(RMSNorm)、SwiGLU激活函数和旋转位置嵌入(RoPE)等技术,以提高模型的性能和训练稳定性。
训练设置
预训练时,使用Marenostrum 5超级计算机的256个Nvidia H100 GPU,以恒定的3072个序列的批量大小训练模型,对应约1200万个标记,使用Adam优化器和BF16精度。
📄 许可证
本模型采用Apache License 2.0许可证。



