🚀 四叶草(Quadrifoglio) - 用于英语到意大利语翻译的小型模型
四叶草(Quadrifoglio)是一个基于bigscience/mt0-small
的编码器 - 解码器Transformer模型,用于英语和意大利语之间的文本翻译。它在Helsinki-NLP/opus-100
和Helsinki-NLP/europarl
数据集的英意(en-it
)部分上进行了训练。
🚀 快速开始
模型信息
属性 |
详情 |
库名称 |
transformers |
标签 |
seq2seq |
许可证 |
apache - 2.0 |
数据集 |
Helsinki - NLP/europarl、Helsinki - NLP/opus - 100 |
语言 |
英语、意大利语 |
基础模型 |
bigscience/mt0 - small |
任务类型 |
翻译 |
评估指标 |
bleu |
💻 使用示例
基础用法
from transformers import AutoTokenizer, AutoModelForSeq2SeqLM
tokenizer = AutoTokenizer.from_pretrained("LeonardPuettmann/Quadrifoglio-mt-en-it")
model = AutoModelForSeq2SeqLM.from_pretrained("LeonardPuettmann/Quadrifoglio-mt-en-it")
def generate_response(input_text):
input_ids = tokenizer("translate English to Italian:" + input_text, return_tensors="pt").input_ids
output = model.generate(input_ids, max_new_tokens=256)
return tokenizer.decode(output[0], skip_special_tokens=True)
text_to_translate = "I would like a cup of green tea, please."
response = generate_response(text_to_translate)
print(response)
高级用法
由于该模型是在翻译句子对上进行训练的,因此最好将较长的文本拆分为单个句子,理想情况下可以使用SpaCy。然后可以翻译这些句子,并在最后将翻译结果连接起来,示例代码如下:
from transformers import AutoTokenizer, AutoModelForSeq2SeqLM
import spacy
nlp = spacy.load("en_core_web_sm")
tokenizer = AutoTokenizer.from_pretrained("LeonardPuettmann/Quadrifoglio-mt-en-it")
model = AutoModelForSeq2SeqLM.from_pretrained("LeonardPuettmann/Quadrifoglio-mt-en-it")
def generate_response(input_text):
input_ids = tokenizer("translate Italian to English: " + input_text, return_tensors="pt").input_ids
output = model.generate(input_ids, max_new_tokens=256)
return tokenizer.decode(output[0], skip_special_tokens=True)
text = "How are you doing? Today is a beautiful day. I hope you are doing fine."
doc = nlp(text)
sentences = [sent.text for sent in doc.sents]
sentence_translations = []
for i, sentence in enumerate(sentences):
sentence_translation = generate_response(sentence)
sentence_translations.append(sentence_translation)
full_translation = " ".join(sentence_translations)
print(full_translation)
📚 详细文档
评估
评估是在Opus 100测试集上完成的。
BLEU评估结果
|
四叶草(本模型) |
mt0 - small |
DeepL |
BLEU得分 |
0.4816 |
0.0159 |
0.5210 |
一元语法准确率 |
0.7305 |
0.2350 |
0.7613 |
二元语法准确率 |
0.5413 |
0.0290 |
0.5853 |
三元语法准确率 |
0.4289 |
0.0076 |
0.4800 |
四元语法准确率 |
0.3417 |
0.0013 |
0.3971 |
📄 许可证
本项目采用apache - 2.0
许可证。