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.6k
Prompt FlowによるLLMアプリケーション開発
Yuto Urushima
July 09, 2024
Tweet
Share
More Decks by Yuto Urushima
See All by Yuto Urushima
Webエンジニアから生成AIエンジニアへ
yuto2000
2
260
LangGraphを用いたマルチエージェント
yuto2000
2
2k
Prompt FlowによるLLMOps
yuto2000
1
1.3k
Other Decks in Programming
See All in Programming
XP, Testing and ninja testing
m_seki
3
250
AIエージェントはこう育てる - GitHub Copilot Agentとチームの共進化サイクル
koboriakira
0
590
チームのテスト力を総合的に鍛えて品質、スピード、レジリエンスを共立させる/Testing approach that improves quality, speed, and resilience
goyoki
5
890
NPOでのDevinの活用
codeforeveryone
0
840
AI コーディングエージェントの時代へ:JetBrains が描く開発の未来
masaruhr
1
160
「テストは愚直&&網羅的に書くほどよい」という誤解 / Test Smarter, Not Harder
munetoshi
0
170
「Cursor/Devin全社導入の理想と現実」のその後
saitoryc
0
820
レベル1の開発生産性向上に取り組む − 日々の作業の効率化・自動化を通じた改善活動
kesoji
0
220
AIと”コードの評価関数”を共有する / Share the "code evaluation function" with AI
euglena1215
1
170
Porting a visionOS App to Android XR
akkeylab
0
470
ペアプロ × 生成AI 現場での実践と課題について / generative-ai-in-pair-programming
codmoninc
2
18k
なぜ適用するか、移行して理解するClean Architecture 〜構造を超えて設計を継承する〜 / Why Apply, Migrate and Understand Clean Architecture - Inherit Design Beyond Structure
seike460
PRO
3
770
Featured
See All Featured
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
331
22k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Faster Mobile Websites
deanohume
307
31k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
5.9k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
Facilitating Awesome Meetings
lara
54
6.4k
The Pragmatic Product Professional
lauravandoore
35
6.7k
Writing Fast Ruby
sferik
628
62k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
181
54k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
820
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
46
9.6k
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アプリケーションの開発を支える多様な機能 があり、開発サイクルを合理化している 是非、使ってみてください!