模型介绍
内容详情
替代品
模型简介
模型特点
模型能力
使用案例
🚀 SalamandraTA模型卡
SalamandraTA-2b-instruct是一个翻译大语言模型(LLM),它是在SalamandraTA-2b-base的基础上进行指令微调得到的。基础模型是通过在平行数据上对 Salamandra-2b 进行持续预训练得到的,尚未发布,仅供内部使用。SalamandraTA-2b-instruct精通35种欧洲语言(外加3种变体),支持与翻译相关的任务,即:句子级翻译、段落级翻译、自动后编辑、语法检查、机器翻译评估、替代翻译、命名实体识别和上下文感知翻译。
⚠️ 重要提示
免责声明:此版本的Salamandra专门为翻译任务量身定制。它不具备聊天功能,也未使用任何聊天指令进行训练。
🚀 快速开始
你可以在以下 35种语言(和3种变体)之间进行翻译:
阿拉贡语、阿斯图里亚斯语、巴斯克语、保加利亚语、加泰罗尼亚语(和加泰罗尼亚 - 瓦伦西亚变体)、克罗地亚语、捷克语、丹麦语、荷兰语、英语、爱沙尼亚语、芬兰语、法语、加利西亚语、德语、希腊语、匈牙利语、爱尔兰语、意大利语、拉脱维亚语、立陶宛语、马耳他语、挪威语(书面挪威语和新挪威语变体)、奥克语(和阿兰语变体)、波兰语、葡萄牙语、罗马尼亚语、俄语、塞尔维亚语、斯洛伐克语、斯洛文尼亚语、西班牙语、瑞典语、乌克兰语、威尔士语。
遵循指令的模型使用了普遍采用的ChatML模板:
<|im_start|>system
{系统提示}<|im_end|>
<|im_start|>user
{用户提示}<|im_end|>
<|im_start|>assistant
{模型响应}<|im_end|>
<|im_start|>user
[...]
应用它的最简单方法是使用分词器的内置函数,如下列代码片段所示。
from datetime import datetime
from transformers import AutoTokenizer, AutoModelForCausalLM
import transformers
import torch
model_id = "BSC-LT/salamandraTA-2b-instruct"
source = 'Spanish'
target = 'Catalan'
sentence = "Ayer se fue, tomó sus cosas y se puso a navegar. Una camisa, un pantalón vaquero y una canción, dónde irá, dónde irá. Se despidió, y decidió batirse en duelo con el mar. Y recorrer el mundo en su velero. Y navegar, nai-na-na, navegar"
text = f"Translate the following text from {source} into {target}.\n{source}: {sentence} \n{target}:"
tokenizer = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained(
model_id,
device_map="auto",
torch_dtype=torch.bfloat16
)
message = [ { "role": "user", "content": text } ]
date_string = datetime.today().strftime('%Y-%m-%d')
prompt = tokenizer.apply_chat_template(
message,
tokenize=False,
add_generation_prompt=True,
date_string=date_string
)
inputs = tokenizer.encode(prompt, add_special_tokens=False, return_tensors="pt")
input_length = inputs.shape[1]
outputs = model.generate(input_ids=inputs.to(model.device),
max_new_tokens=400,
early_stopping=True,
num_beams=5)
print(tokenizer.decode(outputs[0, input_length:], skip_special_tokens=True))
# Ahir se'n va anar, va recollir les seves coses i es va fer a la mar. Una camisa, uns texans i una cançó, on anirà, on anirà. Es va acomiadar i va decidir batre's en duel amb el mar. I fer la volta al món en el seu veler. I navegar, nai-na-na, navegar
使用此模板时,每一轮对话都以 <|im_start|>
分隔符和实体角色(用户提供的内容为 user
,大语言模型的响应为 assistant
)开头,并以 <|im_end|>
标记结束。
✨ 主要特性
通用翻译
对于机器翻译任务,你可以使用以下提示模板:
将以下文本从 {源语言} 翻译成 {目标语言}。
{源语言}: {源句子}
{目标语言}:
查看示例
source = 'Catalan'
target = 'Galician'
source_sentence = "Als antics egipcis del període de l'Imperi Nou els fascinaven els monuments dels seus predecessors, que llavors tenien més de mil anys."
text = f"Translate the following text from {source} into {target}.\n{source}: {source_sentence} \n{target}:"
# Os antigos exipcios do período do Imperio Novo estaban fascinados polos monumentos dos seus predecesores, que entón tiñan máis de mil anos de antigüidade.
后编辑
对于后编辑任务,你可以使用以下提示模板:
请修正以下 {源语言}-{目标语言} 机器翻译中的任何错误,如果翻译正确则保持不变。
源文: {源句子}
机器翻译: {机器翻译结果}
修正后:
查看示例
source = 'Catalan'
target = 'English'
source_sentence = 'Rafael Nadal i Maria Magdalena van inspirar a una generació sencera.'
machine_translation = 'Rafael Christmas and Maria the Muffin inspired an entire generation each in their own way.'
text = f"Please fix any mistakes in the following {source}-{target} machine translation or keep it unedited if it's correct.\nSource: {source_sentence} \nMT: {machine_translation} \nCorrected:"
# Rafael Nadal and Maria Magdalena inspired an entire generation.
段落级翻译
对于段落级翻译任务,你可以使用以下提示模板:
请将此文本从 {源语言} 翻译成 {目标语言}。
{源语言}: {段落}
{目标语言}:
查看示例
source = 'English'
target = 'Asturian'
text = """Please translate this text from {} into {}.\n{}: President Donald Trump, who campaigned on promises to crack down on illegal immigration, has raised alarms in the U.S. dairy industry with his threat to impose 25% tariffs on Mexico and Canada by February 2025. This move is part of a broader strategy to declare a national emergency at the southern border to halt illegal migration completely. However, the implications for the agriculture sector, particularly dairy, are significant. Approximately half of the U.S. dairy industry's workforce consists of immigrant labor, many of whom are undocumented. The National Milk Producers Federation estimates that removing immigrant workers could decimate the dairy herd by 2.1 million cows and slash milk production by nearly 50 billion pounds, leading to a dramatic 90.4% increase in milk prices. The complex perspectives of Americans on undocumented workers were highlighted in a Pew Research Center study. While 64% of U.S. adults support legal pathways for undocumented immigrants, 35% oppose it—a gap that has been narrowing recently. Factors influencing public opinion include the belief that immigrants should have jobs and pass security checks, contrasted by concerns about lawbreakers being rewarded, fairness for legal migrants, and resource allocation.
{}:""".format(source, target, source, target)
命名实体识别
对于命名实体识别任务,你可以使用以下提示模板:
分析以下分词后的文本,并标记包含命名实体的词元。
使用以下带有这些命名实体标签的注释指南:
- ORG(指命名的团体或组织)
- PER(指个人或命名的人群)
- LOC(指物理地点或自然地标)
- MISC(指不符合标准类别的实体)。
在给定实体的第一个词元前加上 B-,如果有后续词元则加上 I-。
如果一个词元不是命名实体,则将其标记为 O。
输入: {句子中的单词列表}
标记后:
查看示例
text = """Analyse the following tokenized text and mark the tokens containing named entities.
Use the following annotation guidelines with these tags for named entities:
- ORG (Refers to named groups or organizations)
- PER (Refers to individual people or named groups of people)
- LOC (Refers to physical places or natural landmarks)
- MISC (Refers to entities that don't fit into standard categories).
Prepend B- to the first token of a given entity and I- to the remaining ones if they exist.
If a token is not a named entity, label it as O.
Input: ['La', 'defensa', 'del', 'antiguo', 'responsable', 'de', 'la', 'RFEF', 'confirma', 'que', 'interpondrá', 'un', 'recurso.']
Marked: """
# [('La', 'O'), ('defensa', 'O'), ('del', 'O'), ('antiguo', 'O'), ('responsable', 'O'), ('de', 'O'), ('la', 'O'), ('RFEF', 'B-ORG'), ('confirma', 'O'), ('que', 'O'), ('interpondrá', 'O'), ('un', 'O'), ('recurso.', 'O')]
语法检查
要修正语法中的任何错误,你可以使用以下提示模板:
请修正以下 {源语言} 句子中的任何错误,如果句子正确则保持不变。
句子: {句子}
修正后:
查看示例
source = 'Catalan'
sentence = 'Entonses, el meu jefe m’ha dit que he de treballar els fins de setmana.'
text = f"Please fix any mistakes in the following {source} sentence or keep it unedited if it's correct.\nSentence: {sentence} \nCorrected:"
# Llavors, el meu cap m'ha dit que he de treballar els caps de setmana.
📚 详细文档
模型详情
描述
SalamandraTA-2b-base是在平行数据上对 Salamandra-2b 进行持续预训练得到的,训练过程中共处理了4240亿个词元。
架构
属性 | 详情 |
---|---|
总参数数量 | 2,253,490,176 |
嵌入参数数量 | 524,288,000 |
层数 | 24 |
隐藏层大小 | 2,048 |
注意力头数量 | 16 |
上下文长度 | 8,192 |
词汇表大小 | 256,000 |
精度 | bfloat16 |
嵌入类型 | RoPE |
激活函数 | SwiGLU |
层归一化 | RMS Norm |
闪存注意力 | ✅ |
分组查询注意力 | ❌ |
查询组数量 | 不适用 |
数据
预训练数据
预训练语料库由以加泰罗尼亚语、西班牙语和英语为中心的4240亿个词元的平行数据组成,包括所有欧洲官方语言以及加泰罗尼亚语、巴斯克语、加利西亚语、阿斯图里亚斯语、阿拉贡语和阿兰语。它包含6,574,251,526个平行句子对。
这个高度多语言的语料库主要由来自 OPUS 的数据组成,此外还包括来自 NTEU项目、Aina项目 和其他来源的数据(见:数据来源 和 参考文献)。在几乎找不到加泰罗尼亚语 <-> xx 平行数据的情况下,使用 Aina项目的西班牙语 - 加泰罗尼亚语模型 从收集到的西班牙语 <-> xx 语料库的西班牙语部分生成合成加泰罗尼亚语数据。最终的语言分布如下:
点击下面的展开按钮查看训练数据中包含的完整语料库列表。
数据来源
数据集 | 加泰罗尼亚语 - xx 语言 | 西班牙语 - xx 语言 | 英语 - xx 语言 |
---|---|---|---|
AINA | en | ||
ARANESE-SYNTH-CORPUS-BSC | arn | ||
BOUA-SYNTH-BSC | val | ||
BOUMH | val | ||
BOUA-PILAR | val | ||
CCMatrix | eu | ga | |
DGT | bg,cs,da,de,el,et,fi,fr,ga,hr,hu,lt,lv,mt,nl,pl,pt,ro,sk,sl,sv | da,et,ga,hr,hu,lt,lv,mt,sh,sl | |
DOGV-SYNTH-BSC | val | ||
DOGV-PILAR | val | ||
ELRC-EMEA | bg,cs,da,hu,lt,lv,mt,pl,ro,sk,sl | et,hr,lv,ro,sk,sl | |
EMEA | bg,cs,da,el,fi,hu,lt,mt,nl,pl,ro,sk,sl,sv | et,mt | |
EUBookshop | lt,pl,pt | cs,da,de,el,fi,fr,ga,it,lv,mt,nl,pl,pt,ro,sk,sl,sv | cy,ga |
Europarl | bg,cs,da,el,en,fi,fr,hu,lt,lv,nl,pl,pt,ro,sk,sl,sv | ||
Europat | en,hr | no | |
GAITU语料库 | eu | ||
KDE4 | bg,cs,da,de,el,et,eu,fi,fr,ga,gl,hr,it,lt,lv,nl,pl,pt,ro,sk,sl,sv | bg,ga,hr | cy,ga,nn,oc |
GlobalVoices | bg,de,fr,it,nl,pl,pt | bg,de,fr,pt | |
GNOME | eu,fr,ga,gl,pt | ga | cy,ga,nn |
JRC-Arquis | cs,da,et,fr,lt,lv,mt,nl,pl,ro,sv | et | |
LES-CORTS-VALENCIANES-SYNTH-BSC | val | ||
MaCoCu | en | hr,mt,uk | |
MultiCCAligned | bg,cs,de,el,et,fi,fr,hr,hu,it,lt,lv,nl,pl,ro,sk,sv | bg,fi,fr,hr,it,lv,nl,pt | bg,cy,da,et,fi,hr,hu,lt,lv,no,sl,sr,uk |
MultiHPLT | en, et,fi,ga,hr,mt | fi,ga,gl,hr,mt,nn,sr | |
MultiParaCrawl | bg,da | de,en,fr,ga,hr,hu,it,mt,pt | bg,cs,da,de,el,et,fi,fr,ga,hr,hu,lt,lv,mt,nn,pl,ro,sk,sl,uk |
MultiUN | fr | ||
新闻评论 | fr | ||
NLLB | bg,da,el,en,et,fi,fr,gl,hu,it,lt,lv,pt,ro,sk,sl | bg,cs,da,de,el,et,fi,fr,hu,it,lt,lv,nl,pl,pt,ro,sk,sl,sv | bg,cs,cy,da,de,el,et,fi,fr,ga,hr,hu,it,lt,lv,mt,nl,no,oc,pl,pt,ro,ru,sk,sl,sr,sv,uk |
NÓS真实语料库 | gl | ||
NÓS合成语料库 | gl | ||
NTEU | bg,cs,da,de,el,en,et,fi,fr,ga,hr,hu,it,lt,lv,mt,nl,pl,pt,ro,sk,sl,sv | da,et,ga,hr,lt,lv,mt,ro,sk,sl,sv | |
OpenSubtitles | bg,cs,da,de,el,et,eu,fi,gl,hr,hu,lt,lv,nl,pl,pt,ro,sk,sl,sv | da,de,fi,fr,hr,hu,it,lv,nl | bg,cs,de,el,et,hr,fi,fr,hr,hu,no,sl,sr |
OPUS-100 | en | gl | |
StanfordNLP-NMT | cs | ||
Tatoeba | de,pt | pt | |
TildeModel | bg | et,hr,lt,lv,mt | |
UNPC | en,fr | ru | |
PILAR-VALENCIAN-AUTH | val | ||
PILAR-VALENCIAN-SYNTH | val | ||
WikiMatrix | bg,cs,da,de,el,et,eu,fi,fr,gl,hr,hu,it,lt,nl,pl,pt,ro,sk,sl,sv | bg,en,fr,hr,it,pt | oc,sh |
Wikimedia | cy,nn | ||
XLENT | eu,ga,gl | ga | cy,et,ga,gl,hr,oc,sh |
名称中带有 "-BSC" 的数据集(例如,BOUA-SYNTH-BSC、DOGV-SYNTH-BSC)是通过使用我们自己的序列到序列模型对现有的单语语料库进行机器翻译得到的合成数据集。这些数据集是为模型训练内部生成的,未发布。
要查阅带有相应许可证的数据摘要文档,请发送电子邮件至 ipr@bsc.es。
参考文献
- Aulamo, M., Sulubacak, U., Virpioja, S., & Tiedemann, J. (2020). OpusTools and Parallel Corpus Diagnostics. In N. Calzolari, F. Béchet, P. Blache, K. Choukri, C. Cieri, T. Declerck, S. Goggi, H. Isahara, B. Maegaard, J. Mariani, H. Mazo, A. Moreno, J. Odijk, & S. Piperidis (Eds.), Proceedings of the Twelfth Language Resources and Evaluation Conference (pp. 3782–3789). European Language Resources Association. https://aclanthology.org/2020.lrec-1.467
- Chaudhary, V., Tang, Y., Guzmán, F., Schwenk, H., & Koehn, P. (2019). Low-Resource Corpus Filtering Using Multilingual Sentence Embeddings. In O. Bojar, R. Chatterjee, C. Federmann, M. Fishel, Y. Graham, B. Haddow, M. Huck, A. J. Yepes, P. Koehn, A. Martins, C. Monz, M. Negri, A. Névéol, M. Neves, M. Post, M. Turchi, & K. Verspoor (Eds.), Proceedings of the Fourth Conference on Machine Translation (Volume 3: Shared Task Papers, Day 2) (pp. 261–266). Association for Computational Linguistics. https://doi.org/10.18653/v1/W19-5435
- DGT-Translation Memory—European Commission. (n.d.). Retrieved November 4, 2024, from https://joint-research-centre.ec.europa.eu/language-technology-resources/dgt-translation-memory_en
- Eisele, A., & Chen, Y. (2010). MultiUN: A Multilingual Corpus from United Nation Documents. In N. Calzolari
硬件和软件
训练框架
SalamandraTA-2b-base是使用NVIDIA的 NeMo框架 进行持续预训练的,该框架利用PyTorch Lightning在高度分布式环境中进行高效的模型训练。
SalamandraTA-2b-instruct是使用 FastChat 生成的。
计算基础设施
所有模型都在 MareNostrum 5 上进行训练,这是一台由巴塞罗那超级计算中心托管和运营的预百亿亿次级欧洲高性能计算超级计算机。
加速分区由1120个节点组成,具有以下规格:
- 4个Nvidia Hopper GPU,配备64GB HBM2内存
- 2个2.3GHz的英特尔至强8460Y+处理器,每个处理器有32个核心(共64个核心)
- 4个NDR200(每个节点带宽800Gb/s)
- 512GB主内存(DDR5)
- 460GB NVMe存储
📄 许可证
本项目采用Apache-2.0许可证。








精选推荐AI模型



