LangGraph is LangChain's orchestration layer. It models an agent as a graph of nodes (functions) connected by edges (transitions), with explicit shared state. It's much less opinionated than the rest of LangChain.
The model
Nodes are functions that read and write a shared state object.
Edges are either fixed (always go to node B after A) or conditional (a function decides).
State is a typed dict passed between nodes. Usually a TypedDict or Pydantic model.
Checkpoints persist state between turns. Good for long-running, resumable workflows.