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
71
LLMプロと開発・運用のためのツール紹介
hiroki kawauchi
June 03, 2024
Tweet
Share
More Decks by hiroki kawauchi
See All by hiroki kawauchi
最近のSfM手法まとめ - COLMAP / GLOMAPを中心に -
kwchrk
12
8.7k
CVPR2024 参加報告
kwchrk
0
630
第61回 コンピュータビジョン勉強会「Mip-Splatting: Alias-free 3D Gaussian Splatting」
kwchrk
1
890
20230827_PLATEAU_Hackathon_G
kwchrk
0
730
Other Decks in Technology
See All in Technology
AWS Devops Agent ~ 自動調査とSlack統合をやってみた! ~
kubomasataka
2
230
Azure SRE Agent x PagerDutyによる近未来インシデント対応への期待 / The Future of Incident Response: Azure SRE Agent x PagerDuty
aeonpeople
0
200
toCプロダクトにおけるAI機能開発のしくじりと学び / ai-product-failures-and-learnings
rince
3
2k
Claude Codeベストプラクティスまとめ
minorun365
49
27k
Agentic Coding 実践ワークショップ
watany
41
27k
Kaggleコンペティション「MABe Challenge - Social Action Recognition in Mice」振り返り
yu4u
1
760
JuliaTokaiとしてはこれが最後かもしれない(仮) for NGK2026S
antimon2
0
120
Exadata Database Service ソフトウェアのアップデートとアップグレードの概要
oracle4engineer
PRO
1
1.2k
最速で価値を出すための プロダクトエンジニアのツッコミ術
kaacun
1
260
re:Inventで見つけた「運用を捨てる」技術。
ezaki
1
150
Web Intelligence and Visual Media Analytics
weblyzard
PRO
1
6.8k
CodeRabbit CLI + Claude Codeの連携について
oikon48
1
660
Featured
See All Featured
Paper Plane
katiecoart
PRO
0
46k
The Mindset for Success: Future Career Progression
greggifford
PRO
0
220
Making the Leap to Tech Lead
cromwellryan
135
9.7k
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
0
160
How To Stay Up To Date on Web Technology
chriscoyier
791
250k
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
86
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
0
120
Designing Powerful Visuals for Engaging Learning
tmiket
0
210
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
72
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
2
380
Exploring anti-patterns in Rails
aemeredith
2
230
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
110
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など まとめ