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