Agno 支持使用 DynamoDbStorage 类,将 DynamoDB 作为 Agent、Team 和 Workflow 的存储后端。

用法

您需要为 DynamoDbStorage 类提供 aws_access_key_idaws_secret_access_key 参数。

dynamodb_storage_for_agent.py
from agno.storage.dynamodb import DynamoDbStorage

# AWS 凭证
AWS_ACCESS_KEY_ID = getenv("AWS_ACCESS_KEY_ID")
AWS_SECRET_ACCESS_KEY = getenv("AWS_SECRET_ACCESS_KEY")

storage = DynamoDbStorage(
    # 将 session 存储在 ai.sessions 表中
    table_name="agent_sessions",
    # region_name: DynamoDB 区域名称
    region_name="us-east-1",
    # aws_access_key_id: AWS 访问密钥 ID
    aws_access_key_id=AWS_ACCESS_KEY_ID,
    # aws_secret_access_key: AWS 秘密访问密钥
    aws_secret_access_key=AWS_SECRET_ACCESS_KEY,
)

# 将存储添加到 Agent
agent = Agent(storage=storage)

参数

参数类型默认描述
table_namestr-要使用的表名。
region_nameOptional[str]NoneDynamoDB 表的区域名称。
aws_access_key_idOptional[str]NoneAWS 访问密钥 ID,如果提供的话。
aws_secret_access_keyOptional[str]NoneAWS 秘密访问密钥,如果提供的话。
endpoint_urlOptional[str]None端点 URL,如果提供的话。
create_table_if_not_existsboolTrue如果为 true,则在表不存在时创建该表。

开发者资源