跳到主要内容

系统内置环境变量配置

本文档介绍系统中内置的环境变量配置,对应配置页面在 https://{your-host}/admin/system/environment-variables

说明:

  1. your-host 是你要进行配置的环境域名,例如 Stage 环境就是 staging.example.com
  2. 本文档说明的 不是 docker 的 env 环境变量,而是系统内置的一套配置项。用于实现不用重启系统,只刷新页面就可以快速实现改动的配置功能。
  3. 如果发现对应环境中搜不到对应变量,直接新建即可。

自定义 env 配置来源

在跳转至产品前端时,可以通过以下两种方式来指定额外的 env 配置。其值是一个链接(需要做一下 encodeURIComponent)。

  • 方式一:通过在地址栏参数里传递一个字段,名为 sm-env
  • 方式二:通过在 localstorage 里设置一个字段,名为 $serviceme-next-custom-env

产品会请求这个链接,并将其中的配置合并到系统内的 env 配置上。例如:

https://app.example.com/?sm-env=%2fstatic%2fenv.json

此时就会读取 https://app.example.com/static/env.json 来获取额外配置。

配置优先级localstorage 指定的额外参数 > sm-env 指定的额外参数 > 系统内配置的参数 > 前端默认参数。

CUSTOM_CSS

  • 类型:字符串数组
  • 说明:数组里的每个字符串都是一个 css 文件的链接。这个数组里所有的 css 文件都会在系统初始化时被载入。
  • 默认值[]

CUSTOM_CSS_WEIXIN_WORK

  • 类型:字符串数组
  • 说明:同上 CUSTOM_CSS,配置在该数组中的 css 仅会在企业微信环境下生效。
  • 默认值[]

THEME_LIST

  • 类型:JSON 字符串
  • 说明:用于配置用户可以选择的主题,其中 nameI18nKey 是主题展示文本对应的国际化 key(需要在“国际化内容管理”页面中维护),code 需要和第一步中上传的主题 code 一一对应,color 是在选择时文本前面的带颜色小圆圈。
  • 参考值

SERVICEME 风格:

[
{"nameI18nKey":"theme.form.color.purple","code":"purple","color":"#722ed1"},
{"nameI18nKey":"theme.form.color.blue","code":"blue","color":"#1677ff"}
]

OneAI 风格:

[
{"nameI18nKey":"swo","code":"swo","color":"#472aff"}
]

BROWSER_TITLE

  • 类型:JSON 字符串
  • 说明:用于配置浏览器 tab 中显示的图标和名称,PC 和 H5 可以分开配置,也支持配置企业微信中的图标和名称。
  • 参考值
{
"TITLE_DESKTOP": "System Name",
"TITLE_MOBILE": "System Name",
"TITLE_WX_WORK": "System Name",
"ICON_DESKTOP": "./favicon.svg",
"ICON_MOBILE": "./favicon.svg",
"ICON_WX_WORK": "./favicon.svg"
}

ENTRY_MAINTENANCE

  • 类型:数字
  • 说明:当该值为 1 时,系统所有用户都会被强制重定向到”正在维护“页面。
  • 维护通道:需要绕过该限制的维护人员请在 F12 的 localstorage 中配置字段:键为 $serviceme-next-skip-maintenance,值为 true
  • 默认值0

CUSTOM_HOME_AI_APP

  • 类型:JSON 字符串
  • 说明:用于配置首页底部的 ai app 按钮。
    • URL: 指定跳转到的目标链接。
    • NAME: 代表要显示的标题(支持国际化 key)。
    • IMG: 代表要展示的图片路径。
    • BG_COLOR: 代表背景的颜色。
  • 参考值
[
{
"URL": "/app-markmap-gen",
"NAME": "next.home.ai.governance.item1.title",
"IMG": "./images/home/home-mindmap.png"
},
{
"URL": "/app-ai-abstract",
"NAME": "next.home.ai.governance.item2.title",
"IMG": "./images/home/home-summary.png"
},
{
"URL": "/app-ai-translate-v2",
"NAME": "next.home.ai.governance.item3.title",
"IMG": "./images/home/home-translate.png",
"BG_COLOR": "linear-gradient(176deg, rgba(255,255,255,0.4) 0%, #ECFDF3 100%)"
}
]

SSO_LOGIN_CONFIG

  • 类型:JSON 字符串
  • 说明:用于配置系统内置的单点登陆功能。
  • 文档:请参考内部 Wiki 中的 [SSO 自定义配置指南]。

SSO_LOGIN_SECRET

  • 类型:JSON 字符串
  • 说明:用于后端对应的单点登录处理逻辑(敏感配置)。

CUSTOM_LOGIN_URL

  • 类型:字符串
  • 说明:一个 url,用于自定义未登录时跳转到的页面。
  • 默认值/login

