メインコンテンツへスキップ
クライアント接続の問題のほとんどは以下の四つのいずれかに起因します。つまり、ベースURLが欠落していたり逆に余分な /v1 が含まれていたり、model フィールドに登録済みのデプロイ名が入っていなかったり、該当デプロイ用のコネクターがオンライン状態でなかったり、クライアントが要求している機能(例えばツール呼び出し)をモデルがサポートしていなかったりします。根本的な問題があると早合点する前に、このページを順に確認してください。

私のクライアントはどのベースURLを使用するのでしょうか?

クライアントが利用するAPIの形式に応じてベースURLを選択します。クライアント側で残りのパス(/chat/completions、/responses、または /messages)が付加されるため、設定するのはルート部分のみです。
クライアントがどのスタイルを採用しているか不明な場合は、ANTHROPIC_BASE_URL(またはAnthropic SDK)を要求しているかどうかを確認してください。これが/v1を使わないケースです。それ以外でOpenAI形式のbase_urlやOPENAI_BASE_URLを利用する場合は、必ず/v1の接尾辞が必要です。

curlでは正常に動作するが、私のエージェントでは失敗する

単純なcurlリクエストは成功するのに、クライアントやフレームワーク、エージェントから同様の呼び出しを行うと失敗する場合は、以下の点を順に確認してください。
クライアントによってはルートURL(https://api.tokios.com/v1)のみを指定し、/chat/completionsを自動で付加するものもあれば、完全なパスをそのまま入力することを求めるものもあります。既に/chat/completionsや/responses、/messagesで終わるURLを、さらにパスを追加するフィールドにコピーした場合、パスが重複したり不適切な形式になったりします。上記表に記載されているルートURLをベースURLとして設定し、残りのパスはクライアント側で付加させるようにしてください。
エージェントフレームワークやコーディングアシスタントでは、単純なプロンプトであっても毎回tools配列を送信することが多いです。Tokiosはtools構造をそのままモデルへ渡しますが、モデル自体が関数呼び出しをサポートしている必要があります。対応していない場合、リクエストが失敗したり、ツールが無視されたりする可能性があります。クライアントのデバッグに入る前に、使用するモデルがツール呼び出しをサポートしているか確認してください。
The model field must be the public deployment name you registered in the console’s Models tab (for example, gemma-tunnel) — not the upstream model id your backend serves (for example, gemma:7b). A curl request with the correct deployment name will work while a client still configured with the backend’s local id returns a 404.

各エラーコードの意味について

トンネルが正常に機能しているかを別途確認する

クライアント側の設定をさらにデバッグする前に、問題の原因がクライアント側にあるのか、それともモデルやコネクター側にあるのかを特定しましょう。コンソールの Playground画面を開き、同じデプロイ先にテスト用のプロンプトを送信してください。この操作はログイン済みのセッション下で実行されるため、APIキーは不要です。もしプレイグラウンドで問題なく動作するなら、トンネルとモデルは正常であり、問題はクライアント側のベースURLやモデル指定値、リクエスト形式にあります。逆にプレイグラウンドでも失敗する場合は、問題はクライアントよりも上流側に存在します。その際はコネクターやデプロイ設定を確認してください。

次に行うべきこと

互換性のあるクライアント一覧

各クライアントで利用可能なベースURLおよびAPIキーの設定内容を一覧表にまとめたもの

Claude Code

Anthropic形式の設定に必要な環境変数およびモデル指定フラグ

SDKおよびフレームワーク

LangChain、LlamaIndex、Vercel AI SDK、Pydantic AIの設定方法

APIエンドポイント

各機能で利用可能なリクエストおよびレスポンスの仕様全般