🚀 NLLB 1.3B在日英轻小说翻译上的微调模型
本模型在轻小说和网络小说数据上进行微调,用于日语到英语的翻译。它能够翻译最多512个标记的句子和段落。
🚀 快速开始
模型调用
from transformers import AutoTokenizer, AutoModelForSeq2SeqLM
tokenizer = AutoTokenizer.from_pretrained("thefrigidliquidation/nllb-jaen-1.3B-lightnovels")
model = AutoModelForSeq2SeqLM.from_pretrained("thefrigidliquidation/nllb-jaen-1.3B-lightnovels")
generated_tokens = model.generate(
**inputs,
forced_bos_token_id=tokenizer.lang_code_to_id[tokenizer.tgt_lang],
max_new_tokens=1024,
no_repeat_ngram_size=6,
).cpu()
translated_text = tokenizer.batch_decode(generated_tokens, skip_special_tokens=True)[0]
多样化束搜索生成
使用多样化束搜索进行生成似乎效果最佳。在 model.generate
中添加以下参数:
num_beams=8,
num_beam_groups=4,
do_sample=False,
💻 使用示例
基础用法
from transformers import AutoTokenizer, AutoModelForSeq2SeqLM
tokenizer = AutoTokenizer.from_pretrained("thefrigidliquidation/nllb-jaen-1.3B-lightnovels")
model = AutoModelForSeq2SeqLM.from_pretrained("thefrigidliquidation/nllb-jaen-1.3B-lightnovels")
generated_tokens = model.generate(
**inputs,
forced_bos_token_id=tokenizer.lang_code_to_id[tokenizer.tgt_lang],
max_new_tokens=1024,
no_repeat_ngram_size=6,
).cpu()
translated_text = tokenizer.batch_decode(generated_tokens, skip_special_tokens=True)[0]
高级用法
num_beams=8,
num_beam_groups=4,
do_sample=False,
📚 详细文档
术语表
在运行时,你可以为名词和角色名称提供最多10个自定义翻译。具体做法是,用术语标记包围日语术语。在单词前加上 <t0>、<t1>、...、<t9>
中的一个,在单词后加上 </t>
。该术语将被翻译为前缀术语标记,然后可以进行字符串替换。
例如,在 マイン、ルッツが迎えに来たよ
中,如果你希望将 マイン
翻译为 Myne
,你可以将 マイン
替换为 <t0>マイン</t>
。模型会将 <t0>マイン</t>、ルッツが迎えに来たよ
翻译为 <t0>, Lutz is here to pick you up.
然后只需对输出进行字符串替换,将 <t0>
替换为 Myne
。
敬语处理
你可以强制模型生成或忽略敬语。
tokenizer.tgt_lang = "jpn_Jpan"
tokenizer.tgt_lang = "zsm_Latn"
tokenizer.tgt_lang = "zul_Latn"
📄 许可证
本模型使用的许可证为 cc-by-nc-4.0
。
属性 |
详情 |
语言支持 |
英语、日语 |
标签 |
nllb |
许可证 |
cc-by-nc-4.0 |