language:
- en
- ja
library_name: transformers
pipeline_tag: text-generation
license: llama2
model_type: llama
燕子模型(Swallow)
我们的燕子模型基于Llama 2系列进行持续预训练,主要增加了日语数据支持。调优版本采用监督式微调(SFT)技术。其他模型索引可通过下方链接查看。
模型发布动态
最新模型发布计划如下:
模型索引表
NVE版模型索引(无词表扩展)

本仓库提供由东京工业大学LLM团队开发的大语言模型。欢迎阅读技术博客或学术论文
模型详情
- 架构类型:详见LLaMA-2技术报告
- 支持语言:日语/英语
- 训练框架:Megatron-LM
- 分词器:采用日语优化的扩展词表,显著提升文本编码效率
- 联系邮箱:swallow[at]nlp.c.titech.ac.jp
基准测试表现
日语任务
模型 |
参数量 |
常识推理 |
开放问答 |
阅读理解 |
摘要生成 |
数学推理 |
日英翻译 |
英日翻译 |
|
|
JCommonsenseQA |
JEMHopQA |
JSQuAD |
XL-Sum |
MGSM |
WMT20-ja-en |
WMT20-en-ja |
Llama 2 |
7B |
38.52% |
42.40% |
79.17% |
19.05% |
7.60% |
17.38% |
17.83% |
燕子7B |
7B |
48.08% |
50.78% |
85.73% |
18.30% |
12.40% |
15.11% |
25.10% |
7B增强版 |
7B |
54.78% |
54.93% |
85.44% |
18.06% |
13.60% |
14.41% |
25.68% |
7B-NVE |
7B |
54.33% |
54.25% |
86.84% |
21.17% |
12.00% |
15.12% |
24.05% |
Llama 2 |
13B |
69.97% |
44.15% |
85.33% |
21.39% |
13.20% |
19.82% |
21.46% |
燕子13B |
13B |
78.37% |
50.63% |
90.05% |
21.68% |
20.40% |
17.71% |
27.20% |
13B-NVE |
13B |
77.12% |
54.38% |
90.30% |
22.94% |
21.20% |
18.17% |
27.35% |
Llama 2 |
70B |
86.86% |
46.56% |
90.80% |
23.61% |
35.60% |
23.98% |
26.43% |
燕子70B |
70B |
93.48% |
62.90% |
91.76% |
22.66% |
48.40% |
22.98% |
30.43% |
70B-NVE |
70B |
94.10% |
57.59% |
92.54% |
27.58% |
47.20% |
23.22% |
30.42% |
英语任务
模型 |
参数量 |
OpenBookQA |
TriviaQA |
HellaSwag |
SQuAD2.0 |
XWINO |
GSM8K |
Llama 2 |
7B |
35.80% |
62.65% |
58.60% |
32.07% |
90.49% |
14.10% |
燕子7B |
7B |
31.80% |
48.36% |
53.08% |
31.25% |
88.17% |
11.30% |
7B增强版 |
7B |
32.80% |
45.58% |
52.59% |
31.34% |
89.29% |
10.61% |
7B-NVE |
7B |
31.80% |
50.79% |
53.29% |
29.19% |
88.17% |
9.86% |
Llama 2 |
13B |
37.60% |
72.55% |
61.48% |
36.81% |
91.40% |
24.03% |
燕子13B |
13B |
35.00% |
58.52% |
56.60% |
34.06% |
90.75% |
20.39% |
13B-NVE |
13B |
34.60% |
60.25% |
57.00% |
34.78% |
90.06% |
17.51% |
Llama 2 |
70B |
42.80% |
82.39% |
67.42% |
37.70% |
92.90% |
52.84% |
燕子70B |
70B |
42.20% |
77.56% |
64.58% |
37.45% |
92.04% |
48.67% |
70B-NVE |
70B |
42.40% |
78.17% |
64.39% |
34.51% |
92.56% |
49.43% |
评估体系
日语评估基准
采用llm-jp-eval(v1.0.0)和JP Language Model Evaluation Harness评估框架,包含:
- 选择题(JCommonsenseQA)
- 开放问答(JEMHopQA/NIILC)
- 机器阅读理解(JSQuAD)
- 自动摘要(XL-Sum)
- 机器翻译(WMT2020)
- 数学推理(MGSM)
英语评估基准
使用Language Model Evaluation Harness(v0.3.0)测试:
- 选择题(OpenBookQA)
- 开放问答(TriviaQA)
- 阅读理解(SQuAD 2.0)
- 常识推理(XWINO)
- 自然语言推理(HellaSwag)
- 数学推理(GSM8k)
使用指南
首先安装依赖项:
pip install -r requirements.txt
指令模型调用示例
import torch
from transformers import AutoTokenizer, AutoModelForCausalLM
model_name = "tokyotech-llm/Swallow-7b-instruct-hf"
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForCausalLM.from_pretrained(model_name, torch_dtype=torch.bfloat16, device_map="auto")
PROMPT_TEMPLATE = """以下に、あるタスクを説明する指示があり、それに付随する入力が更なる文脈を提供しています。
リクエストを適切に完了するための回答を記述してください。
### 指示:
{instruction}
### 入力:
{input}
### 応答:"""
instruction = "以下のトピックに関する詳細な情報を提供してください"
input_text = "東京工業大学の主なキャンパスについて教えてください"
prompt = PROMPT_TEMPLATE.format(instruction=instruction, input=input_text)
input_ids = tokenizer.encode(prompt, return_tensors="pt")
output = model.generate(input_ids.to(model.device), max_new_tokens=128)
print(tokenizer.decode(output[0], skip_special_tokens=True))
基础模型调用示例
model_name = "tokyotech-llm/Swallow-7b-hf"
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForCausalLM.from_pretrained(model_name, torch_dtype=torch.bfloat16, device_map="auto")
prompt = "東京工業大学の主なキャンパスは、"
input_ids = tokenizer.encode(prompt, return_tensors="pt")
output = model.generate(input_ids.to(model.device), max_new_tokens=128)
print(tokenizer.decode(output[0], skip_special_tokens=True))
训练数据
持续预训练数据源
- 日语维基百科
- RefinedWeb英文语料
- 燕子专用语料库
- The Pile多语言数据集
指令微调数据源
- Anthropic HH-RLHF日文版
- Databricks Dolly日文版
- OpenAssistant对话数据集日文版
风险声明
当前发布版本仍属早期研究成果,输出内容可能存在未对齐人类价值观的情况。
致谢
特别感谢Meta Research开源LLaMA 2模型基础架构。
本项目获得日本产业技术综合研究所ABCI大语言模型支持计划资助。
许可协议
基于LL