仕事柄的に「プロンプトエンジニアリング」は、絶対身につけた方がいいスキルと頭ではわかってたけど、2023年はあまり深くまで踏み込めなかった。
2024年は、ちゃんと腰を据えて勉強することにしたのでここに勉強したことを記そうと思う。学んだことは自分の言葉で書き残さないと一瞬で忘れちゃうから。
学習コンテンツ
ネットを検索すると、色々情報があふれかえってる。中には根拠が怪しいものも多いので入口としては以下のコンテンツを参考にする。
「これからのAI × Webライティング本格講座ChatGPTで超時短高品質コンテンツ作成」
プロンプトエンジニアリング入門の良書。本屋さんで偶然見つけた。
AI利活用の注意点などもしっかり書かれており、Amazaonレビューも悪くなく、信頼できそうなので、なんとなく勢いで買ってみた!
Prompt Engineering Guide
AI研究所DAIRによるプロンプトを学ぶためのWebサイト。上記の書籍内で紹介されていたので書籍と並行して利用することにした。
ChatGPTを使うとできること
プログラムを書くことができる
調べものができる
翻訳ができる
例文作成ができる
アイデアを得られる
会話することができる
Webライティングにおいても、今まで記事を書くのは人間の仕事だったが、ChatGPTに任せられることが可能になった。人間は原稿の作成にかかる時間や負担を減らし、その分より創造的な活動や専門知識を活かした作業、生成した内容のチェックに集中することができる。また、AIが記事を自動生成することで、記事の提供スピードも上げられるため読者にもメリットがある。
ただし、良質な記事を生成するためには、適切な「プロンプト(入力情報)」を与える必要がある。
プロンプトエンジニアリングとは
言語モデル(LMs)を効率的に使用するためのプロンプトを開発および最適化する比較的新しい学問分野。
プロンプトエンジニアリングのスキルを身につけることで、大規模言語モデル(LLMs)の能力と限界をより理解することができる。
ここでいうスキルは、プロンプトの設計と開発に限らず、LLMsとのインタラクションおよび開発に役立つ幅広いスキルと技術も含む。
これは、LLMsとインタフェースすること、ビルドすること、能力を理解することに重要なスキルになる。LLMsの安全性を向上させたり、ドメイン知識や外部ツールを使用してLLMsの機能を拡張するためにプロンプトエンジニアリングのスキルを活用できる。
LLMの設定
LLMと対話する際に設定するパラメータの値によって、プロンプトに異なる結果を得ることができる。
Temperature
簡潔に言うと、この値が低ければ低いほど、最も確率が高い回答が常に選ばれるため、結果はより決定論的になる
この値を上げると、ランダム性が増し、より多様で創造的なアウトプットが可能になる。つまり、他の回答の可能性のある重みを増やすことになる。
なので、応用例としては、事実に基づくQAなどでは、この値を低くして、より事実に基づいた簡潔な回答を促すとよい。逆に、詩の生成やその他の創造的なタスクでは、temperatureを上げると効果的かもしれない。
Top_p
同様に、核サンプリングと呼ばれるサンプリング手法であるtop_pでは、モデルが応答を生成する際の決定性をコントロールすることができる。
正確で事実に基づいた回答を求めるのであれば、この値を低くしておく。より多様な回答を求めるのであれば、より高い値にする。
プロンプト作成に必要な3つの観点
形式(フォーマット)
言葉(キーワード)
書き方(使い方)
おなかがすいたので、詳しいことはまたあとで。今日はここまで~。