LangChain / LangGraph

LLM アプリ構築の Python/JS フレームワーク。チェーン・vectorstore・retriever・tracing 等の部品を提供する LangChain と、状態付きグラフでエージェントを記述する LangGraph からなる。

LangChain

  • vectorstore: ActiveLoop、Qdrant 等と連携し retrieval-augmented-generation を構築。
  • retriever 拡張: Contextual Compression Retriever、各種 text_splitter など検索前処理。
  • tracing: デバッグ用トレース機能(後発の専用 observability は langfuse)。

LangGraph

StateGraph でノード(関数)とエッジ(遷移)を宣言し、add_conditional_edges で tool 呼び出しの有無により分岐させる。MessagesState を継承した State に独自フィールド(例: recall_memories)を足せる。

永続化は 2 層に分離:

  • Checkpointer: スレッド単位 (thread_id) の状態 snapshot。
  • Store: スレッドをまたぐ KVS(embedding 検索可)。

これらを使った長期記憶の実装は llm-agent-memory に詳述。ConversationEntityMemory (v0.2 系) は deprecated で long-term memory agent 方式へ移行。GraphDB のクエリを生成させて QA する graph 連携もある。

関連