Skip to main content

DynamoDB checkpoint saver implementation for LangGraph - Single table, auto create with delete handling

Project description

LangGraph DynamoDB Checkpoint Saver

A DynamoDB-based checkpoint saver implementation for LangGraph that allows storing and managing checkpoints in Amazon DynamoDB.

Installation

If installing this version, then delete the underlying table as well. Existing data is not compatible with version >= 1.5

bash pip install langgraph_dynamodb_checkpoint

Usage

Basic Initialization

python from langgraph_dynamodb_checkpoint import DynamoDBSaver

Initialize the saver with a table name

saver = DynamoDBSaver(
    table_name="your-dynamodb-table-name",
    max_read_request_units=10,  # Optional, default is 10
    max_write_request_units=10  # Optional, default is 10
)

Alternative Initialization Using Context Manager

from langgraph_dynamodb_checkpoint import DynamoDBSaver

with DynamoDBSaver.from_conn_info(table_name="your-dynamodb-table-name") as saver:
    # Use the saver here
    pass

Parameters

This only supports thread ID as config. Namespace is not yet supported

config = {"configurable": {"thread_id": "900"}}

Supports Delete

Checkpointer supports delete basis given thread_id

config = {"configurable": {"thread_id": "900"}}
memory.delete(config)

DynamoDBSaver Constructor

  • table_name (str): Name of the DynamoDB table to use for storing checkpoints
  • max_read_request_units (int, optional): Maximum read request units for the DynamoDB table. Defaults to 10
  • max_write_request_units (int, optional): Maximum write request units for the DynamoDB table. Defaults to 10

Table Structure

The saver automatically creates a DynamoDB table if it doesn't exist, with the following structure:

  • Partition Key (PK): String type, used for thread_id
  • Sort Key (SK): String type, used for checkpoint_id

AWS Configuration

Ensure you have proper AWS credentials configured either through:

  • Environment variables (AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY)
  • AWS credentials file (~/.aws/credentials)
  • IAM role when running on AWS services

The AWS credentials should have permissions to:

  • Create DynamoDB tables (if table doesn't exist)
  • Read and write to DynamoDB tables

Notes

  • The saver automatically creates the DynamoDB table if it doesn't exist
  • Uses on-demand billing mode for DynamoDB
  • Implements all methods required by the LangGraph BaseCheckpointSaver interface

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

langgraph_dynamodb_checkpoint-0.1.8.tar.gz (7.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

langgraph_dynamodb_checkpoint-0.1.8-py3-none-any.whl (7.9 kB view details)

Uploaded Python 3

File details

Details for the file langgraph_dynamodb_checkpoint-0.1.8.tar.gz.

File metadata

File hashes

Hashes for langgraph_dynamodb_checkpoint-0.1.8.tar.gz
Algorithm Hash digest
SHA256 08ad48f4276321f7662c1c21cef06404ba39fd8eaa2a30e171d2bca0720ab25c
MD5 1338fe9809337e4eaddb75e3194c4e3b
BLAKE2b-256 174217c853535d800f5a2ab11bcd29b919f9422f7fa0d41a15e9268b35ba8b7f

See more details on using hashes here.

File details

Details for the file langgraph_dynamodb_checkpoint-0.1.8-py3-none-any.whl.

File metadata

File hashes

Hashes for langgraph_dynamodb_checkpoint-0.1.8-py3-none-any.whl
Algorithm Hash digest
SHA256 8e1b527a7170519793a188950d93b13caea4f93108853bd23ade8f93e679c3c7
MD5 380995aabb20cb411670900358bf99ed
BLAKE2b-256 e242d2460b5976b1bd6ebdd9a5184c0b4061d74e2c82bc35e77db93fa7ff81b3

See more details on using hashes here.

Supported by

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