Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
プロンプトエンジニアリング入門
Search
tomokusaba
March 16, 2024
Programming
2
1.7k
プロンプトエンジニアリング入門
プロンプトエンジニアリング入門
.NETラボ 勉強会 2024年3月
https://dotnetlab.connpass.com/event/311594/
tomokusaba
March 16, 2024
Tweet
Share
More Decks by tomokusaba
See All by tomokusaba
私の考える初学者がBlazorできるまでの学習方法
tomokusaba
1
250
Semantic Kernelの最新状況及び入門
tomokusaba
0
180
Fluent UI Blazor 最新Update
tomokusaba
1
250
アクセシビリティの観点からみたFluent UI Blazorのすすめ
tomokusaba
1
310
Webアプリをできるだけコードを手書きしないで作ってみる
tomokusaba
2
300
Azure OpenAI Serviceのプロンプトエンジニアリング入門
tomokusaba
3
1.4k
Sementic Kernelのネイティブ関数について
tomokusaba
0
1.1k
C#でのPlaywrightを使ったE2Eテストの実際
tomokusaba
0
790
「インフラ初心者」…からのPlaywright Testing
tomokusaba
1
380
Other Decks in Programming
See All in Programming
Mergeable Libraryで 高速なアプリ起動を実現しよう!
giginet
PRO
1
2k
令和トラベルにおけるLLM活用事例:社内ツール開発から得た学びと実践
ippo012
0
120
Amazon Neptuneで始める初めてのグラフDB ー グラフDBを使う意味を考える ー
satoshi256kbyte
2
220
Swiftで高速フーリエ変換してオーディオビジュアライザーを作る / iOSDC Japan 2024 Day1 Track D
kyome22
2
490
状態管理ライブラリZustandの導入から運用まで
k1tikurisu
2
310
GraphQL あるいは React における自律的なデータ取得について
quramy
3
950
The Future of Frontend i18n : Intl.MessageFormat
sajikix
1
2.4k
RAGの回答精度評価用のQAデータセットを生成AIに作らせた話
kurahara
0
220
Desafios e Lições Aprendidas na Migração de Monólitos para Microsserviços em Java
jessilyneh
2
130
LangChainの現在とv0.3にむけて
os1ma
4
740
どうしてこうなった?から理解するActive Recordの関連の裏側
willnet
5
530
LangChainでWebサイトの内容取得やGitHubソースコード取得
shukob
0
130
Featured
See All Featured
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
165
48k
GitHub's CSS Performance
jonrohan
1029
450k
How to name files
jennybc
75
98k
Designing Experiences People Love
moore
138
23k
Designing with Data
zakiwarfel
98
5k
Building Your Own Lightsaber
phodgson
101
6k
Clear Off the Table
cherdarchuk
90
320k
Ruby is Unlike a Banana
tanoku
96
10k
It's Worth the Effort
3n
182
27k
A Modern Web Designer's Workflow
chriscoyier
690
190k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
27
8.9k
Documentation Writing (for coders)
carmenintech
65
4.3k
Transcript
プロンプトエンジニアリング 入門 株式会社SAKURUG プロダクトDiv 草場 友光 .NETラボ勉強会2024年3月
自己紹介 • 普段は主にシステムをAzureにモダナ イズする仕事をしています。 • コミュニティ活動を通じて知識をアッ プデートしています。 • 2022/08-2024 Microsoft
MVP (Developer Technologies) • tomo_kusaba
宣伝 【VISION】ひとの可能性を開花させる企業であり続ける VISIONに共感できる仲間募集中。
注意 • 個人の見解・解釈が多分に入っています。 • 見解の相違・事実誤認などありましたらご指摘ください。 • #dotnetlabでtweetすると左側に表示されます
今日の目的 • 生成AIを使う上で出力を改善する第一歩はプロンプトを改善する ことです。 • 本日はプロンプトを改善してよりよい出力を得るための技法を学 んでいきたいと思います。 • Azure OpenAI
Serviceのプレイグラウンドが使用可能な方は 一緒にやってみるとより理解が深まると思います。 • (参考) https://github.com/microsoft/generative-ai- for-beginners/tree/main/translations/ja-jp
プロンプトエンジニアリングとは? • 目的に合わせた初期プロンプトを「設計する」 • 回答品質を上げるために、反復・試行錯誤して「改善する」 • プロンプトエンジニアリングは机上で練り上げるのではなく実際 にLLMに質問を投げかけて何回も試行錯誤して最良のものを得 ていくことが重要
プロンプトエンジニアリングの必要性 • モデルの回答は確率的な性質を持っています。 たとえ、同じプロンプトだとしても実行するたびに異なる結果を得る場合があります。プロン プトエンジニアリングの手法でこのばらつきを軽減するのに役立ちます。 • モデルは回答をねつ造することがあります。 モデルは有限のデータで事前トレーニングされています。その結果、架空あるいは事実と異 なる回答を出力することがあります。 •
モデルの能力は異なります。 新しいモデルや新世代のモデルはより高度な機能を持つことが知られています。例えば、 GPT-35-TurboよりGPT-4の方がより精度の高い回答を得られる可能性があります。
ねつ造について • Microsoftでは責任あるAIガイドラインの枠組みにおいて一般 的に「幻覚」とか「ハルシネーション」と表現される用語について 「ねつ造」という用語を強く推奨しています。 • 機械が生み出した回答に対して人間の特性を誤って当てはめる擬 人化を避けるためで、これによって不快におもう方への配慮です。
演習のためのリポジトリ • https://github.com/tomokusaba/dotnetlab202403
LLMに向かない質問①-1 例)2024年現在の大谷翔平の所属チームを教えてください。 学習データにないので通常 のGPT-35-Turboだとね つ造された回答がされる。 Bingによって最 新のデータをRAG で取り込まれた Copilotなら正確 な回答がされる。
LLMに向かない質問①-2 • システムメッセージにアウトメッセージを設定する 質問文にだしたメッセージに対してうまく答えられない場合にた いして逃げ道を与える指示を出してあげる。
LLMに向かない質問② 例)98765の平方根を求めてください。 数値計算ならコードで書いた方がよい。
LLMに向かない質問③ • LLMはアクションを実行することができません。 アクションを実行したい場合、Semantic KernelのPluginなど を利用してください。
基本的なプロンプトー情報抽出 次の文章から名前と所属と受賞歴を抽出してく ださい。 では簡単に自己紹介をしたいと思います。私は 草場友光と言います。主にシステムのモダナイの 業務をしておりこうした登壇活動によって知識の アップデートをしています。 所属は株式会社SAKURUGというところで渋谷 に本社があり、最近では和歌山の白浜や仙台、福 岡という場所にもオフィスがあります。
2022年8月にMicrosoft MVPを Developer Technologiesの分野で受賞し ました。今後もよろしくお願いします。
キューを含むプロンプト • キューとは期待する回答フォーマットの一部をプロンプトに含めて モデルを正しい方向に誘導します。 • モデルはそのキューを受け取ってその文章の流れに沿って続けま す。
フューショットプロンプト 衣笠祥雄:広島東洋カープ 佐々木主浩:横浜ベイスターズ 掛布雅之:阪神タイガース 長嶋茂雄: フューショットプロンプトを用いない場合 余計な出力がされる
サポートコンテンツ • プロンプトの内容は以下のように分類できると考えられます。 • 指示:なにをするのか? • 主要コンテンツ:指示をする内容 • セカンダリコンテンツ:何らかの形で出力に影響を与える追加情報 •
分類の例 • 指示:次の文章から名前と所属と受賞歴を抽出してください。 • 主要コンテンツ:文章の内容(長いので割愛) • セカンダリ:JSON形式にしてください。
Chain of thought • LLMはタスクを小さなステップに分割し世界に関する知識と推論 能力を使用します。
Temperature • 0から1までの範囲があり0が最も決定的で、1が最も多様性があ ります。 • Temperature=0
Temperature • Temperature=1
参考文献 • generative ai for beginners https://github.com/microsoft/generative-ai-for- beginners/tree/main/translations/ja-jp • Azure
OpenAI ServiceではじめるChatGPT/LLMシステム 構築入門(ドーナツ本) (ISBN:978-4-297-13929-2)
おしまい おしまい