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

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
  • ttl_seconds (int, optional): TTL value set for all checkpoint items.

Import

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 100
    max_write_request_units=10  # Optional, default is 100
    ttl_seconds=86400
)

Table has ttl enabled with attribute name set to ttl

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

Supports Delete

Checkpointer supports delete basis given thread_id

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

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.2.6.tar.gz (8.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.2.6-py3-none-any.whl (8.6 kB view details)

Uploaded Python 3

File details

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

File metadata

File hashes

Hashes for langgraph_dynamodb_checkpoint-0.2.6.tar.gz
Algorithm Hash digest
SHA256 fc484a47c91b20d3676ee3538f9455441e2a06dd3982b8a5bc4b5cb38cfc95ef
MD5 e354a7edd68d2b2f3b083ac36bba9e1a
BLAKE2b-256 806f4b8e19a2cde91ae93b590dff2a188bde45fb65baae02f896df2cbb0c9f18

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for langgraph_dynamodb_checkpoint-0.2.6-py3-none-any.whl
Algorithm Hash digest
SHA256 86b482fac8b1093d805e6e771258fa69c927edb40e4f42e3e6a7c4149c75dd9e
MD5 96bf8373dddd0b8fbc9f04370cdf7a95
BLAKE2b-256 f15e3a3a17712b7de1dafdd58de81e605bb4db09cb7af9b485f60106445d632a

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