Model Not Found:API エラーを診断して修正する方法

endpoint、プロトコル、API Key、Model ID、alias、override、状態、request ID を通じて model not found を追跡します。

model not found エラーは、現在の endpoint と API Key の文脈でサーバーが指定された Model ID を解決できなかったことを意味します。タイプミス、古い alias、誤ったプロトコル、アクセス不足、設定 override が原因になり得ます。status と request ID を記録し、Base URL から key、model までの連鎖を確認してください。名前を無作為に選んでも元のエラーを隠すだけです。

設定を変更する前に保存するもの

まず短い診断カードを記録します。

time: 2026-08-03T12:00:00Z client: your-client-and-version protocol: openai-compatible | anthropic-compatible base_url: https://example.com/v1 model: MODEL_ID_FROM_CONFIG http_status: 404 provider_code: model_not_found request_id: req_...

API Key、完全な prompt、回答はカードに入れません。IDE または Agent ツールで発生したなら、設定ファイル名と環境変数の有無も別に記録します。実際にどの値がサーバーへ送られたかを把握できます。

現在のモデルカタログで診断をやり直しますか? 自分の BetterToken アカウントと API Key を作成し、API referenceで endpoint と Model ID を確認してから、最小リクエストを一つ実行できます。BetterToken では endpoint 種別、Base URL、Key group、現在の Model ID が一致しなければなりません。現在の名前はドキュメントまたはモデルと料金ページから取得し、Dashboard で結果を確認してください。

ステップ 1:Base URL と path を確認する

設定の一行だけでなく、リクエストの最終 URL を確認します。SDK は /v1/models/chat/completions/responses/messages を独自に追加することがあります。

よくある問題は次のとおりです。

  • Base URL にすでにリソース path があり、SDK が二重に追加する。
  • /v1 がない、または重複している。
  • OpenAI client が Anthropic-compatible の address へ送信している。
  • 環境変数が config の Base URL を上書きしている。
  • アプリケーションが別の profile または workspace を使っている。

BetterToken OpenAI-compatible ではツールは /v1 を含む Base URL を使います。Anthropic SDK と Claude Code は /v1 を含まない address を使い、完全な Messages path は別に作られます。修正前に必ず対象ツールの現在のページを確認してください。

ステップ 2:実際に使われる API Key を確認する

同じ画面でも複数の credential を保存できます。model error が選択した Key のアクセス不足を隠していることがあります。

確認する項目:

  1. client が key を読む credential または環境変数。
  2. 余分な空白や改行がないこと。
  3. Key がプロトコルとモデル group に対応すること。
  4. project config が global setting を上書きしていないこと。
  5. Key が期限切れまたは失効していないこと。

echo、debug log、スクリーンショットで key を出力しないでください。credential 比較には、安全な profile 名または UI 自身が示す fingerprint の末尾だけで十分です。

ステップ 3:現在の Model ID を取得する

OpenAI-compatible endpoint にはモデル一覧があることが多いです。安全な診断リクエストは次のようになります。

curl "$OPENAI_BASE_URL/models" \ -H "Authorization: Bearer $OPENAI_API_KEY"

このコマンドは環境変数を使うため、実際の key を本文に含みません。endpoint ドキュメントが /models を確認している場合だけ適しています。

別のプロトコルや client では provider の公式 directory を使います。大文字小文字、空白、suffix を変えず id field をコピーしてください。marketing model name と API Model ID は異なることがあります。

一覧が開いても希望の model がなければ、選択 Key と catalog を確認します。/models 自体がエラーなら、まず endpoint または authorization を直してください。

ステップ 4:alias と legacy setting を見つける

Model ID は複数の場所から来る可能性があります。

  • project config。
  • global client config。
  • 環境変数。
  • UI profile。
  • command-line flag。
  • 保存済み session。
  • routing または model-mapping gateway。

repository を検索すると古い値を見つけやすくなります。

rg -n --hidden --glob '!node_modules' --glob '!.git' \ 'OLD_MODEL_ID|model[[:space:]]*=' .

検索では secret を含む config file も見つかることがあります。出力全体を公開しないでください。client が読む source だけを修正します。

設定の優先順位はclientごとに異なります。対象ツールの現在のドキュメントでproject、global、environment、CLIの順序を確認してください。provider settingがcacheされる場合は変更後にclientを再起動するか新しいsessionを開きます。

ステップ 5:model error と access error を分ける

互換 API の HTTP code は一致するとは限らないため、error body も確認します。

  • 401: まず credential と authorization format を確認します。
  • 403: model は存在しても現在の Key に access がない可能性があります。
  • 404: path、endpoint、Model ID のどれかの可能性があります。
  • 400: server が model field または別の request parameter を拒否した可能性があります。
  • 429 / 5xx: 通常は別カテゴリです。追加の signal なしに Model ID を変えないでください。

UI の model not found は client による言い換えの場合があります。元の HTTP status、provider code、request ID を確認します。

最小の再テスト

修正後は streaming と tools を使わない短いリクエストを一つ送ります。OpenAI-compatible Chat Completions では次の形にできます。

curl "$OPENAI_BASE_URL/chat/completions" \ -H "Authorization: Bearer $OPENAI_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "model": "MODEL_ID_FROM_CURRENT_CATALOG", "messages": [{"role": "user", "content": "Reply with OK"}], "max_tokens": 8 }'

field と endpoint は provider のドキュメントに一致させる必要があります。この例を適応せず Anthropic Messages に移してはいけません。

成功した確認には四つの一致があります。

  • HTTP status が成功を示す。
  • response が期待する Model ID または文書化された version を示す。
  • request が Dashboard に現れる。
  • time、status、usage がテストに一致する。

短い query が動くのに IDE が model not found を表示し続けるなら、server configuration はすでに修正されています。client 内の override または cache を探してください。

短いチェックリスト

  • status、provider code、request ID を保存した。
  • final URL を確認し、/v1 と resource path の二重化がない。
  • client が期待する credential を使う。
  • current catalog から Model ID を取得した。
  • project、global、environment override を確認した。
  • tools と stream なしで最小リクエストを実行した。
  • request を Dashboard に対応付けた。

BetterTokenではModel IDを置き換える前にAPI referenceと現在のモデルカタログを確認してください。似た名前を探すより速く安全です。

FAQ

サイトには model が見えるのに API は model not found を返すのはなぜですか?

別のprotocol、Key group、古いsession、marketing nameとAPI IDの不一致があり得ます。現在のcredentialに対するmodel listを確認してください。

request を繰り返すと解決しますか?

タイプミスまたは誤った endpoint なら解決しません。まず configuration を直します。retry は status と provider code が一時的エラーを確認した場合だけ適切です。

model list を config に永久保存できますか?

選択した ID を管理設定として保存し、ときどき current catalog と比べてください。availability と alias は変わることがあります。

curl は動くのに application が動かないのはなぜですか?

application が別の Base URL、credential、Model ID を読む可能性があります。final request を比較し、project-level override、環境変数、保存 profile を確認してください。

Sources

LLM ワークフローを最適化しませんか?

単一 API でモデルを接続し、キーと AI コストを管理できます。