Crescendo Lab ドキュメント デプロイ
日本語
無料で始める

モデルの自動選択

モデルに "auto" を指定すると、Gateway がタスクの難しさを判断し、ワークスペースで許可されたモデルを選びます。指定したモデルが差し替えられることはなく、どの応答にも応答したモデルが示されます。

最終更新

モデルを指定するか auto を使う#

model フィールドには、GET /v1/models のモデル名か auto を指定します。

model動作
autoGateway がタスクの難しさに応じて、ワークスペースで許可されたモデルを選びます。
モデル名そのモデルだけが応答します。他のモデルに差し替えられることはありません。
agentlab/…400 invalid_model で拒否されます。メッセージに有効な値が一覧されます。
Gateway が知らない名前404 model_not_found で拒否されます。メッセージに有効な値が一覧されます。
ワークスペースで除外されているモデル403 model_not_enabled で拒否されます。

/v1/chat/completions と /v1/responses は、どの会社のモデルかを問わず、許可されたすべてのモデルから選びます。/v1/messages は Claude のモデルだけを使い、OpenAI のモデルにしか処理できない Responses リクエスト(code_interpreter ツールを含むものなど)は OpenAI のモデルだけを使います。

Claude Code と Codex は送信前にモデル名を確認するため、auto を送れません。リクエストには実在するモデル名を入れたまま、ヘッダー X-AgentLab-Routing: auto を付けると、Gateway がモデルを選びます。ヘッダーの値は正確に auto で、1 回だけ送る必要があります。それ以外は 400 で拒否されます。

auto の選び方#

  1. タスクを判断 構造化出力を返せる、許可されている最も安価なモデルが、リクエストの短い抜粋(システムプロンプトの冒頭、最初と最新のユーザーメッセージ、ツール名。最大 8 KiB で、会話全体は読みません)を読み、タスクの種類と、複数のステップが必要かを判断します。
  2. モデルを選択 複数ステップの作業には、より強力なモデルを使います。定型的な分析、コーディング、計画には標準のモデルを使います。定型的な抽出、書き換え、会話には、許可されている最も安価なモデルを使います。
  3. 1 回のやり取りをそろえる 同じツールループの後続ステップは最初のステップのモデルを使い続けるので、暗号化された推論、thinking の署名、プロンプトキャッシュが有効なまま保たれます。

判断が失敗した場合、タイムアウトした場合(6 秒後)、または確信が持てない場合は、標準のモデルが応答します。判断できないときに auto がより安価なモデルを選ぶことはありません。

ワークスペースの月間支出上限の残りが 20% を切ると、複数ステップと判断された作業にも、より強力なモデルではなく標準のモデルを使います。

判断はそれ自体が 1 回のモデル呼び出しです。同じキーで記録・課金され、対象のリクエストにひも付けられます。

一部のプロバイダーだけを使う#

リクエストを特定の会社のモデルだけに限定するには、Chat Completions または Responses に OpenRouter と同じ形式で provider.only を指定します。

json
{
  "model": "auto",
  "provider": { "only": ["anthropic"] },
  "messages": [{ "role": "user", "content": "Hello" }]
}
  • プロバイダーとは、コンソールのモデル一覧に表示されるとおり、モデルを作っている会社です:anthropic、openai、google、meta、xai、deepseek、moonshot、mistral、zhipu、qwen、minimax、amazon、microsoft、cohere、black-forest-labs。anthropic には Amazon Bedrock と Google Vertex AI 上の Claude も含まれます。
  • auto、その判断、再試行、models の auto 項目は、これらのプロバイダーのモデルだけを使います。ワークスペースのモデル設定も引き続き適用されます。
  • 一覧にないモデルの指定、不明なプロバイダー、provider のその他のオプションは、400 で拒否され、param は provider.only(またはそのオプション名)です。一覧のプロバイダーのどのモデルもリクエストを処理できない場合も 400 で拒否され、メッセージに処理できるプロバイダーが示されます。
  • provider は Gateway だけが読み取り、モデルには送られません。

auto が選んだモデルを確認する#

応答したリクエストには、次のヘッダーが付きます。

ヘッダー値
X-Agentlab-Model応答したモデル。
X-Agentlab-Decision理由:モデルを指定した場合は requested_model、auto の場合は auto_assessed、auto_reused、auto_uncertain、auto_assessment_failed、auto_assessment_timeout、auto_budget_guard のいずれか。
X-Agentlab-Assessmentauto の場合の判断結果(analysis/multi_step など)。判断がなかった場合は unavailable。
X-Request-Idリクエストの ID。使用量のページやエクスポートに表示されるものと同じです。

Chat Completions では、応答したモデルが model に、理由が agentlab_decision.reason(auto または requested_model)にも返されます。