🚀 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 社區許可證。