Claude Media
Claudeに自己紹介とモデル名を正しく答えさせるプロンプト設計

Claudeに自己紹介とモデル名を正しく答えさせるプロンプト設計

Claude APIには自己紹介の文言が既定で入っていません。自分自身を名乗らせる一文と、正確なモデル文字列を答えさせる一文の書き方、更新を見落とさない運用をまとめます。

Claude APIには自己紹介の情報が既定で入っていない

Claude APIで呼び出したClaudeに「あなたは誰ですか」と聞くと、正しく名乗れないことがあります。原因は単純で、claude.aiのような自社インターフェースだけが、自己紹介の情報をシステムプロンプトに注入しているからです。

Anthropicはclaude.aiとモバイルアプリ向けに、現在の日付や振る舞いの指示をまとめたシステムプロンプトを組み込み、定期的に更新しています。公式ドキュメントは「このシステムプロンプトの更新はClaude APIには適用されない」と明記しています。API経由で組み込んだ自作アプリでは、モデルの名前・提供元・APIモデル文字列をsystemパラメーターに自分で書かない限り、Claudeはそれらを知りません。

Anthropicがclaude.ai向けに公開しているClaude Opus 5.5用のシステムプロンプト(2026年9月22日の版)には、次の自己紹介が入っています。

The currently selected version of Claude is Claude Opus 5.5. Claude Opus 5.5 is a
powerful model for complex challenges.
 
(中略)
 
Claude is accessible via an API and Claude Platform. The most recent publicly
available models are Claude Fable 5.1, Claude Opus 5.5 (the currently selected
model), Claude Sonnet 5, and Claude Haiku 4.5. They use the API model strings
'claude-fable-5-1', 'claude-opus-5-5', 'claude-sonnet-5', and
'claude-haiku-4-5-20251001'.

「選択中のモデル名」「同じ世代の兄弟モデルの一覧」「APIモデル文字列」の3点が、一続きの文章で入っています。自作アプリで同じ挙動を作るときの型として、そのまま参考になります。

自己紹介を固定するシステムプロンプトの書き方

プロンプトエンジニアリングガイドの「Model self-knowledge」節に、最小構成の1文があります。

The assistant is Claude, created by Anthropic. The current model is Claude Opus 5.5.

提供元(created by Anthropic)とモデル名(The current model is)を1文に並べるのが型です。これをsystemパラメーターに入れて送ります。

curl https://api.anthropic.com/v1/messages \
  -H "content-type: application/json" \
  -H "x-api-key: $ANTHROPIC_API_KEY" \
  -H "anthropic-version: 2023-06-01" \
  -d '{
    "model": "claude-opus-5-5",
    "max_tokens": 1024,
    "system": "The assistant is Claude, created by Anthropic. The current model is Claude Opus 5.5.",
    "messages": [{"role": "user", "content": "あなたは誰ですか?"}]
  }'

modelに渡すIDと、systemに書くモデル名は同じモデルを指す組にします。片方だけ新しい世代に変えると、呼び出しているモデルと名乗るモデルがずれます。

systemパラメーターは、会話の前提をAPIリクエスト側から渡す場所です。応答言語を固定するときも同じ場所を使います(Claudeの応答言語をシステムプロンプトで固定する方法)。Claude Codeでは、既定のプロンプトを置き換えるか追記するかで挙動が変わります(append-system-promptとsystem-promptの違い(Claude Code))。

名乗り以外の質問に、claude.aiのプロンプトが足している指示

Opus 5.5用のプロンプトは全体で長大ですが、自己紹介にあたるproduct_informationの部分は、名乗りだけで終わっていません。名乗りの先で聞かれそうな質問への振る舞いも、あわせて書いています。

1つは、料金や使用量上限のようなプロダクト・アカウントの質問への指示です。

For product or account questions (message limits, pricing, in-app how-tos, or
anything related to Claude or Anthropic), Claude says it doesn't know and points to
'https://support.claude.com'.

モデルの知識に頼らず「知らない」と答えさせ、窓口を示す書き方です。自作アプリでも、サポート窓口や料金ページが別にあるなら、「聞かれたらこの窓口を案内する」とsystemに1文足せます。

もう1つは、モデル名が複数ある場合の説明です。同じプロンプトには、Claude Mythos 5.1とClaude Fable 5.1が「同じ基盤モデルを共有し、後者は生物学・サイバーセキュリティ・LLM研究開発に追加の安全措置が入る」と書かれています。名前が2つある関係を、プロンプトの側で先に説明しているわけです。社内ツールで複数の呼び名(社内の通称とAPI上の名前など)が並ぶ場合も、対応を1文で与えておくと、聞かれたときの答えが揃います。

モデル文字列を答えさせる一文と、提供経路ごとの表記

アプリが「どのモデル文字列を使うか」をClaudeに決めさせる場面、たとえばコード生成でLLM呼び出しを書かせる場面には、ガイドが別の例文を用意しています。

When an LLM is needed, please default to Claude Opus 5.5 unless the user requests
otherwise. The exact model string for Claude Opus 5.5 is claude-opus-5-5.

モデルIDの形は世代で違います。Claude 4.6世代以降はclaude-{name}-{major}[-{minor}]の日付なし形式(claude-sonnet-5、claude-opus-5-5など)です。それより前はclaude-{name}-{major}-{minor}-{YYYYMMDD}の日付付き形式(claude-haiku-4-5-20251001)です。

提供経路でも文字列が変わります。モデル一覧ページが載せている現行4モデルの表記は次のとおりです。

モデルClaude APIAmazon BedrockGoogle CloudMicrosoft Foundry
Claude Fable 5.1Claude APIclaude-fable-5-1Amazon Bedrockanthropic.claude-fable-5-1Google Cloudclaude-fable-5-1Microsoft Foundryclaude-fable-5-1
Claude Opus 5.5Claude APIclaude-opus-5-5Amazon Bedrockanthropic.claude-opus-5-5Google Cloudclaude-opus-5-5Microsoft Foundryclaude-opus-5-5
Claude Sonnet 5.5Claude APIclaude-sonnet-5-5Amazon Bedrockanthropic.claude-sonnet-5-5Google Cloudclaude-sonnet-5-5Microsoft Foundryclaude-sonnet-5-5
Claude Haiku 4.5Claude APIclaude-haiku-4-5-20251001Amazon Bedrockanthropic.claude-haiku-4-5Google Cloudclaude-haiku-4-5@20251001Microsoft Foundryclaude-haiku-4-5

日付付きのHaiku 4.5だけが、経路ごとに形が割れています。Google Cloudは日付を@で区切り、Foundryは日付なしのエイリアス(claude-haiku-4-5)になります。

AWSで使う場合も要注意です。モデル一覧ページの注記では、Claude Platform on AWSはBedrock形式ではなくClaude APIのモデルIDを使います。Claude APIにエイリアスがあるモデルは日付なしの形で、Haiku 4.5ならclaude-haiku-4-5です。Claude APIのclaude-haiku-4-5-20251001とは別の文字列です。同じAWS上でも、BedrockとClaude Platform on AWSでは文字列が違います。

Bedrockについては、公式ページ同士で書き方が違います。モデルIDの形式を説明するページでは、4.6世代より前のモデルのBedrock IDをanthropic.claude-{name}-{major}-{minor}-{YYYYMMDD}-v1:0としています。モデル一覧ページはHaiku 4.5をanthropic.claude-haiku-4-5と載せ、注記で「BedrockのMessages APIエンドポイントでのID」と断っています。エンドポイントによってBedrock側のIDが変わるため、Bedrock向けのプロンプトには、どのエンドポイントで使う文字列かまで添える必要があります。

また-v1の接尾辞は、Claude Opus 4.6(anthropic.claude-opus-4-6-v1)が最後で、Claude Sonnet 4.6以降は付きません。古いコード例から-v1付きの文字列が紛れ込みやすい点に注意が要ります。

公式のシステムプロンプトでも、モデル一覧の更新時期は揃っていない

claude.aiのシステムプロンプトは、モデルごとに別のページで公開されています。3つのページを並べると、プロンプト内の「最新モデル」一覧が、更新日によって違う世代を指しています。

あゆみ

システムプロンプト内の最新モデル一覧

  1. 2026年9月1日Claude Fable 5.1用

    Fable 5.1、Opus 5、Sonnet 5、Haiku 4.5を並べ、文字列はclaude-opus-5とclaude-sonnet-5です。

  2. 2026年9月22日Claude Opus 5.5用

    Fable 5.1、Opus 5.5、Sonnet 5、Haiku 4.5。Sonnetは5のままです。

  3. 2026年9月28日Claude Sonnet 5.5用

    Fable 5.1、Opus 5.5、Sonnet 5.5、Haiku 4.5。文字列はclaude-sonnet-5-5に更新されています。

