Skip to content

环境变量

LangGraph Server 支持特定的环境变量用于配置部署。

BG_JOB_ISOLATED_LOOPS

BG_JOB_ISOLATED_LOOPS 设置为 True,以在与服务 API 事件循环分离的独立事件循环中执行后台运行。

如果图/节点的实现包含同步代码,则应将此环境变量设置为 True。在这种情况下,同步代码会阻塞服务 API 事件循环,这可能导致 API 不可用。API 不可用的一个症状是由于健康检查失败而导致应用程序不断重启。

默认值为 False

BG_JOB_TIMEOUT_SECS

可以增加后台运行的超时时间。然而,对于云 SaaS 部署的基础设施,API 请求强制设置了 1 小时的超时限制。这意味着客户端和服务器之间的连接在 1 小时后将超时。此设置不可配置。

如果后台运行需要超过 1 小时的时间,客户端必须重新连接到服务器(例如通过 POST /threads/{thread_id}/runs/{run_id}/stream 加入流)以获取运行结果。

默认值为 3600

BG_JOB_SHUTDOWN_GRACE_PERIOD_SECS

以秒为单位指定服务器在接收到关闭信号后,将等待后台任务完成的时间。在此时间之后,服务器将强制终止。默认值为 3600 秒。设置此参数可确保在关闭过程中任务有足够的时间完成。该参数在 langgraph-api==0.2.16 中新增。

DD_API_KEY

指定 DD_API_KEY(你的 Datadog API 密钥)以自动为部署启用 Datadog 追踪。指定其他 DD_* 环境变量来配置追踪工具。

如果指定了 DD_API_KEY,应用程序进程将被 ddtrace-run 命令包装。通常需要其他 DD_* 环境变量(例如 DD_SITEDD_ENVDD_SERVICEDD_TRACE_ENABLED)来正确配置追踪工具。有关更多详细信息,请参阅 DD_* 环境变量

LANGCHAIN_TRACING_SAMPLING_RATE

发送到 LangSmith 的追踪采样率。有效值:01 之间的任意浮点数。

有关更多详细信息,请参阅 LangSmith 文档

LANGGRAPH_AUTH_TYPE

LangGraph 服务器部署的认证类型。有效值:langsmithnoop

对于部署到 LangGraph 平台的情况,此环境变量会自动设置。对于本地开发或认证由外部处理(例如自托管)的部署,请将此环境变量设置为 noop

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 追踪功能仅适用于 自托管数据平面自托管控制平面独立容器 部署。

LANGSMITH_TRACING 设置为 false 以禁用对 LangSmith 的追踪。

LOG_LEVEL

配置日志级别。默认为 INFO

LOG_JSON

LOG_JSON 设置为 true,以使用配置的 JSONRenderer 将所有日志消息渲染为 JSON 对象。这会产生结构化的日志,可以被日志管理系统轻松解析或导入。默认值为 false

LOG_COLOR

这主要与通过 langgraph dev 命令使用开发服务器时相关。将 LOG_COLOR 设置为 true,以在使用默认控制台渲染器时启用 ANSI 颜色的控制台输出。通过将此变量设置为 false 禁用颜色输出,将产生单色日志。默认值为 true

N_JOBS_PER_WORKER

LangGraph Server 任务队列中每个工作线程的作业数。默认值为 10

POSTGRES_URI_CUSTOM

仅适用于自托管数据平面和自托管控制平面

自定义 Postgres 实例仅适用于 自托管数据平面自托管控制平面 部署。

指定 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 Server 访问。用户需负责确保连接性。

LANGGRAPH_POSTGRES_POOL_MAX_SIZE

从 langgraph-api 版本 0.2.12 开始,可以使用环境变量 LANGGRAPH_POSTGRES_POOL_MAX_SIZE 来控制 Postgres 连接池的最大大小。通过设置此变量,您可以确定服务器与 Postgres 数据库同时建立的连接数的上限。这在数据库资源有限(或更充足)的部署环境中,或者需要为性能或扩展性调整连接行为时特别有用。如果未指定该变量,连接池的大小默认为 150 个连接。

REDIS_URI_CUSTOM

仅适用于自托管数据平面和自托管控制平面

自定义 Redis 实例仅适用于 自托管数据平面自托管控制平面 部署。

指定 REDIS_URI_CUSTOM 以使用自定义的 Redis 实例。REDIS_URI_CUSTOM 的值必须是一个有效的 Redis 连接 URI

REDIS_KEY_PREFIX

在 API Server 版本 0.1.9+ 中可用

此环境变量在 API Server 版本 0.1.9 及以上版本中受支持。

为 Redis 键指定一个前缀。这允许多个 LangGraph Server 实例通过使用不同的键前缀共享同一个 Redis 实例。

默认值为 ''

REDIS_CLUSTER

仅允许在自托管部署中使用

Redis 集群模式仅在自托管部署模型中可用,LangGraph 平台 SaaS 会默认为您配置一个 Redis 实例。

REDIS_CLUSTER 设置为 True 以启用 Redis 集群模式。启用后,系统将使用集群模式连接到 Redis。这在连接到 Redis 集群部署时非常有用。

默认值为 False