{
  "ai_group": {
    "name": "AI 配置",
    "agent_runner": {
      "description": "Agent 执行方式",
      "hint": "选择 AI 对话的执行器,默认为 AstrBot 内置 Agent 执行器,可使用 AstrBot 内的知识库、人格、工具调用功能。如果不打算接入 Dify、Coze、DeerFlow 等第三方 Agent 执行器,不需要修改此节。",
      "provider_settings": {
        "enable": {
          "description": "启用",
          "hint": "AI 对话总开关"
        },
        "agent_runner_type": {
          "description": "执行器",
          "labels": [
            "内置 Agent",
            "Dify",
            "Coze",
            "阿里云百炼应用",
            "DeerFlow"
          ]
        },
        "coze_agent_runner_provider_id": {
          "description": "Coze Agent 执行器提供商 ID"
        },
        "dify_agent_runner_provider_id": {
          "description": "Dify Agent 执行器提供商 ID"
        },
        "dashscope_agent_runner_provider_id": {
          "description": "阿里云百炼应用 Agent 执行器提供商 ID"
        },
        "deerflow_agent_runner_provider_id": {
          "description": "DeerFlow Agent 执行器提供商 ID"
        }
      }
    },
    "ai": {
      "description": "模型",
      "hint": "当使用非内置 Agent 执行器时,默认对话模型和默认图片转述模型可能会无效,但某些插件会依赖此配置项来调用 AI 能力。",
      "provider_settings": {
        "default_provider_id": {
          "description": "默认对话模型",
          "hint": "留空时使用第一个模型"
        },
        "fallback_chat_models": {
          "description": "回退对话模型列表",
          "hint": "主对话模型请求失败时，按顺序切换到这些对话模型。"
        },
        "request_max_retries": {
          "description": "请求最大重试次数",
          "hint": "单次模型请求遇到可重试错误时的最大尝试次数。"
        },
        "default_image_caption_provider_id": {
          "description": "默认图片转述模型",
          "hint": "留空代表不使用,可用于非多模态模型"
        },
        "image_caption_prompt": {
          "description": "图片转述提示词"
        }
      },
      "provider_stt_settings": {
        "enable": {
          "description": "启用语音转文本",
          "hint": "STT 总开关"
        },
        "provider_id": {
          "description": "默认语音转文本模型",
          "hint": "用户也可使用 /provider 指令单独选择会话的 STT 模型。"
        }
      },
      "provider_tts_settings": {
        "enable": {
          "description": "启用文本转语音",
          "hint": "TTS 总开关"
        },
        "provider_id": {
          "description": "默认文本转语音模型"
        },
        "trigger_probability": {
          "description": "TTS 触发概率"
        }
      }
    },
    "persona": {
      "description": "人格",
      "hint": "赋予 AstrBot 人格。",
      "provider_settings": {
        "default_personality": {
          "description": "默认采用的人格"
        }
      }
    },
    "knowledgebase": {
      "description": "知识库",
      "hint": "AstrBot 的 “外置大脑”。",
      "kb_names": {
        "description": "知识库列表",
        "hint": "支持多选"
      },
      "kb_fusion_top_k": {
        "description": "融合检索结果数",
        "hint": "多个知识库检索结果融合后的返回结果数量"
      },
      "kb_final_top_k": {
        "description": "最终返回结果数",
        "hint": "从知识库中检索到的结果数量,越大可能获得越多相关信息,但也可能引入噪音。建议根据实际需求调整"
      },
      "kb_agentic_mode": {
        "description": "Agentic 知识库检索",
        "hint": "启用后,知识库检索将作为 LLM Tool,由模型自主决定何时调用知识库进行查询。需要模型支持函数调用能力。"
      }
    },
    "websearch": {
      "description": "网页搜索",
      "hint": "让 AstrBot 能够访问互联网，获悉时讯。",
      "provider_settings": {
        "web_search": {
          "description": "启用网页搜索"
        },
        "websearch_provider": {
          "description": "网页搜索提供商"
        },
        "websearch_tavily_key": {
          "description": "Tavily API Key",
          "hint": "可添加多个 Key 进行轮询。"
        },
        "websearch_bocha_key": {
          "description": "BoCha API Key",
          "hint": "可添加多个 Key 进行轮询。"
        },
        "websearch_brave_key": {
          "description": "Brave Search API Key",
          "hint": "可添加多个 Key 进行轮询。"
        },
        "websearch_firecrawl_key": {
          "description": "Firecrawl API Key",
          "hint": "可添加多个 Key 进行轮询。"
        },
        "websearch_baidu_app_builder_key": {
          "description": "百度千帆智能云 APP Builder API Key",
          "hint": "参考:[https://console.bce.baidu.com/iam/#/iam/apikey/list](https://console.bce.baidu.com/iam/#/iam/apikey/list)"
        },
        "web_search_link": {
          "description": "显示来源引用"
        },
        "websearch_exa_key": {
          "description": "Exa API Key",
          "hint": "可添加多个 Key 进行轮询。获取 Key: https://dashboard.exa.ai"
        }
      }
    },
    "file_extract": {
      "description": "文档解析能力",
      "provider_settings": {
        "file_extract": {
          "enable": {
            "description": "启用文档解析能力"
          },
          "provider": {
            "description": "文档解析提供商"
          },
          "moonshotai_api_key": {
            "description": "Moonshot AI API Key"
          }
        }
      }
    },
    "agent_computer_use": {
      "description": "使用电脑能力",
      "hint": "让 AstrBot 访问和使用本机环境或者隔离的沙盒环境，以执行更复杂的任务。详见: [电脑使用](https://docs.astrbot.app/use/computer.html)。",
      "provider_settings": {
        "computer_use_runtime": {
          "description": "运行环境",
          "hint": "允许 Agent 访问的环境。local 为本机环境，sandbox 为沙箱环境，none 为不允许任何环境。"
        },
        "computer_use_require_admin": {
          "description": "需要 AstrBot 管理员权限",
          "hint": "开启后，需要 AstrBot 管理员权限才能调用使用电脑能力。在平台配置->管理员中可添加管理员。使用 /sid 指令查看管理员 ID。"
        },
        "sandbox": {
          "booter": {
            "description": "沙箱环境驱动器"
          },
          "shipyard_neo_endpoint": {
            "description": "Shipyard Neo API Endpoint",
            "hint": "Shipyard Neo(Bay) 服务的 API 地址，默认 http://127.0.0.1:8114。"
          },
          "shipyard_neo_access_token": {
            "description": "Shipyard Neo 访问令牌",
            "hint": "Bay 的 API Key（sk-bay-...）。留空时自动从 credentials.json 发现。"
          },
          "shipyard_neo_profile": {
            "description": "Shipyard Neo Profile",
            "hint": "Shipyard Neo 沙箱 profile，例如 python-default。留空时自动选择能力更完整的 profile。"
          },
          "shipyard_neo_ttl": {
            "description": "Shipyard Neo Sandbox 存活时间(秒)",
            "hint": "Shipyard Neo 沙箱的生存时间（秒）。"
          },
          "cua_image": {
            "description": "CUA 镜像",
            "hint": "CUA 沙箱镜像/系统类型，默认 linux。可填写 linux、macos、windows、android，具体取决于 CUA SDK 支持。"
          },
          "cua_os_type": {
            "description": "CUA 操作系统类型",
            "hint": "CUA 沙箱操作系统类型，默认 linux。"
          },
          "cua_idle_timeout": {
            "description": "CUA 空闲超时(秒)",
            "hint": "CUA 沙箱空闲超时时间（秒）。大于 0 时，AstrBot 会在会话空闲达到该时长后主动关闭 CUA 沙箱；0 表示禁用。"
          },
          "cua_telemetry_enabled": {
            "description": "CUA 遥测",
            "hint": "是否允许 CUA SDK 发送遥测数据。默认关闭。"
          },
          "cua_local": {
            "description": "CUA 本地沙箱",
            "hint": "是否优先使用 CUA 本地沙箱。默认开启，避免云端沙箱要求 CUA_API_KEY。关闭后可使用 CUA 云端沙箱。"
          },
          "cua_api_key": {
            "description": "CUA API Key",
            "hint": "CUA 云端沙箱 API Key。仅在关闭本地沙箱时需要。也可以通过 CUA_API_KEY 环境变量提供。"
          },
          "shipyard_endpoint": {
            "description": "Shipyard API Endpoint",
            "hint": "Shipyard 服务的 API 访问地址。"
          },
          "shipyard_access_token": {
            "description": "Shipyard 访问令牌",
            "hint": "用于访问 Shipyard 服务的访问令牌。"
          },
          "shipyard_ttl": {
            "description": "Shipyard Ship 存活时间(秒)",
            "hint": "Shipyard 会话的生存时间（秒）。"
          },
          "shipyard_max_sessions": {
            "description": "Shipyard Ship 会话复用上限",
            "hint": "决定了一个实例承载的最大会话数量。"
          }
        }
      }
    },
    "proactive_capability": {
      "description": "主动型能力",
      "hint": "让 AstrBot 能够在某一时刻自动唤醒，帮你完成任务。详见: [主动型 Agent](https://docs.astrbot.app/use/proactive-agent.html)。",
      "provider_settings": {
        "proactive_capability": {
          "add_cron_tools": {
            "description": "启用",
            "hint": "启用后，将会传递给 Agent 相关工具来实现主动型 Agent。你可以告诉 AstrBot 未来某个时间要做的事情，它将被定时触发然后执行任务，然后将结果发送给你。"
          }
        }
      }
    },
    "truncate_and_compress": {
      "hint": "AstrBot 如何管理工作记忆。详见: [上下文管理策略](https://docs.astrbot.app/use/context-compress.html)。",
      "description": "上下文管理策略",
      "provider_settings": {
        "max_context_length": {
          "description": "压缩前最多保留对话轮数",
          "hint": "普通会话历史超过该轮数后，才会按下方策略进行持久化截断或 LLM 压缩；请求发送前也会先按该值约束上下文。-1 表示不按轮数限制。"
        },
        "dequeue_context_length": {
          "description": "轮次超限时一次丢弃轮数",
          "hint": "当超过\"压缩前最多保留对话轮数\"且无法使用 LLM 压缩时，一次丢弃多少轮旧对话；请求期截断也会复用该值。"
        },
        "context_limit_reached_strategy": {
          "description": "历史超限或上下文接近上限时的处理方式",
          "labels": [
            "按对话轮数截断",
            "由 LLM 压缩上下文"
          ],
          "hint": "普通会话历史仅在超过\"压缩前最多保留对话轮数\"后执行该策略；请求发送前也会在上下文 token 接近模型窗口时使用同一策略保护本次请求。"
        },
        "llm_compress_instruction": {
          "description": "上下文压缩提示词",
          "hint": "如果为空则使用默认提示词。"
        },
        "llm_compress_keep_recent_ratio": {
          "description": "压缩时保留最近上下文比例",
          "hint": "按当前上下文 token 数保留最近内容，范围 0-0.3。0.15 表示保留 15%；比例大于 0 时至少保留最后一轮。"
        },
        "llm_compress_provider_id": {
          "description": "用于上下文压缩的模型提供商 ID",
          "hint": "留空时使用当前聊天模型进行压缩；如果模型不可用或压缩失败，将回退为\"按对话轮数截断\"的策略。"
        },
        "fallback_max_context_tokens": {
          "description": "上下文窗口兜底值",
          "hint": "当 max_context_tokens 为 0 且模型不在内置元数据中时，使用此值作为上下文窗口大小。默认 128000。"
        }
      }
    },
    "others": {
      "description": "其他配置",
      "provider_settings": {
        "display_reasoning_text": {
          "description": "显示思考内容"
        },
        "llm_safety_mode": {
          "description": "健康模式",
          "hint": "引导模型输出健康、安全、积极的内容，避免有害或敏感话题。"
        },
        "safety_mode_strategy": {
          "description": "健康模式策略",
          "hint": "选择健康模式的实现方式。"
        },
        "identifier": {
          "description": "用户识别",
          "hint": "启用后,会在提示词前包含用户 ID 信息。"
        },
        "group_name_display": {
          "description": "显示群名称",
          "hint": "启用后,在支持的平台(OneBot v11)上会在提示词前包含群名称信息。"
        },
        "datetime_system_prompt": {
          "description": "现实世界时间感知",
          "hint": "启用后,会在系统提示词中附带当前时间信息。"
        },
        "show_tool_use_status": {
          "description": "输出函数调用状态"
        },
        "show_tool_call_result": {
          "description": "输出函数调用返回结果",
          "hint": "仅在启用“输出函数调用状态”时生效，且最多展示 70 个字符。"
        },
        "buffer_intermediate_messages": {
          "description": "合并 Agent 中间消息",
          "hint": "开启后，非流式模式下多步工具调用过程中产生的中间文本将缓冲，待 Agent 完成后合并为一条回复发送。"
        },
        "sanitize_context_by_modalities": {
          "description": "按模型能力清理历史上下文",
          "hint": "开启后，在每次请求 LLM 前会按当前模型提供商中所选择的模型能力删除对话中不支持的图片/工具调用结构（会改变模型看到的历史）"
        },
        "max_quoted_fallback_images": {
          "description": "转发消息中图片获取上限",
          "hint": "转发消息解析到的图片最多注入数量，超出部分会截断。"
        },
        "quoted_message_parser": {
          "max_component_chain_depth": {
            "description": "转发消息富文本解析深度",
            "hint": "解析转发消息中的富文本组件链时允许的最大递归深度。"
          },
          "max_forward_node_depth": {
            "description": "转发消息嵌套解析深度",
            "hint": "解析嵌套转发节点时允许的最大递归深度。"
          },
          "max_forward_fetch": {
            "description": "转发消息递归拉取上限",
            "hint": "递归调用 get_forward_msg 拉取转发内容的最大次数。"
          },
          "warn_on_action_failure": {
            "description": "转发消息解析失败告警",
            "hint": "开启后，get_msg/get_forward_msg 全部尝试失败时输出 warning 日志。"
          }
        },
        "max_agent_step": {
          "description": "工具调用轮数上限"
        },
        "tool_call_timeout": {
          "description": "工具调用超时时间(秒)"
        },
        "tool_schema_mode": {
          "description": "工具调用模式",
          "hint": "skills-like 先下发工具名称与描述，再下发参数；full 一次性下发完整参数。",
          "labels": [
            "Skills-like（两阶段）",
            "Full（完整参数）"
          ]
        },
        "streaming_response": {
          "description": "流式输出"
        },
        "unsupported_streaming_strategy": {
          "description": "不支持流式回复的平台",
          "hint": "选择在不支持流式回复的平台上的处理方式。实时分段回复会在系统接收流式响应检测到诸如标点符号等分段点时,立即发送当前已接收的内容",
          "labels": [
            "实时分段回复",
            "关闭流式回复"
          ]
        },
        "wake_prefix": {
          "description": "LLM 聊天额外唤醒前缀",
          "hint": "如果唤醒前缀为 /, 额外聊天唤醒前缀为 chat,则需要 /chat 才会触发 LLM 请求"
        },
        "prompt_prefix": {
          "description": "用户提示词",
          "hint": "可使用 {{prompt}} 作为用户输入的占位符。如果不输入占位符则代表添加在用户输入的前面。"
        },
        "image_compress_enabled": {
          "description": "启用图片压缩",
          "hint": "启用后，发送给多模态模型前会先压缩本地大图片。"
        },
        "image_compress_options": {
          "description": "图片压缩配置",
          "hint": "用于控制图片压缩的尺寸、质量和触发阈值。",
          "max_size": {
            "description": "最大边长",
            "hint": "压缩后图片的最长边，单位为像素。超过该尺寸时会按比例缩放。"
          },
          "quality": {
            "description": "JPEG 质量",
            "hint": "JPEG 输出质量，范围为 1-100。值越高，画质越好，文件也越大。"
          }
        },
        "reachability_check": {
          "description": "提供商可达性检测",
          "hint": "/provider 命令列出模型时并发检测连通性。开启后会主动调用模型测试连通性,可能产生额外 token 消耗。"
        }
      },
      "provider_tts_settings": {
        "dual_output": {
          "description": "开启 TTS 时同时输出语音和文字内容"
        }
      }
    }
  },
  "platform_group": {
    "name": "平台配置",
    "platform": {
      "description": "消息平台适配器",
      "active_send_mode": {
        "description": "是否换用主动发送接口"
      },
      "appid": {
        "description": "appid",
        "hint": "必填项。当前消息平台的 AppID。如何获取请参考对应平台接入文档。"
      },
      "callback_server_host": {
        "description": "回调服务器主机",
        "hint": "回调服务器主机。留空则不启用回调服务器。"
      },
      "card_template_id": {
        "description": "卡片模板 ID",
        "hint": "可选。钉钉互动卡片模板 ID。启用后将使用互动卡片进行流式回复。"
      },
      "discord_activity_name": {
        "description": "Discord 活动名称",
        "hint": "可选的 Discord 活动名称。留空则不设置活动。"
      },
      "discord_allow_bot_messages": {
        "description": "允许接收机器人消息",
        "hint": "启用后，AstrBot 将接收来自其他 Discord 机器人的消息。适用于机器人间通信场景（如消息转发）。默认关闭。"
      },
      "discord_command_register": {
        "description": "注册 Discord 指令",
        "hint": "启用后，自动将插件指令注册为 Discord 斜杠指令"
      },
      "discord_proxy": {
        "description": "Discord 代理地址",
        "hint": "可选的代理地址：http://ip:port"
      },
      "discord_token": {
        "description": "Discord Bot Token",
        "hint": "在此处填入你的 Discord Bot Token"
      },
      "enable": {
        "description": "启用",
        "hint": "是否启用该适配器。未启用的适配器对应的消息平台将不会接收到消息。"
      },
      "enable_group_c2c": {
        "description": "启用消息列表单聊",
        "hint": "启用后，机器人可以接收到 QQ 消息列表中的私聊消息。你可能需要在 QQ 机器人平台上通过扫描二维码的方式添加机器人为你的好友。详见文档。"
      },
      "enable_guild_direct_message": {
        "description": "启用频道私聊",
        "hint": "启用后，机器人可以接收到频道的私聊消息。"
      },
      "id": {
        "description": "机器人名称",
        "hint": "机器人名称"
      },
      "is_sandbox": {
        "description": "沙箱模式"
      },
      "kf_name": {
        "description": "微信客服账号名",
        "hint": "如果填写此项，即代表你将使用企业微信客服，而不是企业微信应用。可在 https://kf.weixin.qq.com/kf/frame#/accounts 获取。"
      },
      "lark_connection_mode": {
        "description": "订阅方式",
        "labels": [
          "长连接模式",
          "推送至服务器模式"
        ]
      },
      "lark_encrypt_key": {
        "description": "Encrypt Key",
        "hint": "用于解密飞书回调数据的加密密钥"
      },
      "lark_verification_token": {
        "description": "Verification Token",
        "hint": "用于验证飞书回调请求的令牌"
      },
      "misskey_allow_insecure_downloads": {
        "description": "允许不安全下载（禁用 SSL 验证）",
        "hint": "当远端服务器存在证书问题导致无法正常下载时，自动禁用 SSL 验证作为回退方案。适用于某些图床的证书配置问题。启用有安全风险，仅在必要时使用。"
      },
      "misskey_default_visibility": {
        "description": "默认帖子可见性",
        "hint": "机器人发帖时的默认可见性设置。public：公开，home：主页时间线，followers：仅关注者。"
      },
      "misskey_download_chunk_size": {
        "description": "流式下载分块大小（字节）",
        "hint": "流式下载和计算 MD5 时使用的每次读取字节数，过小会增加开销，过大会占用内存。"
      },
      "misskey_download_timeout": {
        "description": "远端下载超时时间（秒）",
        "hint": "下载远程文件时的超时时间（秒），用于异步上传回退到本地上传的场景。"
      },
      "misskey_enable_chat": {
        "description": "启用聊天消息响应",
        "hint": "启用后，机器人将会监听和响应私信聊天消息"
      },
      "misskey_enable_file_upload": {
        "description": "启用文件上传到 Misskey",
        "hint": "启用后，适配器会尝试将消息链中的文件上传到 Misskey。URL 文件会先尝试服务器端上传，异步上传失败时会回退到下载后本地上传。"
      },
      "misskey_instance_url": {
        "description": "Misskey 实例 URL",
        "hint": "例如 https://misskey.example，填写 Bot 账号所在的 Misskey 实例地址"
      },
      "misskey_local_only": {
        "description": "仅限本站（不参与联合）",
        "hint": "启用后，机器人发出的帖子将仅在本实例可见，不会联合到其他实例"
      },
      "misskey_max_download_bytes": {
        "description": "最大允许下载字节数（超出则中止）",
        "hint": "如果希望限制下载文件的最大大小以防止 OOM，请填写最大字节数；留空或 null 表示不限制。"
      },
      "misskey_token": {
        "description": "Misskey Access Token",
        "hint": "连接服务设置生成的 API 鉴权访问令牌（Access token）"
      },
      "misskey_upload_concurrency": {
        "description": "并发上传限制",
        "hint": "同时进行的文件上传任务上限（整数，默认 3）。"
      },
      "misskey_upload_folder": {
        "description": "上传到网盘的目标文件夹 ID",
        "hint": "可选：填写 Misskey 网盘中目标文件夹的 ID，上传的文件将放置到该文件夹内。留空则使用账号网盘根目录。"
      },
      "port": {
        "description": "回调服务器端口",
        "hint": "回调服务器端口。留空则不启用回调服务器。"
      },
      "satori_api_base_url": {
        "description": "Satori API 终结点",
        "hint": "Satori API 的基础地址。"
      },
      "satori_auto_reconnect": {
        "description": "启用自动重连",
        "hint": "断开连接时是否自动重新连接 WebSocket。"
      },
      "satori_endpoint": {
        "description": "Satori WebSocket 终结点",
        "hint": "Satori 事件的 WebSocket 端点。"
      },
      "satori_heartbeat_interval": {
        "description": "Satori 心跳间隔",
        "hint": "发送心跳消息的间隔（秒）。"
      },
      "satori_reconnect_delay": {
        "description": "Satori 重连延迟",
        "hint": "尝试重新连接前的延迟时间（秒）。"
      },
      "satori_token": {
        "description": "Satori 令牌",
        "hint": "用于 Satori API 身份验证的令牌。"
      },
      "secret": {
        "description": "secret",
        "hint": "必填项。"
      },
      "slack_connection_mode": {
        "description": "Slack Connection Mode",
        "hint": "The connection mode for Slack. `webhook` uses a webhook server, `socket` uses Slack's Socket Mode."
      },
      "slack_webhook_host": {
        "description": "Slack Webhook Host",
        "hint": "Only valid when Slack connection mode is `webhook`."
      },
      "slack_webhook_path": {
        "description": "Slack Webhook Path",
        "hint": "Only valid when Slack connection mode is `webhook`."
      },
      "slack_webhook_port": {
        "description": "Slack Webhook Port",
        "hint": "Only valid when Slack connection mode is `webhook`."
      },
      "telegram_command_auto_refresh": {
        "description": "Telegram 命令自动刷新",
        "hint": "启用后，AstrBot 将会在运行时自动刷新 Telegram 命令。(单独设置此项无效)"
      },
      "telegram_command_register": {
        "description": "Telegram 命令注册",
        "hint": "启用后，AstrBot 将会自动注册 Telegram 命令。"
      },
      "telegram_command_register_interval": {
        "description": "Telegram 命令自动刷新间隔",
        "hint": "Telegram 命令自动刷新间隔，单位为秒。"
      },
      "telegram_polling_restart_delay": {
        "description": "Telegram 轮询重启延迟",
        "hint": "当轮询意外结束尝试自动重启时的延迟时间，单位为秒。默认为 5s。"
      },
      "telegram_token": {
        "description": "Bot Token",
        "hint": "如果你的网络环境为中国大陆，请在 `其他配置` 处设置代理或更改 api_base。"
      },
      "mattermost_url": {
        "description": "Mattermost URL",
        "hint": "Mattermost 服务地址，例如 https://chat.example.com。"
      },
      "mattermost_bot_token": {
        "description": "Mattermost Bot Token",
        "hint": "在 Mattermost 中创建 Bot 账户后生成的访问令牌。"
      },
      "mattermost_reconnect_delay": {
        "description": "Mattermost 重连延迟",
        "hint": "WebSocket 断开后的重连等待时间，单位为秒。默认 5 秒。"
      },
      "type": {
        "description": "适配器类型"
      },
      "unified_webhook_mode": {
        "description": "统一 Webhook 模式",
        "hint": "Webhook 模式下使用 AstrBot 统一 Webhook 入口，无需单独开启端口。回调地址为 /api/v1/webhooks/platforms/{webhook_uuid}。"
      },
      "webhook_uuid": {
        "description": "Webhook UUID",
        "hint": "统一 Webhook 模式下的唯一标识符，创建平台时自动生成。"
      },
      "wecom_ai_bot_name": {
        "description": "企业微信智能机器人的名字",
        "hint": "请务必填写正确，否则无法使用一些指令。"
      },
      "wecom_ai_bot_connection_mode": {
        "description": "企业微信智能机器人连接模式",
        "hint": "Webhook 回调模式需要配置 Token/EncodingAESKey；长连接模式需要配置 BotID/Secret。"
      },
      "wecomaibot_friend_message_welcome_text": {
        "description": "企业微信智能机器人私聊欢迎语",
        "hint": "可选。当用户当天进入智能机器人单聊会话，回复欢迎语，如 “💭 思考中...”。留空则不回复。"
      },
      "wecomaibot_init_respond_text": {
        "description": "企业微信智能机器人初始响应文本",
        "hint": "可选。当机器人收到消息时，首先回复的文本内容。留空则不设置。"
      },
      "wecomaibot_token": {
        "description": "企业微信智能机器人 Token",
        "hint": "用于 Webhook 回调模式的身份验证。"
      },
      "wecomaibot_encoding_aes_key": {
        "description": "企业微信智能机器人 EncodingAESKey",
        "hint": "用于 Webhook 回调模式的消息加密解密。"
      },
      "wecomaibot_ws_bot_id": {
        "description": "长连接 BotID",
        "hint": "企业微信智能机器人长连接模式凭证 BotID。"
      },
      "wecomaibot_ws_secret": {
        "description": "长连接 Secret",
        "hint": "企业微信智能机器人长连接模式凭证 Secret。"
      },
      "wecomaibot_ws_url": {
        "description": "长连接 WebSocket 地址",
        "hint": "默认值为 wss://openws.work.weixin.qq.com，一般无需修改。"
      },
      "wecomaibot_heartbeat_interval": {
        "description": "长连接心跳间隔",
        "hint": "长连接模式心跳间隔（秒），建议 30 秒。"
      },
      "wpp_active_message_poll": {
        "description": "是否启用主动消息轮询",
        "hint": "只有当你发现微信消息没有按时同步到 AstrBot 时，才需要启用这个功能，默认不启用。"
      },
      "wpp_active_message_poll_interval": {
        "description": "主动消息轮询间隔",
        "hint": "主动消息轮询间隔，单位为秒，默认 3 秒，最大不要超过 60 秒，否则可能被认为是旧消息。"
      },
      "ws_reverse_host": {
        "description": "反向 Websocket 主机",
        "hint": "AstrBot 将作为服务器端。"
      },
      "ws_reverse_port": {
        "description": "反向 Websocket 端口"
      },
      "ws_reverse_token": {
        "description": "反向 Websocket Token",
        "hint": "反向 Websocket Token。未设置则不启用 Token 验证。"
      },
      "msg_push_webhook_url": {
        "description": "企业微信消息推送 Webhook URL",
        "hint": "可选。用于主动消息推送，请在企微群->消息推送得到 URL。建议设置此项以带来更好的消息发送体验。"
      },
      "only_use_webhook_url_to_send": {
        "description": "仅使用 Webhook 发送消息",
        "hint": "可选。启用后，企业微信智能机器人的所有回复都改为通过消息推送 Webhook 发送。消息推送 Webhook 支持更多的消息类型（如图片、文件等）。如果不需要打字机效果，强烈建议使用此选项。"
      },
      "weixin_oc_base_url": {
        "description": "Base URL 地址",
        "hint": "默认值: https://ilinkai.weixin.qq.com"
      },
      "weixin_oc_bot_type": {
        "description": "扫码参数 bot_type",
        "hint": "默认值: 3"
      },
      "weixin_oc_qr_poll_interval": {
        "description": "二维码状态轮询间隔（秒）",
        "hint": "每隔多少秒轮询一次二维码状态。"
      },
      "weixin_oc_long_poll_timeout_ms": {
        "description": "getUpdates 长轮询超时时间（毫秒）",
        "hint": "会话消息拉取接口超时参数。"
      },
      "weixin_oc_api_timeout_ms": {
        "description": "HTTP 请求超时（毫秒）",
        "hint": "通用 API 请求超时参数。"
      },
      "weixin_oc_token": {
        "description": "登录后 token（可留空）",
        "hint": "扫码登录成功后会自动写入；高级场景可手动填写。"
      },
      "kook_bot_token": {
        "description": "机器人 Token",
        "type": "string",
        "hint": "必填项。从 KOOK 开发者平台获取的机器人 Token"
      },
      "kook_reconnect_delay": {
        "description": "重连延迟",
        "type": "int",
        "hint": "重连延迟时间（秒），使用指数退避策略"
      },
      "kook_max_reconnect_delay": {
        "description": "最大重连延迟",
        "type": "int",
        "hint": "重连延迟的最大值（秒）"
      },
      "kook_max_retry_delay": {
        "description": "最大重试延迟",
        "type": "int",
        "hint": "重试的最大延迟时间（秒）"
      },
      "kook_heartbeat_interval": {
        "description": "心跳间隔",
        "type": "int",
        "hint": "心跳检测间隔时间（秒）"
      },
      "kook_heartbeat_timeout": {
        "description": "心跳超时时间",
        "type": "int",
        "hint": "心跳检测超时时间（秒）"
      },
      "kook_max_heartbeat_failures": {
        "description": "最大心跳失败次数",
        "type": "int",
        "hint": "允许的最大心跳失败次数，超过后断开连接"
      },
      "kook_max_consecutive_failures": {
        "description": "最大连续失败次数",
        "type": "int",
        "hint": "允许的最大连续失败次数，超过后停止重试"
      }
    },
    "general": {
      "description": "基本",
      "admins_id": {
        "description": "管理员 ID"
      },
      "platform_settings": {
        "unique_session": {
          "description": "隔离会话",
          "hint": "启用后,群成员的上下文独立。"
        },
        "friend_message_needs_wake_prefix": {
          "description": "私聊消息需要唤醒词"
        },
        "reply_prefix": {
          "description": "回复时的文本前缀"
        },
        "reply_with_mention": {
          "description": "回复时 @ 发送人"
        },
        "reply_with_quote": {
          "description": "回复时引用发送人消息"
        },
        "forward_threshold": {
          "description": "转发消息的字数阈值"
        },
        "empty_mention_waiting": {
          "description": "只 @ 机器人是否触发等待"
        }
      },
      "wake_prefix": {
        "description": "唤醒词"
      },
      "disable_builtin_commands": {
        "description": "禁用自带指令",
        "hint": "禁用所有 AstrBot 自带指令,如 help, sid, new 等"
      }
    },
    "whitelist": {
      "description": "白名单",
      "platform_settings": {
        "enable_id_white_list": {
          "description": "启用白名单",
          "hint": "启用后,只有在白名单内的会话会被响应，白名单列表为空时代表不启用白名单（所有 ID 都会被放行）。"
        },
        "id_whitelist": {
          "description": "白名单 ID 列表",
          "hint": "使用 /sid 获取 ID。列表为空时表示该白名单不启用（即所有 ID 都在白名单内）。"
        },
        "id_whitelist_log": {
          "description": "输出日志",
          "hint": "启用后,当一条消息没通过白名单时,会输出 INFO 级别的日志。"
        },
        "wl_ignore_admin_on_group": {
          "description": "管理员群组消息无视 ID 白名单"
        },
        "wl_ignore_admin_on_friend": {
          "description": "管理员私聊消息无视 ID 白名单"
        }
      }
    },
    "rate_limit": {
      "description": "速率限制",
      "platform_settings": {
        "rate_limit": {
          "time": {
            "description": "消息速率限制时间(秒)"
          },
          "count": {
            "description": "消息速率限制计数"
          },
          "strategy": {
            "description": "速率限制策略"
          }
        }
      }
    },
    "content_safety": {
      "description": "内容安全",
      "content_safety": {
        "also_use_in_response": {
          "description": "同时检查模型的响应内容"
        },
        "baidu_aip": {
          "enable": {
            "description": "使用百度内容安全审核",
            "hint": "您需要手动安装 baidu-aip 库。"
          },
          "app_id": {
            "description": "App ID"
          },
          "api_key": {
            "description": "API Key"
          },
          "secret_key": {
            "description": "Secret Key"
          }
        },
        "internal_keywords": {
          "enable": {
            "description": "关键词检查"
          },
          "extra_keywords": {
            "description": "额外关键词",
            "hint": "额外的屏蔽关键词列表,支持正则表达式。"
          }
        }
      }
    },
    "t2i": {
      "description": "文本转图像",
      "t2i": {
        "description": "文本转图像输出"
      },
      "t2i_word_threshold": {
        "description": "文本转图像字数阈值"
      }
    },
    "others": {
      "description": "其他配置",
      "platform_settings": {
        "ignore_bot_self_message": {
          "description": "是否忽略机器人自身的消息"
        },
        "ignore_at_all": {
          "description": "是否忽略 @ 全体成员事件"
        },
        "no_permission_reply": {
          "description": "用户权限不足时是否回复"
        }
      },
      "platform_specific": {
        "lark": {
          "pre_ack_emoji": {
            "enable": {
              "description": "[飞书] 启用预回应表情"
            },
            "emojis": {
              "description": "表情列表(飞书表情枚举名)",
              "hint": "表情枚举名参考:[https://open.feishu.cn/document/server-docs/im-v1/message-reaction/emojis-introduce](https://open.feishu.cn/document/server-docs/im-v1/message-reaction/emojis-introduce)"
            }
          }
        },
        "telegram": {
          "pre_ack_emoji": {
            "enable": {
              "description": "[Telegram] 启用预回应表情"
            },
            "emojis": {
              "description": "表情列表(Unicode)",
              "hint": "Telegram 仅支持固定反应集合,参考:[https://gist.github.com/Soulter/3f22c8e5f9c7e152e967e8bc28c97fc9](https://gist.github.com/Soulter/3f22c8e5f9c7e152e967e8bc28c97fc9)"
            }
          }
        },
        "discord": {
          "pre_ack_emoji": {
            "enable": {
              "description": "[Discord] 启用预回应表情"
            },
            "emojis": {
              "description": "表情列表（Unicode 或自定义表情名）",
              "hint": "填写 Unicode 表情符号，例如：👍、🤔、⏳"
            }
          }
        }
      }
    }
  },
  "plugin_group": {
    "name": "插件配置",
    "plugin": {
      "description": "插件",
      "plugin_set": {
        "description": "可用插件",
        "hint": "默认启用全部未被禁用的插件。若插件在插件页面被禁用,则此处的选择不会生效。"
      }
    }
  },
  "ext_group": {
    "name": "扩展功能",
    "segmented_reply": {
      "description": "分段回复",
      "platform_settings": {
        "segmented_reply": {
          "enable": {
            "description": "启用分段回复"
          },
          "only_llm_result": {
            "description": "仅对 LLM 结果分段"
          },
          "interval_method": {
            "description": "间隔方法",
            "hint": "random 为随机时间，log 为根据消息长度计算，$y=log_<log_base>(x)$，x为字数，y的单位为秒。"
          },
          "interval": {
            "description": "随机间隔时间",
            "hint": "格式:最小值,最大值(如:1.5,3.5)"
          },
          "log_base": {
            "description": "对数底数",
            "hint": "对数间隔的底数,默认为 2.6。取值范围为 1.0-10.0。"
          },
          "words_count_threshold": {
            "description": "分段回复字数阈值",
            "hint": "分段回复的字数上限。只有字数小于此值的消息才会被分段，超过此值的长消息将直接发送（不分段），默认为 150。"
          },
          "split_mode": {
            "description": "分段模式",
            "hint": "用于分隔一段消息。默认情况下会根据句号、问号等标点符号分隔。如填写 `[。？！]` 将移除所有的句号、问号、感叹号。re.findall(r'<regex>', text)",
            "labels": [
              "正则表达式",
              "分段词列表"
            ]
          },
          "regex": {
            "description": "分段正则表达式",
            "hint": "用于按正则规则识别分段点。建议使用能匹配分隔符的表达式。"
          },
          "split_words": {
            "description": "分段词列表",
            "hint": "检测到列表中的任意词时进行分段"
          },
          "content_cleanup_rule": {
            "description": "内容过滤正则表达式",
            "hint": "移除分段后内容中的指定内容。如填写 `[。?!]` 将移除所有的句号、问号、感叹号。"
          }
        }
      }
    },
    "ltm": {
      "description": "群聊上下文感知(原聊天记忆增强)",
      "provider_ltm_settings": {
        "group_icl_enable": {
          "description": "启用群聊上下文感知"
        },
        "group_message_max_cnt": {
          "description": "最大消息数量"
        },
        "image_caption": {
          "description": "自动理解图片",
          "hint": "需要设置群聊图片转述模型。"
        },
        "image_caption_provider_id": {
          "description": "群聊图片转述模型",
          "hint": "用于群聊上下文感知的图片理解，与默认图片转述模型分开配置。"
        },
        "active_reply": {
          "enable": {
            "description": "主动回复"
          },
          "method": {
            "description": "主动回复方法"
          },
          "possibility_reply": {
            "description": "回复概率",
            "hint": "0.0-1.0 之间的数值"
          },
          "whitelist": {
            "description": "主动回复白名单",
            "hint": "为空时不启用白名单过滤。使用 /sid 获取 ID。"
          }
        }
      }
    }
  },
  "system_group": {
    "name": "系统配置",
    "system": {
      "description": "系统配置",
      "t2i_strategy": {
        "description": "文本转图像策略",
        "hint": "文本转图像策略。`remote` 为使用远程基于 HTML 的渲染服务,`local` 为使用 PIL 本地渲染。当使用 local 时,将 ttf 字体命名为 'font.ttf' 放在 data/ 目录下可自定义字体。"
      },
      "t2i_endpoint": {
        "description": "文本转图像服务 API 地址",
        "hint": "为空时使用 AstrBot API 服务"
      },
      "t2i_template": {
        "description": "文本转图像自定义模版",
        "hint": "启用后可自定义 HTML 模板用于文转图渲染。"
      },
      "t2i_active_template": {
        "description": "当前应用的文转图渲染模板",
        "hint": "此处的值由文转图模板管理页面进行维护。"
      },
      "log_level": {
        "description": "控制台日志级别",
        "hint": "控制台输出日志的级别。"
      },
      "log_file_enable": {
        "description": "启用文件日志",
        "hint": "在控制台输出的同时，将日志写入文件。"
      },
      "log_file_path": {
        "description": "日志文件路径",
        "hint": "相对路径以 data 目录为基准，例如 logs/astrbot.log；支持绝对路径。"
      },
      "log_file_max_mb": {
        "description": "日志文件大小上限 (MB)",
        "hint": "超过大小后自动轮转，默认 20MB。"
      },
      "temp_dir_max_size": {
        "description": "临时目录大小上限 (MB)",
        "hint": "用于限制 data/temp 目录总大小，单位为 MB。系统每 10 分钟检查一次，超限时按文件修改时间从旧到新删除，释放约 30% 当前体积。"
      },
      "trace_log_enable": {
        "description": "启用 Trace 文件日志",
        "hint": "将 Trace 事件写入独立文件（不影响控制台输出）。"
      },
      "trace_log_path": {
        "description": "Trace 日志文件路径",
        "hint": "相对路径以 data 目录为基准，例如 logs/astrbot.trace.log；支持绝对路径。"
      },
      "trace_log_max_mb": {
        "description": "Trace 日志大小上限 (MB)",
        "hint": "超过大小后自动轮转，默认 20MB。"
      },
      "pip_install_arg": {
        "description": "pip 安装额外参数",
        "hint": "安装插件依赖时,会使用 Python 的 pip 工具。这里可以填写额外的参数,如 `--break-system-package` 等。"
      },
      "pypi_index_url": {
        "description": "PyPI 软件仓库地址",
        "hint": "安装 Python 依赖时请求的 PyPI 软件仓库地址。默认为 [https://mirrors.aliyun.com/pypi/simple/](https://mirrors.aliyun.com/pypi/simple/)"
      },
      "callback_api_base": {
        "description": "对外可达的回调接口地址",
        "hint": "外部服务可能会通过 AstrBot 生成的回调链接(如文件下载链接)访问 AstrBot 后端。由于 AstrBot 无法自动判断部署环境中对外可达的主机地址(host),因此需要通过此配置项显式指定外部服务如何访问 AstrBot 的地址。如 [http://localhost:6185](http://localhost:6185),[https://example.com](https://example.com) 等。"
      },
      "disable_metrics": {
        "description": "禁用匿名使用统计",
        "hint": "禁用后，AstrBot 将不再上传匿名使用统计数据。"
      },
      "dashboard": {
        "trust_proxy_headers": {
          "description": "信任代理请求头获取客户端 IP",
          "hint": "关闭时忽略 X-Forwarded-For/X-Real-IP，仅使用连接地址。"
        },
        "auth_rate_limit": {
          "enable": {
            "description": "启用登录验证速率限制",
            "hint": "关闭后将不对登录、TOTP 等身份验证接口进行速率限制。"
          },
          "average_interval": {
            "description": "验证端点速率限制平均间隔(秒)",
            "hint": "两次身份验证请求之间的最小平均间隔时间。例如设置为 1.0 表示每秒最多处理 1 个请求。"
          },
          "max_burst": {
            "description": "验证端点速率限制最大突发数",
            "hint": "允许的瞬时最大突发请求数。例如设置为 3 表示在短时间内最多连续处理 3 个请求。"
          }
        },
        "ssl": {
          "enable": {
            "description": "启用 WebUI HTTPS",
            "hint": "启用后，WebUI 将直接使用 HTTPS 提供服务。"
          },
          "cert_file": {
            "description": "SSL 证书文件路径",
            "hint": "证书文件路径（PEM）。支持绝对路径和相对路径（相对于当前工作目录）。"
          },
          "key_file": {
            "description": "SSL 私钥文件路径",
            "hint": "私钥文件路径（PEM）。支持绝对路径和相对路径（相对于当前工作目录）。"
          },
          "ca_certs": {
            "description": "SSL CA 证书文件路径",
            "hint": "可选。用于指定 CA 证书文件路径。"
          }
        },
        "totp": {
          "enable": {
            "description": "启用 WebUI TOTP 双因素认证",
            "hint": "启用后，登录 WebUI 需要额外输入验证码。"
          },
          "manage": "管理",
          "configuration": "TOTP",
          "statusPending": "需完成设置",
          "statusEnabled": "已启用",
          "setupRequiredHint": "TOTP 已开启但尚未完成配置，请点击“管理”完成初始化。",
          "setupTitle": "设置 TOTP",
          "setupSubtitle": "请使用认证器应用扫描二维码，然后输入验证码。",
          "setupConfirm": "验证并继续",
          "activeSubtitle": "可使用此二维码和密钥添加新的认证器设备。",
          "rotateTitle": "更换 TOTP 密钥",
          "rotateSubtitle": "生成新密钥并完成验证后，将替换当前密钥。",
          "rotate": "更换密钥",
          "rotateRecovery": "更换恢复码",
          "rotateConfirm": "确认更换",
          "rotateCancel": "取消",
          "rotateCode": "验证码",
          "rotateCodeHint": "输入认证器应用中的验证码以确认新密钥。",
          "rotateError": "验证码无效，请重试。",
          "recoveryTitle": "恢复码",
          "recoverySubtitle": "恢复码仅展示一次，请在继续前妥善保存。",
          "recoveryWarning": "若恢复码丢失将无法通过常规途径恢复账户访问权限。",
          "recoveryAcknowledge": "我已保存恢复码",
          "recoveryClose": "完成",
          "disableTitle": "关闭 TOTP",
          "disableSubtitle": "输入验证码以确认关闭双因素认证。",
          "disableRecoverySubtitle": "输入恢复码以确认关闭双因素认证。",
          "disableCode": "验证码",
          "disableRecoveryCode": "恢复码",
          "disableConfirm": "确认关闭",
          "disableCancel": "取消",
          "disableError": "验证失败，请重试。",
          "disableUseRecovery": "无法使用TOTP?",
          "disableUseCode": "使用验证码",
          "configSaveTitle": "两步验证",
          "configSaveSubtitle": "输入验证码以更改受保护的配置。",
          "configSaveRotationHint": "轮换 TOTP 密钥时，轮换前和轮换后的验证码均可用（仅轮换操作中单次允许）。",
          "configSaveCode": "验证码",
          "configSaveConfirm": "继续",
          "configSaveCancel": "取消",
          "configSaveError": "验证失败，请重试。"
        }
      },
      "timezone": {
        "description": "时区",
        "hint": "时区设置。请填写 IANA 时区名称, 如 Asia/Shanghai, 为空时使用系统默认时区。所有时区请查看: [https://data.iana.org/time-zones/tzdb-2021a/zone1970.tab](https://data.iana.org/time-zones/tzdb-2021a/zone1970.tab)"
      },
      "http_proxy": {
        "description": "HTTP 代理",
        "hint": "启用后,会以添加环境变量的方式设置代理。格式为 `http://ip:port`"
      },
      "no_proxy": {
        "description": "直连地址列表"
      }
    }
  },
  "provider_group": {
    "provider": {
      "genie_onnx_model_dir": {
        "description": "ONNX Model Directory",
        "hint": "The directory path containing the ONNX model files"
      },
      "genie_language": {
        "description": "Language"
      },
      "xai_native_search": {
        "description": "启用原生搜索功能",
        "hint": "启用后，将通过 xAI 的 Chat Completions 原生 Live Search 进行联网检索（按需计费）。仅对 xAI 提供商生效。"
      },
      "rerank_api_base": {
        "description": "重排序模型 API Base URL",
        "hint": "最终请求路径由 Base URL 和路径后缀拼接而成（默认为 /v1/rerank）。"
      },
      "rerank_api_suffix": {
        "description": "API URL 路径后缀",
        "hint": "追加到 base_url 后的路径后缀，如 /v1/rerank。留空则不追加。"
      },
      "rerank_api_key": {
        "description": "API Key",
        "hint": "如果不需要 API Key, 请留空。"
      },
      "rerank_model": {
        "description": "重排序模型名称"
      },
      "return_documents": {
        "description": "是否在排序结果中返回文档原文",
        "hint": "默认值false，以减少网络传输开销。"
      },
      "instruct": {
        "description": "自定义排序任务类型说明",
        "hint": "仅在使用 qwen3-rerank 模型时生效。建议使用英文撰写。"
      },
      "nvidia_rerank_api_base": {
        "description": "API Base URL"
      },
      "nvidia_rerank_api_key": {
        "description": "API Key"
      },
      "nvidia_rerank_model": {
        "description": "重排序模型名称",
        "hint": "请参照NVIDIA Docs中模型名称填写。"
      },
      "nvidia_rerank_model_endpoint": {
        "description": "自定义模型端点",
        "hint": "自定义URL末尾端点，默认为 /reranking"
      },
      "nvidia_rerank_truncate": {
        "description": "文本截断策略",
        "hint": "当输入文本过长时，是否截断输入以适应模型的最大上下文长度。"
      },
      "launch_model_if_not_running": {
        "description": "模型未运行时自动启动",
        "hint": "如果模型当前未在 Xinference 服务中运行，是否尝试自动启动它。在生产环境中建议关闭。"
      },
      "modalities": {
        "description": "模型能力",
        "hint": "模型支持的模态及能力。",
        "labels": [
          "文本",
          "图像",
          "音频",
          "工具使用"
        ]
      },
      "custom_headers": {
        "description": "自定义请求头",
        "hint": "此处添加的键值对将被合并到 OpenAI SDK 的 default_headers 中，用于自定义 HTTP 请求头。值必须为字符串。"
      },
      "ollama_disable_thinking": {
        "description": "关闭思考模式",
        "hint": "关闭 Ollama 思考模式。"
      },
      "custom_extra_body": {
        "description": "自定义请求体参数",
        "hint": "用于在请求时添加额外的参数，如 temperature, top_p, max_tokens, reasoning_effort 等。",
        "template_schema": {
          "temperature": {
            "description": "温度参数",
            "hint": "控制输出的随机性，范围通常为 0-2。值越高越随机。",
            "name": "Temperature"
          },
          "top_p": {
            "description": "Top-p 采样",
            "hint": "核采样参数，范围通常为 0-1。控制模型考虑的概率质量。",
            "name": "Top-p"
          },
          "max_tokens": {
            "description": "最大词元（Tokens）数",
            "hint": "生成的最大词元（Tokens）数。",
            "name": "Max Tokens"
          }
        }
      },
      "gpt_weights_path": {
        "description": "GPT模型文件路径",
        "hint": "即“.ckpt”后缀的文件，请使用绝对路径，路径两端不要带双引号，不填则默认用GPT_SoVITS内置的SoVITS模型(建议直接在GPT_SoVITS中改默认模型)"
      },
      "sovits_weights_path": {
        "description": "SoVITS模型文件路径",
        "hint": "即“.pth”后缀的文件，请使用绝对路径，路径两端不要带双引号，不填则默认用GPT_SoVITS内置的SoVITS模型(建议直接在GPT_SoVITS中改默认模型)"
      },
      "gsv_default_parms": {
        "description": "GPT_SoVITS默认参数",
        "hint": "参考音频文件路径、参考音频文本必填，其他参数根据个人爱好自行填写",
        "gsv_ref_audio_path": {
          "description": "参考音频文件路径",
          "hint": "必填！请使用绝对路径！路径两端不要带双引号！"
        },
        "gsv_prompt_text": {
          "description": "参考音频文本",
          "hint": "必填！请填写参考音频讲述的文本"
        },
        "gsv_prompt_lang": {
          "description": "参考音频文本语言",
          "hint": "请填写参考音频讲述的文本的语言，默认为中文"
        },
        "gsv_aux_ref_audio_paths": {
          "description": "辅助参考音频文件路径",
          "hint": "辅助参考音频文件，可不填"
        },
        "gsv_text_lang": {
          "description": "文本语言",
          "hint": "默认为中文"
        },
        "gsv_top_k": {
          "description": "生成语音的多样性",
          "hint": ""
        },
        "gsv_top_p": {
          "description": "核采样的阈值",
          "hint": ""
        },
        "gsv_temperature": {
          "description": "生成语音的随机性",
          "hint": ""
        },
        "gsv_text_split_method": {
          "description": "切分文本的方法",
          "hint": "可选值：  `cut0`：不切分    `cut1`：四句一切   `cut2`：50字一切    `cut3`：按中文句号切    `cut4`：按英文句号切    `cut5`：按标点符号切"
        },
        "gsv_batch_size": {
          "description": "批处理大小",
          "hint": ""
        },
        "gsv_batch_threshold": {
          "description": "批处理阈值",
          "hint": ""
        },
        "gsv_split_bucket": {
          "description": "将文本分割成桶以便并行处理",
          "hint": ""
        },
        "gsv_speed_factor": {
          "description": "语音播放速度",
          "hint": "1为原始语速"
        },
        "gsv_fragment_interval": {
          "description": "语音片段之间的间隔时间",
          "hint": ""
        },
        "gsv_streaming_mode": {
          "description": "启用流模式",
          "hint": ""
        },
        "gsv_seed": {
          "description": "随机种子",
          "hint": "用于结果的可重复性"
        },
        "gsv_parallel_infer": {
          "description": "并行执行推理",
          "hint": ""
        },
        "gsv_repetition_penalty": {
          "description": "重复惩罚因子",
          "hint": ""
        },
        "gsv_media_type": {
          "description": "输出媒体的类型",
          "hint": "建议用wav"
        }
      },
      "embedding_dimensions": {
        "description": "嵌入维度",
        "hint": "嵌入向量的维度。根据模型不同，可能需要调整，请参考具体模型的文档。此配置项请务必填写正确，否则将导致向量数据库无法正常工作。"
      },
      "embedding_model": {
        "description": "嵌入模型",
        "hint": "嵌入模型名称。"
      },
      "embedding_api_key": {
        "description": "API Key"
      },
      "embedding_api_base": {
        "description": "API Base URL"
      },
      "openai_embedding": {
        "hint": "如果测试不通过，可以尝试添加 /v1 在末尾以兼容部分 OpenAI API 版本。"
      },
      "gemini_embedding": {
        "hint": "Gemini Embedding 无需手动添加 /v1beta。"
      },
      "volcengine_cluster": {
        "description": "火山引擎集群",
        "hint": "若使用语音复刻大模型，可选volcano_icl或volcano_icl_concurr，默认使用volcano_tts"
      },
      "volcengine_voice_type": {
        "description": "火山引擎音色",
        "hint": "输入声音id(Voice_type)"
      },
      "volcengine_speed_ratio": {
        "description": "语速设置",
        "hint": "语速设置，范围为 0.2 到 3.0,默认值为 1.0"
      },
      "volcengine_volume_ratio": {
        "description": "音量设置",
        "hint": "音量设置，范围为 0.0 到 2.0,默认值为 1.0"
      },
      "azure_tts_voice": {
        "description": "音色设置",
        "hint": "API 音色"
      },
      "azure_tts_style": {
        "description": "风格设置",
        "hint": "声音特定的讲话风格。 可以表达快乐、同情和平静等情绪。"
      },
      "azure_tts_role": {
        "description": "模仿设置（可选）",
        "hint": "讲话角色扮演。 声音可以模仿不同的年龄和性别，但声音名称不会更改。 例如，男性语音可以提高音调和改变语调来模拟女性语音，但语音名称不会更改。 如果角色缺失或不受声音的支持，则会忽略此属性。"
      },
      "azure_tts_rate": {
        "description": "语速设置",
        "hint": "指示文本的讲出速率。可在字词或句子层面应用语速。 速率变化应为原始音频的 0.5 到 2 倍。"
      },
      "azure_tts_volume": {
        "description": "语音音量设置",
        "hint": "指示语音的音量级别。 可在句子层面应用音量的变化。以从 0.0 到 100.0（从最安静到最大声，例如 75）的数字表示。 默认值为 100.0。"
      },
      "azure_tts_region": {
        "description": "API 地区",
        "hint": "Azure_TTS 处理数据所在区域，具体参考 https://learn.microsoft.com/zh-cn/azure/ai-services/speech-service/regions"
      },
      "azure_tts_subscription_key": {
        "description": "服务订阅密钥",
        "hint": "Azure_TTS 服务的订阅密钥（注意不是令牌）"
      },
      "dashscope_tts_voice": {
        "description": "音色"
      },
      "gm_resp_image_modal": {
        "description": "启用图片模态",
        "hint": "启用后，将支持返回图片内容。需要模型支持，否则会报错。具体支持模型请查看 Google Gemini 官方网站。温馨提示，如果您需要生成图片，请关闭 `启用群员识别` 配置获得更好的效果。"
      },
      "gm_native_search": {
        "description": "启用原生搜索功能",
        "hint": "启用后所有函数工具将全部失效，免费次数限制请查阅官方文档"
      },
      "gm_native_coderunner": {
        "description": "启用原生代码执行器",
        "hint": "启用后所有函数工具将全部失效"
      },
      "gm_url_context": {
        "description": "启用URL上下文功能",
        "hint": "启用后所有函数工具将全部失效"
      },
      "gm_safety_settings": {
        "description": "安全过滤器",
        "hint": "设置模型输入的内容安全过滤级别。过滤级别分类为NONE(不屏蔽)、HIGH(高风险时屏蔽)、MEDIUM_AND_ABOVE(中等风险及以上屏蔽)、LOW_AND_ABOVE(低风险及以上时屏蔽)，具体参见Gemini API文档。",
        "harassment": {
          "description": "骚扰内容",
          "hint": "负面或有害评论"
        },
        "hate_speech": {
          "description": "仇恨言论",
          "hint": "粗鲁、无礼或亵渎性质内容"
        },
        "sexually_explicit": {
          "description": "露骨色情内容",
          "hint": "包含性行为或其他淫秽内容的引用"
        },
        "dangerous_content": {
          "description": "危险内容",
          "hint": "宣扬、助长或鼓励有害行为的信息"
        }
      },
      "gm_thinking_config": {
        "description": "思考配置",
        "budget": {
          "description": "思考预算",
          "hint": "用于指定模型推理时使用的思考 token 数量上限。参见: https://ai.google.dev/gemini-api/docs/thinking#set-budget"
        },
        "level": {
          "description": "思考级别",
          "hint": "推荐用于 Gemini 3 及以上模型，可控制推理行为。参见: https://ai.google.dev/gemini-api/docs/thinking#thinking-levels"
        }
      },
      "anth_thinking_config": {
        "description": "思考配置",
        "type": {
          "description": "思考类型",
          "hint": "设为 'adaptive' 以使用自适应思考（推荐 Opus 4.6+ / Sonnet 4.6+）。留空则使用手动预算模式。参见: https://platform.claude.com/docs/en/build-with-claude/adaptive-thinking"
        },
        "budget": {
          "description": "思考预算",
          "hint": "Anthropic thinking.budget_tokens 参数。必须 >= 1024。仅在思考类型为空时生效。Opus 4.6 / Sonnet 4.6 已弃用。参见: https://platform.claude.com/docs/en/build-with-claude/extended-thinking"
        },
        "effort": {
          "description": "思考深度",
          "hint": "当思考类型为 'adaptive' 时控制思考深度。'high' 为默认值。'max' 仅限 Opus 4.6。参见: https://platform.claude.com/docs/en/build-with-claude/effort"
        }
      },
      "minimax-group-id": {
        "description": "用户组",
        "hint": "于账户管理->基本信息中可见"
      },
      "minimax-langboost": {
        "description": "指定语言/方言",
        "hint": "增强对指定的小语种和方言的识别能力，设置后可以提升在指定小语种/方言场景下的语音表现"
      },
      "minimax-voice-speed": {
        "description": "语速",
        "hint": "生成声音的语速, 取值[0.5, 2], 默认为1.0, 取值越大，语速越快"
      },
      "minimax-voice-vol": {
        "description": "音量",
        "hint": "生成声音的音量, 取值(0, 10], 默认为1.0, 取值越大，音量越高"
      },
      "minimax-voice-pitch": {
        "description": "语调",
        "hint": "生成声音的语调, 取值[-12, 12], 默认为0"
      },
      "minimax-is-timber-weight": {
        "description": "启用混合音色",
        "hint": "启用混合音色, 支持以自定义权重混合最多四种音色, 启用后自动忽略单一音色设置"
      },
      "minimax-timber-weight": {
        "description": "混合音色",
        "hint": "混合音色及其权重, 最多支持四种音色, 权重为整数, 取值[1, 100]. 可在官网API语音调试台预览代码获得预设以及编写模板, 需要严格按照json字符串格式编写, 可以查看控制台判断是否解析成功. 具体结构可参照默认值以及官网代码预览."
      },
      "minimax-voice-id": {
        "description": "单一音色",
        "hint": "单一音色编号, 详见官网文档"
      },
      "minimax-voice-emotion": {
        "description": "情绪",
        "hint": "控制合成语音的情绪。当为 auto 时，将根据文本内容自动选择情绪。"
      },
      "minimax-voice-latex": {
        "description": "支持朗读latex公式",
        "hint": "朗读latex公式, 但是需要确保输入文本按官网要求格式化"
      },
      "minimax-voice-english-normalization": {
        "description": "支持英语文本规范化",
        "hint": "可提升数字阅读场景的性能，但会略微增加延迟"
      },
      "rag_options": {
        "description": "RAG 选项",
        "hint": "检索知识库设置, 非必填。仅 Agent 应用类型支持(智能体应用, 包括 RAG 应用)。阿里云百炼应用开启此功能后将无法多轮对话。",
        "pipeline_ids": {
          "description": "知识库 ID 列表",
          "hint": "对指定知识库内所有文档进行检索, 前往 https://bailian.console.aliyun.com/ 数据应用->知识索引创建和获取 ID。"
        },
        "file_ids": {
          "description": "非结构化文档 ID, 传入该参数将对指定非结构化文档进行检索。",
          "hint": "对指定非结构化文档进行检索。前往 https://bailian.console.aliyun.com/ 数据管理创建和获取 ID。"
        },
        "output_reference": {
          "description": "是否输出知识库/文档的引用",
          "hint": "在每次回答尾部加上引用源。默认为 False。"
        }
      },
      "sensevoice_hint": {
        "description": "部署SenseVoice",
        "hint": "启用前请 pip 安装 funasr、funasr_onnx、torchaudio、torch、modelscope、jieba 库（默认使用CPU，大约下载 1 GB），并且安装 ffmpeg。否则将无法正常转文字。"
      },
      "is_emotion": {
        "description": "情绪识别",
        "hint": "是否开启情绪识别。happy｜sad｜angry｜neutral｜fearful｜disgusted｜surprised｜unknown"
      },
      "stt_model": {
        "description": "模型名称",
        "hint": "modelscope 上的模型名称。默认：iic/SenseVoiceSmall。"
      },
      "variables": {
        "description": "工作流固定输入变量",
        "hint": "可选。工作流固定输入变量，将会作为工作流的输入。也可以在对话时使用 /set 指令动态设置变量。如果变量名冲突，优先使用动态设置的变量。"
      },
      "dashscope_app_type": {
        "description": "应用类型",
        "hint": "百炼应用的应用类型。"
      },
      "timeout": {
        "description": "超时时间",
        "hint": "超时时间，单位为秒。"
      },
      "openai-tts-voice": {
        "description": "voice",
        "hint": "OpenAI TTS 的声音。OpenAI 默认支持：'alloy', 'echo', 'fable', 'onyx', 'nova', 'shimmer'"
      },
      "elevenlabs-tts-voice-id": {
        "description": "音色 ID",
        "hint": "ElevenLabs 音色 ID。可在 https://elevenlabs.io/app/voice-library 浏览并复制音色 ID。默认 'JBFqnCBsd6RMkjVDRZzb'（George）。"
      },
      "elevenlabs-tts-output-format": {
        "description": "输出格式",
        "hint": "音频输出格式，例如 'mp3_44100_128'、'mp3_22050_32'、'wav_44100'、'opus_48000_128'。不支持裸 PCM/u-law/a-law 格式。默认 'mp3_44100_128'。"
      },
      "elevenlabs-tts-stability": {
        "description": "稳定性",
        "hint": "音色稳定性，范围 [0, 1]。值越高越稳定，越低越富有表现力。留空则使用服务端默认值。"
      },
      "elevenlabs-tts-similarity-boost": {
        "description": "相似度增强",
        "hint": "输出与原始音色的接近程度，范围 [0, 1]。留空则使用服务端默认值。"
      },
      "elevenlabs-tts-style": {
        "description": "风格夸张度",
        "hint": "音色风格的夸张程度，范围 [0, 1]。值越高延迟越大。留空则使用服务端默认值。"
      },
      "elevenlabs-tts-use-speaker-boost": {
        "description": "说话人增强",
        "hint": "增强与原始说话人的相似度，可能略微增加延迟。"
      },
      "mimo-tts-voice": {
        "description": "音色",
        "hint": "MiMo TTS 的音色名称。可选值包括 'mimo_default'、'default_en'、'default_zh'。"
      },
      "mimo-tts-format": {
        "description": "输出格式",
        "hint": "MiMo TTS 生成音频的格式。支持 'wav'、'mp3'、'pcm'。"
      },
      "mimo-tts-style-prompt": {
        "description": "风格提示词",
        "hint": "会以 <style>...</style> 标签形式添加到待合成文本开头，用于控制语速、情绪、角色或风格，例如 开心、变快、孙悟空、悄悄话。可留空。"
      },
      "mimo-tts-dialect": {
        "description": "方言",
        "hint": "会与风格提示词一起写入开头的 <style>...</style> 标签中，例如 东北话、四川话、河南话、粤语。可留空。"
      },
      "mimo-tts-seed-text": {
        "description": "种子文本",
        "hint": "作为可选的 user 消息发送，用于辅助调节语气和风格，不会拼接到待合成文本中。"
      },
      "fishaudio-tts-character": {
        "description": "character",
        "hint": "fishaudio TTS 的角色。默认为可莉。更多角色请访问：https://fish.audio/zh-CN/discovery"
      },
      "fishaudio-tts-reference-id": {
        "description": "reference_id",
        "hint": "fishaudio TTS 的参考模型ID（可选）。如果填入此字段，将直接使用模型ID而不通过角色名称查询。例如：626bb6d3f3364c9cbc3aa6a67300a664。更多模型请访问：https://fish.audio/zh-CN/discovery，进入模型详情界面后可复制模型ID"
      },
      "whisper_hint": {
        "description": "本地部署 Whisper 模型须知",
        "hint": "启用前请 pip 安装 openai-whisper 库（N卡用户大约下载 2GB，主要是 torch 和 cuda，CPU 用户大约下载 1 GB），并且安装 ffmpeg。否则将无法正常转文字。"
      },
      "whisper_device": {
        "description": "推理设备",
        "hint": "Whisper 推理设备。Apple Silicon 可选 mps；其他环境建议使用 cpu。若指定 mps 但当前环境不可用，将自动回退到 cpu。"
      },
      "id": {
        "description": "ID"
      },
      "type": {
        "description": "模型提供商种类"
      },
      "provider_type": {
        "description": "模型提供商能力种类"
      },
      "enable": {
        "description": "启用"
      },
      "key": {
        "description": "API Key"
      },
      "api_base": {
        "description": "API Base URL"
      },
      "proxy": {
        "description": "代理地址",
        "hint": "HTTP/HTTPS 代理地址，格式如 http://127.0.0.1:7890。仅对该提供商的 API 请求生效，不影响 Docker 内网通信。"
      },
      "model": {
        "description": "模型 ID",
        "hint": "模型名称，如 gpt-4o-mini, deepseek-chat。"
      },
      "max_context_tokens": {
        "description": "模型上下文窗口大小",
        "hint": "模型最大上下文 Token 大小。如果为 0，则会自动从模型元数据填充（如有）。"
      },
      "dify_api_key": {
        "description": "API Key",
        "hint": "Dify API Key。此项必填。"
      },
      "dify_api_base": {
        "description": "API Base URL",
        "hint": "Dify API Base URL。默认为 https://api.dify.ai/v1"
      },
      "dify_api_type": {
        "description": "Dify 应用类型",
        "hint": "Dify API 类型。根据 Dify 官网，目前支持 chat, chatflow, agent, workflow 三种应用类型。"
      },
      "dify_workflow_output_key": {
        "description": "Dify Workflow 输出变量名",
        "hint": "Dify Workflow 输出变量名。当应用类型为 workflow 时才使用。默认为 astrbot_wf_output。"
      },
      "dify_query_input_key": {
        "description": "Prompt 输入变量名",
        "hint": "发送的消息文本内容对应的输入变量名。默认为 astrbot_text_query。"
      },
      "coze_api_key": {
        "description": "Coze API Key",
        "hint": "Coze API 密钥，用于访问 Coze 服务。"
      },
      "bot_id": {
        "description": "Bot ID",
        "hint": "Coze 机器人的 ID，在 Coze 平台上创建机器人后获得。"
      },
      "coze_api_base": {
        "description": "API Base URL",
        "hint": "Coze API 的基础 URL 地址，默认为 https://api.coze.cn"
      },
      "deerflow_api_base": {
        "description": "API Base URL",
        "hint": "DeerFlow API 网关地址，默认为 http://127.0.0.1:2026"
      },
      "deerflow_api_key": {
        "description": "DeerFlow API Key",
        "hint": "可选。若 DeerFlow 网关配置了 Bearer 鉴权，则在此填写。"
      },
      "deerflow_auth_header": {
        "description": "Authorization Header",
        "hint": "可选。自定义 Authorization 请求头，优先级高于 DeerFlow API Key。"
      },
      "deerflow_assistant_id": {
        "description": "Assistant ID",
        "hint": "DeerFlow 2.0 LangGraph assistant_id，默认为 lead_agent。"
      },
      "deerflow_model_name": {
        "description": "模型名称覆盖",
        "hint": "可选。覆盖 DeerFlow 默认模型（对应运行时 configurable 的 model_name）。"
      },
      "deerflow_thinking_enabled": {
        "description": "启用思考模式"
      },
      "deerflow_plan_mode": {
        "description": "启用计划模式",
        "hint": "对应 DeerFlow 2.0 运行时 configurable 的 is_plan_mode。"
      },
      "deerflow_subagent_enabled": {
        "description": "启用子智能体",
        "hint": "对应 DeerFlow 2.0 运行时 configurable 的 subagent_enabled。"
      },
      "deerflow_max_concurrent_subagents": {
        "description": "子智能体最大并发数",
        "hint": "对应 DeerFlow 2.0 运行时 configurable 的 max_concurrent_subagents。仅在启用子智能体时生效，默认 3。"
      },
      "deerflow_recursion_limit": {
        "description": "递归深度上限",
        "hint": "对应 LangGraph recursion_limit。"
      },
      "auto_save_history": {
        "description": "由 Coze 管理对话记录",
        "hint": "启用后，将由 Coze 进行对话历史记录管理, 此时 AstrBot 本地保存的上下文不会生效(仅供浏览), 对 AstrBot 的上下文进行的操作也不会生效。如果为禁用, 则使用 AstrBot 管理上下文。"
      }
    }
  },
  "help": {
    "documentation": "官方文档",
    "support": "加群询问",
    "helpText": "不了解配置？请见 {documentation} 或 {support}。",
    "helpPrefix": "不了解配置？请见",
    "helpMiddle": "或",
    "helpSuffix": "。"
  }
}
