语言:
- 德语
- 保加利亚语
- 捷克语
- 丹麦语
- 希腊语
- 英语
- 西班牙语
- 爱沙尼亚语
- 芬兰语
- 法语
- 爱尔兰语
- 克罗地亚语
- 匈牙利语
- 意大利语
- 立陶宛语
- 拉脱维亚语
- 马耳他语
- 荷兰语
- 波兰语
- 葡萄牙语
- 罗马尼亚语
- 斯洛文尼亚语
- 瑞典语
- 斯洛伐克语
评估指标:
- 准确率
- BLEU分数
任务标签: 文本生成
库名称: transformers
基础模型:
- openGPT-X/Teuken-7B-base-v0.4
许可证: 其他
Teuken-7B-instruct-research-v0.4模型卡
Teuken-7B-instruct-research-v0.4是一个经过指令微调的70亿参数多语言大语言模型(LLM),在OpenGPT-X研究项目中基于4万亿token预训练而成。基础模型Teuken-7B-base-v0.4可通过邮件📧contact@opengpt-x.de申请获取。
模型描述
- 开发机构: 弗劳恩霍夫协会、于利希研究中心、德累斯顿工业大学、德国人工智能研究中心
- 资助方: 德国联邦经济事务和气候保护部(BMWK)OpenGPT-X项目
- 模型类型: 基于Transformer的解码器模型
- 支持语言: 保加利亚语、捷克语、丹麦语、德语、希腊语、英语、西班牙语、爱沙尼亚语、芬兰语、法语、爱尔兰语、克罗地亚语、匈牙利语、意大利语、立陶宛语、拉脱维亚语、马耳他语、荷兰语、波兰语、葡萄牙语、罗马尼亚语、斯洛伐克语、斯洛文尼亚语、瑞典语
- 发布方: OpenGPT-X
用途
该模型专注于覆盖全部24种欧盟官方语言,相比以英语为中心的模型,能在这些语言间提供更稳定的结果,并更好体现欧洲价值观。因此特别适合多语言任务场景。由于基础模型训练涵盖24种欧盟语言,本模型也适用于这些语言的学术研究。
免责声明:有害内容
本大语言模型可能生成不当、冒犯性或有害内容。虽然数据集已进行过滤以最小化此类输出,但由于数据规模庞大且来源多样,模型仍可能产生带有偏见或毒性的文本。
非适用场景
本模型不适用于数学和编程任务。
偏见、风险与限制
本指令微调版本(基础模型可邮件申请获取)尚未完全消除偏见和幻觉问题。
快速开始
安装依赖
python -m pip install numpy torch huggingface_hub transformers sentencepiece
使用示例
必须使用指定的提示模板,示例如下:
user="你好!"
lang_code = "DE"
system_messages={
"EN": "人类与AI助手的对话。助手需提供有帮助且礼貌的回答。",
"DE": "人类与AI助手的对话。助手需提供有帮助且礼貌的回答。",
}
prompt = f"System: {system_messages[lang_code]}\nUser: {user}\nAssistant:"
集成模板的Tokenizer使用方式:
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer
device = torch.device("cuda" if torch.cuda.is_available() else "cpu")
model = AutoModelForCausalLM.from_pretrained(
"openGPT-X/Teuken-7B-instruct-research-v0.4",
trust_remote_code=True,
torch_dtype=torch.bfloat16,
).to(device).eval()
tokenizer = AutoTokenizer.from_pretrained(model_name, use_fast=False, trust_remote_code=True)
messages = [{"role": "User", "content": "你好"}]
prompt_ids = tokenizer.apply_chat_template(messages, chat_template="DE", tokenize=True, add_generation_prompt=True, return_tensors="pt")
output = model.generate(prompt_ids.to(device), max_length=512, do_sample=True, top_k=50, top_p=0.95, temperature=0.7)
print(tokenizer.decode(output[0]))
vLLM服务部署
启动服务:
vllm serve openGPT-X/Teuken-7B-instruct-research-v0.4 --trust-remote-code
API调用:
from openai import OpenAI
client = OpenAI(base_url="http://localhost:8000/v1", api_key="EMPTY")
completion = client.chat.completions.create(
model="openGPT-X/Teuken-7B-instruct-research-v0.4",
messages=[{"role": "User", "content": "你好"}],
extra_body={"chat_template":"DE"}
)
训练详情
预训练数据
基于公开数据源的4万亿token,数据截止至2023年9月。
指令微调数据
采用英德双语数据集均衡采样:
- 英语:包含OpenOrca子集、LMSYS高质量对话等,通过Starling-RM-7B-alpha评分筛选
- 德语:完整采用Bactrian-X DE、evol-instruct-deutsch等数据集
训练超参数
- 训练目标:CLM
- 激活函数:SwiGLU
- 序列长度:4096
- 注意力头数:32
- 学习率:3e-4→3e-5
- 优化器:AdamW(β1=0.9, β2=0.95)
- 精度:bf16
评估结果
在21种欧洲语言的综合评估中表现:
模型 |
平均分 |
ARC |
HellaSwag |
TruthfulQA |
MMLU |
LLaMA-3.1-8B |
.563 |
.563 |
.579 |
.532 |
.576 |
Teuken-7B |
.543 |
.581 |
.624 |
.543 |
.425 |
详细评估结果参见欧洲LLM排行榜和相关论文。
技术规格
模型架构
参数 |
值 |
层数 |
32 |
隐藏层维度 |
4096 |
注意力头数 |
32 |
FFN维度 |
13440 |
归一化 |
RMSNorm |
位置编码 |
旋转编码 |
计算设施
基于JUWELS Booster超算,配备936个节点(每节点4×NVIDIA A100 40GB),通过HDR-200 InfiniBand互联,使用Megatron-LM框架训练。
引用
若使用本模型,请引用我们的预印本论文。
团队
核心成员
数据团队:Anirban Bhowmick等(IAIS)
模型团队:Mehdi Ali(IAIS)、Michael Fromm(IAIS)等
评估团队:Klaudia Thellmann(TUD)等
管理团队:Joachim Köhler(IAIS)等
我们诚邀研究者通过Discord社区参与协作,共同推进欧洲生成式AI发展。