🚀 Llama-3-Typhoon-1.5-8B: タイ語の大規模言語モデル (命令型)
Llama-3-Typhoon-1.5-8B-instructは、80億のパラメータを持つタイ語 🇹🇭 の命令型大規模言語モデルで、Llama3-8Bをベースに構築されています。

リリース記事については、ブログ をご覧ください。
*基礎モデルを作成する際のMetaの努力を認め、ライセンスに準拠するため、モデル名に明示的に "llama-3" を含めています。
📚 モデルの説明
属性 |
詳細 |
モデルタイプ |
Llamaアーキテクチャに基づく80億パラメータの命令型デコーダ専用モデル |
要件 |
transformers 4.38.0以上 |
主な言語 |
タイ語 🇹🇭 と英語 🇬🇧 |
ライセンス |
Llama 3 Community License |
💪 パフォーマンス
モデル |
ONET |
IC |
TGAT |
TPAT-1 |
A-Level |
平均 (タイ語試験) |
M3Exam |
MMLU |
Typhoon-1.0 (Mistral) |
0.379 |
0.393 |
0.700 |
0.414 |
0.324 |
0.442 |
0.391 |
0.547 |
Typhoon-1.5 8B (Llama3) |
0.446 |
0.431 |
0.722 |
0.526 |
0.407 |
0.506 |
0.460 |
0.614 |
Sailor 7B |
0.372 |
0.379 |
0.678 |
0.405 |
0.396 |
0.446 |
0.411 |
0.553 |
SeaLLM 2.0 7B |
0.327 |
0.311 |
0.656 |
0.414 |
0.321 |
0.406 |
0.354 |
0.579 |
OpenThaiGPT 1.0.0 7B |
0.238 |
0.249 |
0.444 |
0.319 |
0.289 |
0.308 |
0.268 |
0.369 |
SambaLingo-Thai-Chat 7B |
0.251 |
0.241 |
0.522 |
0.302 |
0.262 |
0.316 |
0.309 |
0.388 |
💻 使用例
基本的な使用法
from transformers import AutoTokenizer, AutoModelForCausalLM
import torch
model_id = "scb10x/llama-3-typhoon-v1.5-8b-instruct"
tokenizer = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained(
model_id,
torch_dtype=torch.bfloat16,
device_map="auto",
)
messages = [
{"role": "system", "content": "You are a helpful assistant who're always speak Thai."},
{"role": "user", "content": "ขอสูตรไก่ย่าง"},
]
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.9,
)
response = outputs[0][input_ids.shape[-1]:]
print(tokenizer.decode(response, skip_special_tokens=True))
💬 チャットテンプレート
私たちはllama3のチャットテンプレートを使用しています。
{% 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
👥 SCB10X AIチーム
- Kunat Pipatanakul, Potsawee Manakul, Sittipong Sripaisarnmongkol, Natapong Nitarach, Pathomporn Chokchainant, Kasima Tharnpipitchai
- Typhoon-8Bがあなたの作業に役立つ場合、以下のように引用してください。
@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}
}
📞 お問い合わせ