このクイックスタートでは、OpenAI 互換のチャット補完 API を使って、Novita AI で GLM 5.2 を呼び出す方法を紹介します。検証済みモデル ID zai-org/glm-5.2、Novita AI のベース URL を使用し、小さな最初のリクエストをテストしてから、モデルの 1,048,576 トークンのコンテキストウィンドウ、131,072 トークンの最大出力、ファンクションコーリング、構造化出力、推論サポート、または現在のモデル一覧に示されている Anthropic 互換エンドポイントを試します。
GLM 5.2 API クイックスタートの前提条件
GLM 5.2 は、Z.AI の長期自律型作業向けフラッグシップモデルです。Novita AI のモデルページでは、計画、実行、反復最適化、コーディング、プロダクションレベルの成果物の提供といった持続的なタスクのために構築されたモデルとして説明されています。開発者にとって実用的なポイントはシンプルです。GLM 5.2 は単なる短いチャットモデルではありません。モデルが大規模なタスク、コードベース、ドキュメントセット、エージェントの状態を把握するのに十分なコンテキストを必要とするワークフロー向けに位置づけられています。
Novita AI では、GLM 5.2 はサーバーレスモデル API を通じて公開されています。これは、GPU インフラを立ち上げたり、カスタム推論スタックを経由してトラフィックをルーティングしたり、自分で長いコンテキストのサーバーを管理したりせずにモデルを評価したい場合に重要です。Novita AI の API キー、OpenAI 互換エンドポイント、および正確なモデル ID を使用します。
zai-org/glm-5.2
現在の Novita AI LLM API ガイド は、チャットと補完タスクに対するプラットフォームの OpenAI 互換アプローチを説明しています。チャット補完 API リファレンス には、以下の例で使用する REST パスが記載されています。
https://api.novita.ai/openai/v1/chat/completions
モデル固有の詳細(コンテキスト長、最大出力、料金、モダリティ、サポートされているエンドポイントファミリーなど)についてはモデルページを参照してください。リクエストパラメータ、認証、ストリーミング、チャットメッセージ構造については API リファレンスを参照してください。
GLM 5.2 API の仕様と料金
Novita AI の現在の GLM 5.2 一覧には、長いコンテキストとエージェント指向の機能をサポートするサーバーレスのテキストイン・テキストアウトモデルが表示されています。
| フィールド | 現在の Novita AI の値 |
|---|---|
| 表示名 | GLM 5.2 |
| API モデル ID | zai-org/glm-5.2 |
| アクセスパス | サーバーレス |
| コンテキストウィンドウ | 1,048,576 トークン |
| 最大出力 | 131,072 トークン |
| 入力モダリティ | テキスト |
| 出力モダリティ | テキスト |
| エンドポイントファミリー | chat/completions、Anthropic 互換エンドポイント |
| ファンクションコーリング | 対応 |
| 構造化出力 | 対応 |
| 推論 | 対応 |
| 入力料金 | 100 万トークンあたり $1.40 |
| キャッシュ読み取り入力料金 | 100 万トークンあたり $0.26 |
| 出力料金 | 100 万トークンあたり $4.40 |
料金は 100 万トークンあたりで表示されています。簡単に見積もるには、プロンプトトークン数に入力レートを、生成トークン数に出力レートを掛けます。キャッシュ読み取り料金は、システムプロンプト、ツールスキーマ、ポリシーブロック、安定したリポジトリの要約など、同じ再利用可能なコンテキストをアプリケーションが繰り返し送信する場合にコストを削減できます。
たとえば、キャッシュされていない 100,000 入力トークンと 5,000 出力トークンのリクエストは次のように見積もられます。
| 要素 | 計算 | 推定コスト |
|---|---|---|
| 入力 | 0.1 百万トークン × $1.40 | $0.14 |
| 出力 | 0.005 百万トークン × $4.40 | $0.022 |
| 合計 | 入力 + 出力 | $0.162 |
これは単純なトークンレートの見積もりにすぎません。実際の本番コストは、プロンプトの再利用、リトライ、切り捨て、ストリーミング動作、応答長、およびアプリケーションがキャッシュ可能または要約可能な大きなコンテキストブロックを繰り返し含めるかどうかにも依存します。
最初の GLM 5.2 API リクエストの実行方法
最初は、完全な 100 万トークンのコンテキストウィンドウをテストする前に、小さなプロンプトから始めてください。これにより、認証、モデルルーティング、応答形式、レイテンシについて明確なベースラインが得られます。
OpenAI Python SDK をインストールし、Novita AI キーを環境変数に保存します。
pip install openai
export NOVITA_API_KEY="YOUR_NOVITA_API_KEY"
次に、Novita AI のベース URL を使用して GLM 5.2 を呼び出します。
import os
from openai import OpenAI
client = OpenAI(
api_key=os.environ["NOVITA_API_KEY"],
base_url="https://api.novita.ai/openai",
)
response = client.chat.completions.create(
model="zai-org/glm-5.2",
messages=[
{
"role": "system",
"content": "You are a practical software architecture assistant.",
},
{
"role": "user",
"content": "Review this migration plan and list the highest-risk steps.",
},
],
max_tokens=1200,
temperature=0.3,
)
print(response.choices[0].message.content)
直接 REST 呼び出しを希望する場合は、チャット補完パスを使用します。
curl --request POST \
--url https://api.novita.ai/openai/v1/chat/completions \
--header "Authorization: Bearer $NOVITA_API_KEY" \
--header "Content-Type: application/json" \
--data '{
"model": "zai-org/glm-5.2",
"messages": [
{
"role": "system",
"content": "You are a concise engineering reviewer."
},
{
"role": "user",
"content": "Create a release-risk checklist for a payments API change."
}
],
"max_tokens": 1200,
"temperature": 0.3
}'
長い応答の場合は、ストリーミングを有効にして、アプリケーションが完了前にトークンの受信を開始できるようにします。
import os
from openai import OpenAI
client = OpenAI(
api_key=os.environ["NOVITA_API_KEY"],
base_url="https://api.novita.ai/openai",
)
stream = client.chat.completions.create(
model="zai-org/glm-5.2",
messages=[
{
"role": "user",
"content": "Draft a phased plan for refactoring a monolith into services.",
}
],
max_tokens=2000,
temperature=0.3,
stream=True,
)
for chunk in stream:
delta = chunk.choices[0].delta.content
if delta:
print(delta, end="")
API キーをソース管理から遠ざけ、明示的な max_tokens 値を設定し、利用可能な場合は使用状況データをログに記録してください。長いコンテキストモデルでは非常に大きなプロンプトを簡単に送信できるため、コスト管理は最初のプロトタイプからプロンプトと補完のトークンを測定することから始まります。
GLM 5.2 を使用すべき場合
GLM 5.2 は、タスクが通常のチャットコンテキストでは大きすぎる場合や、モデルがツール、ファイル、構造化出力を使用して複数のステップを調整する必要がある場合に最適です。
評価に適したターゲットは以下の通りです。
- リポジトリ分析: アーキテクチャノート、ファイルマップ、依存関係の説明、選択したコード抜粋を 1 つのリクエストでモデルにレビューさせる。
- コーディングエージェント: エージェントが反復する間、タスクの目標、制約、ツールスキーマ、以前の決定、作業メモをコンテキストに保持する。
- 長文書の要約: ポリシー、技術仕様、契約書、研究ノート、製品ドキュメントを積極的に分割せずに要約する。
- 移行計画: システムマップ、制約、展開計画、リスク台帳をモデルに与え、ギャップや順序の問題を尋ねる。
- 構造化抽出: 長いソースドキュメントと厳格な JSON スキーマを組み合わせて、ダウンストリームシステムに渡す。
GLM 5.2 は、すべてのリクエストに自動的に適したモデルというわけではありません。短い分類、基本的なチャット、単純な抽出、または大量の低レイテンシトラフィックについては、Novita AI モデルライブラリ のより小さなモデルと、Novita AI 料金ページ の現在のレートを比較してください。100 万トークンモデルが最も価値があるのは、実際にそのコンテキスト、出力上限、またはエージェント指向機能が必要な場合です。
ファンクションコーリングと構造化出力
GLM 5.2 の一覧には、ファンクションコーリングと構造化出力のサポートが示されています。これらの機能は、モデルが単なる散文ではなく、アプリケーションが処理できるものを返す場合に役立ちます。
ファンクションコーリングは、アプリケーションが次のような制御されたツールを公開する場合に適しています。
- 顧客レコードの取得
- チケットのオープン
- デプロイステータスの確認
- 内部ナレッジベースの検索
- 見積もりの計算
- リクエストの専門サービスへのルーティング
以下は最小限のツール呼び出しパターンです。
import os
from openai import OpenAI
client = OpenAI(
api_key=os.environ["NOVITA_API_KEY"],
base_url="https://api.novita.ai/openai",
)
tools = [
{
"type": "function",
"function": {
"name": "create_release_ticket",
"description": "Create a release ticket after risk review.",
"parameters": {
"type": "object",
"properties": {
"title": {"type": "string"},
"risk_level": {
"type": "string",
"enum": ["low", "medium", "high"],
},
"summary": {"type": "string"},
},
"required": ["title", "risk_level", "summary"],
},
},
}
]
response = client.chat.completions.create(
model="zai-org/glm-5.2",
messages=[
{
"role": "user",
"content": "Assess this release and create a ticket if risk is medium or high.",
}
],
tools=tools,
tool_choice="auto",
max_tokens=1000,
)
print(response.choices[0].message)
構造化出力は、応答を予測可能なスキーマに合わせたい場合に便利です。JSON を要求する場合でも、アプリケーションで検証を維持してください。モデルの出力を生成された候補として扱い、解析し、必須フィールドを検証し、修復プロンプトまたはフォールバックパスでエラーを処理します。
ツール設計の詳細については、Novita AI のファンクションコーリングと構造化出力のガイド、および GLM に特化したGLM ファンクションコーリングのガイドを参照してください。
長いコンテキスト使用に関する本番環境の注意点
強調されているコンテキストウィンドウは上限であり、デフォルトの動作モードではありません。1,048,576 トークンのリクエストは有用な場合もありますが、ほとんどのアプリケーションはそのサイズに段階的に到達する必要があります。
以下の管理策から始めてください。
- プロンプトの予算化: 安定した指示、変動するユーザー入力、検索結果、ツールスキーマを分割して、どの部分がトークン数を押し上げているかを把握できるようにする。
- 詰め込む前に検索を使用する: まず最も関連性の高いファイルやパッセージを送信し、タスクでより多くの証拠が必要な場合にのみコンテキストを拡張する。
- 出力長を制限する: GLM 5.2 は高い最大出力をサポートしていますが、ほとんどのワークフローで 131,072 の生成トークンは必要ありません。最も小さな有用な値に
max_tokensを設定します。 - 長い応答はストリーミングする: ストリーミングはユーザーエクスペリエンスを向上させ、サービスが長い補完をより適切に処理できるようにします。
- 構造化結果を検証する: スキーマは曖昧さを減らしますが、アプリケーションでは依然としてパーサーチェック、リトライ、明確なエラー処理が必要です。
- キャッシュの機会を追跡する: 繰り返し使用されるコンテキストブロックは、毎回新しい入力として送信すると高くつく可能性があります。再利用可能なプロンプト、ポリシー、ツール定義を早期に特定します。
- 小規模モデルのフォールバックを用意する: 多くのルーティングシステムは、簡単なケースには小規模モデルを使用し、フルキャパシティが必要なタスクのために長いコンテキストモデルを確保します。
コーディングエージェントの場合、実用的なパターンの 1 つは、永続的なプロジェクトコンテキストをプロンプトの外に保持し、現在のタスクに関連するファイルのみを取得し、GLM 5.2 にオープンエンドのエッセイではなく、範囲を限定した計画やパッチレビューを生成させることです。これにより、コストを明確に保ちながら、モデルがシステムの重要な部分全体にわたって推論するのに十分なコンテキストを提供できます。
よくある質問
GLM 5.2 は Novita AI で利用できますか?
はい。GLM 5.2 は Novita AI でサーバーレスモデルとしてリストされており、API モデル ID は zai-org/glm-5.2 です。
Novita AI 上の GLM 5.2 のコンテキストウィンドウはどれくらいですか?
現在の Novita AI の一覧では、GLM 5.2 のコンテキストウィンドウは 1,048,576 トークンと表示されています。
GLM 5.2 の最大出力はどれくらいですか?
現在の Novita AI の一覧では、GLM 5.2 の最大出力は 131,072 トークンと表示されています。ワークフローが本当に非常に長い応答を必要としない限り、より小さな max_tokens 値を設定してください。
Novita AI での GLM 5.2 の料金はいくらですか?
現在の料金ページでは、GLM 5.2 は入力 100 万トークンあたり $1.40、キャッシュ読み取り入力 100 万トークンあたり $0.26、出力 100 万トークンあたり $4.40 と表示されています。
GLM 5.2 はファンクションコーリングをサポートしていますか?
はい。現在の GLM 5.2 の一覧にはファンクションコーリングのサポートが表示されています。モデルが制御されたアプリケーションツールから選択して自然言語テキストだけを返さないようにする場合に使用します。
GLM 5.2 は構造化出力をサポートしていますか?
はい。現在の GLM 5.2 の一覧には構造化出力のサポートが表示されています。生成された JSON またはスキーマ形式の応答は、ダウンストリームで使用する前にアプリケーション内で検証してください。
