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
peisuke
January 30, 2024
Technology
13
4.2k
LangGraphで始めるマルチエージェントシステム
生成AI新年会2024 LT資料
LangGraphで始めるマルチエージェントシステム
peisuke
January 30, 2024
Tweet
Share
More Decks by peisuke
See All by peisuke
AI for Kids:小学生に画像認識を教えてみた話
peisuke
1
8
Self-RAG: Learning to Retrieve, Generate and Critique through Self-Reflections
peisuke
9
1.5k
Mip-NeRF 360: Unbounded Anti-Aliased Neural Radiance Fields
peisuke
0
10k
LangChain Toolsの運用と改善
peisuke
4
2.6k
GNeRF: GAN-based Neural Radiance Field without Posed Camera
peisuke
1
750
TTS Skins: Speaker Conversion via ASR
peisuke
0
390
A Quantum Computational Approach to Correspondence Problems on Point Sets
peisuke
0
690
F0-Consistent Many-to-many Non-parallel Voice Conversion via Conditional Autoencoder
peisuke
0
190
YOLACT real-time instance segmentation
peisuke
1
270
Other Decks in Technology
See All in Technology
Raycast Favorites × Script Command で実現するお手軽情報チェック
smasato
1
150
1行のコードから社会課題の解決へ: EMの探究、事業・技術・組織を紡ぐ実践知 / EM Conf 2025
9ma3r
11
3.7k
急成長する企業で作った、エンジニアが輝ける制度/ 20250227 Rinto Ikenoue
shift_evolve
0
130
AIエージェント元年
shukob
0
160
ウォンテッドリーのデータパイプラインを支える ETL のための analytics, rds-exporter / analytics, rds-exporter for ETL to support Wantedly's data pipeline
unblee
0
120
AWSアカウントのセキュリティ自動化、どこまで進める? 最適な設計と実践ポイント
yuobayashi
7
570
システム・ML活用を広げるdbtのデータモデリング / Expanding System & ML Use with dbt Modeling
i125
1
320
Amazon Q Developerの無料利用枠を使い倒してHello worldを表示させよう!
nrinetcom
PRO
2
110
ExaDB-XSで利用されているExadata Exascaleについて
oracle4engineer
PRO
3
240
Autonomous Database Serverless 技術詳細 / adb-s_technical_detail_jp
oracle4engineer
PRO
17
45k
Goで作って学ぶWebSocket
ryuichi1208
3
2.7k
ESXi で仮想化した ARM 環境で LLM を動作させてみるぞ
unnowataru
0
170
Featured
See All Featured
Automating Front-end Workflow
addyosmani
1368
200k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
45
9.4k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
21
2.5k
Large-scale JavaScript Application Architecture
addyosmani
511
110k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
4
430
Side Projects
sachag
452
42k
The Cost Of JavaScript in 2023
addyosmani
47
7.4k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
7
640
Dealing with People You Can't Stand - Big Design 2015
cassininazir
366
25k
Designing for Performance
lara
604
68k
YesSQL, Process and Tooling at Scale
rocio
172
14k
We Have a Design System, Now What?
morganepeng
51
7.4k
Transcript
-BOH(SBQIͰ࢝ΊΔϚϧ νΤʔδΣϯτγεςϜ !QFJTVLF
None
-BOH$IBJOॲཧ͕γʔέϯγϟϧͱ͍͏՝͕͋Δ • $IBJOͰɺ"#$ͱ͍ͬͨॲཧΛߦ͏ • ྫɿݕࡧͯ͠ཁͯ͠༁͢ΔͳͲ • --.ͷΑ͏ʹᐆດͳೖग़ྗΛѻ͏έʔεͰɺదͳ݁Ռ͕ಘ ΒΕͳ͍͜ͱ͕ଟ͍ • ྫɿʮ౦ژͷҎ߱ͷਓޱͷਪҠΛग़ྗͯ͠ʯʹର͠ɺதؒ
ͷॲཧͰҎ߱ͷਪҠΛޡͬͯग़ͯ͠͠·͏ͱमਖ਼͕Ͱ͖ͳ͍
-BOH(SBQI • άϥϑͱͯ͠Ұ࿈ͷಈ࡞Λهड़͠ɺʮαΠΫϧʯͷॲཧΛѻ͑ ΔΑ͏ʹͨ͠ • ҰݸͷॲཧΛʮϊʔυʯͰද͠ɺ࣍ʹͲͷϊʔυΛಈ͔͔͢Λ ʮΤοδʯͰද͢ ௨ৗ'VODUJPO$BMMJOH
-BOH(SBQIͱϚϧνΤʔδΣϯτ • ෳͷϊʔυΛར༻͢Δ͜ͱͰϚϧνΤʔδΣϯτͷγεςϜ ͱͯ͠ར༻Ͱ͖Δ ৭ΜͳߏΛ࡞ΕΔ
ঢ়ଶʢεςʔτʣͱ • άϥϑશମͷใʢաڈͷձཤྺɺೖྗͳͲʣ • جຊతʹࣗ༝ʹهड़ͯ͠ྑ͍ • ޙʹઆ໌͢ΔϊʔυΤοδ͕ར༻͢ΔใΛೖΕ͓ͯ͘
ϊʔυͱ • Կ͔͠ΒͷॲཧΛද͢ʢྫɿ--.ɺ'VODUJPO$BMMJOHʣ • ؔͱͯ͠ఆ͓ٛͯ͘͠ • εςʔτΛೖྗ͠ɺॲཧ݁ՌΛฦ͢
Τοδͱ • ݺͼग़͠ݩͱݺͼग़͠ઌͷϊʔυΛهड़ • ݅ذ͕ඞཁͰ͋Εɺ݅ذͷ໊ؔهड़ TIPVME@DPOUJOVFؔͰ εςʔτΛೖྗͱͯ͠ɺ DPOUJOVF͔FOEΛฦ͢
Τοδͱ • ۩ମతͳ݅ذͷྫ ࠷৽ͷϝοηʔδ͕ 'VODUJPO$BMMJOHΛݺ ΜͰ͍Δ͔ΛνΣοΫ
ಈ࡞ͷΠϝʔδΛղઆ • ఱؾΛௐΔΈΛఆ • "HFOUϊʔυͱɺ5PPMϊʔυΛ༻ҙ • "HFOUɺ5PPMΛݺͿ͔Ͳ͏͔ΛܾΊɺݺ ͳ͍߹ࣗવݴޠͰฦ • 5PPMɺఱؾ"1*Λݺͼग़ͯ͠ճ
"HFOU 5PPM &OE 4UBSU ఱؾΛௐΔ'$
ಈ࡞ͷΠϝʔδΛղઆ • ఱؾΛௐΔΈΛఆ • "HFOUϊʔυͱɺ5PPMϊʔυΛ༻ҙ • "HFOUɺ5PPMΛݺͿ͔Ͳ͏͔ΛܾΊɺݺ ͳ͍߹ࣗવݴޠͰฦ • 5PPMɺఱؾ"1*Λݺͼग़ͯ͠ճ
"HFOU 5PPM &OE 4UBSU ఱؾΛௐΔ'$ ユーザー:東京の天気は? Agent:{Function calling: 天気API, query: 東京}
ಈ࡞ͷΠϝʔδΛղઆ • ఱؾΛௐΔΈΛఆ • "HFOUϊʔυͱɺ5PPMϊʔυΛ༻ҙ • "HFOUɺ5PPMΛݺͿ͔Ͳ͏͔ΛܾΊɺݺ ͳ͍߹ࣗવݴޠͰฦ • 5PPMɺఱؾ"1*Λݺͼग़ͯ͠ճ
"HFOU 5PPM &OE 4UBSU ఱؾΛௐΔ'$ Agent:{Function calling: 天気API, query: 東京} EdgeはAgentの返答がFunction Callingかを判定、 Function Callingが呼ばれたので、Toolノードに遷移
ಈ࡞ͷΠϝʔδΛղઆ • ఱؾΛௐΔΈΛఆ • "HFOUϊʔυͱɺ5PPMϊʔυΛ༻ҙ • "HFOUɺ5PPMΛݺͿ͔Ͳ͏͔ΛܾΊɺݺ ͳ͍߹ࣗવݴޠͰฦ • 5PPMɺఱؾ"1*Λݺͼग़ͯ͠ճ
"HFOU 5PPM &OE 4UBSU ఱؾΛௐΔ'$ Agent:{Function calling: 天気API, query: 東京} Tool: {message: 晴れ} πʔϧݺͼग़͠
ಈ࡞ͷΠϝʔδΛղઆ • ఱؾΛௐΔΈΛఆ • "HFOUϊʔυͱɺ5PPMϊʔυΛ༻ҙ • "HFOUɺ5PPMΛݺͿ͔Ͳ͏͔ΛܾΊɺݺ ͳ͍߹ࣗવݴޠͰฦ • 5PPMɺఱؾ"1*Λݺͼग़ͯ͠ճ
"HFOU 5PPM &OE 4UBSU ఱؾΛௐΔ'$ ユーザー:東京の天気は? Agent:{Function calling: 天気API, query: 東京} Tool: {message: 晴れ} Agent: {message: 東京の天気は晴れ}
ಈ࡞ͷΠϝʔδΛղઆ • ఱؾΛௐΔΈΛఆ • "HFOUϊʔυͱɺ5PPMϊʔυΛ༻ҙ • "HFOUɺ5PPMΛݺͿ͔Ͳ͏͔ΛܾΊɺݺ ͳ͍߹ࣗવݴޠͰฦ • 5PPMɺఱؾ"1*Λݺͼग़ͯ͠ճ
"HFOU 5PPM &OE 4UBSU ఱؾΛௐΔ'$ Agent: {message: 東京の天気は晴れ} Agentの返答にFunction Callingが含まれな いので、END側のノードを呼び出す
ಈ࡞ͷΠϝʔδΛղઆ • Ϧαʔνͯ͠υΩϡϝϯτΛ࡞ΔΈΛͪΐͬͱ͚ͩ
ಈ࡞ͷΠϝʔδΛղઆ • Ϧαʔνͯ͠υΩϡϝϯτΛ࡞ΔΈΛͪΐͬͱ͚ͩ 全体統括者
ಈ࡞ͷΠϝʔδΛղઆ • ΤοδͷΈ͚ͩ؆୯ʹհ リサーチチームの結果は統括者に返す、 ドキュメントチームの結果も統括者に返す 統括者は次のチームをJSONを出⼒する 仕様、レスポンスのnextに応じて、次 のチームを決めてノードを動かす
ಈ࡞ͷΠϝʔδΛղઆ • Ϧαʔνͯ͠υΩϡϝϯτΛ࡞ΔΈΛͪΐͬͱ͚ͩ リサーチチーム ドキュメントチーム 全体統括者
ಈ࡞ͷΠϝʔδΛղઆ • ΤοδͷΈ͚ͩ؆୯ʹհ 先程と同様に、ノードの 結果を統括者に返す 先程と同様に、Search, Web Scraperのノードを 選択的に呼び出す
"VUP(FOͱͷҧ͍ • ݁ہͷͱ͜Ζશ෦ॻ͚ಉ͜͡ͱ͕Ͱ͖ΔΑ • ʮࣗવʹ͑ʯͱ͍͏લఏͰݸਓͷײΛड़Δ • ࡉ͔͘ॻ͘ɺҙͷॲཧΛ࣮ߦ͢Δͷ͕ۤखͦ͏ • ಛʹ"VUP(FOΑΓίʔυΛॻ͍࣮ͯߦ͢Δͷ͕PQUJPOBMѻ͍ •
ભҠΛ໌֬Խ͢Δ͜ͱͰɺ੍ޚ͕༰қʹͳΔ • ͋Δఔɺܾ·ͬͨۀϑϩʔͷࣗಈԽͰޮՌΛൃشͦ͠͏
·ͱΊ • -BOH(SBQIͷجຊతͳߏͱɺϚϧνΤʔδΣϯτͷࡍͷߏ ʹ͍ͭͯ؆୯ʹհ • ॲཧͷखॱΛৄࡉʹղઆɺΠϝʔδ͕͍ͨΒ͍Ͱ͢