数据集:
- LeoLM/OpenSchnabeltier
- OpenAssistant/OASST-DE
- FreedomIntelligence/alpaca-gpt4-deutsch
- FreedomIntelligence/evol-instruct-deutsch
- LeoLM/German_Poems
- LeoLM/German_Songs
语言:
- 英语
- 德语
库名称: transformers
任务标签: 文本生成
许可证: apache-2.0
LAION LeoLM:语言增强开放语言模型
LeoLM是首个基于Llama-2和Mistral构建的德语开源商用基础语言模型。我们通过对大规模德语语料库(主要包含地域特定文本)进行持续预训练,将Llama-2的能力扩展至德语领域。得益于HessianAI新型超级计算机42提供的算力支持,我们发布了三个支持8k上下文长度的基础模型:LeoLM/leo-mistral-hessianai-7b
(Apache 2.0许可)、LeoLM/leo-hessianai-7b
与LeoLM/leo-hessianai-13b
(Llama-2社区许可,70b版本即将推出👀)。我们希望通过此次发布推动德语开源和商用LLM研究的新浪潮。更多细节请阅读我们的博客文章或即将发布的预印本论文!
Björn Plüster与Christoph Schuhmann合作项目,联合LAION和HessianAI共同开发。
LeoLM对话模型
LeoLM/leo-mistral-hessianai-7b-chat
是基于基础模型LeoLM/leo-mistral-hessianai-7b
构建的德语对话模型,经精选德语指令数据集微调而成。该模型在写作、解释和讨论任务中表现卓越,但在数学和高级推理方面稍显不足。MT-Bench-DE评分如下:
{
"首轮": 6.1,
"次轮": 4.7,
"分类": {
"写作": 6.8,
"角色扮演": 6.35,
"推理": 3.3,
"数学": 2.75,
"编程": 4.4,
"信息提取": 4.5,
"理工科": 6.85,
"人文社科": 8.25
},
"平均分": 5.4
}
模型详情
在🤗Transformers中使用
首先安装依赖:
pip install transformers torch sentencepiece
如需使用flash-attention2加速推理,需额外安装:
pip install packaging ninja
pip install flash-attn
加载模型示例:
from transformers import pipeline
import torch
系统提示 = """这是智能助手与用户之间的对话。助手会提供详尽、有用且诚实的回答。"""
提示模板 = "<|im_start|>system\n{系统提示}<|im_end|>\n<|im_start|>user\n{提示}<|im_end|>\n<|im_start|>assistant\n"
问题 = "请解释汉堡自行车道现状"
生成器 = pipeline(model="LeoLM/leo-mistral-hessianai-7b-chat", device="cuda", torch_dtype=torch.float16, use_flash_attention_2=True)
print(生成器(提示模板.format(系统提示=系统提示, 提示=问题), do_sample=True, top_p=0.95, max_length=8192))
"作为AI我无法分享个人观察,但可以提供汉堡自行车道概况。相比其他大城市,汉堡骑行者数量众多,对可持续交通非常重视。设有大量自行车道和专用车道,通常通过标线或物理隔离区分。还有许多自行车优先道路,机动车需减速让行。不过在部分城区,高峰时段车道可能拥挤,某些路口需等待信号灯。总体基础设施良好,但仍有改进空间。"
提示模板
对话模板(ChatML格式):
"""
<|im_start|>system
{系统消息}<|im_end|>
<|im_start|>user
{提示}<|im_end|>
<|im_start|>assistant
"""
支持多轮对话格式:
<|im_start|>user
{提示1}<|im_end|>
<|im_start|>assistant
{回复1}<|im_end|>
<|im_start|>user
{提示2}<|im_end|>
<|im_start|>assistant
(...)
伦理考量与限制
LeoLM经过英德双语测试,但无法覆盖所有场景。与其他LLM类似,其输出可能存在不准确、偏见或不妥内容。开发者应在部署前进行应用场景特定的安全测试与调优。详见Meta的负责任使用指南。
微调参数
超参数 |
值 |
训练轮次 |
4 |
每轮样本数 |
131214 |
全局批次大小 |
256 |
学习率 |
1e-5 |
预热步数 |
100 |
学习率调度器 |
余弦退火 |
Adam参数 |
(0.9, 0.95) |
数据集统计
## OpenAssistant/OASST-DE子集 (3534样本)
-----------------
有效样本: 3534(100%)
总token数: 2259302
最小token/样本: 29
最大token/样本: 2484
平均token/样本: 639.30
-----------------
## evol-instruct-deutsch子集 (57841样本)
-----------------
有效样本: 57841(100%)
总token数: 42958192
最小token/样本: 33
最大token/样本: 5507
平均token/样本: 742.69
-----------------
## alpaca-gpt4-deutsch子集 (48969样本)
-----------------
有效样本: 48969(100%)
总token数: 13372005
最小token/样本: 19
最大token/样本: 1359
平均token/样本: 273.07
-----------------
## OpenSchnabeltier子集 (21314样本)
-----------------
有效样本: 21314(100%)
总token数: 8134690
最小token/样本: 25
最大token/样本: 1202
平均token/样本: 381.66
-----------------
## German_Poems子集 (490样本)
-----------------
有效样本: 490(100%)
总token数: 618642
最小token/样本: 747
最大token/样本: 1678
平均token/样本: 1262.53
-----------------
## German_Songs子集 (392样本)
-----------------
有效样本: 392(100%)
总token数: 187897
最小token/样本: 231
最大token/样本: 826
平均token/样本: 479.33
-----------------
## 汇总统计 (132540样本)
-----------------
总token数: 67530728
样本token跨度: 19-5507
平均token/样本: 509.51
-----------------