模型简介
模型特点
模型能力
使用案例
🚀 Llama 3.1 Swallow - 基于Llama构建
Llama 3.1 Swallow是一系列大语言模型(8B、70B),它通过在Meta Llama 3.1模型上进行持续预训练而构建。Llama 3.1 Swallow在保留英文能力的同时,增强了原始Llama 3.1的日语语言能力。我们使用了大约2000亿个标记进行持续预训练,这些标记是从大型日语网络语料库(Swallow语料库版本2)、日语和英文维基百科文章以及数学和编码内容等中采样得到的(详见基础模型的训练数据集部分)。指令微调模型(Instruct)是通过在专门为日语构建的合成数据上进行监督微调(SFT)而构建的。查看Swallow模型索引部分,以找到其他模型变体。
注意:Llama-3.1-Swallow-8B-Instruct-v0.2模型是从meta-llama/Llama-3.1-8B-Instruct进行持续预训练,然后使用我们的指令数据集进行指令微调得到的。
🚀 快速开始
安装依赖
pip install vllm
代码示例
from transformers import AutoTokenizer
from vllm import LLM, SamplingParams
model_name = "tokyotech-llm/Llama-3.1-Swallow-8B-Instruct-v0.2"
tokenizer = AutoTokenizer.from_pretrained(model_name)
llm = LLM(
model=model_name,
tensor_parallel_size=1,
)
sampling_params = SamplingParams(
temperature=0.6, top_p=0.9, max_tokens=512, stop="<|eot_id|>"
)
message = [
{"role": "system", "content": "あなたは誠実で優秀な日本人のアシスタントです。"},
{
"role": "user",
"content": "東京の紅葉した公園で、東京タワーと高層ビルを背景に、空を舞うツバメと草地に佇むラマが出会う温かな物語を書いてください。",
},
]
prompt = tokenizer.apply_chat_template(
message, tokenize=False, add_generation_prompt=True
)
output = llm.generate(prompt, sampling_params)
print(output[0].outputs[0].text)
✨ 主要特性
- 多语言能力:支持日语和英语,在保留英文能力的同时,增强了日语语言能力。
- 持续预训练:通过在Meta Llama 3.1模型上进行持续预训练,提升了模型性能。
- 指令微调:使用专门为日语构建的合成数据进行监督微调,使模型更符合用户指令。
📦 安装指南
pip install vllm
💻 使用示例
基础用法
from transformers import AutoTokenizer
from vllm import LLM, SamplingParams
model_name = "tokyotech-llm/Llama-3.1-Swallow-8B-Instruct-v0.2"
tokenizer = AutoTokenizer.from_pretrained(model_name)
llm = LLM(
model=model_name,
tensor_parallel_size=1,
)
sampling_params = SamplingParams(
temperature=0.6, top_p=0.9, max_tokens=512, stop="<|eot_id|>"
)
message = [
{"role": "system", "content": "あなたは誠実で優秀な日本人のアシスタントです。"},
{
"role": "user",
"content": "東京の紅葉した公園で、東京タワーと高層ビルを背景に、空を舞うツバメと草地に佇むラマが出会う温かな物語を書いてください。",
},
]
prompt = tokenizer.apply_chat_template(
message, tokenize=False, add_generation_prompt=True
)
output = llm.generate(prompt, sampling_params)
print(output[0].outputs[0].text)
📚 详细文档
Swallow模型索引
模型 | Llama-3.1-Swallow v0.1 | Llama-3.1-Swallow-Instruct v0.1 | Llama-3.1-Swallow v0.2 | Llama-3.1-Swallow-Instruct v0.2 | Llama-3.1-Swallow-Instruct v0.3 |
---|---|---|---|---|---|
8B | 链接 | 链接 | 链接 | 链接 | 链接 |
70B | 链接 | 链接 | 链接 |
模型详情
属性 | 详情 |
---|---|
模型类型 | 请参考Llama 3.1 MODEL_CARD了解模型架构详情。 |
语言 | 日语、英语 |
库 | Megatron-LM |
分词器 | 请参考Llama 3.1博客了解分词器详情。 |
联系方式 | swallow[at]nlp.c.titech.ac.jp |
模型性能
日语任务
模型 | JCom. | JEMHopQA | NIILC | JSQuAD | XL-Sum | MGSM | WMT20-en-ja | WMT20-ja-en | JMMLU | JHumanEval | Ja Avg |
---|---|---|---|---|---|---|---|---|---|---|---|
4-shot | 4-shot | 4-shot | 4-shot | 1-shot | 4-shot | 4-shot | 4-shot | 5-shot | 0-shot | ||
EM acc | Char-F1 | Char-F1 | Char-F1 | ROUGE-2 | EM acc | BLEU | BLEU | EM acc | pass@1 | ||
RakutenAI-7B-chat | 0.9035 | 0.2600 | 0.4619 | 0.8647 | 0.1339 | 0.2120 | 0.2667 | 0.1966 | 0.4504 | 0.2299 | 0.3980 |
Qwen2-7B-Instruct | 0.8856 | 0.3902 | 0.3859 | 0.8967 | 0.1277 | 0.5720 | 0.2041 | 0.1909 | 0.5713 | 0.5683 | 0.4793 |
Qwen2.5-7B-Instruct | 0.9151 | 0.4293 | 0.3910 | 0.8908 | 0.1676 | 0.6240 | 0.2108 | 0.1916 | 0.6252 | 0.5305 | 0.4976 |
Tanuki-8B-dpo-v1.0 | 0.2770 | 0.2937 | 0.3710 | 0.6669 | 0.1016 | 0.4280 | 0.2385 | 0.1820 | 0.3078 | 0.2555 | 0.3122 |
Llama 3 8B Instruct | 0.8785 | 0.3812 | 0.3936 | 0.8955 | 0.1273 | 0.4160 | 0.2143 | 0.2035 | 0.4719 | 0.2872 | 0.4269 |
Llama 3.1 8B Instruct | 0.8829 | 0.4272 | 0.4112 | 0.8856 | 0.1481 | 0.5280 | 0.2174 | 0.1990 | 0.5086 | 0.4976 | 0.4706 |
Llama 3 Youko 8B Instruct | 0.9196 | 0.4850 | 0.5178 | 0.9001 | 0.2085 | 0.4680 | 0.2559 | 0.1906 | 0.4691 | 0.2695 | 0.4684 |
Llama-3-ELYZA-JP-8B | 0.9017 | 0.5124 | 0.5016 | 0.9113 | 0.1677 | 0.4600 | 0.2509 | 0.1846 | 0.4829 | 0.3811 | 0.4754 |
Llama 3 heron brain 8B v0.3 | 0.9231 | 0.4933 | 0.5694 | 0.9056 | 0.2178 | 0.4560 | 0.2771 | 0.2168 | 0.4993 | 0.3177 | 0.4876 |
Llama 3 Swallow 8B Instruct | 0.9178 | 0.4963 | 0.5168 | 0.9088 | 0.1296 | 0.4880 | 0.2522 | 0.2254 | 0.4835 | 0.3927 | 0.4811 |
Llama 3.1 Swallow 8B Instruct v0.1 | 0.9240 | 0.5874 | 0.5736 | 0.9170 | 0.1380 | 0.5080 | 0.2820 | 0.2282 | 0.5301 | 0.3665 | 0.5055 |
Llama 3.1 Swallow 8B Instruct v0.2 | 0.9294 | 0.5601 | 0.5988 | 0.9148 | 0.1372 | 0.5280 | 0.2878 | 0.2270 | 0.5504 | 0.4079 | 0.5141 |
英语任务
模型 | OpenBookQA | TriviaQA | HellaSWAG | SQuAD2.0 | XWINO | MMLU | GSM8K | BBH | HumanEval | En Avg |
---|---|---|---|---|---|---|---|---|---|---|
4-shot | 4-shot | 4-shot | 4-shot | 4-shot | 5-shot | 4-shot | 3-shot | 0-shot | ||
Acc | EM acc | Acc | EM acc | Acc | Acc | EM acc | CoT EM Acc | pass@1 | ||
RakutenAI-7B-chat | 0.4160 | 0.5971 | 0.6465 | 0.3091 | 0.8886 | 0.5757 | 0.3139 | 0.4958 | 0.2671 | 0.5011 |
Qwen2-7B-Instruct | 0.4000 | 0.5468 | 0.6146 | 0.3518 | 0.8852 | 0.7073 | 0.6300 | 0.3101 | 0.6354 | 0.5646 |
Qwen2.5-7B-Instruct | 0.4280 | 0.5187 | 0.6240 | 0.2626 | 0.8761 | 0.7419 | 0.7415 | 0.2150 | 0.6360 | 0.5604 |
Tanuki-8B-dpo-v1.0 | 0.3340 | 0.2838 | 0.4696 | 0.2395 | 0.8168 | 0.3772 | 0.4867 | 0.3350 | 0.2805 | 0.4026 |
Llama 3 8B Instruct | 0.3880 | 0.6687 | 0.5834 | 0.3743 | 0.8903 | 0.6567 | 0.7453 | 0.6478 | 0.5415 | 0.6107 |
Llama 3.1 8B Instruct | 0.3700 | 0.6994 | 0.5920 | 0.3783 | 0.9037 | 0.6809 | 0.7430 | 0.6928 | 0.6293 | 0.6321 |
Llama 3 Youko 8B Instruct | 0.4080 | 0.6129 | 0.5983 | 0.3370 | 0.8981 | 0.5964 | 0.5618 | 0.4012 | 0.2750 | 0.5209 |
Llama-3-ELYZA-JP-8B | 0.3200 | 0.5502 | 0.5224 | 0.3631 | 0.8809 | 0.5875 | 0.5701 | 0.3213 | 0.4604 | 0.5084 |
Llama 3 heron brain 8B v0.3 | 0.3580 | 0.6563 | 0.5686 | 0.3726 | 0.9002 | 0.6213 | 0.5777 | 0.6409 | 0.3720 | 0.5631 |
Llama 3 Swallow 8B Instruct | 0.3720 | 0.6557 | 0.5861 | 0.3648 | 0.9002 | 0.6315 | 0.5959 | 0.6391 | 0.4238 | 0.5743 |
Llama 3.1 Swallow 8B Instruct v0.1 | 0.3900 | 0.6488 | 0.6151 | 0.3553 | 0.8912 | 0.6237 | 0.6050 | 0.6417 | 0.3787 | 0.5722 |
Llama 3.1 Swallow 8B Instruct v0.2 | 0.3800 | 0.6252 | 0.6031 | 0.3667 | 0.8886 | 0.6346 | 0.6202 | 0.6487 | 0.4738 | 0.5823 |
MT-Bench JA
模型 | coding | extraction | humanities | math | reasoning | roleplay | stem | writing | JMTAvg |
---|---|---|---|---|---|---|---|---|---|
RakutenAI-7B-chat | 0.2475 | 0.3522 | 0.4692 | 0.2140 | 0.3926 | 0.4427 | 0.3977 | 0.4434 | 0.3699 |
Qwen2-7B-Instruct | 0.4635 | 0.6909 | 0.6857 | 0.5970 | 0.5042 | 0.6667 | 0.5353 | 0.6808 | 0.6030 |
Qwen2.5-7B-Instruct | 0.5111 | 0.7489 | 0.6913 | 0.5742 | 0.4851 | 0.6810 | 0.5350 | 0.6810 | 0.6134 |
Tanuki-8B-dpo-v1.0 | 0.3019 | 0.4772 | 0.5658 | 0.4129 | 0.3590 | 0.5120 | 0.4770 | 0.6159 | 0.4652 |
Llama 3 8B Instruct | 0.3744 | 0.6876 | 0.6225 | 0.2070 | 0.5032 | 0.5248 | 0.5326 | 0.4884 | 0.4926 |
Llama 3.1 8B Instruct | 0.3234 | 0.7362 | 0.4973 | 0.4787 | 0.3210 | 0.4670 | 0.4656 | 0.4314 | 0.4651 |
Llama 3 Youko 8B Instruct | 0.2950 | 0.7332 | 0.7125 | 0.2533 | 0.4987 | 0.6514 | 0.5438 | 0.7091 | 0.5496 |
Llama-3-ELYZA-JP-8B | 0.2908 | 0.6421 | 0.6406 | 0.3088 | 0.5500 | 0.6740 | 0.5251 | 0.6744 | 0.5382 |
Llama 3 heron brain 8B v0.3 | 0.2929 | 0.5635 | 0.6241 | 0.2135 | 0.4582 | 0.5354 | 0.5273 | 0.5099 | 0.4656 |
Llama 3 Swallow 8B Instruct | 0.3547 | 0.6508 | 0.5371 | 0.2718 | 0.4007 | 0.5493 | 0.4752 | 0.5730 | 0.4766 |
Llama 3.1 Swallow 8B Instruct v0.1 | 0.3132 | 0.7734 | 0.6645 | 0.3880 | 0.5230 | 0.5711 | 0.4953 | 0.5330 | 0.5327 |
Llama 3.1 Swallow 8B Instruct v0.2 | 0.4307 | 0.7089 | 0.6937 | 0.3881 | 0.5140 | 0.6277 | 0.5253 | 0.5787 | 0.5584 |
评估基准
日语评估基准
我们使用了llm-jp-eval(v1.3.0)、JP Language Model Evaluation Harness(提交编号#9b42d41)和Code Generation LM Evaluation Harness(提交编号#0261c52)。详情如下:
- 多项选择题回答(JCommonsenseQA [Kurihara等人,2022])
- 开放式问题回答(JEMHopQA [Ishii等人,2024])
- 开放式问题回答(NIILC [関根,2003])
- 机器阅读理解(JSQuAD [Kurihara等人,2022])
- 自动摘要(XL-Sum [Hasan等人,2021])
- 机器翻译(WMT2020 ja-en [Barrault等人,2020])
- 机器翻译(WMT2020 en-ja [Barrault等人,2020])
- 数学推理(MGSM [Shi等人,2023])
- 学术考试(JMMLU [尹ら,2024])
- 代码生成(JHumanEval [佐藤ら,2024])
英语评估基准
我们使用了Language Model Evaluation Harness(v.0.4.2)和Code Generation LM Evaluation Harness(提交编号#0261c52)。详情如下:
- 多项选择题回答(OpenBookQA [Mihaylov等人,2018])
- 开放式问题回答(TriviaQA [Joshi等人,2017])
- 机器阅读理解(SQuAD2 [Rajpurkar等人,2018])
- 常识推理(XWINO [Tikhonov和Ryabinin,2021])
- 自然语言推理(HellaSwag [Zellers等人,2019])
- 数学推理(GSM8K [Cobbe等人,2021])
- 推理(BBH (BIG-Bench-Hard) [Suzgun等人,2023])
- 学术考试(MMLU [Hendrycks等人,2021])
- 代码生成(HumanEval [Chen等人,2021])
MT-Bench JA
我们使用Japanese MT-Bench评估多轮对话能力,设置如下:
- 实现:FastChat [Zheng+,2023](提交编号#e86e70d0)
- 问题:Nejumi LLM-Leaderboard NEO,mtbench_ja_question_v3
- 参考答案:Nejumi LLM-Leaderboard NEO,mtbench_ja_referenceanswer_v1
- 评判提示:Nejumi LLM-Leaderboard NEO,mtbench_ja_prompt_v1
- 评判模型:
gpt-4-1106-preview
- 评分:绝对尺度归一化到0 - 1范围,五次运行取平均值。
训练数据集
指令微调
以下数据集用于指令微调:
- 日语
- Llama-3.1-LMSYS-Chat-1M-Synth-Ja:从lmsys-chat-1m合成和派生的单轮日语指令数据集[Zhang+,ICLR24]。首轮用户指令通过DeepL(机器翻译)翻译成日语,助手回复使用Llama-3.1-405B-Instruct生成。Llama-3.1-70B-Instruct作为拒绝采样的评判器(n = 6)。包含个人身份信息(PII)和基于模板的用户指令的对话被移除,重复指令被移除。
- Swallow-Magpie-Ultra-v0.1:
filtered-magpie-ultra-en
数据集的日语变体,由gemma-2-27b-it翻译成日语。 - Swallow-Gemma-Magpie-v0.1:一个全新的日语合成指令微调数据集,由gemma-2-27b-it生成。用户指令根据每个主题的特定提示创建,助手回复针对这些指令生成。然后根据质量和长度对对话进行启发式过滤。
- 英语
- Llama-3.1-LMSYS-Chat-1M-Synth-En:创建过程与
Llama-3.1-LMSYS-Chat-1M-Synth-Ja
类似,但此版本使用原始英文用户指令,助手回复也用英文生成,此版本未应用拒绝采样。 filtered-magpie-ultra-en
:magpie-ultra数据集的一个子集,按照MAGPIE配方[Xu+,arXiv24]使用Llama-3.1-405B-Instruct开发。此子集仅包括评为“平均”、“良好”或“优秀”的样本。
- Llama-3.1-LMSYS-Chat-1M-Synth-En:创建过程与
🔧 技术细节
模型通过在Meta Llama 3.1模型上进行持续预训练构建,使用约2000亿个标记,这些标记来自大型日语网络语料库、日语和英文维基百科文章以及数学和编码内容等。指令微调模型通过在专门为日语构建的合成数据上进行监督微调得到。
📄 许可证
META LLAMA 3.1 COMMUNITY LICENSE和Gemma使用条款
致谢
我们感谢Meta Research以慷慨的开放许可证发布Llama 3.1。
我们获得了以下各种支持:
- AIST项目:“物理领域生成式AI基础模型的研究与开发”
- NEDO项目:“基于熟练人员视角支持设计风险评估工作判断的人工智能应用技术开发”(JPNP18002),属于“下一代人工智能和机器人核心集成技术开发”项目
- MEXT项目:“确保生成式AI模型透明度和可靠性的研发中心建设”
- AIST计划:大型生成式AI开发支持计划
作者
以下是团队成员:
- 来自东京工业大学冈崎实验室的成员:
- 来自东京工业大学横田实验室的成员:
- 来自日本产业技术综合研究所人工智能研究中心的成员:
如何引用
如果您觉得我们的工作有帮助,请随意引用以下论文:
@inproceedings{Fujii:COLM2024,
title={Continual Pre-Training for Cross-Lingual LLM Adaptation:
Enhancing Japanese Language Capabilities},
author={Kazuki Fujii and Taishi Nakamura and Mengsay Loem and Hiroki
Iida and Masanari Ohi and Kakeru Hattori and Hirai Shota and Sakae
Mizuki and Rio Yokota and Naoaki Okazaki},
booktitle="Proceedings of the First Conference on Language Modeling",
series={COLM},
pages="(to appear)",
year="2024",
month=oct,
address={University of Pennsylvania, USA},
}
@inproceedings{Okazaki:COLM2024,
title={Building a Large Japanese Web Corpus for Large Language Models},
author={Naoaki Okazaki and Kakeru Hattori and Hirai Shota and Hiroki
Iida and Masanari Ohi and Kazuki Fujii and Taishi Nakamura and Mengsay
Loem and Rio Yokota and Sakae Mizuki},
booktitle="Proceedings of the First Conference on Language Modeling",
series={COLM},
pages="(to appear)",
year="2024",
month=oct,
address={University of Pennsylvania, USA},
}
@misc{ma:arxiv2025,
title={Building Instruction-Tuning Datasets from Human-Written Instructions with Open-Weight Large Language Models},
author={Youmi Ma and Sakae Mizuki and Kazuki Fujii and Taishi Nakamura and Masanari Ohi and Hinari Shimada and Taihei Shiotani and Koshiro Saito and Koki Maeda and Kakeru Hattori and Takumi Okamoto and Shigeki Ishida and Rio Yokota and Hiroya Takamura and Naoaki Okazaki},
year={2025},
eprint={2503.23714},
archivePrefix={arXiv},
primaryClass={cs.CL},
url={https://arxiv.org/abs/2503.23714},
}
参考文献
@misc{dubey2024llama3herdmodels,
title={The Llama 3 Herd of Models},
author={Abhimanyu Dubey and Abhinav Jauhri and Abhinav Pandey and Abhishek Kadian and Ahmad Al-Dahle and Aiesha Letman and Akhil Mathur and Alan Schelten and Amy Yang and Angela Fan et al.},
year={2024},
eprint={2407.21783},
archivePrefix={arXiv},
primaryClass={cs.AI},
url={https://arxiv.org/abs/2407.21783},
}
风险与限制
此处发布的模型仍处于我们研究和开发的早期阶段,尚未进行调整以确保输出符合人类意图和安全考虑。



