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
LLMプロと開発・運用のためのツール紹介
Search
hiroki kawauchi
June 03, 2024
Technology
0
6
LLMプロと開発・運用のためのツール紹介
hiroki kawauchi
June 03, 2024
Tweet
Share
More Decks by hiroki kawauchi
See All by hiroki kawauchi
最近のSfM手法まとめ - COLMAP / GLOMAPを中心に -
kwchrk
9
3.2k
CVPR2024 参加報告
kwchrk
0
200
第61回 コンピュータビジョン勉強会「Mip-Splatting: Alias-free 3D Gaussian Splatting」
kwchrk
1
560
20230827_PLATEAU_Hackathon_G
kwchrk
0
610
Other Decks in Technology
See All in Technology
小さく始めるDevOps 内製化支援から見えたDevOpsの始め方 / 20250317 Ken Takayanagi
shift_evolve
1
100
Restarting_SRE_Road_to_SRENext_.pdf
_awache
0
170
大規模サービスにおける カスケード障害
takumiogawa
2
290
AIエージェント完全に理解した
segavvy
4
280
20250326_管理ツールの権限管理で改善したこと
sasata299
1
390
チームビルディング「脅威モデリング」ワークショップ
koheiyoshikawa
0
150
AWS CDK コントリビュート はじめの一歩
yendoooo
1
120
製造業の会計システムをDDDで開発した話
caddi_eng
3
980
数百台のオンプレミスのサーバーをEKSに移行した話
yukiteraoka
0
680
ひまプロプレゼンツ 「エンジニア格付けチェック 〜春の公開収録スペシャル〜」
kaaaichi
0
150
RAGの基礎から実践運用まで:AWS BedrockとLangfuseで実現する構築・監視・評価
sonoda_mj
0
440
17年のQA経験が導いたスクラムマスターへの道 / 17 Years in QA to Scrum Master
toma_sm
0
410
Featured
See All Featured
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
331
21k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
135
33k
Making the Leap to Tech Lead
cromwellryan
133
9.2k
Code Review Best Practice
trishagee
67
18k
Java REST API Framework Comparison - PWX 2021
mraible
29
8.5k
Six Lessons from altMBA
skipperchong
27
3.7k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
A Modern Web Designer's Workflow
chriscoyier
693
190k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
The Pragmatic Product Professional
lauravandoore
33
6.5k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
2.9k
For a Future-Friendly Web
brad_frost
176
9.6k
Transcript
AI 2024.05.16 Hiroki Kawauchi 株式会社ディー・エヌ・エー + GO株式会社 LLMプロト開発・運用のための ツール紹介
AI 2 項目 00|自己紹介 01|LLMアプリ開発の概要と難しさ 02|プロト開発のためのツール 03|運用(LLMOps)に繋げるツール 04|まとめ
AI 3 00 自己紹介
AI 4 ▪ 河内 大輝 Kawauchi Hiroki ▪ DeNA AI技術開発部ビジョン・スポーツG23秋新卒
▪ 今担当:画像系PJ、LLM系PJ ▪ 大学 ▪ 都市・地理分野でのCV/DS応用(衛星画像解析など ▪ インターンなど ▪ 2022 DeNAサマーインターン ▪ 衛星画像データ解析プロダクトを作る会社でのPdM/ リード ▪ 趣味 ▪ 脱出ゲーム、ボドゲ、街歩き/旅行、アート鑑賞 ▪ Kaggle.. 略歴
AI 5 01 LLMアプリ開発の概要と難しさ
AI 6 • LLMを用いたアプリケーション開発の基本工程 ◦ 一般的なアプリケーション開発 ◦ Prompt Engineering ▪
LLMから適切な回答が得られるように、自然言語指示を工夫 ◦ RAG(Retrieval Augmented Generation)Pipeline 設計 ▪ LLMモデル自体を変えずに、追加知識に基づく回答を可能にする ▪ LLMのHallucination(嘘)を回避 ◦ LLMモデル自体のFine Tuning ▪ 基本的にコスト高なので今回の資料では割愛 LLMアプリケーション開発の概要
AI 7 Prompt Engineering ChatGPT - LLMシステム開発大全 - Speaker Deck
AI 8 Prompt Engineering ChatGPT - LLMシステム開発大全 - Speaker Deck
AI 9 RAG(Retrieval Augmented Generation) ChatGPT - LLMシステム開発大全 - Speaker
Deck • LLMのHalucination(Groundingしていない嘘)を回避するための手法 • 事実関係を含んだ外部documentをBackendで文脈として付与する
AI 10 • 機能を追加していけばいくほど、 (System) Promptが長くなりがち ◦ 長くなれば忘却・出力反映されない • 適切な対処が必要
◦ 可能なら圧縮(要約) ◦ 複数のステップに分割(CoT) ◦ 条件分岐やReActなど 各機能=エージェント的に分割 LLMアプリ開発の難所1:Prompt Engineering 図:Same Task, More Tokens: the Impact of Input Length on the Reasoning Performance of Large Language Models
AI 11 • Prompt Engineeringも含め、確率論的に振る舞うモジュールの組み合わせ • RAGを構成する複数Stepを改善することが必要 LLMアプリ開発の難所2:RAG ChatGPT -
LLMシステム開発大全 - Speaker Deck
AI 12 • LLMを用いたアプリケーション開発の基本工程 ◦ 一般的なアプリケーション開発 ◦ Prompt Engineering ◦
RAGPipeline 設計 ◦ Pipelineとして複雑かつ、各ステップが不確実性を含む(確率論的) ▪ →Pipelineの設計・Feasibility検証を高速に回す必要 • PoC/MVP開発での検証速度の要請 ◦ 従来のAIモデル開発に比べて、ユーザ検証のハードルが著しく低下 ◦ 従来のWebアプリ開発に近い速度でのユーザー検証が可能かつ必要 ▪ →同時にユーザー価値検証を高速に回す必要 LLMアプリ開発の難しさ
AI 13 02 プロト開発のためのツール
AI 14 • LLMアプリ開発の難しさ ◦ Pipelineの設計・Feasibility検証を高速に回す必要 ◦ 同時にユーザー価値検証を高速に回す必要 • 上記のような背景から、エンジニアもローコードに、Pipeline管理できる
ツールほしい ◦ そこで注目が集まったのがDifyのワークフロー(Pipeline管理) Dify
AI 15 • Difyとは? ◦ ノーコード・ローコードでLLMのワークフローを直感的に扱えるツール ◦ SaaSとしても、OSSとしても提供され商用利用可能 ▪ https://github.com/langgenius/dify
◦ RAG構成やログ機能も付属 Why Dify?
AI 16 • Difyのメリット1 ◦ ローカル(docker-composeコマンド一発)開発可能で商用可能 ◦ 一部条件を含むApache 2 license
▪ 以下に該当する場合は、商用ライセンスが必要 • マルチテナント型SaaS • Difyのロゴ・著作権情報を削除・変更する ▪ 社内ツールや、サーバーごとの提供ソリューションに使う分には問 題さそう ▪ 詳細→Difyの商用利用に関して詳しく聞いてみたなど Why Dify?
AI 17 • Difyのメリット2 ◦ 各モデルプロバイダのモデルを 利用可能 ◦ これまでもプロバイダに紐づい たローコードツールはあった
▪ Azure Prompt Flowなど Why Dify?
AI 18 • Difyのメリット3:直感的なWorkflow機能 ◦ RAG・質問分類や、コードブロックなどのブロックを簡単に組み合わせ可 ◦ 変数もある程度わかりやすく管理 Why Dify?
AI 19 • Difyのメリット4:直感的なRAG機能 ◦ RAGのPipelineをGUIのみで構成できる Why Dify?
AI 20 • Difyのメリット4:直感的なRAG機能 ◦ 全文検索やハイブリッド検索、rerankのモデル調整などもGUIで可能 Why Dify?
AI 21 • Difyのメリット4:直感的なRAG機能 ◦ 全文検索やハイブリッド検索、rerankのモデル調整などもGUIで可能 ◦ Why Dify?
AI 22 • Difyのメリット5:実行トレース・ダッシュボード機能 ◦ ユーザーの利用履歴や利用回数・アクティブユーザー数など ◦ ユーザ検証やLLMOpsにつながる Why Dify?
AI 23 03 運用(LLMOps)に繋げるツール
AI 24 • LLMOpsとは ◦ LLMを効果的に管理し、LLMのデプロイ、メンテナンス、安全かつ責任 ある利用を保証する ◦ LLMOps https://speakerdeck.com/rkaga/llmops-at-loglass-now
AI 25 • LangChain ◦ Difyでやったような機能をより柔軟に実装可能なライブラリ • LangSmith ◦ ざっくりLangChainのGUI版・最近Azure上(セキュア)で購入可能に
◦ 実行のトレースに加え、 データセット管理・アノテーション・プロンプト管理も ◦ 詳細 ▪ LangChain社LLMOpsツール「LangSmith」を触ってみた(詳細解説つ き) - ABEJA Tech Blog • Azure PromptFlow ◦ Azureのサービスが前提になるが、上記と同様の機能が可能 ◦ Azure上のMLサービスなどと組み合わせるなら良さそう LLMOpsツールいくつか
AI 26 04 まとめ
AI 27 • LLMを用いたアプリケーション開発の技術的難易度 ◦ Prompt Engineering ◦ RAG(Retrieval Augmented
Generation) ◦ 不確実性の高いモジュールの組み合わせを高速に検証したい • PoC/MVP開発での検証速度の要請 ◦ 従来のAIモデル開発に比べて、ユーザ検証のハードルが著しく低下 ◦ 従来のWebアプリ開発に近い速度でのユーザー検証が可能かつ必要 • 2024.5現在のツール ◦ PoC/MVP開発のためのプロトツール:Difyなど ◦ LLMOpsのためのツール: ▪ LangChain/LangSmith, Azure Prompt Flowなど まとめ