🚀 Llama-3-Typhoon-1.5X-8B-instruct:泰语大语言模型(指令型)
Llama-3-Typhoon-1.5X-8B-instruct 是一款专为泰语 🇹🇭 设计的 80 亿参数指令模型。它展现出了与 GPT-3.5-turbo 相媲美的性能,并且针对 应用 用例、检索增强生成(RAG)、受限生成 以及 推理 任务进行了优化。
该模型基于 Typhoon 1.5 8B 和 Llama 3 8B Instruct 构建,是我们在 跨语言迁移 方面的实验成果。它采用了 任务算术模型编辑 技术,将 Typhoon 的泰语理解能力与 Llama 3 Instruct 的人类对齐性能相结合。
备注:为了认可 Meta 在创建基础模型方面的努力并遵守许可协议,我们在模型名称中明确包含了 “llama-3”。
🚀 快速开始
本模型是一个基于 Llama 架构的 80 亿参数指令型解码器模型,使用前需要安装 Transformers 4.38.0 或更新版本。
✨ 主要特性
- 专为泰语设计,在泰语和英语上均有良好表现。
- 与 GPT-3.5-turbo 具有竞争力的性能。
- 针对应用用例、检索增强生成、受限生成和推理任务进行了优化。
- 采用跨语言迁移和任务算术模型编辑技术。
📦 安装指南
使用该模型需要安装 Transformers 4.38.0 或更新版本:
pip install transformers>=4.38.0
💻 使用示例
基础用法
from transformers import AutoTokenizer, AutoModelForCausalLM
import torch
model_id = "scb10x/llama-3-typhoon-v1.5x-8b-instruct"
tokenizer = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained(
model_id,
torch_dtype=torch.bfloat16,
device_map="auto",
)
messages = [...]
input_ids = tokenizer.apply_chat_template(
messages,
add_generation_prompt=True,
return_tensors="pt"
).to(model.device)
terminators = [
tokenizer.eos_token_id,
tokenizer.convert_tokens_to_ids("<|eot_id|>")
]
outputs = model.generate(
input_ids,
max_new_tokens=512,
eos_token_id=terminators,
do_sample=True,
temperature=0.4,
top_p=0.95,
)
response = outputs[0][input_ids.shape[-1]:]
print(tokenizer.decode(response, skip_special_tokens=True))
高级用法
from transformers import AutoTokenizer, AutoModelForCausalLM
import torch
model_id = "scb10x/llama-3-typhoon-v1.5x-8b-instruct"
tokenizer = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained(
model_id,
torch_dtype=torch.bfloat16,
device_map="auto",
)
messages = [...]
input_ids = tokenizer.apply_chat_template(
messages,
add_generation_prompt=True,
return_tensors="pt"
).to(model.device)
terminators = [
tokenizer.eos_token_id,
tokenizer.convert_tokens_to_ids("<|eot_id|>")
]
outputs = model.generate(
input_ids,
max_new_tokens=1024,
eos_token_id=terminators,
do_sample=True,
temperature=0.7,
top_p=0.9,
)
response = outputs[0][input_ids.shape[-1]:]
print(tokenizer.decode(response, skip_special_tokens=True))
📚 详细文档
模型描述
属性 |
详情 |
模型类型 |
基于 Llama 架构的 80 亿参数指令型解码器模型 |
要求 |
Transformers 4.38.0 或更新版本 |
主要语言 |
泰语 🇹🇭 和英语 🇬🇧 |
许可证 |
Llama 3 社区许可证 |
性能评估
我们从 语言与知识能力 以及 指令遵循能力 两个方面对模型性能进行了评估。
语言与知识能力
使用多项选择题问答数据集(如 ThaiExam 和 MMLU)进行评估。
指令遵循能力
基于我们的内测用户反馈进行评估,主要关注两个因素:
- 人类对齐与推理:能够生成清晰且逻辑结构合理的多步骤响应。使用 MT-Bench 进行评估,该测试衡量了大语言模型如何回答嵌入式知识以符合人类需求。
- 指令遵循:能够遵循指令中指定的约束条件。使用 IFEval 进行评估,该测试衡量了大语言模型如何遵循指定的约束条件,如格式和简洁性。
备注:我们通过将原始数据集翻译成泰语并进行人工验证,开发了泰语数据集对。
ThaiExam 评估结果
模型 |
ONET |
IC |
TGAT |
TPAT-1 |
A-Level |
平均(ThaiExam) |
MMLU |
Typhoon-1.5 8B |
0.446 |
0.431 |
0.722 |
0.526 |
0.407 |
0.5028 |
0.6136 |
Typhoon-1.5X 8B |
0.478 |
0.379 |
0.722 |
0.5 |
0.435 |
0.5028 |
0.6369 |
gpt-3.5-turbo-0125 |
0.358 |
0.279 |
0.678 |
0.345 |
0.318 |
0.3956 |
0.700 |
注:我们报告的 MMLU 分数来自 GPT-4 技术报告。
MT-Bench 评估结果
模型 |
MT-Bench 泰语 |
MT-Bench 英语 |
Typhoon-1.5 8B |
6.402 |
7.275 |
Typhoon-1.5X 8B |
6.902 |
7.9 |
gpt-3.5-turbo-0125 |
6.186 |
8.181 |
IFEval 评估结果
模型 |
IFEval 泰语 |
IFEval 英语 |
Typhoon-1.5 8B |
0.548 |
0.676 |
Typhoon-1.5X 8B |
0.548 |
0.691 |
gpt-3.5-turbo-0125 |
0.479 |
0.659 |
洞察
我们使用了 模型编辑 技术,发现生成准确泰语答案的最关键特征位于后端(Transformer 块的上层)。因此,我们在这些后端层中融入了高比例的 Typhoon 组件,以提升模型性能。
聊天模板
我们使用 Llama 3 聊天模板:
{% set loop_messages = messages %}{% for message in loop_messages %}{% set content = '<|start_header_id|>' + message['role'] + '<|end_header_id|>\n\n'+ message['content'] | trim + '<|eot_id|>' %}{% if loop.index0 == 0 %}{% set content = bos_token + content %}{% endif %}{{ content }}{% endfor %}{% if add_generation_prompt %}{{ '<|start_header_id|>assistant<|end_header_id|>\n\n' }}{% endif %}
预期用途与限制
本模型仍处于实验阶段,可能未针对所有用例进行全面评估。开发者应根据具体应用场景评估风险。
关注我们
https://twitter.com/opentyphoon
支持
https://discord.gg/us5gAYmrxw
SCB 10X Typhoon 团队
- Kunat Pipatanakul、Potsawee Manakul、Sittipong Sripaisarnmongkol、Natapong Nitarach、Pathomporn Chokchainant、Kasima Tharnpipitchai
- 如果您发现 Typhoon-1.5X 对您的工作有帮助,请使用以下方式引用:
@article{pipatanakul2023typhoon,
title={Typhoon: Thai Large Language Models},
author={Kunat Pipatanakul and Phatrasek Jirabovonvisut and Potsawee Manakul and Sittipong Sripaisarnmongkol and Ruangsak Patomwong and Pathomporn Chokchainant and Kasima Tharnpipitchai},
year={2023},
journal={arXiv preprint arXiv:2312.13951},
url={https://arxiv.org/abs/2312.13951}
}
联系我们
📄 许可证
本模型使用 Llama 3 社区许可证。