DISABLE_LOGIN_WHEN_CUSTOM

  • 类型:布尔值
  • 说明:当自定义登录页时,是否禁用自带的登录页。若为 true,则访问 /login 时会自动跳转至 CUSTOM_LOGIN_URL
  • 默认值false

BOT_FILE_ACCEPT

  • 类型:字符串数组
  • 说明:助手里允许上传哪些文件后缀名。
  • 默认值[".pdf", ".xlsx", ".xls", ".csv"]

ENABLE_TOUR

  • 类型:1 或 0
  • 说明:是否启用用户引导。
  • 默认值0

CHAT_TEXTAREA_MAX_LENGTH

  • 类型:数字
  • 说明:助手聊天框允许输入的最大字符值。
  • 默认值8000

DISABLE_VOICE_INPUT

  • 类型:布尔值
  • 说明:控制首页和聊天框里的语音输入按钮的显示。
  • 默认值:空(默认显示,设置为 true 则隐藏)。

KNOWLEDGE_MAX_SYSTEM_UPLOAD_FILE_SIZE

  • 类型:数字
  • 说明:系统上传文件大小最大值限制(单位 G)。
  • 默认值1024

KNOWLEDGE_MAX_CONCURRENT_FILE_UPLOADS

  • 类型:数字
  • 说明:系统同时上传文件最大数量。
  • 默认值10

KNOWLEDGE_MAX_CONCURRENT_FILE_DOWNLOADS

  • 类型:数字
  • 说明:系统一次下载文件最大数量。
  • 默认值10

KNOWLEDGE_MAX_QNA_QUESTION_LENGTH

  • 类型:数字
  • 说明:QnA - 问题最大长度。
  • 默认值100

KNOWLEDGE_MAX_QNA_ANSWER_LENGTH

  • 类型:数字
  • 说明:QnA - 答案最大长度。
  • 默认值2000

KNOWLEDGE_MAX_FILE_STORAGE_QUOTA

  • 类型:数字
  • 说明:文件空间设置 - 存储配额最大值(GB)。
  • 默认值1

KNOWLEDGE_MAX_META_OPTION_SCOUNT

  • 类型:数字
  • 说明:元数据 - 选项 - 最大条数。
  • 默认值20

KNOWLEDGE_MAX_META_OPTIONS_VALUE_LENGTH

  • 类型:数字
  • 说明:元数据 - 选项 - 内容最大长度。
  • 默认值100

KNOWLEDGE_REPORT_MAX_QUERY_RANGE_DAYS

  • 类型:数字
  • 说明:最大导出范围天数。
  • 默认值7

KNOWLEDGE_DEFAULT_SUMMARY_PROMPT

  • 类型:字符串
  • 说明:知识库总结的默认提示词。
  • 默认值### Summarize the following in the original language in no more than 200 words.

MOBILE_ALLOWED_ROUTES

  • 类型:字符串数组
  • 说明:移动端放行的路由地址。匹配规则是全量匹配 location.pathname
  • 默认值[]
  • 参考值["/settings/system/environment"]

CUSTOM_KNOWLEDGE_SETTING_MENU

  • 类型:对象数组
  • 说明:用于扩充“知识管理”页面的左侧侧边栏菜单。
  • 参考值
[{
"customUrl": "http://your-domain.com/page",
"path": "new-page",
"key": "new-page",
"label": "自定义菜单名称",
"code": "PermissionCode"
}]

字段说明

  • customUrl: 为要嵌入的页面链接。
  • pathkey: 保持相同且唯一即可。
  • label: 菜单的名字,可以作为 key 来关联国际化。
  • code: 权限码,需要后端配合在数据库的功能权限表里配置对应 code 的权限项。

CUSTOM_KNOWLEDGE_SETTING_SIDEBAR_MENU

  • 类型:对象数组
  • 说明:用于扩充 Knowledge 页面的左侧侧边栏菜单(配置方法同上)。

CUSTOM_AI_STUDIO_SIDEBAR_MENU

  • 类型:对象数组
  • 说明:用于扩充 AI STUDIO 的左侧侧边栏菜单(配置方法同上)。

CUSTOM_MONITOR_SETTING_MENU

  • 类型:对象数组
  • 说明:用于扩充监控管理页面的左侧侧边栏菜单(配置方法同上)。

DEBUG_MODE

  • 类型:布尔值
  • 说明:当该值为 true 时,系统将可以启动调试模式。注意!在不需要调试时,请务必关闭或删除该配置!
  • 默认值false
  • 特性:调试模式在刷新页面后就会自动关闭,需要再次手动启动。
  • 类型:字符串
  • 说明:系统中左上角 LOGO 的图片链接地址。

product_name

  • 类型:字符串
  • 说明:系统中左上角中间产品名称的图片链接地址。

show_product_name

  • 类型:布尔值
  • 说明:是否显示 product_name
  • 参考值0(隐藏),1(显示)

show_subscription_label

  • 类型:布尔值
  • 说明:是否显示左上角最后的版本标识。
  • 参考值0(隐藏),1(显示)

DEFAULT_MODEL_GROUP

  • 类型:字符串
  • 说明:默认模型组,给几个内置助手绑定用。
  • 参考值15e36556-xxxx-xxxx-xxxx-xxxxxxxxxxxx

default_robot_ids

  • 类型:JSON 字符串
  • 说明:系统功能中用到的助手 id 配置。
  • 参考值{"file_robot":"95db8ee2-xxxx-xxxx-xxxx-xxxxxxxxxxxx"}

EMAIL_CONFIG

  • 类型:JSON 字符串
  • 说明:系统邮件发送配置(SMTP 配置)。

FEEDBACK_EMAIL_TEMPLATE

  • 类型:字符串
  • 说明:点踩(反馈)邮件模板配置。

file_type

  • 类型:JSON 字符串数组
  • 说明:助手中允许上传的单文件文件类型。

mindmap_prompt

  • 类型:JSON 字符串
  • 说明:思维导图 AI 摘要提示词。分多个生成策略,每个策略对应的提示词在此处配置。若不配置则使用系统内置。

summary_prompt

  • 类型:JSON 字符串
  • 说明:总结提示词(不配置的话用系统内置),结构类似 mindmap_prompt

need_ai_check_function

  • 类型:布尔值
  • 说明:是否需要检测代码节点的安全性。
  • 参考值0(关),1(开)

rag_config

  • 类型:JSON 字符串
  • 说明:RAG 搜索配置项。

SKILL_DB_REF_MAX

  • 类型:数字
  • 说明:数据库技能连携表上限。
  • 默认值10

WS_PRIVATE_KEY / WS_PUBLIC_KEY

  • 类型:字符串
  • 说明:Websocket 用户 Token 加密的公私钥对(后端自动生成使用,通常无需人工管理)。
  • 类型:JSON 字符串
  • 说明:控制首页底部菜单配置。
  • 参考值
[
{
"id": 1,
"name": "Link Name",
"url": "https://www.example.com",
"open_type": "true",
"icon": "http://your-domain.com/static/icon.svg"
}
]

USER_AGREEMENT

  • 类型:字符串
  • 说明:用户须知的设置界面(支持多语言)。

KIND_REMINDER

  • 类型:JSON 字符串
  • 说明:温馨提示(支持多语言)。
  • 参考值
{
"ENABLE": false,
"LOCALE": [
{ "KEY": "ja-JP", "VALUE": "日本语提示" },
{ "KEY": "zh-TW", "VALUE": "繁体提示" },
{ "KEY": "zh-CN", "VALUE": "简体提示" },
{ "KEY": "en-US", "VALUE": "English Reminder" }
]
}

ENABLE 控制温馨提示是否显示,LOCALE 的值可以用来在国际化管理里创建相同的值来进行多语言适配。

SHOW_AI_FILE_TRANSLATOR

  • 类型:字符串 'true' | 'false'
  • 说明:是否展示 AI 翻译功能。
  • 默认值'true'
  • 参考值'true' 展示,'false' 或者不配置则不展示。

CHAT_BUBBLE_WATERMARK

  • 类型:字符串
  • 说明:回复内容气泡内的水印说明。
  • 参考值chat.bubble.watermark (多语言 Key)

ENABLE_WATERMARK

  • 类型:布尔值
  • 说明:控制是否展示 PDF 文件预览的水印。
  • 默认值false

ENABLE_DANGER_HTML_ATTRIBUTES

  • 类型:布尔值 true | false
  • 说明:控制 Markdown 是否能够渲染 styleclassname 属性。
  • 默认值false
  • 警告该配置较为危险(存在 XSS 风险),若未向用户确认开启,不建议开启。

PDF_LOADER_LIB

  • 类型:字符串
  • 说明:控制文件预处理 PDF 基础模式解析 Python 包。
    • pypdf: 默认的 PDF 解析包,解析效果相比 pdfplumber 要好。
    • pdfplumber: 如果需要解析 PDF 中的超链接,需要改成这个包。
  • 默认值pypdf
  • 警告该配置较为敏感,若未向用户确认开启,不建议开启。
  • 类型:布尔值 true | false
  • 说明:控制文件预处理 Excel 基础模式是否需要附带超链接解析。
  • 默认值false
  • 警告该配置较为敏感,若未向用户确认开启,不建议开启。