「プロンプトエンジニアリング」って言葉、なんか大仰すぎるんだよね。最初は魔法の呪文みたいなテクニック集を必死に漁ってた。「こう書けば精度が上がる」「この文言を入れると拒否されない」。でも半年やってわかったのは、本質はもっとシンプルで、相手とちゃんと対話することだってこと。
LLMは「指示を正確に理解しようとする超優秀な後輩」に近い。曖昧な指示には曖昧な答えが返ってくる。具体的に「何を」「どんな形式で」「どんな口調で」欲しいのかを伝えれば、ちゃんとその通りに返してくれる。人間同士のコミュニケーションと、本質的に変わらない。
実際に効果があったパターンはこれ:
- 役割を与える — 「あなたは10年目のバックエンドエンジニアです」と最初に言うだけで、回答の質がガラッと変わる。脳のモードが切り替わる感じ。
- 制約を明示する — 「3つのポイントに絞って」「コードはTypeScriptで」「エラーハンドリングを含めて」。AIは制約を守るのが得意。むしろ制約がないと迷走する。
- Few-shot(例示) — 期待する出力の例を1〜2個見せると、残りを同じ形式で出してくれる。テンプレート的な出力が欲しいときはこれ一発。
- Chain of Thought(思考の連鎖) — 「ステップバイステップで考えて」と頼むと、論理的な推論が格段に改善する。算数やロジック系はこれ必須。
「魔法のプロンプト」を探す旅に出るより、「相手にどう伝えれば意図が正確に伝わるか」を考えた方が、はるかに生産的だと思う。これ、結局人間同士でも同じだよね。