レッスン 3
技術作業のためのプロンプトの基本
役割、タスク、コンテキスト、制約、出力形式がプロンプトをより信頼性高くする方法を学びます。
良い技術プロンプトは、AI に役割、タスク、コンテキスト、制約、望む出力形式を伝えます。依頼が検証可能であるほど、回答が有用かどうかを判断しやすくなります。
5 要素のプロンプト構造
ほとんどの技術プロンプトでこの構造を使いましょう。
- 役割: AI はどの視点を取るべきか?
- タスク: 何をすべきか?
- コンテキスト: どの事実、コード、データ、要件が重要か?
- 制約: 何を避け、何を維持すべきか?
- 出力形式: 回答はどの形にすべきか?
毎回 5 つすべてが必要なわけではありませんが、コンテキスト不足が弱い回答の最も一般的な原因です。
弱いプロンプト vs 有用なプロンプト
弱い例:
この関数をもっと良くして。
有用な例:
TypeScript レビュアーとして振る舞ってください。挙動を変えずにこの関数を可読性のためにリファクタリングしてください。公開 API は同じに保ってください。リスクのある仮定を説明し、2 つのテストケースを提案してください。
2 番目のプロンプトは、回答の評価を容易にします。
形式が重要なら例を追加する
JSON、SQL、Markdown、特定の命名スタイルが必要なら、小さな例を含めてください。例は曖昧さを減らし、期待する形に合わせやすくします。
出力がソフトウェアでパースされる場合、コメントなしで対象形式のみを返すよう依頼してください。
仮定を求める
技術作業では、最終的な推奨の前に AI に仮定を列挙するよう依頼してください。隠れた推測が可視化され、確認すべき具体的な点が得られます。
再利用可能なプロンプトテンプレート
タスクが重要なときはこのテンプレートを使いましょう。
[役割] として振る舞ってください。
タスク: [具体的なタスク]。
コンテキスト: [関連するコード、データ、要件、症状]。
制約: [変更してはいけないもの、避けるべきもの、リスクレベル]。
出力: [形式、長さ、セクション、スキーマ]。
最終回答の前に、仮定と検証ステップを列挙してください。
コードタスクにはテストコマンドまたはレビュー基準を追加します。執筆タスクには読者と保持すべきソース資料を追加します。
よくあるプロンプトの間違い
- 問題が定義される前に最終回答を求める。
- 期待する出力形式を省略する。
- 無関係なコンテキストを多く与え、重要な制約を隠す。
- 証拠の代わりに自信を求める。
- 変更してはいけないものを伝え忘れる。
重要なポイント
- 良いプロンプトは曖昧さを減らしますが、正しさを保証しません。
- コンテキスト、制約、出力形式は、巧妙な言い回しより重要です。
- 構造化された出力が必要なとき、例は特に有用です。
- 再利用可能なプロンプトテンプレートは、プロンプトを即興からレビュー可能なワークフローに変えます。
次のレッスン
次は、これらのプロンプト習慣をコード、デバッグ、レビューワークフローに適用します。