はじめに
バズワード化しているChatGPTですが、使っていくと開発者にとってかなり強力な相棒になります。本稿では、開発者にとって使う場面が多そうなプロンプトエンジニアリングのTipsやツールを紹介していきます。
モデル
ChatGPT Plus (GPT-4)
基本
-
コマンドを使用する
「書く」「要約する」「翻訳する」などの指示を与える。 -
具体的に説明する
抽象的な言葉や曖昧な表現を使うと、それっぽい回答を最もらしく回答してくるため、明確にタスクを指示する必要があります。 -
不正確さを避ける
誤った情報や不正確な表現を使用すると、モデルの回答も不正確になる可能性があります。 -
「しないこと」を言わない
モデルに対して「何をしないでほしいか」ではなく、「何をしてほしいか」を明確に伝える。
Tips
1. 具体的で明確な指示を書く
入力を構造化する
- ダブルクォーテーション(
"テキスト"
)で括り、入力テキストを明確に - Markdownの見出しや箇条書きを使ってプロンプトを構造化
アウトプットの型や量を指定する
- 生成したいコードの言語やライブラリ名を明示する
- JSONなどで出力させる
- 出力は表形式、箇条書き、○行で などで行うことも可能
ex)
以下のサイトから重要な英単語を抽出し、英単語、発音記号、日本語での意味の順になるように表を作ってください。
[URL]
役割(ロール)を持たせる
GPTにエンジニア、マネージャーなどの立場を与えて、壁打ち相手にする。
ex)
あなたはIT企業に勤め、エンジニアをマネジメントしているマネージャーです。これからエンジニアに今年の目標を決めてもらおうと思っていますが、具体的にどのような目標を立てると良いでしょうか?
2. 考える時間を与える
最初はざっくり、徐々に深掘りしていく
質問をより具体的にするためにも、タスクを分割し、タスクのスコープを小さくする
ステップバイステップで
最後にステップバイステップで
と書くと、GPTがタスクを行う途中経過を出力しながら目的のタスクを行なってくれます。
ステップを踏ませる
ステップをプロンプトで指定することも可能です。
ex) 要約と翻訳を行わせる場合、段階を踏ませる
## 以下の指示に従ってください
1. 〇〇の要約してください
2. それを翻訳してください
プラグイン
WebPilot
プロンプトにURLを貼ると、サイトのコンテンツを読みに行ってくれます。
Prompt Perfect
先頭にperfect:
と入れておくと、続く文章をより良いプロンプトに変換してくれます。
※ 間違った補助が入る可能性もあります
Show Me Diagrams
「図を作成してください」などと入力すると、プラグインが起動してMermaidなどで図を書いてくれます。
ex)
ウォーターフォールの開発工程を図で教えてください。
ScholarAI
論文のアブストと全文を検索してくれるプラグイン
ex)
生成AIに関する論文を教えてください。
リファレンス
OpenAIによるGPT利用のベストプラクティス
Prompt Engineering Guide
Learn Prompting
DeepLearning.AI の開発者のためのプロンプトエンジニアリング講座