feat: replace default MemorySaver with sqlite-based checkpointer; add multi-DB support #430
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
📝 Description
This PR enhances the memory persistence mechanism in the graph builder by:
✅ Default Behavior
MemorySaver
with an SQLite-based checkpointer usinglanggraph-checkpoint-sqlite
.:memory:
mode for dev/testing, ensuring persistence without external services.🛠️ Multi-Database Support
langgraph-checkpoint-postgres
)langgraph-checkpoint-mongodb
)langgraph-checkpoint-redis
)conf.yaml
:🧱 Code Structure
builder.py
to dynamically instantiate checkpointer based on config.app.py
to use the unified graph builder pattern with the new checkpointer.📘 Docs & Examples
docs/configuration_guide.md
with setup instructions for each supported DB.pyproject.toml
and dependencies accordingly.✅ Benefits