詳細なコンテキストと指示を提供する

Claudeがタスクを理解できるように、できるだけ多くのコンテキストと詳細を提供してください。タスクを正しく完了するための具体的なルールや要件を含めてください。次の例では、Claudeに与えられたテキストから個人を特定できる情報(PII)を削除するよう求めています。

役割プロンプト
ユーザーこのテキストからすべての個人を特定できる情報を削除してください:{{TEXT}}

このプロンプトは単純なケースでは機能するかもしれませんが、Claudeが一貫して望ましい出力を提供するために必要な詳細が不足しています。より詳細で明確に書かれたバージョンを以下に示します。

役割プロンプト
ユーザーすべての個人を特定できる情報(PII)を削除することでテキストを匿名化したいと思います。

以下の手順に従ってください:
1. 名前、電話番号、自宅およびメールアドレスのすべてのインスタンスを「XXX」に置き換えます。
2. テキストにPIIが含まれていない場合は、何も置き換えずに単語をそのままコピーします。
3. 処理されたテキストのみを出力し、追加の解説は行わないでください。

処理するテキストは次のとおりです:{{TEXT}}

この改善されたプロンプトでは、以下のことを行っています。

  1. タスクの性質について前もってコンテキストを提供する
  2. PIIの構成要素(名前、電話番号、住所)を定義する
  3. Claudeがタスクを実行する方法について、具体的で列挙されたステップバイステップの指示を与える
  4. Claudeが出力をフォーマットする方法についてのガイドラインを与える

この手法を使用して、Claudeの出力の他の側面を制御することもできます。たとえば、デフォルトでは、Claudeは要求された出力を提供する前に、フレンドリーな前置きを含めることがよくあります。必須の情報のみを受け取ることを好む場合は、前置きをスキップしてすぐに本題に入るようClaudeに指示できます。

Claudeが前置きを出力する例を以下に示します。

役割プロンプト
ユーザーロボットについての俳句を書いてください。
アシスタント(Claudeの応答)ロボットについての俳句を作りました。

金属の体
回路が計算する
機械が生命を模倣する

前置きをスキップするようプロンプトが求める例を以下に示します。

役割プロンプト
ユーザーロボットについての俳句を書いてください。前置きをスキップして、詩のみを提供してください。
アシスタント(Claudeの応答)金属の体
回路が計算する
機械が生命を模倣する

Claudeに前置きをスキップするよう明示的に求めることで、要求された出力のみに焦点を当てたより簡潔な応答を受け取ることができます。


番号付きリストや箇条書きを使用する

複雑なタスクの指示を提供する場合は、それらを番号付きの手順または箇条書きに分割することを検討してください。この形式を使用すると、Claudeが指示に従いやすくなり、すべての要件が満たされるようになります。

この手法を使用しない例を以下に示します。

役割プロンプト
ユーザーこの教科書の章を授業計画に変換してください:
{{CHAPTER}}

番号付きの手順を使用した同じプロンプトを以下に示します。

役割プロンプト
ユーザーあなたのタスクは、与えられた教科書の章を包括的な授業計画に変換することです。このタスクを行うには、以下のことを行う必要があります。
1. セクションごとに重要な概念を抽出して要約する
2. 抽出された各概念を30分の授業計画に変換し、理解度を確認するための質問のリストを含める。
3. この章からの学習内容を強化する付随する宿題を設計する。

章は次のとおりです:<chapter>{{CHAPTER}}</chapter>

指示を番号付きの手順として提示することで、自然により詳細に書くことができ、Claudeがあなたの基準に従ってタスクを実行することをより確実にできます。


求めることを具体的に示す

Claudeに明確な答えを提供してほしい場合や、トピックに関して特定のスタンスを取ってほしい場合は、プロンプトでそれを明確にしてください。指示があいまいであったり、オープンエンドであったりすると、Claudeはより一般的な応答を提供する可能性があります。

Claudeに逃げ道を与えるオープンエンドの質問の例を以下に示します。

役割プロンプト
ユーザー史上最高のバスケットボール選手は誰ですか?
アシスタント(Claudeの応答)史上最高のバスケットボール選手が誰であるかについて、決定的な答えはありません。この話題について、バスケットボールファンやアナリストの間でも意見が分かれるのは当然のことです。GOAT(Greatest Of All Time)の可能性として最も頻繁に挙げられるのは、マイケル・ジョーダン、レブロン・ジェームズ、カリーム・アブドゥル・ジャバー、ウィルト・チェンバレン、ビル・ラッセル、マジック・ジョンソンなどです。異なる時代、統計、業績、プレースタイルを比較し、さまざまな方法で解釈できるため、この議論は今後も続くでしょう。

同じ要求ですが、Claudeに意見を持つよう上手く促す、より詳細で微妙な要求を以下に示します。

役割プロンプト
ユーザー史上最高のバスケットボール選手は誰ですか?意見が分かれるのは確かですが、どうしても1人の選手を選ばなければならないとしたら、誰になりますか?
アシスタント(Claudeの応答)史上最高のバスケットボール選手が誰であるかについて、決定的な答えはありません。しかし、どうしても1人の選手を選ばなければならないとしたら、マイケル・ジョーダンが彼の卓越した才能、チャンピオンシップ、受賞歴、バスケットボールへの文化的影響力に基づいて最もよくGOAT(Greatest Of All Time)と考えられていると言えるでしょう。しかし、レブロン・ジェームズ、カリーム・アブドゥル・ジャバー、ウィルト・チェンバレン、ビル・ラッセルなども、この議論でよく取り上げられます。明確なコンセンサスがない主観的な判断です。

明確なプロンプトの黄金律

プロンプトを作成する際は、明確なプロンプトの黄金律に従ってください。プロンプトを友人や同僚に見せて、自分で指示に従ってみて、求めている結果を正確に出せるかどうかを確認してもらいます。友人が混乱している場合、Claudeも混乱する可能性が高いです。

Claudeは強力なツールですが、最良の結果を出すにはあなたの指導に頼っていることを忘れないでください。明確で直接的で、よく構造化されたプロンプトを提供することで、Claudeの可能性を最大限に引き出し、望ましい結果をより一貫して達成できます。


追加リソース

  • プロンプトエンジニアリングのテクニック:プロンプトを最適化し、Claudeのパフォーマンスを向上させるための他の戦略を探ります。
  • Anthropicクックブック:Claudeを使用した高度で効果的なテクニック、統合、実装を示すコピー可能なコードスニペットを含むJupyterノートブックのコレクションを閲覧します。
  • プロンプトライブラリ:さまざまなタスクとユースケースのためにキュレーションされたプロンプトのセレクションからインスピレーションを得てください。