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
3
2k
プロンプトエンジニアリング入門
プロンプトエンジニアリング入門
.NETラボ 勉強会 2024年3月
https://dotnetlab.connpass.com/event/311594/
tomokusaba
March 16, 2024
Tweet
Share
More Decks by tomokusaba
See All by tomokusaba
Fluent UI Blazor 5 (alpha)の紹介
tomokusaba
0
180
Generative AI for Beginners .NETの紹介
tomokusaba
1
280
Visual StudioのGitHub Copilotでいろいろやってみる
tomokusaba
1
370
.NET Frameworkでも汎用ホストが使いたい!
tomokusaba
0
340
ASP. NET CoreにおけるWebAPIの最新情報
tomokusaba
0
430
Semantic Kernelのネイティブプラグインで知識拡張をしてみる
tomokusaba
0
240
.NET Conf 2024の振り返り
tomokusaba
0
300
.NET Conf 2024 .NETラボ 勉強会 2024年12月
tomokusaba
1
55
C#/.NETのこれまでのふりかえり
tomokusaba
1
270
Other Decks in Programming
See All in Programming
スモールスタートで始めるためのLambda×モノリス(Lambdalith)
akihisaikeda
2
280
AHC045_解説
shun_pi
0
530
タイムゾーンの奥地は思ったよりも闇深いかもしれない
suguruooki
1
640
Chrome Extension Techniques from Hell
moznion
1
160
AI Agents with JavaScript
slobodan
0
230
PHP で学ぶ OAuth 入門
azuki
1
190
Empowering Developers with HTML-Aware ERB Tooling @ RubyKaigi 2025, Matsuyama, Ehime
marcoroth
2
580
Defying Front-End Inertia: Inertia.js on Rails
skryukov
0
480
Qiita Bash
mercury_dev0517
2
200
DataStoreをテストする
mkeeda
0
290
RubyKaigi Dev Meeting 2025
tenderlove
1
130
Youtube Lofier - Chrome拡張開発
ninikoko
0
2.4k
Featured
See All Featured
Build your cross-platform service in a week with App Engine
jlugia
229
18k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
23
2.6k
Making the Leap to Tech Lead
cromwellryan
133
9.2k
Rails Girls Zürich Keynote
gr2m
94
13k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
Statistics for Hackers
jakevdp
798
220k
Art, The Web, and Tiny UX
lynnandtonic
298
20k
How to Ace a Technical Interview
jacobian
276
23k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.4k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
31
1.1k
The Invisible Side of Design
smashingmag
299
50k
Mobile First: as difficult as doing things right
swwweet
223
9.6k
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)
おしまい おしまい