Skip to main content

Library with a SQLite implementation of LangGraph checkpoint saver.

Project description

LangGraph SQLite Checkpoint

Implementation of LangGraph CheckpointSaver that uses SQLite DB (both sync and async, via aiosqlite)

Usage

from langgraph.checkpoint.sqlite import SqliteSaver

write_config = {"configurable": {"thread_id": "1", "checkpoint_ns": ""}}
read_config = {"configurable": {"thread_id": "1"}}

with SqliteSaver.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
    checkpointer.put(write_config, checkpoint, {}, {})

    # load checkpoint
    checkpointer.get(read_config)

    # list checkpoints
    list(checkpointer.list(read_config))

Async

from langgraph.checkpoint.sqlite.aio import AsyncSqliteSaver

async with AsyncSqliteSaver.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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

gigagraph_checkpoint_sqlite-1.0.3.tar.gz (9.2 kB view details)

Uploaded Source

Built Distribution

File details

Details for the file gigagraph_checkpoint_sqlite-1.0.3.tar.gz.

File metadata

File hashes

Hashes for gigagraph_checkpoint_sqlite-1.0.3.tar.gz
Algorithm Hash digest
SHA256 719d6bc5b40b7d0025372bec2e48079b2a1b4cf87d8e3acd75518035fb8f4ed4
MD5 d823e09520b3a4dce893675a3e79e705
BLAKE2b-256 8a9ed4f59f87fcc0a701c16a2690648c156d96fad77ff20134ce1ed155a6d3b6

See more details on using hashes here.

File details

Details for the file gigagraph_checkpoint_sqlite-1.0.3-py3-none-any.whl.

File metadata

File hashes

Hashes for gigagraph_checkpoint_sqlite-1.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 6e8f0d157dcfc289f35e180be8bd09217cd9664f1a82f5689168a0f0b20e5bbc
MD5 484da723ff7d66539794a7197ba756af
BLAKE2b-256 a379c8893ab6a4447a3ba9a39186f60822b815a3c48d306ca80daa9df3a71552

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page