Skip to content

用語集と資料 ​

源码版本1.2.9

主要用語 ​

用語英文説明
状態グラフStateGraphユーザ構築入口。add_node / add_edge / add_conditional_edges / compile。libs/langgraph/langgraph/graph/state.py
コンパイル済みグラフCompiledGraph / PregelStateGraph.compile() の産物。PregelProtocol を実装し、stream / invoke / astream の入口を担う。libs/langgraph/langgraph/pregel/main.py
Pregel 実行可能体Pregelコンパイル後の実行可能グラフ。PregelProtocol を継承し、nodes / channels / checkpointer を保持。libs/langgraph/langgraph/pregel/main.py
スーパーステップsuperstepPregel モデルの実行単位。一つのスーパーステップ内で発生した全ノードを並列実行し、ステップ境界でチャネル更新を同期。Google Pregel 論文の BSP モデルに由来。
チャネルchannel状態更新のプリミティブ。各チャネルはバージョン番号を持ち、reducer が書き込みのマージ方法を決める。libs/langgraph/langgraph/channels/
チャネル基底クラスBaseChannelすべてのチャネルの抽象基底クラス。update / get / checkpoint などのインターフェースを定義。libs/langgraph/langgraph/channels/base.py
LastValue チャネルLastValue最新値のみ保持するチャネル。状態フィールドによく使われる。LastValueAfterFinish はステップ終了まで更新を遅延させる。libs/langgraph/langgraph/channels/last_value.py
リデューサーreducerチャネルの書き込みマージ関数。operator.add でリスト追記など。Annotated[T, reducer] で state schema に宣言。
ノードnode / PregelNodeグラフの実行単位。bound / triggers / writers / subgraphs を持つ。libs/langgraph/langgraph/pregel/_read.py
ノード追加add_nodeStateGraph.add_node(name, action) がノード関数または Runnable を登録。内部で coerce_to_runnable を経由。libs/langgraph/langgraph/graph/state.py
条件エッジadd_conditional_edges条件関数の戻り値で次ノードへルーティング。Send リストを返して fan-out も可能。libs/langgraph/langgraph/graph/state.py
チェックポイントcheckpointスレッド単位の永続化スナップショット。チャネルバージョン、pending writes、metadata を記録し、中断再開をサポート。libs/langgraph/langgraph/pregel/_checkpoint.py
チェックポイントセーバーBaseCheckpointSaverチェックポイント永続化インターフェース。put / get_tuple / list。libs/checkpoint/langgraph/checkpoint/base/__init__.py
メモリセーバーInMemorySaver / MemorySaverBaseCheckpointSaver のインメモリ実装。デバッグ専用。MemorySaver は InMemorySaver の旧別名。libs/checkpoint/langgraph/checkpoint/memory/__init__.py
状態スナップショットStateSnapshotステップ開始時の状態ビュー。values / next / tasks / interrupts を含む。libs/langgraph/langgraph/types.py
中断interrupt / Interruptノード内の interrupt(value) が GraphInterrupt を送出しグラフ実行を一時停止。クライアントは Command(resume=...) でリカバリ。libs/langgraph/langgraph/types.py
コマンドCommandresume / goto / update の三機能を持つプリミティブ。ノード戻り値にも invoke 入力にもなる。libs/langgraph/langgraph/types.py
送信SendPUSH タスクプリミティブ。指定ノードへ特定 arg を持つタスクを投げ、map-reduce fan-out を実現。libs/langgraph/langgraph/types.py
機能 API@entrypoint / @task関数型 API。@entrypoint が関数を Pregel に包み、@task がスケジュール可能なサブタスクにする。libs/langgraph/langgraph/func/__init__.py
ストリームモードstream_modePregel.stream / astream の出力投影オプション。values / updates / messages / custom / checkpoints / tasks / debug。libs/langgraph/langgraph/pregel/main.py

ディレクトリ規約 ​

  • 主ソースは libs/langgraph/langgraph/ にあり、責務ごとにディレクトリ分け:
    • pregel/ — 実行エンジンカーネル。main.py が Pregel クラスの入口、__init__.py が公開インターフェースをエクスポート、_loop.py が PregelLoop ステートマシン、_runner.py が PregelRunner 並列実行器、_algo.py が apply_writes / prepare_next_tasks / should_interrupt などのアルゴリズム関数、_io.py が map_command / map_input / map_output_*、_call.py が SyncAsyncFuture と task の Runnable ラップ、_read.py が PregelNode、_executor.py が BackgroundExecutor / AsyncBackgroundExecutor、remote.py が RemoteGraph。
    • graph/ — StateGraph / CompiledStateGraph のユーザインターフェース。state.py が中心で _node.py / _branch.py が補助。
    • channels/ — BaseChannel / LastValue / Topic / Binop などのチャネル実装。
    • func/ — @entrypoint / @task 関数型 API(実装はすべて func/__init__.py の一ファイル)。
    • types.py — Command / Send / Interrupt / StateSnapshot / PregelExecutableTask などの公開データ型。
    • stream/ — GraphRunStream / StreamMux などのストリーミング mux 実装。
    • managed/ — IsLastStep などの実行時注入値。
  • チェックポイント実装は独立パッケージに分割: libs/checkpoint/(base + memory)、libs/checkpoint-sqlite/、libs/checkpoint-postgres/。
  • Pregel エンジンの入口は libs/langgraph/langgraph/pregel/__init__.py、主クラス Pregel は pregel/main.py。

公式資料 ​

ソースバージョン ​

本サイトのソースバージョンは 1.2.9 に固定し、行番号はこの tag に準じます。すべての <SrcLink> は github.com/langchain-ai/langgraph/blob/1.2.9/<path>#Lxx-Lyy を指します。バージョンアップ時は docs/.vitepress/site.ts の LANGGRAPH_TAG を変更して npm run check:refs を実行してください。