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
12
3.1k
LangGraphで始めるマルチエージェントシステム
生成AI新年会2024 LT資料
LangGraphで始めるマルチエージェントシステム
peisuke
January 30, 2024
Tweet
Share
More Decks by peisuke
See All by peisuke
AutoGenで作るLLM Agen
peisuke
1
920
Self-RAG: Learning to Retrieve, Generate and Critique through Self-Reflections
peisuke
9
1.3k
Mip-NeRF 360: Unbounded Anti-Aliased Neural Radiance Fields
peisuke
0
6.2k
LangChain Toolsの運用と改善
peisuke
4
2.4k
GNeRF: GAN-based Neural Radiance Field without Posed Camera
peisuke
1
630
TTS Skins: Speaker Conversion via ASR
peisuke
0
330
A Quantum Computational Approach to Correspondence Problems on Point Sets
peisuke
0
630
F0-Consistent Many-to-many Non-parallel Voice Conversion via Conditional Autoencoder
peisuke
0
140
YOLACT real-time instance segmentation
peisuke
1
200
Other Decks in Technology
See All in Technology
Dungeons and Dragons and Rails
joelq
0
250
Step by Stepで学ぶ、ADT(代数的データ型)、モナドからEffect-TSまで
leveragestech
1
3.1k
PhpStorm超絶技巧40分集中講義 #phpconkagawa
yusuke
4
790
QA Engineer Life @ LINE
line_developers_tw
PRO
0
110
My road to OSEE Part1
yunolay
0
120
本当のガバクラ基礎
toru_kubota
0
320
The depthes of profiling Ruby - RubyKaigi 2024
osyoyu
0
170
Blazor WASM × Code-first gRPC で始める C# ⼤統⼀理論
sansantech
PRO
1
850
OpenID Foundation updates
fujie
0
210
シンプルなHITL機械学習と様々なタスクにおけるHITL機械学習
naohachi89
0
330
Exadata Database Service on Dedicated Infrastructure(ExaDB-D) UI スクリーン・キャプチャ集
oracle4engineer
PRO
2
1.7k
Real World Type Puzzle and Code Generation
yukukotani
4
640
Featured
See All Featured
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
67
14k
GitHub's CSS Performance
jonrohan
1025
450k
How to train your dragon (web standard)
notwaldorf
75
5.2k
Practical Orchestrator
shlominoach
183
9.8k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
275
13k
Facilitating Awesome Meetings
lara
43
5.6k
Pencils Down: Stop Designing & Start Developing
hursman
117
11k
Typedesign – Prime Four
hannesfritz
36
2.1k
Fireside Chat
paigeccino
22
2.7k
Design by the Numbers
sachag
274
18k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
501
140k
Music & Morning Musume
bryan
41
5.6k
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ͷجຊతͳߏͱɺϚϧνΤʔδΣϯτͷࡍͷߏ ʹ͍ͭͯ؆୯ʹհ • ॲཧͷखॱΛৄࡉʹղઆɺΠϝʔδ͕͍ͨΒ͍Ͱ͢