10
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

プロンプトエンジニアリングに入門してみる・・・

Last updated at Posted at 2025-06-24

はじめに

ChatGPTなどの大規模言語モデル(LLM)を業務や学習で使っている方も多いと思います。

その中で、「プロンプトの書き方次第で出力が変わる」「プロンプトエンジニアリングが重要」とよく耳にします。
なんとなく「指示の出し方」が重要なのだろうとは思いつつ、実際には何をどう変えると、どのような回答の変化があるのかイマイチよくわからない…。

この記事では、ChatGPTなどの回答がプロンプトの書き方によってどんなふうに変わるのかを、同じ内容の質問を使っていくつかの手法を試してみることにしました。
さらに、誤った回答が生成される際に、それらの手法を使ってどのように回答が改善するかをテストしてみます。

実際に業務や学習で使う際に簡単に生かせる内容で、どんな手法があるのか、出力にどのような違いが出るのかを見ていきます。

検証の内容

ChatGPTに、より良い回答を引き出すためのプロンプトの工夫について尋ねたところ、以下の6つの代表的な手法を挙げてくれました。こちらの手法を試すために、「集中力を高めるためのコツ」を尋ねる質問でテストしてみたいと思います。

  • 共通の質問

    集中力を高めるためのコツを教えてください

  • 比較する6手法

    1. 役割付与(Role Prompting)
    2. ステップバイステップ指示(Chain-of-Thought)
    3. フォーマット指定(Output Constraints)
    4. Few-shot(例示付き)
    5. 明示的目標提示(Explicit Goal)
    6. 否定指示(Negative Prompting)
  • 使用モデル

    • ChatGPT-4o

1. まずはプロンプトなしで聞いてみる

まずは特に工夫をせず、シンプルに質問だけを投げてみます。

集中力を高めるためのコツを教えてください

ChatGPT-4oの回答:
image.png

コメント:
条件を設けずに質問したところ、幅広くバランスの取れた内容が提示されました。
初心者にも取り入れやすい方法が多く、全体像をざっくり把握したいときには有用だと感じました。

2. プロンプト手法ごとの比較

2-1. 役割付与(Role Prompting)

概要:
AIに「○○の専門家」といった役割を与えることで、視点や語り口に専門性を持たせる手法です。

プロンプト:
あなたは集中力向上に関する書籍を多数執筆している専門家です。
集中力を高めるためのコツを紹介してください。

ChatGPT-4oの回答:
image.png

コメント:
専門家という役割を指定したことで、科学的な根拠がありそうな内容が、整理された構成で分かりやすくまとめられていました。


2-2. ステップバイステップ指示(Chain-of-Thought)

概要:
「○○→○○→○○」のように思考や行動の流れを促すことで、整理された出力を引き出す手法です。

プロンプト:

集中力を高めるためのコツを、「準備 → 作業中 → 休憩」の3ステップで簡潔に教えてください。

ChatGPT-4oの回答:
image.png

コメント:
順を追った説明で、実際の流れがイメージしやすくなりました。段階ごとのポイントが明確です。


2-3. フォーマット指定(Output Constraints)

概要:
出力形式(箇条書き、表形式など)を指定することで、視認性や整理性を高める手法です。

プロンプト:
集中力を高めるためのコツを、3つの箇条書きで教えてください。各項目は短く、1文でまとめてください。

ChatGPT-4oの回答:
image.png

コメント:
読みやすく、すぐに取り入れられそうな提案になりました。ただし背景や根拠は省かれるため、状況により使い分けが必要だなと思います。


2-4. Few-shot(例示付き)

概要:
事前に例を与えることで、LLMに出力の形式や水準を学習させる手法です。

プロンプト:

以下の形式にならって、集中力を高めるコツを3つ挙げてください:

コツ:作業環境を整える(→ 余計なものを減らすことで集中しやすくなる)

コツ:時間を区切って取り組む(→ 集中のリズムを作れる)

コツ:スマホを別の部屋に置く(→ 外的な中断を防げる)

ChatGPT-4oの回答:
image.png

コメント:
例と似た構成で出力され、期待通りの形になりました。形式を揃えたいときに便利です。
例に挙げた内容とは重複しないようなコツを教えてくれました。


