モデル紹介
GLM-4-9Bは、智谱 AIが発表した最新世代のプリトレインモデルシリーズGLM-4のオープンソースバージョンです。意味解釈、数学、推論、コード、知識など多岐にわたるデータセット評価において、GLM-4-9Bとその人間好みアライメントバージョンGLM-4-9B-Chatは高い性能を示しています。複数ラウンドの対話だけでなく、GLM-4-9B-Chatはウェブ閲覧、コード実行、カスタムツール呼び出し(Function Call)、ロングテキスト推論(最大128Kコンテキストをサポート)など高度な機能を持ちます。本世代のモデルでは多言語サポートが増加し、日本語、韓国語、ドイツ語を含む26言語をサポートしています。また、1Mコンテキスト長(約200万中国語文字)をサポートするモデルもリリースしました。
評価結果
私たちはGLM-4-9B-Chatモデルをいくつかのクラシックタスクで評価し、以下の結果を得ました:
モデル | AlignBench-v2 | MT-Bench | IFEval | MMLU | C-Eval | GSM8K | MATH | HumanEval | NCB |
---|---|---|---|---|---|---|---|---|---|
Llama-3-8B-Instruct | 5.12 | 8.00 | 68.58 | 68.4 | 51.3 | 79.6 | 30.0 | 62.2 | 24.7 |
ChatGLM3-6B | 3.97 | 5.50 | 28.1 | 66.4 | 69.0 | 72.3 | 25.7 | 58.5 | 11.3 |
GLM-4-9B-Chat | 6.61 | 8.35 | 69.0 | 72.4 | 75.6 | 79.6 | 50.6 | 71.8 | 32.2 |
長テキスト
1Mのコンテキスト長で「大海捞针」という実験を行った結果は以下の通りです:
LongBench-Chat上で長テキスト能力をさらに評価した結果は以下の通りです:
多言語能力
6つの多言語データセットでGLM-4-9B-ChatとLlama-3-8B-Instructをテストし、以下の結果を得ました。データセットと対応する選択された言語は以下の表の通りです。
Dataset | Llama-3-8B-Instruct | GLM-4-9B-Chat | Languages |
---|---|---|---|
M-MMLU | 49.6 | 56.6 | all |
FLORES | 25.0 | 28.8 | ru, es, de, fr, it, pt, pl, ja, nl, ar, tr, cs, vi, fa, hu, el, ro, sv, uk, fi, ko, da, bg, no |
MGSM | 54.0 | 65.3 | zh, en, bn, de, es, fr, ja, ru, sw, te, th |
XWinograd | 61.7 | 73.1 | zh, en, fr, jp, ru, pt |
XStoryCloze | 84.7 | 90.7 | zh, en, ar, es, eu, hi, id, my, ru, sw, te |
XCOPA | 73.3 | 80.1 | zh, et, ht, id, it, qu, sw, ta, th, tr, vi |
ツールコール能力 Berkeley Function Calling Leaderboardでテストを行い、以下の結果を得ました:
モデル | Overall Acc. | AST Summary | Exec Summary | Relevance |
---|---|---|---|---|
Llama-3-8B-Instruct | 58.88 | 59.25 | 70.01 | 45.83 |
gpt-4-turbo-2024-04-09 | 81.24 | 82.14 | 78.61 | 88.75 |
ChatGLM3-6B | 57.88 | 62.18 | 69.78 | 5.42 |
GLM-4-9B-Chat | 81.00 | 80.26 | 84.40 | 87.92 |
このリポジトリはGLM-4-9B-Chatのモデルリポジトリであり、128Kのコンテキスト長をサポートしています。
モデルの実行
更多推理代码和依赖信息,请访问我们的github。
依赖を厳密にインストールしてください。そうしないと、正常に実行できません。
transformersバックエンドを使用した推論:
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer
device = "cuda"
tokenizer = AutoTokenizer.from_pretrained("THUDM/glm-4-9b-chat", trust_remote_code=True)
query = "你好"
inputs = tokenizer.apply_chat_template([{"role": "user", "content": query}],
add_generation_prompt=True,
tokenize=True,
return_tensors="pt",
return_dict=True
)
inputs = inputs.to(device)
model = AutoModelForCausalLM.from_pretrained(
"THUDM/glm-4-9b-chat",
torch_dtype=torch.bfloat16,
low_cpu_mem_usage=True,
trust_remote_code=True
).to(device).eval()
gen_kwargs = {"max_length": 2500, "do_sample": True, "top_k": 1}
with torch.no_grad():
outputs = model.generate(**inputs, **gen_kwargs)
outputs = outputs[:, inputs['input_ids'].shape[1]:]
print(tokenizer.decode(outputs[0], skip_special_tokens=True))
vLLMバックエンドを使用した推論:
from transformers import AutoTokenizer
from vllm import LLM, SamplingParams
# GLM-4-9B-Chat-1M
# max_model_len, tp_size = 1048576, 4
# GLM-4-9B-Chat
# 如果遇见 OOM 现象,建议减少max_model_len,或者增加tp_size
max_model_len, tp_size = 131072, 1
model_name = "THUDM/glm-4-9b-chat"
prompt = [{"role": "user", "content": "你好"}]
tokenizer = AutoTokenizer.from_pretrained(model_name, trust_remote_code=True)
llm = LLM(
model=model_name,
tensor_parallel_size=tp_size,
max_model_len=max_model_len,
trust_remote_code=True,
enforce_eager=True,
# GLM-4-9B-Chat-1M 如果遇见 OOM 现象,建议开启下述参数
# enable_chunked_prefill=True,
# max_num_batched_tokens=8192
)
stop_token_ids = [151329, 151336, 151338]
sampling_params = SamplingParams(temperature=0.95, max_tokens=1024, stop_token_ids=stop_token_ids)
inputs = tokenizer.apply_chat_template(prompt, tokenize=False, add_generation_prompt=True)
outputs = llm.generate(prompts=inputs, sampling_params=sampling_params)
print(outputs[0].outputs[0].text)
ドルフィンAIは言語学習アプリケーションのためのプロフェッショナルな発音評価API(pronunciation assessment api)ソリューションを提供します。音素、単語、文章、チャプター、発音矯正、単語矯正、クイズ、フリーダイアログ、多肢選択問題など幅広く提供しています。当社の発音評価製品(pronunciation assessment)は、英語と中国語、クラウドAPI、オンプレミス、オフラインデバイスの展開をサポートしています。当社の発音評価API(pronunciation assessment api)は、正確性、流暢性、完全性、リズムの次元をカバーする豊富な評価指標を提供し、音素、単語、文の異なるレベルの評価スコアも提供します。また、音素、単語、文の異なるレベルでの評価スコアも提供します。数千万人のユーザーに安定した効率的で安全なサービスを提供しています。ドルフィンAIの発音評価製品(pronunciation assessment)を試してみませんか?