はじめに
最近、仕事でもプライベートでも、AIを使わない日はほぼない、そんなシステムエンジニア(SE)も増えてきました。ただ、使っている人によって「同じAIなのに、帰ってくる回答の質が違う」ことが多々あると思います。
多くの原因はプロンプト(指示文)にあります。ChatGPTは、「何を聞くか」よりも「どう聞くか」 で回答の質が大きく変わります。
今回は、プロンプト(指示文)について、ログとして記載していきたいと思います。
おすすめ教材:
👉ChatGPT はじめてのプロンプトエンジニアリング
👉ChatGPT「超」勉強法
プロンプトとは
プロンプトとは、AIに対して投げる指示文すべてをのことです。
「質問」「依頼」「条件」「前提情報」これらを含めた「会話の入力」がプロンプトになります。ChatGPTは、プロンプトに含まれる情報をもとに「何を期待されているか」を推測して回答します。
プロンプトが曖昧だと、AIも曖昧な答えになってしまいます。
悪いプロンプト例
まずは、うまくいかないプロンプトの典型例から聞いてみました。
1、とにかく文章が短い
このソースコードについて教えて
AIに聞く内容として、情報が少なすぎて「どのレベルで」「何を」説明すればいいか判断できません。結果として、抽象的な内容の説明のみ帰ってくるような回答になりがちです。
2、目的が書かれていない
このコードを修正して
修正の目的が分からないため、AIは推測で答えるしかなくなります。
- 可読性を高めたいのか
- パフォーマンスを上げたいのか
- バグの修正をしたいのか
3、前提条件が抜けている
このコード修正の最適な方法を教えて
前提として、どんな状況なのかがないとAIは「一般論」しか返せません。
- 何を
- どの環境で
- どの制約のもとで
良いプロンプトの基本構成
ChatGPT 5.2に「良いプロンプトって何?」と聞いたところ、返ってきた答えをSE目線で整理すると、次の構成が非常に重要でした。
基本構成
この4点を記載するだけで、回答の精度は一気に上がります。
- 役割を書く(初心者/実務向けなど)
- 目的・何をしたいか(Why)を書く
- 前提条件(環境・制約)を書く
- アウトプットの形式を書く
具体例
以下のような形で投げてみると、回答の「ブレ」はかなり削減できる可能性があります。
【役割】
あなたはJavaプログラマーの専門家です。
【目的】
処理実行中にエラーが発生しました。
原因について可能性がある内容を教えて
【エラー内容】
Exception:
.
.
.
【ソースコード】
・
・
・
【前提】
言語:Java
環境:AWS EC2のWindowsサーバー
【回答アウトプット】
・具体例ありの文章で記載
プロンプトは一発で決めなくても良い
SE目線で一番伝えたいのは、プロンプトは一発で決めなくても良いという点でした。会話ベースの調整 の方が、良い結果につながることが多いとのことです。これは、要件定義を一発で決められないのと同じです。
- 雑に投げる
- 返答を見る
- 検証する
- 足りない条件を追加する
まとめ
ChatGPT使っていて強く感じるのは、AIの賢さ以上に、こちらの聞き方が結果を左右するということです。
「何をしたいのか」「どんな前提なのか」「どんな形で返してほしいのか」これらを言葉にして伝えることでより明確な回答が得られます。
要件定義や設計レビューと、本質は同じです。だからこそ、プロンプトが上手くなるほど、自分の考えも自然と整理されていきます。
ChatGPTは「答えを出す装置」だけではなく、自分自身の思考を助ける道具として使用していくのも良いのかもしれません。


コメント