- DATE:
- AUTHOR:
- The LangChain Team
✔️ LangGraph v0.2: Increased customization with new checkpointers
We've released LangGraph v0.2 for increased customization with new checkpointer libraries.
LangGraph v0.2 allows you to tailor stateful LangGraph apps to your custom needs. Using a checkpointer, you can manage the graph state and build resilient LLM apps with session memory, robust error recovery, and human-in-the-loop capabilities.
We now have a suite of new, dedicated checkpointer libraries:
langgraph_checkpoint
: The base interface for checkpointer savers (BaseCheckpointSaver
) and serialization/deserialization interface (SerializationProtocol
). Includes in-memory checkpointer implementation (MemorySaver
) for experimentation.langgraph_checkpoint_sqlite
: An implementation of LangGraph checkpointer that uses SQLite database. Ideal for experimentation and local workflows.langgraph_checkpoint_postgres
: Our advanced checkpointer that we wrote and optimized for Postgres in LangGraph Cloud is now open-sourced and available to the community to build upon. Ideal for using in production.
Since LangGraph checkpointer libraries are implemented as namespace packages, you can import checkpointer interfaces and implementations the same way as before, using:
from langgraph.checkpoint.base import BaseCheckpointSaver
from langgraph.checkpoint.memory import MemorySaver
from langgraph.checkpoint.sqlite import SqliteSaver
from langgraph.checkpoint.postgres import PostgresSaver
Since SQLite and Postgres checkpointers are provided via separate libraries, you will need to install them using pip install langgraph-checkpoint-sqlite
or pip install langgraph-checkpoint-postgres
.
We've designed LangGraph v0.2 to be largely backwards compatible. Below is a list of breaking changes and deprecations in this latest version.
Breaking changes
LangGraph v0.2 introduces the following breaking changes:
thread_ts
andparent_ts
have been renamed tocheckpoint_id
andparent_checkpoint_id
, respectively (vialanggraph_checkpoint==1.0.0
).Note: LangGraph checkpointers still recognize
thread_ts
if passed via config and treat it ascheckpoint_id
Re-exported imports like
from langgraph.checkpoint import BaseCheckpointSaver
are no longer possible due to the use of namespace packages. Instead, usefrom langgraph.checkpoint.base import BaseCheckpointSaver
SQLite checkpointers have been moved to a separate library, so you’ll need to install it separately using
pip install langgraph-checkpoint-sqlite
Deprecations
In LangGraph v0.2, we've removed:
langgraph.prebuilt.chat
_agent_executor.create_function_calling_executor
. We recommend you uselanggraph.prebuilt.chat
_agent_executor.create_react_agent
insteadlanggraph.prebuilt.agent_executor
. We recommend you uselanggraph.prebuilt.chat
_agent_executor.create_react_agent
instead
For more resources: