Dify自定义环境变量

您可以通过本文了解如何在阿里云 DMS 控制台中为 Dify 实例设置或更新自定义环境变量,从而按需优化其性能表现、访问策略及服务地址等配置。

注意事项

  • 服务将会重启:保存任何环境变量的修改都会触发 Dify 实例的自动重启,期间服务将短暂中断。请在业务低峰期进行此操作。

  • 白名单限制:出于安全考虑,仅允许修改白名单中的环境变量。变量列表请参见支持的环境变量列表

  • 格式要求:所有参数都必须以标准的 JSON 键值对 ("Key": "Value")格式提供,且所有 Value 都必须是字符串类型。

操作步骤

  1. 登录DMS控制台,在顶部导航栏中,点击Data + AI > Dify,进入Dify实例列表界面。

    image

  2. 点击对应Dify实例操作列的资源管理image.png

  3. 打开资源管理界面后点击环境参数image.png

  4. 在弹出的环境参数配置对话框中,您可以修改或添加环境变量。

    • 修改已有参数:

      • 直接编辑输入框中已存在的参数值即可。

      • 如果想恢复为默认值,可以直接删除该行键值对,保存后系统会自动应用默认配置。

    • 添加新参数:

      • 部分白名单中的参数默认不显示,需要您手动添加。

      • 这里以配置自定义域名为例:在编辑器中,手动添加以下键值对,可以将my_web.com 替换为您的实际域名。

        说明

        CONSOLE_API_URLCONSOLE_WEB_URLAPP_WEB_URL仅支持Dify账号版/企业版修改。

        {
          "HTTP_REQUEST_NODE_MAX_TEXT_SIZE": "1048576",
          ...
          "CONSOLE_API_URL": "http://my_web.com",
          "APP_API_URL": "http://my_web.com",
          "CONSOLE_WEB_URL": "http://my_web.com",
          "APP_WEB_URL": "http://my_web.com",
          "FILES_URL": "http://my_web.com"
        }

        image.png

  5. 完成修改后,点击保存,并在弹出的选项框中点击确认

  6. 保存后,系统将开始重新部署实例。

    • 成功状态:

      在右下角看到环境参数校验成功环境参数更新成功重新部署已开始三个字段则说明环境变量修改成功,Dify实例开始重启。

      image.png

    • 失败状态:

      若出现Env key 'xxxx' is invalid,则说明对应的键xxxx有误,请仔细检查该键是否在白名单内以及键的拼写是否有误。

      image.png

支持的环境变量列表

参数名

默认值

描述

CODE_MAX_STRING_LENGTH

800000

代码节点中输出字符串的最大长度限制

TEMPLATE_TRANSFORM_MAX_LENGTH

800000

模板转换中字符串的最大长度限制

CODE_MAX_STRING_ARRAY_LENGTH

1000

代码节点中输出字符串数组的最大元素个数

CODE_MAX_OBJECT_ARRAY_LENGTH

1000

代码节点中输出对象数组的最大元素个数

CODE_MAX_NUMBER_ARRAY_LENGTH

1000

代码节点中输出数字数组的最大元素个数

CODE_MAX_DEPTH

5

代码节点中输出对象/数组的最大嵌套深度

CODE_MAX_PRECISION

20

代码节点中数字的最大精度(小数位数)

SQLALCHEMY_POOL_SIZE

60

数据库连接池的大小(最大连接数)

SQLALCHEMY_POOL_RECYCLE

3600

数据库连接回收时间(秒),超过此时间连接将被重建

PLUGIN_MAX_PACKAGE_SIZE

52428800

插件安装包的最大允许大小(字节)

GUNICORN_TIMEOUT

360

等待响应的最长时间(秒)。如果一个请求超过这个时间还没完成,就会被强制终止

UPLOAD_FILE_SIZE_LIMIT

50

单个上传文件的最大大小(MB)

UPLOAD_FILE_BATCH_LIMIT

10

单次批量上传的最大文件数量

HTTP_REQUEST_NODE_MAX_TEXT_SIZE

1048576

HTTP 请求节点文本响应的最大大小(字节)

HTTP_REQUEST_NODE_MAX_BINARY_SIZE

10485760

HTTP 请求节点二进制响应的最大大小(字节)

CONSOLE_API_URL

  • dms账号登录:

    https://dify-{region,例如cn-beijing}-dms.aliyuncs.com

  • dify账号登录或企业版:

    http:// + 申请的 alb 公网ip

控制台后端 API 的访问地址,仅支持Dify账号版/企业版修改

APP_API_URL

应用程序 API 的访问地址

CONSOLE_WEB_URL

控制台前端 Web 的访问地址,仅支持Dify账号版/企业版修改

APP_WEB_URL

应用程序前端 Web 的访问地址,仅支持Dify账号版/企业版修改

FILES_URL

文件服务的访问地址

DIFY_BACKWARDS_INVOCATION_WRITE_TIMEOUT

60000

插件反向调用写操作超时时间

DIFY_BACKWARDS_INVOCATION_READ_TIMEOUT

60000

插件反向调用读操作超时时间

PYTHON_ENV_INIT_TIMEOUT

320

插件 Python 环境初始化超时时间(秒)

TOP_K_MAX_VALUE

50

知识库检索 Top-K 的最大允许值

TEXT_GENERATION_TIMEOUT_MS

60000

文本生成请求的超时时间(毫秒)

LOOP_NODE_MAX_COUNT

100

循环节点的最大迭代次数

MAX_TOOLS_NUM

10

Agent 可使用的最大工具数量

MAX_PARALLEL_LIMIT

10

并行执行节点的最大并发数

MAX_ITERATIONS_NUM

99

迭代节点的最大迭代次数

MAX_TREE_DEPTH

50

工作流中从开始到结束的最长节点链路长度