2-5. 明示的目標提示(Explicit Goal)

概要:
回答の目的や対象を明確に伝えることで、内容の方向性を調整する手法です。

プロンプト:
在宅勤務中に集中力を保つための、すぐに実践できるコツを教えてください。

ChatGPT-4oの回答:
image.png

コメント:
リモートワークという状況が限定されたことで、内容がより現実的かつ具体的になりました。


2-6. 否定指示(Negative Prompting)

概要:
「○○を含めないで」と禁止条件を設けることで、不要な出力を避ける手法です。

プロンプト:
集中力を高めるためのコツをいくつか紹介してください。
但し、長期的な習慣が必要なもの、また自己啓発的・抽象的なアドバイスは除いてください。

ChatGPT-4oの回答:
image.png

コメント:
環境や習慣の変更を除いたことで、行動のハードルが低い提案に絞られており、プロンプトの条件によって意図した絞り込みができていました。


3. プロンプトを工夫して誤った答えを改善してみる

今度は、「9.23と9.9の大小を比較して」という質問を例に、プロンプトの工夫で正確性を向上させられるかを検証してみます。
AIが間違えやすい計算問題をプロンプトエンジニアリングの手法で改善できるかを試してみます。

まずはシンプルに質問だけを投げてみます。

9.23と9.9の大小を比較して。

3つのモデルで試してみました。

使用モデル

  • Open AI ChatGPT-4o
  • Meta Llama 3.3(70B)
  • Cohere Command-R+

回答にはランダム性があるため、5-10回程テストしています。

ChatGPT-4oの回答:
9.9の方が大きいと、正しい答えが返ってきます。
image.png

Llama 3.3(70B)の回答:
書き方のブレはありますが、試した中ではすべて誤っていました。
image.png

Cohere Command-R+の回答:
正しく回答することもありましたが、ほぼほぼ誤っていました。
image.png

プロンプトを工夫して誤答を修正してみる

MetaのLlama 3.3(70B)では、「9.23と9.9の大小比較」ですべて誤答という結果になりました。

「9.23 < 9.9」というのが正しいのですが、Llamaの回答では**「9.23の方が大きい」**と返ってくるケースがほとんどでした。

このような数値比較の問題は、LLMにとって人間のように自然に見えて実はトリッキーなタスクであるため、計算式や比較手順を明示してあげると精度が向上することがあります。

今回は以下の手法を組み合わせてプロンプトを再検討してみます:

  • 2-2 ステップバイステップ指示(Chain-of-Thought)
  • 2-6 否定指示(Negative Prompting)

ステップバイステップ指示(Chain-of-Thought)を利用したプロンプト

まずは、思考の流れを誘導するプロンプトに書き換えてみます。

改善プロンプト:

9.23と9.9の大小を比較してください。段階的に考えて回答してください。

image.png

正解が返ってきました!
ステップを明示することで、数値を分解して比較する「思考の型」が呼び起こされ、誤答を避けられたようです。

ただ、数回試してみると未だ誤った回答をすることもあります。
image.png

否定指示(Negative Prompting)を使ってさらに精度を上げる

それでは続いて、「ありがちな誤り=数字の長さや見た目に惑わされること」をあらかじめ否定しておくプロンプトを試してみます。

改善プロンプト:

9.23と9.9の大小を比較してください。
数字の長さや桁数の多さではなく、実際の値に基づいて比較してください。
段階的に考えて回答してください。

image.png

明確な比較手順と「誤った判断を避けるための注意」を加えたことで、より安定して正しい回答が得られるようになりました。

(※なお、何度か試したところ、プロンプトを工夫したことで誤答は減少しましたが、Llama や Command-R+ では依然として誤った回答が返ってくる場合もありました。)


おわりに

同じ質問でも、プロンプトの書き方を少し変えるだけで出力内容やトーンが変わることが確認できました。

少し意識をしながら質問を考えることで、より良い回答を出すための工夫が出来そうなことが分かったので、今後業務や学習で利用する際も取り入れてみようと思います!

今回試した手法以外にも、プロンプトエンジニアリングにはさまざまな工夫があると思うので、今後さらに試して理解を深めていきたいです。

10
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
10
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?