短い回答
これは完全に正常で、モデルの機能には影響しません。モデルの名前は、学習が完了したあとに付与されます。つまり、モデル自身が自分のアイデンティティを「学習する」ことはありません。公式のウェブアプリ(claude.ai や chatgpt.com など)は、モデルに「自分が何者か」を伝える組み込みのシステムプロンプトを含んでいるため、正しく答えられます。API呼び出しには、デフォルトではこの情報が含まれないため、モデルは自分のバージョンを「間違って推測」してしまうことがあります。
実例
シンプルなたとえ
俳優のたとえ
熟練した俳優を想像してください:
- その スキル は、長年の訓練(モデルの学習プロセスのようなもの)によって身につきます
- その 役名 は、撮影前に監督から伝えられます(System Prompt のようなものです)
- もし誰も自分がどの役を演じるのか伝えなければ、才能はあっても 自分の役名は分かりません
技術解説
モデルはなぜ自分の名前を知らないのでしょうか?
モデルはなぜ自分の名前を知らないのでしょうか?
モデルの命名は学習後に行われます大規模言語モデルの開発プロセスは次のとおりです:
- データを収集する → 学習コーパスを準備する
- モデルを学習する → 言語理解と生成を学習する
- 評価してファインチューニングする → モデル性能を最適化する
- 命名して公開する → 名前を付ける (例: “Claude Sonnet 4.5”)
なぜ公式Webアプリは正しく答えられるのでしょうか?
なぜ公式Webアプリは正しく答えられるのでしょうか?
組み込みの system prompt の役割claude.ai や chatgpt.com でチャットすると、公式Webアプリは各会話の先頭に、次のような非表示の system prompt を自動で挿入します:この prompt はユーザーには見えませんが、モデルはこれを「読み取り」、そのため自分が何者かを把握できます。つまり: モデルは本質的には自分の名前を知っているわけではなく、公式Webアプリが毎回「思い出させて」いるのです。
なぜ API では違うのでしょうか?
なぜ API では違うのでしょうか?
API 呼び出しにはデフォルトで識別情報が含まれませんAPI でモデルを呼び出すときに送るのは次のものだけです:
modelパラメータ (サーバーにどのモデルを使うかを伝える)messages配列 (会話内容)- オプションの
systemパラメータ (カスタムの system prompt)
model パラメータは サーバー のルーティング情報であり、モデル自身はこのフィールドを読み取れません。system prompt にモデルの識別情報を指定しなければ、学習データに基づいて「推測」することしかできません。これはすべての API プラットフォームに当てはまります — 公式 API、APIYI、その他どの提供元であっても、動作はまったく同じです。実際に呼び出しているモデルを確認する方法
コールログを確認する
APIYIコンソールのコールログでは、各リクエストで実際に使用されたモデル名を確認できます。これは最も正確な確認方法です。
APIレスポンスを確認する
各APIレスポンスのJSONには、呼び出された実際のモデルバージョンを明確に示す
modelフィールドが含まれています。APIYI サービス保証
モデルに正しく自分自身を識別させる方法
API呼び出しにsystem パラメータを追加するだけで、モデルに自身のアイデンティティを伝えられます:
ヒント: これは公式Webアプリとまったく同じ仕組みです。システムプロンプトを通じてモデルに自身のアイデンティティを伝えます。追加すると、モデルは「私は誰ですか」を正しく答えられるようになります。
関連する質問
適切なモデルの選び方は?
さまざまなモデルの機能とユースケースについて学べます
一部のモデルが利用できないのはなぜですか?
モデルの権限とユーザー階層について学べます
呼び出しログを表示するには?
実際に呼び出されたモデルのバージョンを確認できます
API 呼び出しエラー?
よくある API エラーのトラブルシューティングガイド
お問い合わせ
企業WeChat
メール
サポート: [email protected]ビジネス: [email protected]