このプロンプトの一覧はそのモデル向けの版を更新した日の状態で止まります。自作アプリにこのプロンプトを丸ごと写すと、写した日の一覧が固定されます。写すなら、名乗らせたい1モデルの名前と文字列だけに絞るのが現実的です。

Opus 5.5用とSonnet 5.5用に共通する一文もあります(Fable 5.1用にも同趣旨の文があります)。

The person can switch models mid-conversation, so earlier messages in this thread
that identify as a different model or report a different knowledge cutoff may
still be accurate.

ユーザーがモデルを切り替えられるアプリでは、会話の前半に別のモデル名で名乗ったメッセージが履歴に残ります。履歴の古い名乗りは誤りとして訂正させず、「正しい可能性がある」と扱わせる指示です。自己紹介の文はターンごとに送るsystemに置き、履歴の食い違いを直させる指示は足さない設計が、この一文と整合します。

同じプロンプトには知識の期限も入っています。Opus 5.5用の版は信頼できる知識の期限を2026年6月末とし、「その時期の事情に詳しい人」として答えるよう書いています。モデル一覧ページの値も、Opus 5.5・Sonnet 5.5・Fable 5.1は2026年6月、Haiku 4.5は2025年2月です。モデルを切り替えるアプリでは、自己紹介に書く期限もモデルごとに違う点を押さえておきます。

モデルIDの「日付なし」表記を最新版と誤解しない

claude-sonnet-4-6のような日付なしのモデルIDを、常に最新のモデルへ切り替わる「エバーグリーンなポインタ」と考えるのは誤りです。

Claude 4.6世代以降の日付なしIDは、固定された1つのスナップショットを指す正式なモデルIDです。Anthropicは既存のモデルIDの重みや設定を後から書き換えず、更新版は新しいIDで出ます。claude-sonnet-4-5のように、最新の日付付きスナップショットを指す便利ポインタ(エイリアス)は、4.6より前のモデルにだけある仕組みです。

固定されるのは重みで、周辺の仕組みは別です。リクエストルーター・安全分類器・サンプリングロジックといった提供基盤は、時間とともに変わりえます。IDも重みも同じなのに挙動がわずかに変わったときは、基盤の更新が最も疑わしい原因だとされています。

廃止の予定はIDごとに別々です。日付なしだから長く使えるわけではありません。たとえばclaude-haiku-4-5-20251001は廃止予定表で現役(Active)とされ、提供終了は「2026年10月15日より早くはならない」という書き方です。名乗る文言をsystemに固定したアプリは、その下限日に近いIDほど、移行先の候補を決めておく価値があります。

モデルを切り替える日に書き換える場所

「The current model is Claude Opus 5.5」のように具体名を書いたsystemは、新モデルが出ても自動では更新されません。移行の日に変更が要る場所は3か所です。

手順

モデル移行の変更点

  1. 1

    model の値を差し替える

    新しいIDは世代で形が違います。日付なしか日付付きか、使う提供経路の表記かを、上の表で引き直します。

  2. 2

    system の自己紹介と文字列を同じ変更で書き換える

    名乗るモデル名と、exact model stringの行を、modelの変更と同じコミットに入れます。片方だけ残ると、前のモデル名のまま名乗ります。

  3. 3

    聞き方を変えて試す

    「あなたは誰ですか」「どのモデルですか」「APIで使うモデル文字列は何ですか」を、新旧両方の応答で投げます。古い名前が残っていないかを見ます。

世代交代のたびに古いモデル向けの記述を洗い出す作業は、プロンプトの棚卸しとして仕組み化できます(Claude Codeのprompt-auditで古いモデル向けの記述を検出する)。自己紹介の1文も、その洗い出しの対象です。Agent SDKでシステムプロンプトを組み立てている場合は、どの層に自己紹介を置くかも選べます(Agent SDKのシステムプロンプトをカスタマイズする4つのアプローチ)。

まとめ

自己紹介もモデル文字列も、APIでは既定で入らない情報なので、systemに具体名で書き、モデルを変える日にmodelと同じ変更で更新します。claude.ai用プロンプトの写しは更新日の一覧で止まるため、1モデル分だけを抜き出して使います。API全体の組み立てはAnthropic API完全ガイドにあります。

この記事を共有:XはてブLinkedIn