GLM シリーズ
智譜(Zhipu)の GLM テキストモデルで、GLM-5.3、GLM-5.2、GLM-5.1、GLM-5 の各シリーズと、ビジョンモデルの GLM-5V Turbo があります。OpenAI 互換 API で呼び出せるほか、Anthropic ネイティブ API にも対応しており、Claude Code で使えます。
目的別ガイド
モデル
モデルの全一覧とリアルタイム価格はモデルページ を参照してください。Models API でも確認できます。モデル ID のプレフィックスは z-ai/ で、省略できます。
z-ai/glm-5.3テキストのみ、1M コンテキストz-ai/glm-5.3-flash画像入力に対応z-ai/glm-5.1テキストのみz-ai/glm-5v-turbo画像と PDF に対応GLM モデルは智譜の国際サイト(zai)から提供されており、一部のモデルは Alibaba Cloud Model Studio(百煉)や Volcano Engine などのプロバイダーからも提供されています。デフォルトでは自動で選択されます。指定方法はプロバイダールーティングを参照してください。
呼び出し例
Python
import os
from openai import OpenAI
client = OpenAI(base_url="https://api.ofox.ai/v1", api_key=os.environ["OFOX_API_KEY"])
resp = client.chat.completions.create(
model="z-ai/glm-5.1",
messages=[{"role": "user", "content": "冪等性とは何かを一文で説明してください。"}],
extra_body={"thinking": {"type": "disabled"}},
)
print(resp.choices[0].message.content)思考モード
すべての GLM モデルはデフォルトで思考が有効です。同じ数学の問題での思考量と所要時間の実測値は次のとおりです。
"thinking": {"type": "disabled"} を渡すと思考を無効にできます。実測では GLM-5.2、GLM-5.1、GLM-5、GLM-5 Turbo、GLM-5V Turbo、GLM-4.7 FlashX で有効で、所要時間が大幅に短くなりました(例:GLM-5 は約 4.5 分から約 10 秒に短縮)。OpenAI SDK では extra_body に入れてください。
思考トークンは出力単価で課金され、トークン数は usage.completion_tokens_details.reasoning_tokens で確認できます。
思考内容の読み取り
- ストリーミングのレスポンスでは、思考内容は
delta.reasoning_contentにあり、智譜の公式 API と同じです。 - 非ストリーミングのレスポンスでは、思考内容は
message.reasoning_detailsにあります。各要素のtextを順に連結してください。
Claude Code で使う
GLM モデルは Anthropic ネイティブ API に対応しています。URL は https://api.ofox.ai/anthropic です。
https://api.ofox.ai/anthropicz-ai/glm-5.3curl https://api.ofox.ai/anthropic/v1/messages \
-H "x-api-key: $OFOX_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-H "Content-Type: application/json" \
-d '{
"model": "z-ai/glm-5.3",
"max_tokens": 8000,
"messages": [{"role": "user", "content": "冪等性とは何かを一文で説明してください。"}]
}'- Anthropic API で呼び出す場合、思考内容は
thinkingブロックとして返されます。"thinking": {"type": "disabled"}で同様に思考を無効にできます(対象モデルは上記と同じ)。 - 思考を有効にする場合は、
max_tokensを十分に大きく設定し、クライアントのタイムアウトを 600 秒以上に設定してください。
Claude Code の設定手順の詳細は Claude Code の設定を参照してください。
画像と PDF
画像入力に対応したモデルでは、標準の image_url コンテンツブロックを使います。GLM-5V Turbo は file コンテンツブロックによる PDF の入力にも対応しています。
import base64
import os
from openai import OpenAI
client = OpenAI(base_url="https://api.ofox.ai/v1", api_key=os.environ["OFOX_API_KEY"])
img_b64 = base64.b64encode(open("photo.png", "rb").read()).decode()
resp = client.chat.completions.create(
model="z-ai/glm-5v-turbo",
messages=[{"role": "user", "content": [
{"type": "image_url", "image_url": {"url": f"data:image/png;base64,{img_b64}"}},
{"type": "text", "text": "この画像を説明してください。"},
]}],
extra_body={"thinking": {"type": "disabled"}},
)
print(resp.choices[0].message.content)GLM-5.3、GLM-5.2、GLM-5.1、GLM-5、GLM-5 Turbo はテキストのみに対応しています。画像を渡さないでください。
JSON 出力とツール呼び出し
response_format には {"type": "json_object"} を使い、プロンプトに「JSON で返す」ことと必要なフィールドを明記してください。ツール呼び出しには標準の tools パラメーターを使います。書き方は構造化出力と関数呼び出しを参照してください。
プロンプトキャッシュ
GLM は重複するリクエストのプレフィックスを自動でキャッシュするため、リクエストを変更する必要はありません。ヒット量は usage.prompt_tokens_details.cached_tokens で確認でき、ヒットした部分はキャッシュ読み取り単価で課金されます。
よくあるエラー
その他の共通エラーは Error Handling を参照してください。
公式ドキュメント
公式ドキュメントは智譜に直接リクエストした場合の動作を説明しています。OfoxAI 経由で呼び出す場合、モデル ID とエンドポイントの URL はこのページに従ってください。
よくある質問
GLM のモデル ID はどう書けばよいですか?
標準表記は z-ai/glm-5.3 です。プレフィックスを省略して glm-5.3 と書くこともできます。zhipu/glm-5.3 と書くと 404 を返します。
GLM の思考はどう無効にしますか?
"thinking": {"type": "disabled"} を渡します。OpenAI SDK では extra_body に入れます。実測では GLM-5.2、5.1、5、5 Turbo、5V Turbo で有効です。
GLM の応答が遅く、数分待たされます。
GLM はデフォルトで思考が有効で、GLM-5 と GLM-5 Turbo は複雑な質問で 1 万トークン以上思考し、数分かかる場合があります。思考が不要な場合は無効にするか、思考量の少ない GLM-5.3 Flash に切り替えてください。
Claude Code で GLM を使えますか?
使えます。ANTHROPIC_BASE_URL を https://api.ofox.ai/anthropic に設定し、モデルに z-ai/glm-5.3 などの GLM のモデル ID を指定してください。
GLM で画像を認識できるモデルはどれですか?
GLM-5.3 Flash、GLM-5.3 FlashX、GLM-5V Turbo が画像入力に対応しており、GLM-5V Turbo は PDF にも対応しています。その他の GLM モデルはテキストのみに対応しています。
GLM で Prompt 超长 エラーが出ます。
入力がモデルのコンテキストを超えています。GLM-5.3 シリーズと GLM-5.2 は 1M トークン、その他は 200K トークンです。