Yuta NakataのBlog

Python / AWS / ITについて役立つ情報を発信します

今日からできるプロンプトエンジニアリング

プロンプトエンジニアリングとは?

プロンプトエンジニアリング(Prompt Engineering)とは、AI(特にLLM=大規模言語モデル)や画像生成モデルなどの出力を最適化するために、適切なプロンプト(入力文)を設計・調整する技術のことです。

コードを書く必要やITリテラシーもいらず、プロンプトエンジニアリングといった知識を知っているかどうかだけの差になります。

そのため、今回お伝えする内容は生成AIを使ってチャットをしたことであれば誰でもできることになります。

ぜひ、今日からの生成AI生活に活用してみてください。

1. 明確な指示を与える

「自分の要求を言語化すること」が大切です。 人に指示するのと同様で、具体的な指示が明確な結果をもたらす可能性が高いです。

NG: 「記事のタイトルを考えてください。」
OK: 「技術ブログの記事タイトルを考えてください。テーマは『プロンプトエンジニアリング』で、初心者向けの内容にしてください。」

回答が長すぎる場合は、「150文字以内で」といった制約を与えることや、XMLタグなどを使ってプロンプトの構造を明確にすることも有効です。

以下の文書を分析し、150文字以内でサマリーを作成してください:
<document>
{{ここに文書を記入}}
</document>

<instructions>
{{ここに詳細の指示を記入}}
</instructions>

<example>
{{ここに例を記入}}
</example>

よく使われるタグの種類は以下があります。

  • instructions
    • AIに指示する部分
  • example
    • 例示を示す部分
  • document
    • ドキュメントとして、AI与えるデータ

2. ロールを指定する(役割付け)

「あなたはXXの専門家です」というように、具体的な役割を提示してあげることで回答精度の向上が期待できます。

例えば「あなたは20年のキャリアを持つベテランシェフです」と設定すれば、料理に関する質問により専門的な視点からの詳しい答えが返ってきます。

3. 段階的な思考を促す(Chain of Thought, CoT)

一気に答えに辿り着こうとせず、複雑なタスクはStep by Stepで与えることで、求める答えを導くことができます

NG :「12個のリンゴを3人で平等に分ける方法は?」
OK :「12個のリンゴを3人で平等に分ける方法を、ステップごとに説明してください」

4. 例を与える(Few-shot Learning)

専門家っぽい言い方をすれば、Few-shot Learningですが、これは単に例を与えることです。

猫の鳴き声はなんですか?
犬の鳴き声は、ワンワンです。

まとめ

プロンプトエンジニアリングについて解説しました。

特別なテクノロジーに対する知識や理解等を必要にするものではなく、知ってるかどうかだけの差であることをわかってもらえば幸いです。

ぜひ、”今日からできるプロンプトエンジニアリング”として活用してみてください!