3️⃣

LangChain Academy: module-3(UXとヒューマンインザループ編)

2025/01/14に公開

LangCainAcademy

今回はmodule-3(UXとヒューマンインザループ編)です

これまでの内容は以下の記事を参考にしてください。

module-3

https://github.com/shirochan/langchain-academy/tree/main/module-3

全文英語 + 説明動画も英語のLnagChain Academyですので、ノートブックの英文を日本語訳しそれを見ながら学習をしていくことにしました。
LLMに翻訳してもらいましたので少し読みにくい文章が残っている可能性があります。
また、LangGraph APIについては実施しておりませんのでご了承ください。

Streaming

https://github.com/shirochan/langchain-academy/blob/main/module-3/streaming-interruption.md

langgraphは異なるgraph stateのstreamingをサポートしている

  • updates: 各ノードが呼び出された後にグラフの状態への更新をストリーミングします。
  • values: 各ノードが呼び出された後にグラフの完全な状態をストリーミングします。


Breakpoints

https://github.com/shirochan/langchain-academy/blob/main/module-3/breakpoints.md
特定のステップでGraphを停止する簡単な方法であるブレークポイントの紹介
ブレークポイントを使用してGraphを中断し、次のノードを実行する前にユーザーの承認を待つ方法が紹介された

Editing State and Human Feedback

https://github.com/shirochan/langchain-academy/blob/main/module-3/edit-state-human-feedback.md
Graph Stateを直接編集し、人間によるフィードバックを挿入する方法



Dynamic Breakpoints

https://github.com/shirochan/langchain-academy/blob/main/module-3/dynamic-breakpoints.md
動的にGraphを中断させる方法

Time Travel

https://github.com/shirochan/langchain-academy/blob/main/module-3/time-travel.md

過去のstateをBrowsing、Replaying、Forkingするために、LangGraphがデバッグをサポートしている方法の紹介

Browsing History

graph stateを遡って確認する

Replaying

graphを再実行するのではなく過去の実行結果を再生する

Forking

graphを過去のある地点から新しく実行する

まとめ

module3は実行中にどのように人間の入力をいれるのか?
途中で止めてデバッグする方法はどうすればよいか?といった内容だった。
主には以下の3つに関する内容

  1. 承認 - エージェントを中断して、ユーザーに状態を表示し、ユーザーがアクションを受け入れを可能にする
  2. デバッグ - グラフを巻き戻して問題を再現または回避する
  3. 編集 - stateを変更する

ここまでは基礎的なLangChain/LnagGraphについての説明が多かったが次のmodule4はタイトルが Building Your Assitang となっておりいよいよAIアシスタントに関する話になってくるのではないかと期待している。

Discussion