AIに「うまく聞く」技術――プロンプトエンジニアリング入門
プログラミングを学び始めた皆さんは、ChatGPTやCopilotなどのAIツールを使ったことがあるでしょうか。「使ってみたけど、思ったような答えが返ってこなかった」という経験はありませんか?
それ、AIが悪いのではなく、聞き方の問題かもしれません。
このページでは、AIから欲しい回答を引き出すための「プロンプトエンジニアリング」の基本を紹介します。
プロンプトとは?
プロンプトとは、AIに送る「指示文・質問文」のことです。
あなたが入力するテキスト → AIへの指示(プロンプト)
AIが返すテキスト → レスポンス(応答)
プロンプトの書き方次第で、AIの回答の質は大きく変わります。これを意図的にコントロールする技術がプロンプトエンジニアリングです。
悪いプロンプトと良いプロンプトの違い
例:C#でエラーを直したいとき
悪い例
エラーが出ました。直してください。
AIはどのエラーか、どんなコードかわかりません。曖昧な質問には曖昧な答えしか返ってきません。
良い例
以下のC#コードを実行したところ、エラーが発生しました。
原因と修正方法を教えてください。
【エラーメッセージ】
NullReferenceException: Object reference not set to an instance of an object
【コード】
public void Start()
{
string name = null;
Debug.Log(name.Length);
}
【やりたいこと】
nameが空でもクラッシュしないようにしたい。
情報が揃っているので、AIは的確なアドバイスを返せます。
基本テクニック5選
1. 役割を与える(ロールプロンプト)
AIに「あなたは〇〇の専門家です」と伝えると、それに合った回答をしてくれます。
あなたはC#の初心者教育の専門家です。
ListとArrayの違いを、プログラミング未経験者にもわかるように説明してください。
2. 出力形式を指定する
「箇条書きで」「表形式で」「コード付きで」など、欲しい形式を明示します。
3. 具体例を示す(Few-shot)
「こういう形式で答えてほしい」という例をあらかじめ見せると、精度が上がります。
4. ステップを踏ませる(Chain of Thought)
複雑な問題は「順番に考えて」と伝えると、より正確な答えが返ってきます。
5. 制約を加える
「〇〇は使わないで」「〇〇字以内で」など、制約を加えることで意図した回答に近づけます。
コードを「理解する」ためのプロンプト活用
AIが出してくれたコードをそのままコピーするのはNGです。必ず理解してから使いましょう。
以下のコードを生成してもらいましたが、意味が理解できていません。
1行ずつ、何をしているか日本語で説明してください。
var evenNumbers = numbers.Where(n => n % 2 == 0).ToList();
これを繰り返すことで、コードを読む力が自然と身についていきます。
まとめ
| テクニック | ポイント |
|---|---|
| 役割を与える | 「専門家として」と伝える |
| 形式を指定する | 「箇条書きで」「表で」など |
| 例を見せる | 望む出力形式をあらかじめ示す |
| ステップを踏む | 「順番に考えて」と伝える |
| 制約を加える | 「〇〇は使わない」など条件を絞る |
AIは「魔法の道具」ではなく、うまく使うスキルが必要な道具です。プロンプトの書き方を磨くことで、学習スピードも、将来の仕事の効率も大きく変わります。








ディスカッション
コメント一覧
まだ、コメントがありません