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
Prompt FlowによるLLMアプリケーション開発
Search
Yuto Urushima
July 09, 2024
Programming
2
1.5k
Prompt FlowによるLLMアプリケーション開発
Yuto Urushima
July 09, 2024
Tweet
Share
More Decks by Yuto Urushima
See All by Yuto Urushima
Webエンジニアから生成AIエンジニアへ
yuto2000
1
170
LangGraphを用いたマルチエージェント
yuto2000
2
1.5k
Prompt FlowによるLLMOps
yuto2000
1
1.2k
Other Decks in Programming
See All in Programming
プロダクトの品質に コミットする / Commit to Product Quality
pekepek
2
770
開発者とQAの越境で自動テストが増える開発プロセスを実現する
92thunder
1
180
急成長期の品質とスピードを両立するフロントエンド技術基盤
soarteclab
0
930
MCP with Cloudflare Workers
yusukebe
2
220
暇に任せてProxmoxコンソール 作ってみました
karugamo
1
720
これでLambdaが不要に?!Step FunctionsのJSONata対応について
iwatatomoya
2
3.6k
17年周年のWebアプリケーションにTanStack Queryを導入する / Implementing TanStack Query in a 17th Anniversary Web Application
saitolume
0
250
生成AIでGitHubソースコード取得して仕様書を作成
shukob
0
350
fs2-io を試してたらバグを見つけて直した話
chencmd
0
230
Recoilを剥がしている話
kirik
5
6.6k
Semantic Kernelのネイティブプラグインで知識拡張をしてみる
tomokusaba
0
180
競技プログラミングへのお誘い@阪大BOOSTセミナー
kotamanegi
0
360
Featured
See All Featured
Making Projects Easy
brettharned
116
5.9k
Rebuilding a faster, lazier Slack
samanthasiow
79
8.7k
VelocityConf: Rendering Performance Case Studies
addyosmani
326
24k
Practical Orchestrator
shlominoach
186
10k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
32
2.7k
RailsConf 2023
tenderlove
29
940
Imperfection Machines: The Place of Print at Facebook
scottboms
266
13k
Navigating Team Friction
lara
183
15k
Large-scale JavaScript Application Architecture
addyosmani
510
110k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
29
2k
Writing Fast Ruby
sferik
628
61k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
2
290
Transcript
Prompt Flowによる LLMアプリケーション開発 宇留嶋勇人
自己紹介 web系エンジニアで、最近はLangChainや Prompt Flowを使った生成AI周りの開発業務を 行ってます。 X: @3anlqblueE ウルシマ ユウト 宇留嶋 勇人
Agenda Prompt Flowとは Prompt Flowでできること LLMアプリケーションの開発 評価、トレース デプロイ まとめ
Agenda Prompt Flowとは Prompt Flowでできること LLMアプリケーションの開発 評価、トレース デプロイ まとめ
= 大規模言語モデル (LLM) によって動作する AI アプ リケーションの開発サイクル全体を合理化するために 設計された開発ツールのこと。 Prompt Flowは、AI
アプリケーションのPoC作成、実 験、デバック、デプロイのプロセスを簡素化する包括 的なソリューションを提供します。 https://learn.microsoft.com/ja-jp/azure/ai-studio/how-to/prompt-flow フロー例 Prompt Flowとは
Prompt Flowとは プロンプト Python処理 コード管理 可視化 Azure AI Studio
Agenda Prompt Flowとは Prompt Flowでできること LLMアプリケーションの開発 評価、トレース デプロイ まとめ
Prompt Flowでできること - フロー、特にLLMとのインタラクションを簡単にデバッグ可 - フローを評価し、品質とパフォーマンスのメトリクスを計算 - テストと評価をCI/CDシステムに統合し、フローの品質を保証 - 選択したサービスプラットフォームにフローをデプロイするか、アプリ
のコードベースに簡単に統合可能 - Azure AI Studioにてチームで共同作業可能 https://microsoft.github.io/promptflow/index.html
Agenda Prompt Flowとは Prompt Flowでできること LLMアプリケーションの開発 評価、トレース デプロイ まとめ
LLMアプリケーションの開発 開発方法 • Azure AI Studio • VS Code 拡張機能
• CLI
LLMアプリケーションの開発 Azure AI Studio Azure AI Studio上で ツール(プロンプトフ ロー)を使う
LLMアプリケーションの開発 VS Code 拡張機能 Azure AI Studio同様に可視 化しながらローカル環境で 開発できる
LLMアプリケーションの開発 CLI フローの初期化、バリデーション、テスト、バッチ実行、トレース、 ビルド、エンドポイント作成 $ pf $ pfazure pfコマンドのAzure AI版
https://microsoft.github.io/promptflow/reference/pf-command-reference.html#
LLMアプリケーションの開発 バリアント(プロンプトチューニング) →生産性を高める、生成の質を高める、比較を容易にする
Agenda Prompt Flowとは Prompt Flowでできること LLMアプリケーションの開発 評価、トレース デプロイ まとめ
評価、トレース 評価 1. 自動評価 2. カスタム評価
評価、トレース 自動評価 Microsoftが監修したメトリックを使うことがで きる • パフォーマンスと品質メトリック ◦ 根拠性、関連性、コヒーレンス、流暢 性、GPTの類似性、F1 •
リスクと安全メトリック ◦ 自傷行為、悪意のある不公平、暴力的、 性的な内容、コンテンツ
評価、トレース カスタム評価 入力値、システムメトリックを出力 評価用フローを作成 (例: 固有表現抽出) ground truthとのマッチ度
評価、トレース トレース OpenTelemetry仕様に従っ て、LLMコールや関数、 LangChainやAutoGenなどの LLMフレームワークをトレー スできるトレース機能を提供 from promptflow.tracing import
start_trace start_trace() https://microsoft.github.io/promptflow/how-to-guides/tracing/index.html
Agenda Prompt Flowとは Prompt Flowでできること LLMアプリケーションの開発 評価、トレース デプロイ まとめ
デプロイ - CLIで開発サーバーデプロイ - Docker - オンラインエンドポイント - 関数として実行
デプロイ - CLIで開発サーバーデプロイ - Docker $ pf flow serve --source
<flow-folder> --port 8080 --host localhost $ curl http://localhost:8080/score --data ‘{“hoge”: … $ pf flow build --source <flow-folder> --output <output-dir> --format docker
デプロイ - オンラインデプロイメント Azure上に仮想マシンとインスタンス数を設定し簡単にデプロイ可能 - 関数として実行(既存アプリと統合し易い) from promptflow.client import load_flow
f = load_flow(“./example_flow/”) data = json.loads(request.get_data()) result_dict = f(**data)
Agenda Prompt Flowとは Prompt Flowでできること LLMアプリケーションの開発 評価、トレース デプロイ まとめ
まとめ Prompt FLowはLLMアプリケーションの開発を支える多様な機能 があり、開発サイクルを合理化している 是非、使ってみてください!