环境变量¶
LangGraph 服务器支持用于配置部署的特定环境变量。
BG_JOB_ISOLATED_LOOPS
¶
将 BG_JOB_ISOLATED_LOOPS
设置为 True
可在与服务 API 事件循环分离的独立事件循环中执行后台运行。
如果图/节点的实现包含同步代码,则应将此环境变量设置为 True
。在这种情况下,同步代码将阻塞服务 API 事件循环,这可能导致 API 不可用。API 不可用的一个症状是由于健康检查失败而导致应用程序持续重启。
默认为 False
。
BG_JOB_SHUTDOWN_GRACE_PERIOD_SECS
¶
指定服务器在队列收到关机信号后等待后台作业完成的秒数。在此期间之后,服务器将强制终止。默认为 180
秒。设置此值可确保作业在关机期间有足够的时间干净完成。在 langgraph-api==0.2.16
中添加。
BG_JOB_TIMEOUT_SECS
¶
后台运行的超时时间可以增加。但是,云 SaaS 部署的基础设施对 API 请求强制执行 1 小时的超时限制。这意味着客户端和服务器之间的连接将在 1 小时后超时。此限制不可配置。
后台运行可以执行超过 1 小时,但如果运行时间超过 1 小时,客户端必须重新连接到服务器(例如通过 POST /threads/{thread_id}/runs/{run_id}/stream
加入流)以从运行中检索输出。
默认为 3600
。
DD_API_KEY
¶
指定 DD_API_KEY
(您的 Datadog API 密钥)以自动为部署启用 Datadog 跟踪。指定其他 DD_*
环境变量 以配置跟踪检测。
如果指定了 DD_API_KEY
,则应用程序进程将包装在 ddtrace-run
命令中。通常需要其他 DD_*
环境变量(例如 DD_SITE
、DD_ENV
、DD_SERVICE
、DD_TRACE_ENABLED
)才能正确配置跟踪检测。有关详细信息,请参阅 DD_*
环境变量。
LANGCHAIN_TRACING_SAMPLING_RATE
¶
发送到 LangSmith 的跟踪采样率。有效值:介于 0
和 1
之间的任意浮点数。
有关详细信息,请参阅 LangSmith 文档。
LANGGRAPH_AUTH_TYPE
¶
LangGraph 服务器部署的身份验证类型。有效值:langsmith
, noop
。
对于 LangGraph Platform 的部署,此环境变量会自动设置。对于本地开发或外部处理身份验证的部署(例如自托管),请将此环境变量设置为 noop
。
LANGGRAPH_POSTGRES_POOL_MAX_SIZE
¶
从 langgraph-api 版本 0.2.12
开始,可以使用 LANGGRAPH_POSTGRES_POOL_MAX_SIZE
环境变量控制 Postgres 连接池的最大大小(每个副本)。通过设置此变量,您可以确定服务器将与 Postgres 数据库建立的并发连接数的上限。
例如,如果部署扩展到 10 个副本并将 LANGGRAPH_POSTGRES_POOL_MAX_SIZE
配置为 150
,则可以建立多达 1500
个到 Postgres 的连接。这对于数据库资源有限(或更可用)或需要调整连接行为以实现性能或扩展的部署特别有用。
默认为 150
个连接。
LANGSMITH_RUNS_ENDPOINTS
¶
仅适用于 自托管 LangSmith 的部署。
设置此环境变量以使部署将跟踪发送到自托管 LangSmith 实例。LANGSMITH_RUNS_ENDPOINTS
的值是一个 JSON 字符串:{"<SELF_HOSTED_LANGSMITH_HOSTNAME>":"<LANGSMITH_API_KEY>"}
。
SELF_HOSTED_LANGSMITH_HOSTNAME
是自托管 LangSmith 实例的主机名。它必须对部署可访问。LANGSMITH_API_KEY
是从自托管 LangSmith 实例生成的 LangSmith API。
LANGSMITH_TRACING
¶
将 LANGSMITH_TRACING
设置为 false
可禁用 LangSmith 跟踪。
默认为 true
。
LOG_COLOR
¶
这主要在使用 langgraph dev
命令通过开发服务器时相关。将 LOG_COLOR
设置为 true
可在使用默认控制台渲染器时启用 ANSI 彩色控制台输出。通过将此变量设置为 false
禁用颜色输出将生成单色日志。默认为 true
。
LOG_LEVEL
¶
配置 日志级别。默认为 INFO
。
LOG_JSON
¶
将 LOG_JSON
设置为 true
,以使用配置的 JSONRenderer
将所有日志消息渲染为 JSON 对象。这将生成结构化日志,可以轻松地被日志管理系统解析或摄取。默认为 false
。
MOUNT_PREFIX
¶
仅允许用于自托管部署
MOUNT_PREFIX
环境变量仅允许用于自托管部署模型,LangGraph Platform SaaS 不会允许此环境变量。
设置 MOUNT_PREFIX
以在特定路径前缀下提供 LangGraph 服务器。这对于服务器位于需要特定路径前缀的反向代理或负载均衡器后面的部署非常有用。
例如,如果服务器要在 https://example.com/langgraph
下提供服务,请将 MOUNT_PREFIX
设置为 /langgraph
。
N_JOBS_PER_WORKER
¶
LangGraph 服务器任务队列的每个工作器的作业数量。默认为 10
。
POSTGRES_URI_CUSTOM
¶
指定 POSTGRES_URI_CUSTOM
以使用自定义 Postgres 实例。POSTGRES_URI_CUSTOM
的值必须是有效的 Postgres 连接 URI。
Postgres
- 版本 15.8 或更高。
- 必须存在初始数据库,并且连接 URI 必须引用该数据库。
控制平面功能
- 如果指定了
POSTGRES_URI_CUSTOM
,LangGraph 控制平面将不会为服务器预置数据库。 - 如果删除了
POSTGRES_URI_CUSTOM
,LangGraph 控制平面将不会为服务器预置数据库,并且不会删除外部管理的 Postgres 实例。 - 如果删除了
POSTGRES_URI_CUSTOM
,修订版的部署将不会成功。一旦指定了POSTGRES_URI_CUSTOM
,它必须在部署的整个生命周期中始终设置。 - 如果部署被删除,LangGraph 控制平面将不会删除外部管理的 Postgres 实例。
POSTGRES_URI_CUSTOM
的值可以更新。例如,URI 中的密码可以更新。
数据库连接
- 自定义 Postgres 实例必须可由 LangGraph 服务器访问。用户负责确保连接。
REDIS_CLUSTER
¶
仅允许用于自托管部署
Redis 集群模式仅在自托管部署模型中可用,LangGraph Platform SaaS 默认会为您预置一个 Redis 实例。
将 REDIS_CLUSTER
设置为 True
以启用 Redis 集群模式。启用后,系统将使用集群模式连接到 Redis。这在连接到 Redis 集群部署时非常有用。
默认为 False
。
REDIS_KEY_PREFIX
¶
API 服务器版本 0.1.9+ 可用
此环境变量在 API 服务器版本 0.1.9 及更高版本中受支持。
指定 Redis 键的前缀。这允许通过使用不同的键前缀,使多个 LangGraph 服务器实例共享同一个 Redis 实例。
默认为 ''
。
REDIS_URI_CUSTOM
¶
指定 REDIS_URI_CUSTOM
以使用自定义 Redis 实例。REDIS_URI_CUSTOM
的值必须是有效的 Redis 连接 URI。
RESUMABLE_STREAM_TTL_SECONDS
¶
Redis 中可恢复流数据的生存时间(秒)。
当创建运行并流式传输输出时,可以将流配置为可恢复(例如 stream_resumable=True
)。如果流是可恢复的,则流的输出会暂时存储在 Redis 中。可以通过设置 RESUMABLE_STREAM_TTL_SECONDS
来配置此数据的 TTL。
有关如何实现可恢复流的更多详细信息,请参阅 Python 和 JS/TS SDK。
默认为 120
秒。