数据库配置
LambChat 使用 MongoDB 作为主数据库,Redis 用于缓存、SSE 事件和发布/订阅。PostgreSQL 可选用于检查点存储。
Redis
| 变量名 | 默认值 | 敏感 | 说明 |
|---|---|---|---|
REDIS_URL | redis://localhost:6379/0 | 是 | Redis 连接 URL。 |
REDIS_PASSWORD | (空) | 是 | Redis 认证密码。 |
MongoDB
| 变量名 | 默认值 | 敏感 | 说明 |
|---|---|---|---|
MONGODB_URL | mongodb://localhost:27017 | 是 | MongoDB 连接 URL。 |
MONGODB_DB | agent_state | 否 | 数据库名称。 |
MONGODB_USERNAME | (空) | 否 | 认证用户名。 |
MONGODB_PASSWORD | (空) | 是 | 认证密码。 |
MONGODB_AUTH_SOURCE | admin | 否 | 认证源数据库。 |
MONGODB_SESSIONS_COLLECTION | sessions | 否 | 会话集合名称。 |
MONGODB_TRACES_COLLECTION | traces | 否 | Trace 集合名称。 |
PostgreSQL(可选)
用于 LangGraph 检查点存储,以避免 MongoDB 16MB BSON 文档限制。
| 变量名 | 默认值 | 敏感 | 说明 |
|---|---|---|---|
ENABLE_POSTGRES_STORAGE | false | 否 | 启用 PostgreSQL 存储后端。 |
POSTGRES_HOST | localhost | 否 | PostgreSQL 主机。 |
POSTGRES_PORT | 5432 | 否 | PostgreSQL 端口。 |
POSTGRES_USER | postgres | 否 | 用户名。 |
POSTGRES_PASSWORD | postgres | 是 | 密码。 |
POSTGRES_DB | langgraph | 否 | 数据库名称。 |
POSTGRES_POOL_MIN_SIZE | 2 | 否 | 连接池最小大小。 |
POSTGRES_POOL_MAX_SIZE | 10 | 否 | 连接池最大大小。 |
检查点后端
选择 Agent 检查点的存储位置。
| 变量名 | 默认值 | 说明 |
|---|---|---|
CHECKPOINT_BACKEND | mongodb | 检查点存储:mongodb 或 postgres。 |
CHECKPOINT_PG_HOST | (回退到 POSTGRES_HOST) | 检查点专用 PostgreSQL 主机。 |
CHECKPOINT_PG_PORT | 5432 | 检查点专用 PostgreSQL 端口。 |
CHECKPOINT_PG_USER | (回退到 POSTGRES_USER) | 检查点专用 PostgreSQL 用户。 |
CHECKPOINT_PG_PASSWORD | (回退到 POSTGRES_PASSWORD) | 检查点专用 PostgreSQL 密码。敏感。 |
CHECKPOINT_PG_DB | (回退到 POSTGRES_DB) | 检查点专用 PostgreSQL 数据库。 |
CHECKPOINT_PG_POOL_MIN_SIZE | 2 | 检查点 PG 连接池最小大小。 |
CHECKPOINT_PG_POOL_MAX_SIZE | 10 | 检查点 PG 连接池最大大小。 |
WARNING
MongoDB 有 16MB BSON 文档限制。对于长时间运行且状态较大的 Agent,建议使用 CHECKPOINT_BACKEND=postgres 来避免达到此限制。
示例
bash
# Redis
REDIS_URL=redis://localhost:6379/0
REDIS_PASSWORD=your_redis_password
# MongoDB
MONGODB_URL=mongodb://localhost:27017
MONGODB_DB=agent_state
MONGODB_USERNAME=admin
MONGODB_PASSWORD=your_mongo_password
# PostgreSQL(可选)
ENABLE_POSTGRES_STORAGE=true
POSTGRES_HOST=localhost
POSTGRES_PORT=5432
POSTGRES_USER=postgres
POSTGRES_PASSWORD=your_pg_password
POSTGRES_DB=langgraph
CHECKPOINT_BACKEND=postgres