Library with a DuckDB implementation of LangGraph checkpoint saver.
Project description
LangGraph Checkpoint DuckDB
Implementation of LangGraph CheckpointSaver that uses DuckDB.
Usage
[!IMPORTANT] When using DuckDB checkpointers for the first time, make sure to call
.setup()
method on them to create required tables. See example below.
from langgraph.checkpoint.duckdb import DuckDBSaver
write_config = {"configurable": {"thread_id": "1", "checkpoint_ns": ""}}
read_config = {"configurable": {"thread_id": "1"}}
with DuckDBSaver.from_conn_string(":memory:") as checkpointer:
# call .setup() the first time you're using the checkpointer
checkpointer.setup()
checkpoint = {
"v": 1,
"ts": "2024-07-31T20:14:19.804150+00:00",
"id": "1ef4f797-8335-6428-8001-8a1503f9b875",
"channel_values": {
"my_key": "meow",
"node": "node"
},
"channel_versions": {
"__start__": 2,
"my_key": 3,
"start:node": 3,
"node": 3
},
"versions_seen": {
"__input__": {},
"__start__": {
"__start__": 1
},
"node": {
"start:node": 2
}
},
"pending_sends": [],
}
# store checkpoint
checkpointer.put(write_config, checkpoint, {}, {})
# load checkpoint
checkpointer.get(read_config)
# list checkpoints
list(checkpointer.list(read_config))
Async
from langgraph.checkpoint.duckdb.aio import AsyncDuckDBSaver
async with AsyncDuckDBSaver.from_conn_string(":memory:") as checkpointer:
checkpoint = {
"v": 1,
"ts": "2024-07-31T20:14:19.804150+00:00",
"id": "1ef4f797-8335-6428-8001-8a1503f9b875",
"channel_values": {
"my_key": "meow",
"node": "node"
},
"channel_versions": {
"__start__": 2,
"my_key": 3,
"start:node": 3,
"node": 3
},
"versions_seen": {
"__input__": {},
"__start__": {
"__start__": 1
},
"node": {
"start:node": 2
}
},
"pending_sends": [],
}
# store checkpoint
await checkpointer.aput(write_config, checkpoint, {}, {})
# load checkpoint
await checkpointer.aget(read_config)
# list checkpoints
[c async for c in checkpointer.alist(read_config)]
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Close
Hashes for langgraph_checkpoint_duckdb-2.0.0.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | e3ce7b09d2b4ea86a857ee8cebc8fa08ddaa3a3487f0a44738b776b869e7d18f |
|
MD5 | b1a9e2a7d0512058f533d4f2115f5ea6 |
|
BLAKE2b-256 | 2fe72937fc8e05ac3ab286760ee3f2f04f02001dc097ab398f04367352a20132 |
Close
Hashes for langgraph_checkpoint_duckdb-2.0.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | cf9c36e57ed86a73c558590d08d5d60e5e3262bba3dbd7b7c7d2f67831ccb0d9 |
|
MD5 | 2184aaf9bc4cab1b32408229bfe138a5 |
|
BLAKE2b-256 | 21f6a217d34373c52c993e17b7412bb76766f513eba23b6b06cafa3e5a1b4003 |