AIを賢く利用するための賢いプロンプト | 薬剤師トピックス

AIを賢く利用するための賢いプロンプト | 薬剤師トピックス

最近では、Chat GPTやGemini といったAIを使うという人も増えてきているようです。
また、feloやgemspark などを利用するという人もいたりします。
しかし、AIにうまく働いてほしいのに、なかなか思いどおりの結果を出してくれないなんていう経験をしている人も多いのではないでしょうか。

健康や美容などの専門分野、最近の流行など、ハルシネーションがまだかなりあり、きちんとした裏どりも必要ですが、マーケティング分野や問題解決のアイデア出し、メールの作成やデータの整理などではかなり便利に効果を発揮するAIですが、実はAIにいい感じの答えを引き出させるには、ちょっとしたコツがあります。


それがいわゆる「プロンプト」と呼ばれるもので、生成系AIをもっと賢くうまく使って働いてもらうためのプロンプト作成のベストプラクティスを、肩の力を抜いて分かりやすく解説していこうと思います。


プロンプトって何?


AIを使うにあたり、最初に耳にする言葉のひとつに『プロンプト』があります。
プロンプト(prompt)は、高校・大学受験やTOEICなどの英語の試験を受けたことがある人であれば、一度は目にしたことがあるであろう基本的な英単語で、迅速な、機敏な、てきぱきした、即座の、すぐして、迅速でというような意味があります。
ところが、AIやプログラミングでは「指示文」という、学校で習った意味とはまったく違った意味になってきます。


語源をみてみると、prompt はラテン語の promptus(=“前に出した・用意された”)が語源になっていて、すぐに行動できる状態、つまり迅速なという意味を持っています。


これが、コンピュータ・AI・プログラムの分野では、prompt は、「ユーザーに“入力を促す”表示」つまり「操作を“促す”合図」という文脈から、ユーザーにアクションを求める“促し” のニュアンスが元にあります。


そして生成AIの世界においては、さらにAIに“行動を促す”ための文章という意味に拡張され、『指示文』という意味になりました。
つまりAIで『プロンプト』と言えば、AIに「何をしてほしいか」を伝える指示文ということになります。


『プロンプト』は,4普通に文章で入力しても良いですし、キーワードでもOKなのですが、このプロンプトをちょっと工夫するだけでAIの返答がガラッと変わってきます。
プロンプトとは、AIとの会話のスタート地点ともいえます。


AIを上手く使いこなすプロンプト作成のベストプラクティス

AIは優秀ですが、万能ではありません。
これは優秀な社員であっても同じことです。
しっかりと目的や指示をきちんと与えてあげないと、望むような成果は得られません。


例えば、「新しい商品のプレゼン資料を作って」と優秀な社員にお願いしても、意図とは違う資料を作ってきたりします。
これは人によって基準が違うため結果がバラバラになりがちになるからです。
ところが、「今度の役員会に使う資料で、競合品の動向を中心に、自社製品のメリット・デメリットを比較したデータを10枚ほどにまとめて」と具体的に指示してあげると、欲している答えに近いものが返ってきます。


AIもこれと同じです。
例えば、単に「おいしい料理を教えて」とAIに聞くと、人によって基準が違うため結果がバラバラになるのと同じで、望む答えはなかなか得られません。
でも「10分で作れて、洗い物が少ない、和風の夕食レシピを3つ教えて」と伝えると、欲しい答えがズバッと返ってきたりします。
このように、『具体的な伝え方=ベストプラクティス』があるだけで、AIの精度をぐっと上げることができるのです。
AIをうまく使うには、目的を明確にし、必要な条件や文脈を具体的に伝えることが大切ですし、出力形式や例も添えると、AIが意図を正確に汲み取りやすくなります。


AIがユーザーの意図を正確に理解し、期待通りのアウトプットを返すために大切なのが、『効果的なプロンプトを作成』になります。


効果的なプロンプトを作成のコツ

効果的なプロンプトを作成のコツを取り上げてみます。


明確で具体的に書く

抽象的すぎる指示は避け、文字数、形式(箇条書き、文章、コードなど)、トーン(カジュアル/フォーマル)、対象読者など、条件や制約を明記すると良いでしょう。


文脈や背景を提供する

AIはユーザーの意図や前提を自動で推測できません。例えば、算数の問題としての解答を得たいのに、「この問題を解いて」だけだと、高校数学のレベルでの解き方をしてしまったりしますので、「小学生レベルの算数問題です。次の問題を解いて答えを説明してください。」とすると意図にあった答えを得られる可能性があがります。


ステップ・バイ・ステップで指示する

複雑なタスクの場合は欲張って一度に指示をせずに、段階に分けて指示する方が精度が上がります。
例えば、

1.問題を要約する
2.解法の方針を考える
3.答えを導く
4.解法を説明する


制約や例を示す

希望するアウトプットの形式を例で示すと望むような形で出してくれます。
「次の文章を、鉄道マニアのブログ記事風に300文字以内で書いてください。」といった感じになります。


質問の順序と論理性

人に話すときと同じで、「何を求めているか」求めているものを先に明示してあげると、AIがブレにくくなります。
「AとBの比較も含めて説明して、最後に結論を」とするよりも、「まずAとBの特徴を比較し、その後結論を述べてください」としたほうが、AIは、AとBを比較するんだな、その上で結論を出せばいいんだなと正確に理解しブレにくくなります。


望むトーンやスタイルを指定

文体、語彙レベル、感情のニュアンスを指定すると、望むようなトーンの出力ができます。
「子ども向けにやさしい言葉で」であったり、「専門家向けに論文調で」と指示するだけで、トーンが全然変わってきます。


制限・制約条件の設定

文字数、単語数、行数、箇条書きなどを指定すると生成がブレにくくなります。
「100語以内で要約してください」、「箇条書きで5点だけ挙げて」というように加えるとしぼれてきます。


一発で望む答えを期待しない

AIの思考と個人個人の思考はやはり違うので、一度で望む答えが出ないから、このAIは使えないと判断するのではなく、望む答えを出すために、AIと会話をすることが大切になってきます。


『反復改善(プロンプトエンジニアリング)』と呼ばれるもので、いくらAIの精度があがったとしても、そうそう一度で完璧な回答は出ないことが多いものです。
そこで、「もう少し具体例を増やしてください」とか「フォーマルな表現に書き直してください」などとさらに指示をして精度をあげていけばよいのです。


汎用AIプロンプトテンプレート
テンプレート構造
[目的・ゴールの明確化]
私は〇〇をしたいです。そのためにあなたに〇〇を手伝ってほしいです。


[タスクの具体的内容]
具体的には、以下のことをお願いします:
1. 〇〇
2. 〇〇
3. 〇〇(必要に応じてステップを分ける)


[アウトプット形式の指定]
- 形式:〇〇(文章、箇条書き、表、コードなど)
- 文字数/行数:〇〇
- トーン・スタイル:〇〇(カジュアル、フォーマル、専門家向け、子ども向けなど)


[追加条件・制約]
- 〇〇してはいけない
- 〇〇を優先する
- 参考例:〇〇


[最終チェック・改善指示]
必要に応じて、回答後に改善指示を出すことができます:
- 例:「もっと具体例を追加してください」「箇条書きで5点にまとめてください」「語尾をやさしい表現に変えてください」