Llama 3 Swallow 8B Instruct V0.1
基於Meta Llama 3構建的日語優化大語言模型,通過持續預訓練增強日語能力,採用監督微調提升指令跟隨能力
下載量 13.88k
發布時間 : 6/26/2024
模型概述
Llama3 Swallow是基於Llama 3系列進行持續預訓練的日語優化模型,主要增加了日語數據並採用SFT微調,支持日語和英語的多語言任務處理
模型特點
日語優化
通過持續預訓練增強日語處理能力,在日語基準測試中表現優異
多語言支持
同時支持日語和英語,能處理跨語言任務
指令微調
採用監督微調(SFT)和聊天向量技術,提升指令跟隨能力
高性能
在日語和英語的各項基準測試中均取得優異成績
模型能力
日語文本生成
英語文本生成
機器翻譯
問答系統
代碼生成
文本摘要
數學推理
使用案例
內容創作
日語故事創作
生成符合日語文化背景的創意故事
如示例中生成的燕與羊駝的溫馨故事
教育
日語學習輔助
幫助學習者理解和生成日語內容
商業應用
日語客服機器人
構建日語環境下的智能客服系統
🚀 Llama3 Swallow - 基於Meta Llama 3構建
Llama3 Swallow模型基於 Llama 3系列 進行持續預訓練,主要增加了日語數據。指令版本使用了監督微調(SFT)和聊天向量技術。其他模型的鏈接可在索引中找到。
🚀 快速開始
pip install vllm
from transformers import AutoTokenizer
from vllm import LLM, SamplingParams
model_name = "tokyotech-llm/Llama-3-Swallow-8B-Instruct-v0.1"
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)
✨ 主要特性
- 多語言支持:支持日語和英語,能夠處理不同語言的任務。
- 持續預訓練:基於Llama 3系列進行持續預訓練,增強了模型的性能。
- 指令微調:使用監督微調(SFT)和聊天向量技術,提升了模型的指令跟隨能力。
📦 安裝指南
使用以下命令安裝所需庫:
pip install vllm
💻 使用示例
基礎用法
from transformers import AutoTokenizer
from vllm import LLM, SamplingParams
model_name = "tokyotech-llm/Llama-3-Swallow-8B-Instruct-v0.1"
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)
📚 詳細文檔
模型詳情
屬性 | 詳情 |
---|---|
模型類型 | 請參考 Llama 3 MODEL_CARD 瞭解模型架構詳情。 |
語言 | 日語、英語 |
庫 | Megatron-LM |
分詞器 | 請參考 Llama 3博客 瞭解分詞器詳情。 |
聯繫方式 | 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 | |||
calm2-7b-chat | 7B | 0.2413 | 0.5128 | 0.4956 | 0.7729 | 0.0551 | 0.0480 | 0.2208 | 0.1384 | 0.2482 | 0.0000 | 0.2733 |
Swallow-7b-instruct-v0.1 | 7B | 0.6059 | 0.4760 | 0.5284 | 0.8396 | 0.1546 | 0.1360 | 0.2285 | 0.1783 | 0.3510 | 0.0256 | 0.3524 |
Swallow-MS-7b-instruct-v0.1 | 7B | 0.7435 | 0.5066 | 0.4268 | 0.8594 | 0.1582 | 0.1760 | 0.2260 | 0.1880 | 0.4177 | 0.2244 | 0.3927 |
RakutenAI-7B-chat | 7B | 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 | 7B | 0.8856 | 0.3902 | 0.3859 | 0.8967 | 0.1277 | 0.5720 | 0.2041 | 0.1909 | 0.5713 | 0.5683 | 0.4793 |
Meta-Llama-3-8B-Instruct | 8B | 0.8785 | 0.3812 | 0.3936 | 0.8955 | 0.1273 | 0.4160 | 0.2143 | 0.2035 | 0.4719 | 0.2872 | 0.4269 |
Llama-3-ELYZA-JP-8B | 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-Swallow-8B-Instruct-v0.1 | 8B | 0.9178 | 0.4963 | 0.5168 | 0.9088 | 0.1296 | 0.4880 | 0.2522 | 0.2254 | 0.4835 | 0.3927 | 0.4811 |
英語任務
模型 | 大小 | 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 | |||
calm2-7b-chat | 7B | 0.2860 | 0.3528 | 0.5042 | 0.2524 | 0.8413 | 0.3860 | 0.0546 | 0.2990 | 0.0000 | 0.3307 |
Swallow-7b-instruct-v0.1 | 7B | 0.3280 | 0.4810 | 0.5501 | 0.2720 | 0.8774 | 0.4066 | 0.1251 | 0.3646 | 0.0866 | 0.3879 |
Swallow-MS-7b-instruct-v0.1 | 7B | 0.3600 | 0.4999 | 0.5858 | 0.3030 | 0.8834 | 0.5273 | 0.2108 | 0.4386 | 0.2512 | 0.4511 |
RakutenAI-7B-chat | 7B | 0.4160 | 0.5971 | 0.6465 | 0.3091 | 0.8886 | 0.5757 | 0.3139 | 0.4958 | 0.2671 | 0.5011 |
Qwen2-7B-Instruct | 7B | 0.4000 | 0.5468 | 0.6146 | 0.3518 | 0.8852 | 0.7073 | 0.6300 | 0.3101 | 0.6354 | 0.5646 |
Meta-Llama-3-8B-Instruct | 8B | 0.3880 | 0.6687 | 0.5834 | 0.3743 | 0.8903 | 0.6567 | 0.7453 | 0.6478 | 0.5415 | 0.6107 |
Llama-3-ELYZA-JP-8B | 8B | 0.3200 | 0.5502 | 0.5224 | 0.3631 | 0.8809 | 0.5875 | 0.5701 | 0.3213 | 0.4604 | 0.5084 |
Llama-3-Swallow-8B-Instruct-v0.1 | 8B | 0.3720 | 0.6557 | 0.5861 | 0.3648 | 0.9002 | 0.6315 | 0.5959 | 0.6391 | 0.4238 | 0.5743 |
MT-Bench JA
模型 | 大小 | coding | extraction | humanities | math | reasoning | roleplay | stem | writing | JMTAvg |
---|---|---|---|---|---|---|---|---|---|---|
calm2-7b-chat | 7B | 0.1198 | 0.3793 | 0.4231 | 0.1011 | 0.1799 | 0.4760 | 0.3568 | 0.4583 | 0.3118 |
Swallow-7b-instruct-v0.1 | 7B | 0.1947 | 0.3156 | 0.4991 | 0.1900 | 0.2141 | 0.5330 | 0.4535 | 0.4624 | 0.3578 |
Swallow-MS-7b-instruct-v0.1 | 7B | 0.2235 | 0.3743 | 0.4611 | 0.1060 | 0.3404 | 0.4287 | 0.3969 | 0.3877 | 0.3398 |
RakutenAI-7B-chat | 7B | 0.2475 | 0.3522 | 0.4692 | 0.2140 | 0.3926 | 0.4427 | 0.3977 | 0.4434 | 0.3699 |
Qwen2-7B-Instruct | 7B | 0.4635 | 0.6909 | 0.6857 | 0.5970 | 0.5042 | 0.6667 | 0.5353 | 0.6808 | 0.6030 |
Meta-Llama-3-8B-Instruct | 8B | 0.3744 | 0.6876 | 0.6225 | 0.2070 | 0.5032 | 0.5248 | 0.5326 | 0.4884 | 0.4926 |
Llama-3-ELYZA-JP-8B | 8B | 0.2908 | 0.6421 | 0.6406 | 0.3088 | 0.5500 | 0.6740 | 0.5251 | 0.6744 | 0.5382 |
Llama-3-Swallow-8B-Instruct-v0.1 | 8B | 0.3547 | 0.6508 | 0.5371 | 0.2718 | 0.4007 | 0.5493 | 0.4752 | 0.5730 | 0.4766 |
評估基準
日語評估基準
我們使用了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-Lederboard NEO, mtbench_ja_prompt_v1
- 評判模型:
gpt-4-1106-preview
- 評分方式:絕對尺度歸一化到0 - 1範圍,五次運行取平均值。
訓練數據集
指令微調
以下數據集用於指令微調:
- OpenAssistant Conversations Dataset EN top-1 thread
- OpenAssistant Conversations Dataset,使用其中的人類發言,但不使用回覆。回覆使用 Mixtral-8x7B-Instruct-v0.1 模型生成。
🔧 技術細節
本項目基於 Megatron-LM 庫進行開發,模型架構請參考 Llama 3 MODEL_CARD,分詞器詳情請參考 Llama 3博客。
📄 許可證
META LLAMA 3 COMMUNITY LICENSE
作者
以下是團隊成員:
- 來自 東京工業大學岡崎實驗室 的成員:
- 來自 東京工業大學橫田實驗室 的成員:
- 來自 日本產業技術綜合研究所人工智能研究中心 的成員:
如何引用
如果您覺得我們的工作有幫助,請隨意引用我們:
@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},
}
引用文獻
@article{llama3modelcard,
title={Llama 3 Model Card},
author={AI@Meta},
year={2024},
url = {https://github.com/meta-llama/llama3/blob/main/MODEL_CARD.md}
}
致謝
感謝Meta Research以開放許可協議發佈Llama 3,使我們能夠在此基礎上進行開發。
我們的項目得到了日本產業技術綜合研究所 大型生成式AI開發支持計劃 的支持。
⚠️ 重要提示
此處發佈的模型仍處於研究和開發的早期階段,尚未進行調整以確保輸出符合人類意圖和安全考慮。
💡 使用建議
在使用模型時,請根據實際需求選擇合適的模型大小和參數設置,以獲得最佳性能。
Phi 2 GGUF
其他
Phi-2是微軟開發的一個小型但強大的語言模型,具有27億參數,專注於高效推理和高質量文本生成。
大型語言模型 支持多種語言
P
TheBloke
41.5M
205
Roberta Large
MIT
基於掩碼語言建模目標預訓練的大型英語語言模型,採用改進的BERT訓練方法
大型語言模型 英語
R
FacebookAI
19.4M
212
Distilbert Base Uncased
Apache-2.0
DistilBERT是BERT基礎模型的蒸餾版本,在保持相近性能的同時更輕量高效,適用於序列分類、標記分類等自然語言處理任務。
大型語言模型 英語
D
distilbert
11.1M
669
Llama 3.1 8B Instruct GGUF
Meta Llama 3.1 8B Instruct 是一個多語言大語言模型,針對多語言對話用例進行了優化,在常見的行業基準測試中表現優異。
大型語言模型 英語
L
modularai
9.7M
4
Xlm Roberta Base
MIT
XLM-RoBERTa是基於100種語言的2.5TB過濾CommonCrawl數據預訓練的多語言模型,採用掩碼語言建模目標進行訓練。
大型語言模型 支持多種語言
X
FacebookAI
9.6M
664
Roberta Base
MIT
基於Transformer架構的英語預訓練模型,通過掩碼語言建模目標在海量文本上訓練,支持文本特徵提取和下游任務微調
大型語言模型 英語
R
FacebookAI
9.3M
488
Opt 125m
其他
OPT是由Meta AI發佈的開放預訓練Transformer語言模型套件,參數量從1.25億到1750億,旨在對標GPT-3系列性能,同時促進大規模語言模型的開放研究。
大型語言模型 英語
O
facebook
6.3M
198
1
基於transformers庫的預訓練模型,適用於多種NLP任務
大型語言模型
Transformers

1
unslothai
6.2M
1
Llama 3.1 8B Instruct
Llama 3.1是Meta推出的多語言大語言模型系列,包含8B、70B和405B參數規模,支持8種語言和代碼生成,優化了多語言對話場景。
大型語言模型
Transformers 支持多種語言

L
meta-llama
5.7M
3,898
T5 Base
Apache-2.0
T5基礎版是由Google開發的文本到文本轉換Transformer模型,參數規模2.2億,支持多語言NLP任務。
大型語言模型 支持多種語言
T
google-t5
5.4M
702
精選推薦AI模型
Llama 3 Typhoon V1.5x 8b Instruct
專為泰語設計的80億參數指令模型,性能媲美GPT-3.5-turbo,優化了應用場景、檢索增強生成、受限生成和推理任務
大型語言模型
Transformers 支持多種語言

L
scb10x
3,269
16
Cadet Tiny
Openrail
Cadet-Tiny是一個基於SODA數據集訓練的超小型對話模型,專為邊緣設備推理設計,體積僅為Cosmo-3B模型的2%左右。
對話系統
Transformers 英語

C
ToddGoldfarb
2,691
6
Roberta Base Chinese Extractive Qa
基於RoBERTa架構的中文抽取式問答模型,適用於從給定文本中提取答案的任務。
問答系統 中文
R
uer
2,694
98