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
LangGraphでマルチエージェントワークフローを構築
Search
西岡 賢一郎 (Kenichiro Nishioka)
April 28, 2024
Technology
0
69
LangGraphでマルチエージェントワークフローを構築
機械学習の社会実装勉強会第34回 (
https://machine-learning-workshop.connpass.com/event/316112/
) の発表資料です。
西岡 賢一郎 (Kenichiro Nishioka)
April 28, 2024
Tweet
Share
More Decks by 西岡 賢一郎 (Kenichiro Nishioka)
See All by 西岡 賢一郎 (Kenichiro Nishioka)
LLMアプリケーションで使用するVector Databaseの比較
knishioka
0
170
LLMアプリケーションの デバッグ・テスト・評価・監視を楽にするLangSmith
knishioka
0
140
LangChainから学ぶプロンプトエンジニアリングテクニック
knishioka
0
140
チャット履歴と質問を組み合わせLLMの回答精度を高めるLangChain Conversational Retrieval QA
knishioka
0
440
LangChain RetrievalQAとChatGPTでQAツールを作る
knishioka
1
380
LangChainのDocument機能を使って文書処理を柔軟にする
knishioka
0
650
LangChain Agentを使って自社ツールとChatGPTを連携
knishioka
0
300
LLMを使ったサービス開発必須ライブリ 「LangChain」の基礎
knishioka
0
130
データの品質を管理するAWS Glue Data Quality
knishioka
0
71
Other Decks in Technology
See All in Technology
テストコードを書きながらCompose Multiplatformを乗りこなす
subroh0508
0
140
本番環境で Cloudflareを 使ってみた話
miu_crescent
2
120
株式会社EventHub・エンジニア採用資料
eventhub
0
2.1k
日本が誇るイタリアのダンスミュージック!? ユーロビートって何??
minorun365
PRO
1
180
回り回って効いてくる副次的効果としての技術広報/techpr
nishiuma
1
180
「できる!」を増やすGitHub Copilot活用法 / How to use GitHub Copilot to expand your possibilities
sansan_randd
1
230
OPENLOGI Company Profile for engineer
hr01
1
2.1k
Kaggleで学ぶ系列データのための深層学習モデリング
yu4u
7
1.7k
エンジニアゼロの組織から内製開発の DX をどう実現したのか / How did we achieve DX in in-house development in an organization with zero engineers?
genkiogasawara
6
2.9k
個人的、Kubernetes の最新注目機能! (2024年5月版) / TechFeed Experts Night#28 〜 コンテナ技術最前線
pfn
PRO
3
210
YJIT Makes Rails 1.7x faster / RubyKaigi 2024
k0kubun
2
370
生成AIと産業向けソフトウェアの自動生成 〜 ハノーバーメッセ2024より〜
kioto
2
420
Featured
See All Featured
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
323
20k
Designing the Hi-DPI Web
ddemaree
276
33k
Ruby is Unlike a Banana
tanoku
96
10k
Optimizing for Happiness
mojombo
370
69k
Into the Great Unknown - MozCon
thekraken
15
1.1k
Done Done
chrislema
178
15k
A Tale of Four Properties
chriscoyier
153
22k
Testing 201, or: Great Expectations
jmmastey
30
6.4k
GitHub's CSS Performance
jonrohan
1025
450k
Rebuilding a faster, lazier Slack
samanthasiow
74
8.3k
ParisWeb 2013: Learning to Love: Crash Course in Emotional UX Design
dotmariusz
104
6.7k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
67
14k
Transcript
LangGraphで マルチエージェントワークフローを構築 2024/04/26 第34回勉強会
自己紹介 • 名前: 西岡 賢一郎 ◦ Twitter: @ken_nishi ◦ note:
https://note.com/kenichiro ◦ YouTube: 【経営xデータサイエンスx開発】西岡 賢一郎のチャンネル (https://www.youtube.com/channel/UCpiskjqLv1AJg64jFCQIyBg) • 経歴 ◦ 東京大学で位置予測アルゴリズムを研究し博士 (学術) を取得 ◦ 東京大学の博士課程在学中にデータサイエンスをもとにしたサービスを提供する株式会社ト ライディアを設立 ◦ トライディアを別のIT会社に売却し、CTOとして3年半務め、2021年10月末にCTOを退職 ◦ CDPのスタートアップ (Sr. PdM)・株式会社データインフォームド (CEO)・株式会社ディース タッツ (CTO) ◦ 自社および他社のプロダクト開発チーム・データサイエンスチームの立ち上げ経験
はじめに 本日の発表内容 • LangGraph紹介 - LangChain基盤のライブラリ、言語モデル使用の多アク ターアプリケーション構築支援 • LangChain統合 -
LangChain Expression Language拡張、エージェント間の 協調計算 • プレゼンテーション目的 - LangGraph基本概念学習、マルチエージェント ワークフロー構築方法説明
マルチエージェントとは? 1. マルチエージェントシステム定義 - 複数の独立した エージェントが協力し合うシステム。 2. 独立性と協働性 - 各エージェントは独自のタスクと
責任を持ちつつ、共通の目標達成のために互いに情 報やリソースを共有。 3. 通信と協調 - エージェント間の効果的な通信と協調 により、より複雑な問題解決が可能に。
マルチエージェントの利点 1. 効率性の向上 - 複数のエージェントが特定のタスク に特化し、同時に異なる作業を進行することで全体 の処理速度が向上。 2. 複雑な問題の分割 -
大規模または複雑な問題を小さ な単位に分割し、それぞれのエージェントが一部を 担当することで問題全体の解決を容易に。 3. 拡張性と柔軟性 - 新たなエージェントの追加や既存 のエージェントの調整を通じて、システム全体の能 力を柔軟に調整可能。 4. 耐障害性の向上 - 一つのエージェントが停止または 障害を起こしても、他のエージェントがその機能を 代替またはサポートすることでシステム全体のダウ ンタイムを最小限に抑制。
LangGraphの主要機能 1. サイクルの管理 - LangGraphを使用して、ワークフ ローにおける繰り返し処理や循環的なタスクを効果 的に管理。 2. 状態管理 -
各エージェントの状態を追跡し、ワーク フロー全体の状態を一元管理。 3. LangChainとの統合 - LangChainの機能を拡張し、 より複雑なマルチエージェントシステムをサポー ト。 4. エッジとノードの制御 - グラフ内の各ノード(エー ジェント)とエッジ(通信パス)を詳細に設定し、 精密なワークフロー制御を実現。 5. 条件付きルーティング - 条件に基づいて動的にワー クフローの経路を変更する機能を提供。
実践的な例 • LangGraphの例 a. スーパーバイザーが各エージェントを管理 b. マルチエージェントで協力 c. 階層的エージェントチーム •
LangGraphのサンプルが充実している https://github.com/langchain-ai/langgraph/tree/main/examples
スーパーバイザーが各エージェントを管理 一つのスーパーバイザーエージェント が他のエージェントを管理し、タスク の進行状況を監督する例。異なるエー ジェントが独立してタスクを進行させ ながらも、全体の調整をスーパーバイ ザーが行う構成。
マルチエージェントで協力 複数のエージェントが協力してタスク を遂行する例。エージェントが情報を 共有しながら協力する様子を示すコー ドから派生。
階層的エージェント 複数レベルのエージェントが階層的に 協力する構造。上位のエージェントが 下位のエージェントの活動を指示し、 それぞれのエージェントが部分的なタ スクを担当。
デモ • LangGraphの簡単な使い方を紹介 • LangGraphを使った複雑なアプリケーション構築例は次回以降の勉強会で紹 介する予定