模型概述
模型特點
模型能力
使用案例
🚀 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},
}
風險與限制
此處發佈的模型仍處於我們研究和開發的早期階段,尚未進行調整以確保輸出符合人類意圖和安全考慮。



