AiHummer
中文▾
登录帐户
v1.4.x▾
{ }Swagger

设置参考

v1.4.x · 已更新 2026-10-02

本页列出运维人员可以在 AiHummer 服务器上修改的全部设置。页面由产品自身的目录生成,因此与您的服务器完全一致。

可在 Web 界面中设置,也可使用命令 aihummer settings set KEY VALUE(参见命令行)。默认值一列显示在您未设置自己的值之前服务器使用的值。

[!NOTE] 此处从不打印密钥的值,供应商的服务用键完全不予列出——产品会将它们从所有列表中隐藏。短横线表示空值,或表示仅在 Web 界面中显示的说明。

API

键 名称 类型 默认值 生效时间 作用
AIHUMMER_PERSONAL_API_KEYS OpenAI-compat 的个人 API 密钥 bool 1 重启后 “off”会在 OpenAI 兼容端点上禁用个人密钥身份验证。任何其他值=启用。在启动时/重新启动后应用。

Agent

键 名称 类型 默认值 生效时间 作用
AIHUMMER_AGENT_ANNOUNCE_SLOW_TOOLS 智能体:耗时操作前说明正在做什么 bool 1 立即 在耗时操作(生成图片、深度搜索、视频、交给子智能体的任务)之前,智能体会简短说明正在做什么,避免无声等待。如果这类消息造成打扰,可以关闭。
AIHUMMER_AGENT_COMPACT_AT_PCT 代理:历史达到其预算的百分比时压缩 int 50…99 85 立即 当对话历史占满其在模型窗口中空间的这一比例时,较早的消息会被折叠成摘要 — 在后台、回答之后进行;本轮无需等待。较低 — 压缩更频繁,但模型逐字记住的内容更少;较高 — 压缩较少,但每轮更重。50–99;代理可以设置自己的值。
AIHUMMER_AGENT_COMPACT_TO_PCT 代理:压缩后保留的历史预算百分比 int 10…90 50 立即 压缩后逐字保留的历史空间比例;更早的内容都进入摘要。必须低于压缩阈值:两者之间的差距决定到下次压缩还要经过多少轮。10–90;代理可以设置自己的值。
AIHUMMER_AGENT_HISTORY_TURNS 代理:逐字保留的对话轮数 int 1…1000 30 立即 模型逐字看到的最近对话轮数(在需要压缩前最多再多 10 轮)。更早的消息在后台汇总为摘要;对话本身不会被删除。会自动考虑模型的上下文窗口。1–1000;可为代理单独设置。
AIHUMMER_AGENT_MAX_ITERATIONS 代理:每轮最多工具步骤数 int 1…256 25 立即 代理在一轮中回答前最多可调用工具的次数。达到上限时该轮不会失败:代理会说明已完成和未完成的部分,你可以让它继续。连续三次相同调用且结果相同会提前结束该轮。1–256;可为代理单独设置。
AIHUMMER_AGENT_MEMORY_FLUSH 代理:压缩前保存记忆笔记 bool 1 立即 在将较早的消息汇总为摘要之前,代理会把关于目标、决定和未完成事项的简短笔记保存到记忆中。关闭可节省一次模型调用。
AIHUMMER_AGENT_MEMORY_FLUSH_PROMPT 代理:压缩前笔记要记录什么 text — 立即 压缩前笔记的自定义任务:从进入摘要的消息中保留什么(例如“只记录购物、期限和约定”)。留空——内置:目标、决定和未完成事项。保护无法关闭:对话文本始终作为数据而非指令,密码和密钥不会被保存。最多 4000 个字符;代理可以有自己的任务。
AIHUMMER_AGENT_NEW_REMINDERS_MEMORY 新智能体:提醒与写入记忆 bool 1 立即 手动创建的新智能体(首次启动向导、“创建智能体”、API)从第一轮起就能自行设置、修改和取消它自己的提醒与计划任务,并把事实写入自己的记忆——与个人助理模板相同。可在单个智能体的卡片(“能力”)中关闭。库模板自行决定,智能体副本保留原智能体的权限,由其他智能体创建的智能体默认不具备这些权限;现有智能体不受影响。对下一个创建的智能体生效。
AIHUMMER_AGENT_PROMPT_PART_MAX_CHARS 智能体:每个提示词部分的最大字符数 int 1000…1000000 20000 立即 模型从智能体人设的某一个部分(资料章节、提示词部分或主提示词)获得的字符数。较长的部分保留开头(3/4)和结尾(1/4),并注明截掉了多少;这会显示在会话卡片和智能体的提示词构成中。名字、称呼方式和人设限制永远不会被截断。1000–1000000;可为智能体单独设置。
AIHUMMER_AGENT_PROMPT_TOTAL_MAX_CHARS 智能体:整个人设的最大字符数 int 1000…2000000 60000 立即 智能体人设的总上限:所有部分合计。超出时,最长的部分先让出空间,较短的部分保持完整。1000–2000000;可为智能体单独设置。
AIHUMMER_AGENT_SELF_INTRO 智能体:自我介绍 enum: first_contact \\| each_dialog \\| never first_contact 立即 “仅在初次认识时一次”:代理在与某人的第一次对话中简短自我介绍,除非对方想直接进入正题;对已认识的人不再重复介绍,自然地回应问候。“从不自我介绍”:代理从不主动说出自己的名字。 “每次新对话开始时” — 每次新对话开始时以及长时间停顿之后,简短介绍,不回顾过去的事务。智能体可在自己的卡片(「上下文与行为」)中另作选择。
AIHUMMER_AGENT_SESSION_IDLE_RESET_MINUTES 智能体:静默后重新开始对话(分钟) int 0…525600 360 立即 用于“静默之后”和“每天及静默之后”:如果此人在超过此时长的静默后发消息,智能体会重新开始对话。适用于卡片上未设置自己数值的智能体。0 — 不按静默。0–525600;360 = 6 小时、1440 = 一天。
AIHUMMER_AGENT_SESSION_INDEX_MAX_ENTRIES 智能体:列表中最多保留这么多会话 int 0…100000 0 立即 最安静的最先离开列表;不会删除任何内容。0 — 不限制。0–100000。适用于卡片上没有自己设置的智能体。
AIHUMMER_AGENT_SESSION_INDEX_PRUNE_DAYS 智能体:沉默这么多天后从会话列表中移除 int 0…3650 0 立即 不会删除任何内容:对话离开列表,收到新消息后会回来。0 — 保留。0–3650。适用于卡片上没有自己设置的智能体。
AIHUMMER_AGENT_SESSION_RESET_AT_HOUR 智能体:每日重新开始的时刻 int 0…23 4 立即 适用于“每天”相关模式:在此时刻之前开始的对话,会在对方下一条消息时重新开始。时间按服务器时区计算(“系统与设置”中的“时区”)。0–23;4 表示夜里几乎没人发消息的时候。
AIHUMMER_AGENT_SESSION_RESET_GROUP_IDLE_MINUTES 智能体:静默后重新开始群聊(分钟) int 0…525600 0 立即 用于“静默之后”和“每天及静默之后”模式下的群聊:群聊重新开始前的静默分钟数。0 表示与私聊相同。0–525600。
AIHUMMER_AGENT_SESSION_RESET_GROUP_MODE 智能体:群聊何时重新开始 enum: inherit \\| daily \\| idle \\| both \\| none inherit 立即 群聊的单独规则(Telegram 群组、VK 会话、MAX 聊天等):与私聊相同、每天在重置时刻、静默之后、以先到者为准,或从不。重置时刻为共用。适用于卡片上没有自己规则的智能体。
AIHUMMER_AGENT_SESSION_RESET_MODE 智能体:何时重新开始对话 enum: idle \\| daily \\| both \\| none idle 立即 智能体何时重新开始对话:每天在重置时刻(按设置中的时区)、静默之后、以先到者为准,或从不。重新开始时,智能体会把关于上一段对话的笔记写入自己的记忆,其第一轮会获得先前的摘要和最近的消息;消息本身保留在归档和搜索中。适用于卡片上没有自己规则的智能体;在卡片上还可以为群聊单独设置规则。
AIHUMMER_AGENT_SESSION_SCOPE 智能体:私聊对话归入何处 enum: chat \\| per-channel-peer \\| per-peer chat 立即 「每人一个」会把同一个人的 Telegram、应用和其他私聊合并为一个对话。群聊始终保留自己的对话。从下一条消息起生效。适用于卡片上没有自己设置的智能体。
AIHUMMER_AGENT_SILENT_REPLY 代理:可以保持沉默 enum: groups \\| all \\| off groups 立即 在群聊中,如果消息不是发给代理的,或者它没有什么可补充的,代理可以保持沉默;在私聊中它总是回复。您也可以允许在私聊中保持沉默,或将其关闭。沉默的一轮不会发送任何内容,对话卡片将其标记为“代理保持了沉默”,模型在历史记录中看不到它。从下一轮起生效。
AIHUMMER_AGENT_SKILLS_PROMPT_MAX_CHARS 智能体:提示词中技能列表的最大字符数 int 1000…200000 18000 立即 每一轮中,模型看到的不是技能正文,而是技能列表:标识、名称和适用场景;任务合适时,智能体会自行加载技能说明。列表超长时,先去掉描述,再截掉列表末尾——其余技能智能体可按需查找。1000–200000。
AIHUMMER_AGENT_STALE_GAP_HOURS 智能体:此前对话视为历史的间隔(小时) int 0…8760 12 立即 如果对方在超过此时长的间隔后发来消息,智能体会收到提示:此前讨论的内容都是历史——除非被要求,否则不复述,也不继续旧任务。每条消息本就带有其时间以及距上一条消息过去了多久。0 = 不提示。0–8760。
AIHUMMER_AGENT_TOOL_HISTORY_TURNS 智能体:保留工具结果的轮次 int 0…100 5 立即 模型在最近多少轮中完整看到工具调用及其结果(结果最多保存 16 KB)。更早的轮次保留调用和结果的开头。这样智能体会记住它找到了什么、做了什么,而不必再次调用工具。0 = 不把结果带入后续轮次。0–100;智能体可以设置自己的值。
AIHUMMER_APPROVAL_TOOLS 需要批准的工具 multiselect — 立即 调用前需要操作员手动批准的工具列表,以逗号分隔。留空 = 无需批准。立即生效,无需重启。
AIHUMMER_SUBAGENT_MAX_DEPTH 子代理最大深度 int 0…10 2 立即 子智能体的最大嵌套深度(一个智能体启动另一个智能体)。默认值 2 —— 防止无限递归。
AIHUMMER_SUBAGENT_TIMEOUT_SEC 子代理超时(秒) int 0…86400 180 立即 单个子代理运行的最长时间(以秒为单位)。
AIHUMMER_TOOL_SEARCH 工具延迟加载 bool false 立即 直接向模型展示工作核心工具,并把大型目录中的其余工具隐藏在一个搜索工具之后,该工具会列出每个被隐藏工具的名称。只有在大型目录(数十个插件、MCP 或 OpenAPI 工具)中才划算:低于大小阈值时所有工具都会直接展示,因为为查找工具而额外调用一次模型的成本高于展示这些结构。下一轮起生效。
AIHUMMER_TOOL_SEARCH_CORE 延迟工具加载:永远在线的工具 multiselect web_search,web_fetch,memory_search,memory_get,memory_store,search_history,search_knowledge,code_exec,process,filesystem_read,message,schedule_list,schedule_create,schedule_delete,generate_pairing_code 立即 在延迟模式下始终直接展示的工具。默认是工作核心:网页搜索、页面抓取、记忆、对话历史、知识库、代码、文件、消息、日程和应用配对。记忆与知识库搜索(memory_search、memory_get、search_knowledge)始终展示,无论此列表如何设置。清空列表会恢复此核心。
AIHUMMER_TOOL_SEARCH_MIN_POOL_TOKENS 延迟加载工具:隐藏工具的最小体积(令牌) int 0…1000000 4000 立即 仅当核心之外的工具结构合计至少达到这么多令牌(每个约 4 个字符)时才隐藏工具。低于此值时所有工具都会直接展示:为查找工具额外调用一次模型的成本高于直接展示结构。
AIHUMMER_TOOL_SEARCH_THRESHOLD 延迟工具加载:推迟的最少工具 int 0…1000 12 立即 仅当超过这么多工具在代理的配置文件过滤器中幸存下来时才推迟。

Agent · Reasoning

键 名称 类型 默认值 生效时间 作用
AIHUMMER_AGENT_BEST_OF_N N 选最佳:候选数量 int 0…8 0 立即 智能体会准备这么多候选回答并保留最佳的一个。0 或 1——关闭,2 及以上——开启。每个候选的费用相当于一次单独回复。
AIHUMMER_AGENT_DEBATE_JUDGE_PROMPT 辩论:判断提示(覆盖) text — 立即 覆盖辩论法官提示(空白 = 内置)。
AIHUMMER_AGENT_DEBATE_N 辩论:候选回答数量 int 0…8 0 立即 智能体会准备这么多候选回答,相互比较后给出最佳答案。0 或 1——关闭,2 及以上——开启。每个候选的费用相当于一次单独回复。
AIHUMMER_AGENT_DEBATE_PROMPT 辩论:候选人提示(覆盖) text — 立即 覆盖辩论候选人提示(空白 = 内置)。
AIHUMMER_AGENT_DEBATE_ROUNDS 辩论:回合 int 1…10 1 立即 候选人小组的辩论轮数。
AIHUMMER_AGENT_JUDGE_PROMPT Best-of-N 判断提示(覆盖) text — 立即 覆盖 best-of-N 判断提示(空白 = 内置)。
AIHUMMER_AGENT_PLAN_PROMPT 规划提示(覆盖) text — 立即 覆盖规划器提示(空白=内置)。
AIHUMMER_AGENT_PLAN_STEPS 规划器执行器:最大规划步骤(0=关闭) int 0…32 0 立即 ⟩0 运行单独的规划器→执行器→合成过程(适用于复杂的多步骤任务)。 0 禁用。通常为 4–8。
AIHUMMER_AGENT_PLAN_STEP_ITERS 规划器:每步工具迭代次数(0=默认) int 0…64 0 立即 限制每个计划步骤的工具调用迭代。 0 = 内置默认值 (4)。
AIHUMMER_AGENT_REFLECT 自我批评通过 bool 0 立即 在最终答案之前添加反思/自我批评。
AIHUMMER_AGENT_REFLECT_PROMPT 反思提示(覆盖) text — 立即 覆盖自我批评提示(空白 = 内置)。
AIHUMMER_AGENT_SELF_HEAL 自我修复工具错误重试(0=关闭) int 0…10 0 立即 ⟩0 重试失败的工具调用并提供纠正提示,直至达到此界限。

Agent · System prompt

键 名称 类型 默认值 生效时间 作用
AIHUMMER_LOCALE 默认区域设置 enum: ru-RU \\| en-US \\| az-AZ \\| hy-AM \\| be-BY \\| kk-KZ \\| ky-KG \\| tg-TJ \\| tk-TM \\| uz-UZ \\| ka-GE \\| ro-RO \\| es-ES \\| zh-CN \\| fr-FR \\| de-DE \\| hi-IN \\| pl-PL \\| lt-LT \\| lv-LV \\| et-EE \\| fi-FI \\| sv-SE \\| no-NO \\| da-DK \\| tr-TR \\| mn-MN ru-RU 立即 默认回复语言/区域设置提示,例如茹-茹。角色/操作员指令覆盖。
AIHUMMER_TIMEZONE 时区 text UTC 立即 IANA 时区,用于代理的当前日期以及未设置自身时区的计划任务,例如 Europe/Moscow。默认 UTC。

Channels

键 名称 类型 默认值 生效时间 作用
AIHUMMER_CHANNEL_FAILURE_NOTICE 回复失败时告知对方 enum: always \\| once \\| off always 立即 智能体无法回复时,渠道(Telegram 等)中的对方会收到什么:“每次”——一条使用对方语言的简短消息;“每 4 小时最多一次”——每个对话 4 小时内一条;“不告知”——什么都不发。消息中不含错误代码或供应商名称;详情可在“会话”和通知中查看。
AIHUMMER_CHANNEL_FAILURE_TEXT_BLOCKED 失败提示文本:实例已暂停 text — 立即 留空则按对方的语言发送内置消息。您的文本按原样、以您书写的语言发送;{ref} 会插入回复代码,凭它可在“会话”中找到该轮次。立即生效。
AIHUMMER_CHANNEL_FAILURE_TEXT_BUDGET 失败提示文本:所有者预算已用完 text — 立即 留空则按对方的语言发送内置消息。您的文本按原样、以您书写的语言发送;{ref} 会插入回复代码,凭它可在“会话”中找到该轮次。立即生效。
AIHUMMER_CHANNEL_FAILURE_TEXT_BUSY 失败提示文本:网关负载过高 text — 立即 留空则按对方的语言发送内置消息。您的文本按原样、以您书写的语言发送;{ref} 会插入回复代码,凭它可在“会话”中找到该轮次。立即生效。
AIHUMMER_CHANNEL_FAILURE_TEXT_CONFIG 失败提示文本:模型连接需要所有者处理 text — 立即 留空则按对方的语言发送内置消息。您的文本按原样、以您书写的语言发送;{ref} 会插入回复代码,凭它可在“会话”中找到该轮次。立即生效。
AIHUMMER_CHANNEL_FAILURE_TEXT_FAILED 失败提示文本:其他故障 text — 立即 留空则按对方的语言发送内置消息。您的文本按原样、以您书写的语言发送;{ref} 会插入回复代码,凭它可在“会话”中找到该轮次。立即生效。
AIHUMMER_CHANNEL_FAILURE_TEXT_QUOTA 失败提示文本:模型用量额度已用完 text — 立即 留空则按对方的语言发送内置消息。您的文本按原样、以您书写的语言发送;{ref} 会插入回复代码,凭它可在“会话”中找到该轮次。立即生效。
AIHUMMER_CHANNEL_FAILURE_TEXT_STEP_LIMIT 失败提示文本:任务无法在一次回复中完成 text — 立即 留空则按对方的语言发送内置消息。您的文本按原样、以您书写的语言发送;{ref} 会插入回复代码,凭它可在“会话”中找到该轮次。立即生效。
AIHUMMER_CHANNEL_FAILURE_TEXT_TOO_LONG 失败提示文本:对话过长,模型无法容纳 text — 立即 留空则按对方的语言发送内置消息。您的文本按原样、以您书写的语言发送;{ref} 会插入回复代码,凭它可在“会话”中找到该轮次。立即生效。
AIHUMMER_CHANNEL_FAILURE_TEXT_UNAVAILABLE 失败提示文本:模型暂时不可用 text — 立即 留空则按对方的语言发送内置消息。您的文本按原样、以您书写的语言发送;{ref} 会插入回复代码,凭它可在“会话”中找到该轮次。立即生效。
AIHUMMER_CONFIDENTIAL_PERSONA 机密网络角色 bool 0 立即 启用后,网络聊天代理不会泄露或保留其角色/身份详细信息,并保留对手头任务的回复 - 将其用于匿名或隐私敏感的网络部署。立即生效,无需重启。
AIHUMMER_INBOUND_COALESCE_MS 消息合并窗口(毫秒) int 500 立即 同一个人在同一聊天中连续发送的多条消息(简短消息、相册、快速更正),如果间隔短于此窗口,将只得到一个回复。在回复准备期间收到的消息会在其后立即回复,绝不并行。默认 500 毫秒;0 = 单独的消息之间不等待;相册仍会被收集(间隔最多 3 秒,总计不超过 20 秒),以便只得到一个回复。合并仅在 Telegram 中生效;Slack、WhatsApp、VK、电子邮件以及其他逐条等待回复的连接器(以及通过 /v1/inbound/generic 的集成)会对每条消息分别回复——仍然逐条、按顺序处理。立即生效。
AIHUMMER_INBOUND_EDIT_MODE 用户编辑已回复的消息时 enum: correct \\| history correct 立即 correct — 机器人知道这是更正(“原为 / 现为”),会再次回复;history — 编辑只修正对话历史,不再回复(适合修改错别字)。对尚未回复的消息进行编辑,始终只是替换其文本。仅在渠道会通知编辑的地方生效(Telegram)。立即生效。
AIHUMMER_INBOUND_QUEUE_MODE 智能体工作时写下的消息 enum: steer \\| collect \\| followup steer 立即 当智能体仍在准备回复(搜索、运行工具)时,同一个人发送的消息如何处理:steer(默认)— 智能体在下一步之前看到它,并在同一个回复中考虑;collect — 由下一个回复作答。followup — 每条这样的消息依次得到各自的回复。照片、文件、对某条消息的回复和转发始终等待下一个回复。立即生效。
AIHUMMER_INBOUND_REQUIRE_BINDING 仅回复已配置的用户 bool true 立即 true =机器人会忽略任何 NOT 已配置 AiHummer 用户(具有角色绑定的用户)的频道发送者 — 随机聊天成员和访客调用不会得到回复。 false(默认)= 回复所有人。

Integrations

键 名称 类型 默认值 生效时间 作用
AIHUMMER_A2A_PUBLISH 通过 Agent2Agent 发布代理(A2A) bool 0 重启后 将代理发布为 A2A 服务器(代理卡 + POST /a2a/message)。在启动时/重新启动后应用。
AIHUMMER_MCP_EXPORT_TOOLS 向外部助手开放的工具 multiselect — 重启后 允许外部 MCP 客户端使用的工具名称的显式列表,以逗号分隔。空=不发布任何工具。内置策略还禁止危险的主机级别类别,即使已列出。在启动时/重新启动后应用。
AIHUMMER_MCP_PUBLISH 通过 MCP 发布工具 bool 0 重启后 允许外部助手(例如 Claude Desktop)使用您的智能体的工具。要开放哪些工具在旁边的设置中选择:列表为空时一个都不开放。
AIHUMMER_MODULE_CPU_QUOTA 插件 CPU 上限(每个插件) text 75% 立即 每个插件可占用的处理器份额(systemd CPUQuota):75% 为一个核心的四分之三,150% 为一个半核心。插件在下一次安装、更新或保存其设置时获得新值;在此之前,正在运行的插件沿用原有上限。
AIHUMMER_MODULE_MEMORY_MAX 插件内存上限(每个插件) text 512M 立即 每个插件可占用的内存(systemd MemoryMax):填写如 512M、1G 或 2048M 的大小(不少于 64M),或填 infinity 表示不限。超出上限的插件会被系统停止。插件在下一次安装、更新或保存其设置时获得新值;在此之前,正在运行的插件沿用原有上限。

Knowledge connectors

键 名称 类型 默认值 生效时间 作用
AIHUMMER_KB_SYNC_INTERVAL 多久从来源刷新一次知识库 text — 立即 服务器自动从已连接的知识库来源拉取更改的频率。例如:30m——每 30 分钟,6h——每 6 小时。留空或 0——仅手动。重新加载不会产生重复。Slack 导出需手动上传。

LLM

键 名称 类型 默认值 生效时间 作用
AIHUMMER_AUX_FALLBACK_MODELS 服务任务:备用模型 list — 立即 以逗号分隔的模型——服务模型失败(配额、故障)时按顺序尝试。最后总会尝试主模型,以免丢失摘要。每次切换都会记录到日志。立即生效。
AIHUMMER_AUX_MODEL 服务任务模型(摘要、笔记、标题) text — 立即 后台服务任务使用的模型:将旧历史压缩为摘要、压缩前的记忆笔记、会话标题、事实提取、搜索查询改写和翻译。留空 = 自动:同一提供商的更便宜模型(Claude → claude-haiku-4-5,Codex → gpt-…-luna/mini);若没有,则使用主模型。“main” = 始终使用主模型。立即生效。
AIHUMMER_CASCADE_MIN_CHARS 级联:升级的最小字符数 int 0 立即 更强级联模型启动的请求长度阈值(字符)。0 = 默认值。
AIHUMMER_CASCADE_STRONG_MODEL 级联:更强的后备模型 text — 立即 用于级联长/复杂请求的模型(空白=关闭)。
AIHUMMER_CLAUDE_AUTH_URL Claude 订阅:登录页面地址 text — 立即 您授权连接 Claude 订阅的页面。留空——使用标准地址;仅在支持团队要求时更改。
AIHUMMER_CLAUDE_CLIENT_ID Claude 订阅:OAuth 客户端 ID text — 立即 使用 Claude 订阅登录时的应用标识符。留空——使用标准值;仅在支持团队要求时更改。
AIHUMMER_CLAUDE_EFFORT Claude:思考深度 enum: low \\| medium \\| high \\| xhigh \\| max medium 立即 当代理未设置时,Claude 模型在回答前思考的深度。越高在难题上越准确,但更慢且消耗更多配额;越低越快、越省。不支持所选级别的模型会使用最接近的较低级别;Haiku 4.5 及更早的模型不支持思考。代理上设置的深度优先。从下一轮起生效。
AIHUMMER_CLAUDE_MAX_TOKENS Claude:最大回复长度(令牌) int 16000 立即 Claude 单次回复可占用的令牌数——订阅和密钥方式都适用。模型的思考也计入同一上限:数值过小会让回复中途截断或为空。如果智能体设置了自己的回复长度,则以其为准。
AIHUMMER_CLAUDE_REDIRECT_URI Claude 订阅:重定向 URI text — 立即 向供应商登记的退货地址。必须与自身配置相匹配,否则代码交换将被拒绝。
AIHUMMER_CLAUDE_TOKEN_URL Claude 订阅:访问授权地址 text — 立即 服务器获取并续期 Claude 订阅访问权限的地址。留空——使用标准地址;仅在支持团队要求时更改。
AIHUMMER_CODEX_BASE_URL Codex 库 URL text — 部分在重启后 Codex 的基础(ChatGPT 订阅)传输。在启动时/重新启动后应用。
AIHUMMER_CODEX_MAX_OUTPUT_TOKENS 最大输出令牌(0 = 无上限) int 0 立即 聊天回合的 max_output_tokens 上限。 0 = 无上限。在推理模型上,推理令牌也计入此预算,因此太小的值会产生空的“不完整:max_output_tokens”回复。即时应用(无需重新启动)。
AIHUMMER_CODEX_MODEL 模型 ID(Codex/gpt-5.5 传输) text gpt-5.5 部分在重启后 主要 Codex/ChatGPT 传输的模型 ID(例如 gpt-5.5、gpt-5.5-codex)。在启动时/重新启动后应用。
AIHUMMER_CODEX_REASONING_EFFORT 推理工作 enum: none \\| low \\| medium \\| high \\| xhigh medium 立即 当智能体未设置时,ChatGPT(Codex)模型回复前的思考深度。默认为“中”。越高越准确,但更慢更贵。
AIHUMMER_LLM_CALL_TIMEOUT_S 每次调用超时(秒) int 120 立即 每次请求等待模型回复的秒数。如果模型沉默时间更长,请求将被中断,回复转交列表中的下一个模型。对 Claude 计算的是响应流中的停顿而非整个回复:持续输出的长回复不会被截断。0 表示不限制。
AIHUMMER_LLM_FALLBACK_MODELS 备用模型(所有智能体) text auto 立即 当主模型和其他供应方都失败时(用量已达上限、故障、请求过多)由谁来回答。auto — 以每个供应方更便宜的模型作为最后一道防线(Claude:claude-haiku-4-5,Codex:gpt-…-luna/mini);逗号分隔的列表 — 自定义顺序,每个模型发往其厂商的供应方;off — 不使用备用模型。智能体自己的备用模型优先。立即生效。
AIHUMMER_LLM_GATEWAY_URL LLM 网关 URL text — 部分在重启后 代理调用的 OpenAI 兼容模型端点的基本 URL(您的本地 llama.cpp/vLLM/Ollama 服务器或托管网关)。留空以使用提供商的默认端点。
AIHUMMER_LLM_MODEL LLM 模型 text — 部分在重启后 每次发送到提供商的模型名称/ID(您的端点所服务的模型)。必须与端点实际公开的模型匹配。
AIHUMMER_LLM_PAUSE_AUTH_MIN 凭据被拒后暂停时长(分钟) int 10 立即 多少分钟内不再询问拒绝了凭据的供应方。每次重复暂停时长加倍,但不超过首次的六倍。连接测试成功或点击“立即恢复”按钮会立即让供应方恢复。从下一次失败起生效。
AIHUMMER_LLM_PAUSE_MODEL_MIN 供应方不提供的模型的暂停时长(分钟) int 60 立即 多少分钟内不再向供应方提供其声明不支持的模型;它的其他模型照常询问。从下一次失败起生效。
AIHUMMER_LLM_PAUSE_QUOTA_MIN 用量额度耗尽后暂停时长(分钟) int 300 立即 当用量额度耗尽且供应方未给出重置时间时,多少分钟内不再询问该模型(若是账户额度耗尽——Codex、OpenAI 密钥、付款——则是整个账户)。每次重复暂停时长加倍,但不超过一天。供应方给出的时间优先。从下一次失败起生效。
AIHUMMER_LLM_PAUSE_SHORT_S 故障后供应方暂停时长(秒) int 30 立即 在故障、连接中断或“请求过于频繁”之后,多少秒内不再询问该供应方。连续第二次失败暂停时长加倍,第三次及以后变为十倍。如果供应方自己给出了时间,则等待该时间。从下一次失败起生效。
AIHUMMER_LLM_PROVIDER LLM 提供商 text — 部分在重启后 要使用哪种模型后端(OpenAI 兼容端点或 Codex/ChatGPT 订阅传输)。决定如何发送和验证请求。
AIHUMMER_LLM_RETRIES LLM 发生暂时性错误时重试 int 3 立即 因暂时性错误而重试 LLM 请求的次数。
AIHUMMER_LLM_TEMPERATURE 温度 text — 立即 当智能体未设置时,模型回复的多样性(0–2):越低越精确、可预测,越高越生动。留空——由模型自行决定。推理模型(ChatGPT/Codex、第 5 代 Claude)不接受此参数——对它们请留空。
AIHUMMER_LLM_TOP_P Top-p(细胞核采样) text — 立即 当智能体未设置时,另一种让回复更多样的方式(0–1)。留空——由模型自行决定。通常只设置其一:温度或此参数;推理模型不接受它。
AIHUMMER_MODEL_GUARD_INTERVAL_MIN 智能体模型检查:间隔(分钟) int 60 立即 多久重新检查一次每个智能体的模型是否由已启用的提供方提供。智能体的模型永远不会被更改:在无人提供期间,由应答顺序中第一个未暂停的模型回复,并由一条通知列出这些智能体——模型恢复时再发一条通知。网关启动时始终执行检查,0 仅关闭重复执行。新的间隔在一分钟内生效。
AIHUMMER_OPENAI_API OpenAI API 样式(聊天 | 响应) enum: \\| chat \\| responses — 部分在重启后 chat = /chat/completions,responses = /responses。空白 = 自动/默认。在启动时/重新启动后应用。
AIHUMMER_OPENAI_API_KEY 原生 OpenAI API 密钥(部署默认值) text — 部分在重启后 用于本机 OpenAI 循环的 OpenAI 帐户密钥(如果您使用 OpenAI 作为默认提供商)。不要与模型页面上的每个工作空间 BYOK 混淆。在启动/重启后应用。
AIHUMMER_OPENAI_BASE_URL 原生 OpenAI 基础 URL text — 重启后 OpenAI 兼容的 API 的基础(例如 https://api.openai.com/v1). 在启动/重启后应用。
AIHUMMER_OPENAI_MODEL 原生 OpenAI 模型 text — 重启后 本机 OpenAI 循环的模型(当设置 AIHUMMER_OPENAI_API_KEY 时)。在启动时/重新启动后应用。
AIHUMMER_ROUTER_COMPLEX_MODEL 路由器:复杂转弯模型 text — 立即 没有自有模型的智能体处理复杂请求时使用的模型(留空 = 关闭该档)。从下一轮起生效。
AIHUMMER_ROUTER_SIMPLE_MODEL 路由器:简单转弯模型 text — 立即 没有自有模型的智能体处理简单请求时使用的模型(留空 = 关闭该档)。从下一轮起生效。
AIHUMMER_ROUTER_STANDARD_MODEL 路由器:标准转弯模型 text — 立即 没有自有模型的智能体处理普通请求时使用的模型(留空 = 关闭该档)。从下一轮起生效。
AIHUMMER_SUBSCRIPTION_QUOTA_REFRESH_MIN 订阅配额:查询周期,分钟 int 15 立即 面板向 ChatGPT(Codex)查询订阅配额窗口的频率:每个周期最多一次,不超过每 5 分钟一次,且仅在配额页面打开时查询;其间显示已保存的副本。从不向 Claude 查询:其限额为我们的估算。下次打开配额时生效。

Media

键 名称 类型 默认值 生效时间 作用
AIHUMMER_DEEPGRAM_API_KEY Deepgram API 密钥 text — 立即 Deepgram 服务的密钥——当语音消息由 Deepgram 识别时需要。留空则使用旁边设置中的通用语音识别密钥。立即生效。
AIHUMMER_DEEPGRAM_DETECT_LANGUAGE Deepgram 语言检测 bool 0 立即 自动检测语言,不再发送固定的识别语言。立即生效。
AIHUMMER_DEEPGRAM_MODEL Deepgram 模型 text nova-2 立即 Deepgram 模型(例如 nova-2、nova-3、base)。取决于项目对密钥的访问权限。立即生效。
AIHUMMER_DEEPGRAM_PUNCTUATE Deepgram 标点处理 bool 1 立即 添加标点和首字母大写。立即生效。
AIHUMMER_DEEPGRAM_SMART_FORMAT Deepgram 智能格式化 bool 1 立即 格式化识别出的数字和日期。立即生效。
AIHUMMER_DEEPGRAM_URL Deepgram 基础 URL text — 立即 Deepgram API 基础。空白 = https://api.deepgram.com.立即生效。
AIHUMMER_IMAGE_BASE_URL 图像 API base URL(OpenAI 后备) text — 立即 通过 OpenAI 密钥工作时 /images API 的基础(空白 = https://api.openai.com/v1).
AIHUMMER_IMAGE_MODEL 图像生成模型 text — 立即 image_generate 的模型(默认 gpt-image-2)。
AIHUMMER_MEDIA_MAX_UPLOAD_MB 媒体最大上传大小 (MB) int 256 立即 一次可上传的最大文件(照片、语音消息、视频),单位为 MB。防止服务器磁盘被占满。默认 256。立即生效。
AIHUMMER_SIDECAR_STT 本服务器上的语音识别(faster-whisper) bool 0 立即 本地语音识别 (faster-whisper)。不包含在包中:enable 下载已签名的附加组件(对于所有版本的 Python 约为 620 MiB)并在主机上安装该服务。 🔴 该附加组件由单独的供应商决定发布(其软件包在 GPL 下携带 ffmpeg);如果它不是为您的版本而发布的,则包括它会诚实地对待它并且不会破坏任何内容。云计划:识别由提供商配置。
AIHUMMER_SIDECAR_TTS 语音回复(edge-tts) bool 0 立即 语音合成(edge-tts,语音 Microsoft Edge)。不包含在包中:启用下载已签名的附加组件(~26 MiB)并在主机上安装该服务。综合本身会在线投票 - 这里的“离线”指的是安装包,而不是工作。
AIHUMMER_STT_API_KEY STT API 密钥(可选) text — 立即 语音识别服务的访问密钥(如果需要)。本服务器上的服务由安装程序设置——无需更改。立即生效。
AIHUMMER_STT_ENGINE STT 引擎 enum: auto \\| faster-whisper \\| deepgram \\| codex \\| off auto 立即 用什么转写语音消息。自动(默认):如果设置了 Deepgram 密钥就用 Deepgram,否则如果已安装本地服务就用本地服务(上方的开关),否则不转写——机器人会如实告诉发送者它暂时还听不了。faster-whisper:本地服务或兼容的外部 /v1/audio/transcriptions。deepgram:使用您自己密钥的云端 Deepgram。codex:已连接的 ChatGPT 订阅(模型 → 连接 ChatGPT),会消耗其额度。off:不转写。立即生效。
AIHUMMER_STT_LANGUAGE STT 语言 text — 立即 识别语言(BCP-47,例如 ru/en)。由 deepgram 引擎(nova-2 模型)使用。空白=自动检测/引擎默认。立即生效。
AIHUMMER_STT_MODEL STT 模型 text Systran/faster-whisper-small 立即 faster-whisper 模型(例如小/中/大-v3 或 Systran/faster-whisper-⟨size⟩)。立即生效。
AIHUMMER_TTS_API_KEY TTS API 密钥(edge-tts) text — 部分在重启后 语音服务的访问密钥。安装时自动设置——无需更改。
AIHUMMER_TTS_ENABLED 启用文本转语音 bool 1 部分在重启后 允许智能体用语音回复。为此需要语音服务——请在上方“附加服务”部分安装。
AIHUMMER_TTS_MODEL TTS 模型 text — 部分在重启后 edge-tts 服务的模型名称。在启动/重启后应用。
AIHUMMER_TTS_VOICE TTS 语音 enum: de-DE-FlorianMultilingualNeural \\| de-DE-SeraphinaMultilingualNeural \\| en-US-AndrewMultilingualNeural \\| en-US-AvaMultilingualNeural \\| en-US-BrianMultilingualNeural \\| en-US-EmmaMultilingualNeural \\| fr-FR-RemyMultilingualNeural \\| fr-FR-VivienneMultilingualNeural \\| ru-RU-SvetlanaNeural \\| ru-RU-DmitryNeural \\| en-US-JennyNeural \\| en-US-GuyNeural \\| en-GB-SoniaNeural \\| de-DE-KatjaNeural \\| fr-FR-DeniseNeural \\| es-ES-ElviraNeural \\| tr-TR-EmelNeural \\| pl-PL-ZofiaNeural \\| zh-CN-XiaoxiaoNeural de-DE-FlorianMultilingualNeural 部分在重启后 默认edge-tts语音(多语言,包括俄语)。在启动时/重新启动后应用。
AIHUMMER_VIDEO_API_KEY 视频分析 API 密钥 text — 立即 视频分析服务的访问密钥(如果需要)。留空——不使用密钥访问该服务。

Media · Voice

键 名称 类型 默认值 生效时间 作用
AIHUMMER_TTS_AUTO_REPLY 自动语音回复 enum: off \\| always \\| inbound \\| tagged inbound 立即 关闭、始终开启、收到音频时开启或明确标记时开启。可为单个对话覆盖设置。
AIHUMMER_TTS_MAX_CHARS 朗读字符数上限 int 0 立即 0 表示全文;100–10000 表示朗读字符数上限。完整回复仍保留在历史记录中。
AIHUMMER_TTS_SUMMARIZE 摘要长语音回复 bool 1 立即 为长回复生成朗读摘要。摘要失败时,在长度限制内朗读开头部分。
AIHUMMER_VOICE_AEC 回声消除 (AEC) bool 1 立即 消除回声:智能体从扬声器发出的声音不会回到麦克风,也不会打断对话。仅当耳机中的声音失真时才关闭。
AIHUMMER_VOICE_AGC 自动增益控制 bool 1 立即 在语音模式下要求麦克风启用自动增益控制(WebRTC autoGainControl)。
AIHUMMER_VOICE_BARGEIN_FRAMES 打断智能体:需要说多久 int 5 立即 需要连续说话多久(以 20 毫秒为一帧)智能体才会停下来倾听。默认 5——约 0.1 秒。
AIHUMMER_VOICE_DUPLEX 实时全双工语音 bool 0 立即 启用实时全双工模式(流媒体 + VAD + 插入)。立即生效。
AIHUMMER_VOICE_NOISE_SUPPRESSION 噪声抑制 bool 1 立即 在语音模式下要求麦克风采集启用噪声抑制(WebRTC noiseSuppression)。
AIHUMMER_VOICE_VAD_THRESHOLD 语音灵敏度(0–1) text 0.02 立即 声音达到多大音量才算作语音。越低越灵敏:智能体能听到轻声说话,但也会听到背景噪音。默认 0.02。

Memory

键 名称 类型 默认值 生效时间 作用
AIHUMMER_EMBEDDER_DIM 语义搜索模型维度 int 768 重启后 向量维度 — 必须与模型匹配(multilingual-e5-base=768、bge-m3=1024)。
AIHUMMER_EMBEDDER_KEEPALIVE 嵌入器保持活动状态 text 5m 重启后 语义搜索模型在最后一次请求后保持加载的时间(仅在“按含义”模式下)。默认 5m——5 分钟:之后模型会被卸载,释放内存和 CPU。不建议永久保持(-1):卡住的模型可能连续数天占用一个 CPU 核心。格式:30s、5m、1h。
AIHUMMER_EMBEDDER_MODEL 语义搜索模型 text yxchia/multilingual-e5-base 重启后 用于按含义搜索记忆的模型。默认的 multilingual-e5-base 支持俄语,轻量,在普通 CPU 上运行很快。若要在显卡上获得更好质量可用 bge-m3,但需将旁边的维度设置改为 1024:数值必须与模型一致。
AIHUMMER_EMBEDDER_PASSAGE_PREFIX 嵌入通道前缀 text — 重启后 覆盖存储文档前缀(e5 型号自动使用“passage:”)。留空可按型号名称自动检测。
AIHUMMER_EMBEDDER_QUERY_PREFIX 嵌入器查询前缀 text — 重启后 覆盖检索查询前缀(e5 型号自动使用“query:”)。留空以按模型名称自动检测。
AIHUMMER_EMBEDDER_THREADS 嵌入模型的处理器线程 int 0…256 0 重启后 语义搜索模型每个请求使用多少个处理器线程。0 — 自动:服务器线程数的一半,但不少于 2。不加限制时,在性能较弱的服务器上重新计算知识库向量会连续数小时占满整个处理器,拖慢智能体的回复。更多 — 重新计算更快,但负载更重。
AIHUMMER_MEMORY_AGENT_WRITES 代理自行保存的事实 enum: strangers \\| immediate \\| review strangers 立即 智能体自行记住的内容如何处理——例如收到“记住这个”的请求时。“直接存入记忆;陌生人的待审核”(默认)——若由所有者或智能体的可信圈子告知,则直接存入记忆;其他人告知的——待审核。“直接存入记忆”——智能体立即就能搜到。“待审核”——先进入“记忆 → 待审核”队列,经您批准后才会用于回复。可在智能体卡片(记忆 → 设置)中单独设置。
AIHUMMER_MEMORY_AUTOREPAIR 自动修复记忆 bool 1 立即 自检后修复记忆:合并重复项,关闭有明确胜出方的矛盾(有人确认、事件日期更晚、来源更可靠),按来源重新核对标记为已确认但无人确认过的事实(未能确认的转入审核,不删除任何内容)。有争议的只进入队列。每项修复都记入日志并带有撤销按钮;如果修复后记忆查找变差,本轮会自动回滚并通知您。立即生效,无需重启。
AIHUMMER_MEMORY_CAPTURE 内存捕获模式 enum: auto \\| review \\| off review 立即 每次回复后,智能体在对话中自行发现的事实如何处理。“待审核”——放入“记忆 → 待审核”队列:经您批准后才会用于回复。“直接存入记忆”——不经审核:更快,但杂讯更多。“不保存”——不从对话中提取事实。智能体按要求记住的内容另行设置。
AIHUMMER_MEMORY_CONTEXT_TIMEOUT 内存水合超时 text 3s 立即 智能体在开始回复前等待相关记忆检索的时长。如果检索太慢,智能体会直接在没有记忆的情况下回复,而不会卡住。例如:2s——2 秒,1500ms——1.5 秒。0——需要多久就等多久。
AIHUMMER_MEMORY_DIARY_BOOT 会话开始时的智能体日记 bool 1 立即 在任何渠道的会话中,每一轮都把智能体今天和昨天的日记放在它眼前:以往会话的笔记、夜间总结和智能体自己的记录。只显示关于当前对话对象的记录和共享记录(您的、上传的)——一个客户永远看不到另一个客户的记录。最多约 6000 个字符;其余部分由智能体自行读取(memory_get)。立即生效,无需重启。
AIHUMMER_MEMORY_DIARY_HOUR 夜间总结时刻 int 3 立即 在几点之后(0–23,按实例时区)写入前一天的总结。默认 3——夜里,当天的对话已经结束。立即生效,无需重启。
AIHUMMER_MEMORY_DIARY_NIGHTLY 写入智能体日记的夜间当日总结 bool 1 立即 每天一次,把前一天的总结写入智能体的日记——按每个对话对象分别写(该对象的所有渠道合在一起):提出了什么、完成了什么、约定、带日期的待办。每个智能体和对话对象调用一次服务任务模型,每 10 分钟一次运行最多 3 次;错过的日子最多补写一周。带有“不要记住”的对话不纳入。关闭记忆采集时不写入。最近一次运行的结果显示在智能体卡片 → 记忆 → 日记中。立即生效,无需重启。
AIHUMMER_MEMORY_DREAM_INTERVAL Dream pass间隔 string 1h 立即 自我维护的梦想通行证扫描所有范围内矛盾的审查声明的频率(Go 持续时间,例如 30m/1h/6h)。设置 0 禁用。立即生效,无需重启。
AIHUMMER_MEMORY_EXTRACT LLM事实提取 bool 1 立即 通过 LLM (默认开启)提取规范化的主语/谓语/宾语事实,而不是存储原始句子片段 - 这是图/矛盾/梦机制启动所需的。每条捕获的消息添加一个 LLM 调用;开始保存通话。立即生效,无需重启。
AIHUMMER_MEMORY_MEANING_TIMEOUT 语义搜索时限 text 4s 立即 在记忆和知识库中搜索时等待语义搜索的时长。如果语义模型正忙(例如导入后正在计算向量)且未及时响应,代理会立即收到按词语找到的结果并附带说明,而不是等待数十秒。例如:4s — 4 秒,1500ms — 1.5 秒。0 — 需要多久就等多久。立即生效,无需重启。
AIHUMMER_MEMORY_QUALITY_CHECK 每日记忆自检 bool 1 立即 记忆每天一次就其已确认的事实向自己提出检查问题(最多 60 条事实,每天相同的问题)以及没有答案的问题,将它们交给记忆搜索和自动召回,并测量召回率、精确率、MRR 和误召回。结果和每日图表:记忆 → 记忆质量。新事实的问题由服务模型编写一次(即从对话中提取事实的模型;没有它时使用模板);结果保留在实例上。立即生效,无需重启。
AIHUMMER_MEMORY_RECALL 自动调取记忆 enum: strong \\| always \\| off strong 立即 是否自动将记忆中找到的内容加入回复。“仅强匹配”——事实至少要与消息共享两个重要词语;问候和“好的”不会调出记忆。“所有相似内容”——凡有些匹配的内容及关联记录都会加入:杂讯更多。“不添加”——智能体在认为需要时自行搜索记忆。
AIHUMMER_MEMORY_RECALL_MAX 每次回复调取的事实数 int 5 立即 一次回复最多加入的记忆事实数(默认 5)。同一事实的不同表述算作一条。立即生效,无需重启。
AIHUMMER_MEMORY_RECALL_MIN_SCORE 自动调取的最低匹配度(%) int 10 立即 事实需要覆盖消息中有意义词语(按稀有度加权)的多大比例才会被自动加入,单位为百分比。默认 10——基于真实对话调校。越高 = 越少但越准确,越低 = 越频繁但噪声越多。不影响显式的 memory_search 搜索。0 = 不设门槛:两个匹配的有意义词即可。立即生效,无需重启。
AIHUMMER_MEMORY_RECALL_MIN_SIMILARITY 自动调取的最低语义相似度,% int 86 立即 仅用于按语义检索记忆(嵌入模型):事实与消息在语义上需要多接近才会被自动加入,以相似度百分比表示。默认 86——基于真实记忆为 multilingual-e5-base 模型调校:低于该值时,几乎每条消息都会被加入无关事实。其他模型(例如 bge-m3)计算相似度的方式不同——请在智能体卡片中用“询问记忆”选择数值。0 = 不设门槛。不影响显式的 memory_search 搜索。立即生效,无需重启。
AIHUMMER_MEMORY_RETRIEVAL 内存检索模式 enum: fulltext \\| embedding fulltext 重启后 智能体如何在记忆中查找。“按词语”——普通文本搜索:立即可用,不给服务器增加负担。“按含义”——即使措辞不同也能找到含义相近的内容,但需要语义搜索模型(“附加服务”部分),并会明显占用 CPU。
AIHUMMER_QDRANT_API_KEY Qdrant API 键 text — 重启后 Qdrant 的 API 密钥(当向量存储要求授权时)。仅在已设置 Qdrant 地址时才需要。在启动时/重新启动后应用。
AIHUMMER_QDRANT_URL Qdrant URL(持久向量存储) text — 重启后 用于语义搜索的 Qdrant 存储地址。留空——搜索数据保存在内存中,服务器重启后丢失;如需长期使用请设置地址。
AIHUMMER_RAG_QUERY_EXPANSION 用模型改写知识库查询 bool 0 立即 在搜索知识库之前,让服务任务模型给出查询的 3 种改写并全部用于搜索。有时能找到更多,但每次搜索都会额外调用一次模型(消耗配额并增加延迟);如果模型调用失败,只按原始措辞搜索,失败会显示在日志和搜索结果中。默认关闭:全文搜索本来就能找到这些词。立即生效,无需重启。
AIHUMMER_RERANKER_URL RAG 重新排序边车 URL text — 重启后 HTTP URL 的交叉编码器 sidecar,用于重新排名混合搜索。空白=重新排名。在启动时/重新启动后应用。

Moderation

键 名称 类型 默认值 生效时间 作用
AIHUMMER_MODERATION 输入审核 bool 1 立即 “off”关闭内置的越狱/提示注入防护。任何其他值 = 启用。立即生效,无需重启。
AIHUMMER_MODERATION_REFUSAL 审核拒绝消息 text — 立即 审核器拦截请求时返回的拒绝文本(留空 = 内置)。立即生效,无需重启。

Network

键 名称 类型 默认值 生效时间 作用
AIHUMMER_OUTBOUND_PROXY_CUSTOM_URL 出站代理:自定义地址 text — 立即 HTTPS 代理 URL;HTTP 仅允许用于 loopback,不可包含路径、查询或片段。请先保存地址,再选择 custom。地址在 API 中隐藏,存储于应用设置中。
AIHUMMER_OUTBOUND_PROXY_MODE 境外模型提供商的出站代理 enum: auto \\| off \\| custom auto 立即 服务器如何访问境外模型供应商。“按供应商设置”——按供应商账户中的配置;“直连,不用代理”——不经过中间方;“通过自己的代理”——经由您在下方保存的地址。能否使用取决于各供应商的规则。
AIHUMMER_RUSSIAN_TRUSTED_EXTRA_HOSTS 俄罗斯数字发展部根证书适用的 .ru 以外主机 list — 重启后 主机列表,以逗号分隔,允许通过俄罗斯域上的 俄罗斯数字发展部 根进行检查(.ru/.su/.рф - 已包含)。如果具有 俄罗斯数字发展部 证书的节点位于不同的域中,则需要。按名称或子域边界匹配:example.com 涵盖 api.example.com。空=仅限俄罗斯域名。在启动时/重新启动后应用。

Performance

键 名称 类型 默认值 生效时间 作用
AIHUMMER_CHANNEL_TURN_QUEUE_WAIT_SEC 队列等待:频道消息(秒) int 10…1200 600 立即 当所有轮次位置都被占用时,频道消息(Telegram 等)等待空闲位置的时长。若未能及时获得位置,会告知用户服务器繁忙,可以再次发送。等待时间计入轮次 30 分钟的上限。10–1200。立即生效。
AIHUMMER_MAX_ACTIVE_TURNS 同时运行的代理轮次(整个服务器) int 1…512 32 立即 服务器同时运行多少个代理轮次(频道和网页聊天中的回复、计划任务)。其余的在队列中等待,时长以下方“队列等待”设置为准,用户会看到“服务器繁忙,排队中”。数值越高等待越少,但会占用更多内存、数据库连接和对模型的并发请求。该数值的一半限制模型的并发辅助调用(记忆提取、摘要)。1–512。立即生效。
AIHUMMER_SYNC_INBOUND_QUEUE_WAIT_SEC 队列等待:同步集成调用(秒) int 1…120 10 立即 当所有轮次位置都被占用时,在同一请求中等待回复的集成调用等待空闲位置的时长。若未获得位置,集成会收到“服务器繁忙”,并建议在相同秒数后重试;使用相同消息编号的重试不会重复保存该消息。1–120。立即生效。
AIHUMMER_WEB_TURN_QUEUE_WAIT_SEC 队列等待:网页聊天消息(秒) int 10…1200 180 立即 当所有轮次位置都被占用时,网页聊天消息等待空闲位置的时长。在此期间聊天中显示“服务器繁忙,排队中”;若未能及时获得位置,回复会被拒绝并附带“重试”按钮,该按钮在刷新页面后仍保留在历史记录中。10–1200。立即生效。

Public access

键 名称 类型 默认值 生效时间 作用
AIHUMMER_PUBLIC_URL 服务器公网地址 text — 部分在重启后 面板和应用从互联网访问的地址,例如 https://ai.example.com。请通过您的代理(nginx、Caddy)转发到服务器端口——默认 8780。
AIHUMMER_WIDGET_ALLOWED_ORIGINS 网页挂件:允许的网站来源 list — 立即 允许嵌入网页聊天挂件的浏览器来源列表,以逗号分隔,例如 https://example.com,https://www.example.com。协议和端口必须完全匹配。留空 = 任何外部网站都不能使用该挂件。系统会有意忽略 * 条目,否则互联网上的任意页面都能消耗此实例的预算。
POCKET_AGENT_GATEWAY_BASE_URL Pocket-agent 网关公共URL text — 立即 代理 → pocket-agent 网关端口(POCKET_AGENT_PORT,默认 8080)。远程代理通过一次性票证拨打此端口。
TELEGRAM_PUBLIC_URL Telegram webhook 公共 URL text — 立即 仅用于 Webhook 模式——通过代理转发到 Telegram 连接器端口(默认 8091)。留空则使用轮询模式(无需公网地址)。

SSO (LDAP/AD)

键 名称 类型 默认值 生效时间 作用
AIHUMMER_LDAP_BASE_DN 用户搜索基础 DN text — 重启后 搜索根目录,例如OU=Users,DC=corp,DC=example。
AIHUMMER_LDAP_BIND_DN 服务绑定 DN text — 重启后 用于初始搜索绑定的帐户,例如CN=svc-aihummer,OU=服务,DC=corp,DC=示例。空白 = 匿名搜索。
AIHUMMER_LDAP_DEFAULT_ROLE LDAP:默认角色(无组匹配) text — 重启后 没有组与映射匹配时授予的角色。空白 = 无角色。
AIHUMMER_LDAP_ENABLED 启用 LDAP/AD 登录 bool 0 重启后 启用后,管理员登录将回退到目录。绑定密码位于 Secrets 中(范围 ldap,名称 bind_password)。
AIHUMMER_LDAP_GROUP_ATTR 组属性(默认 memberOf) text — 重启后 列出组 DN 的用户条目属性。空白禁用组→角色映射。
AIHUMMER_LDAP_ROLE_MAPPINGS LDAP:组→角色映射 (JSON) text — 重启后 JSON组DN(或裸CN)对象→角色,例如{“CN=Admins,OU=Groups,DC=corp,DC=example”:“admin”,“Operators”:“operator”}。
AIHUMMER_LDAP_SKIP_TLS_VERIFY 跳过 TLS 验证(仅限实验室,1/0) bool 0 重启后 禁用目录证书验证。切勿在生产中启用。
AIHUMMER_LDAP_URL 目录URL text — 重启后 例如ldaps://ad.corp.example:636 (TLS) 或 ldap://dc1.corp.example:389。
AIHUMMER_LDAP_USER_ATTR 登录属性(默认 sAMAccountName) text — 重启后 LDAP/Active Directory 属性与用户输入的登录名相匹配(默认 sAMAccountName;OpenLDAP 的 uid,UPN 式登录的 userPrincipalName)。
AIHUMMER_LDAP_USER_FILTER 用户搜索过滤器 text — 重启后 登录时必须包含 %s。 AD: (sAMAccountName=%s); OpenLDAP:(uid=%s)。

SSO (OIDC)

键 名称 类型 默认值 生效时间 作用
AIHUMMER_OIDC_AUDIENCE OIDC 受众 text — 重启后 预期 aud 声明 — 将其设置为 THIS 资源的受众,以拒绝为其他依赖方铸造的代币。默认情况下,每个令牌上的 aud 声明现在为 REQUIRED (没有 aud 的令牌将被拒绝);设置后,aud 也必须包含它。强烈建议在生产中使用。
AIHUMMER_OIDC_ISSUER OIDC 发行人 URL text — 重启后 IdP 颁发者(例如 https://login.example.com). 在设置时启用 OIDC JWT 身份验证。
AIHUMMER_OIDC_JWKS_URL OIDC JWKS 地址 text — 重启后 JSON 用于验证令牌签名的 Web 密钥集端点。
AIHUMMER_OIDC_TENANT_CLAIM OIDC 工作区声明 text — 重启后 JWT 声明携带工作区 ID(例如,tenant_id / org)。

SSO (SAML)

键 名称 类型 默认值 生效时间 作用
AIHUMMER_SAML_DEFAULT_ROLE SAML:默认角色(无组)匹配) text — 重启后 没有断言值映射时授予的角色。空白 = 无角色。
AIHUMMER_SAML_ENABLED 启用SAML 2.0 SSO bool 0 重启后 公开 /saml/metadata、/saml/acs、/saml/login。 SP 私钥位于 Secrets 中(范围 saml,名称 sp_key)。
AIHUMMER_SAML_ENTITY_ID SP 实体 ID text — 重启后 SP 实体 ID(如果为空,则默认为 ⟨root⟩/saml/metadata)。
AIHUMMER_SAML_IDP_METADATA IdP 元数据 XML text — 重启后 粘贴 IdP 的 SAML 元数据文档 (Okta/Azure AD/ADFS)。
AIHUMMER_SAML_ROLE_ATTRIBUTE 角色/组属性(默认组) text — 重启后 携带组/角色值的断言属性。
AIHUMMER_SAML_ROLE_MAPPINGS SAML:组→角色映射 (JSON) text — 重启后 JSON 断言值对象 → 角色,例如{“AdminGroup”:“admin”,“Ops”:“operator”}。
AIHUMMER_SAML_ROOT_URL SP 根 URL text — 重启后 此网关的外部可访问基点 URL,例如https://app.example.com. ACS = ⟨root⟩/saml/acs。
AIHUMMER_SAML_SP_CERT SP 证书 (PEM) text — 重启后 公共 SP 签名证书 (PEM)。匹配的私钥位于 Secrets 中(范围 saml,名称 sp_key)。

Schedules

键 名称 类型 默认值 生效时间 作用
AIHUMMER_SCHEDULE_AGENT_MAX_ACTIVE 代理:活动计划任务上限 int 20 立即 代理自行(用其计划任务工具)创建或启用计划任务时,最多可拥有的活动计划任务数。在面板中创建的计划任务也计入其中,但面板操作永远不会被拒绝。达到上限时,代理会被告知先暂停或删除一个。立即生效。
AIHUMMER_SCHEDULE_AGENT_MAX_FIRES_PER_DAY 代理:每日计划任务运行次数 int 288 立即 一个代理的所有计划任务合计每天(UTC)最多可运行的次数,包括在面板中创建的计划任务和手动运行。超出上限的运行会被跳过,并显示在运行日志中。立即生效。
AIHUMMER_SCHEDULE_AGENT_MIN_INTERVAL_MINUTES 代理:计划任务最小间隔(分钟) int 5 立即 代理自行创建或修改的重复计划任务两次运行之间的最短间隔。更频繁的计划任务会被拒绝。在面板中创建的计划任务不受此限制。立即生效。
AIHUMMER_SCHEDULE_COMMANDS 计划任务中的服务器命令 bool 0 立即 允许计划任务在此服务器上运行程序——收集器、报告、备份检查。默认关闭。只运行「允许的命令」中的命令,且与记录完全一致;没有 shell。输出发送给代理或直接发到聊天,每次运行都会记录在计划任务的运行日志中。立即生效。
AIHUMMER_SCHEDULE_COMMANDS_ALLOWLIST 允许的命令 argvlist — 立即 计划任务可以运行的确切命令:程序(如 df 这样的名称或完整路径)及其参数。计划任务只运行与某条记录(包括参数)完全一致的命令。删除某条命令会使使用它的计划任务停止,其运行记录会说明原因。立即生效。
AIHUMMER_SCHEDULE_COMMANDS_MAX_OUTPUT_KB 计划任务命令的输出上限(KB) int 1…1024 64 立即 命令输出中保存在运行日志并转交给代理或聊天的部分(1–1024 KB);其余部分被截断,运行日志会注明。立即生效。
AIHUMMER_SCHEDULE_COMMANDS_SANDBOX 在操作系统沙箱中运行计划任务命令 bool 1 立即 开启:命令像代码执行一样在操作系统沙箱中运行——安装的机密和 SSH 密钥被隐藏,只能写入自己的临时文件夹。服务器上没有沙箱(bubblewrap)时命令不会运行,运行日志会说明原因。关闭:以网关的权限运行。立即生效。
AIHUMMER_SCHEDULE_FAILURE_ADMIN 将失败的任务报告给管理员 bool 1 立即 当定时任务失败或无法启动时,面板的通知铃中会出现一条通知,包含任务名称、原因以及在哪里修复,同样的内容也会发送到所有者自己的频道聊天中(每个任务每 6 小时最多一次)。这是在发给任务接收人的消息之外的。关闭时:管理员只能从运行日志中得知失败。立即生效。
AIHUMMER_SCHEDULE_FAILURE_NOTIFY 任务失败时通知接收人 bool 1 立即 计划任务失败时,向同一接收人发送一条简短消息(首次失败后发送,每 6 小时最多一次)。关闭时,失败只记录在运行日志中。单个任务可在其表单中为自己关闭此项。立即生效。

Security

键 名称 类型 默认值 生效时间 作用
AIHUMMER_AIRGAPPED 隔离模式(无互联网) bool 0 立即 禁止智能体访问互联网:网页搜索、打开页面和请求只能到达内部地址及白名单中的地址。适用于无法对外访问的封闭网络。
AIHUMMER_AUDIT_RETENTION_DAYS 操作日志保留天数 int 0 重启后 审核日志和设置更改历史中超过此期限的记录每天删除一次。0 或留空——永久保留。
AIHUMMER_CORS_ORIGINS 允许的 CORS 来源 list — 重启后 以逗号分隔的允许来源列表。不允许空白 = CORS(仅限同源)。在启动时/重新启动后应用。
AIHUMMER_CSP Content-Security-Policy 标头(覆盖) text — 重启后 覆盖 CSP 标头。空白 = 安全默认值。在启动时/重新启动后应用。
AIHUMMER_INBOUND_SECRET 渠道插件与服务器的通信密钥 text — 重启后 已连接的渠道(Telegram、VK 等)用它证明消息确实来自它们。安装时自动设置——无需更改。如果为空,在设置密钥之前服务器会拒绝所有渠道。
AIHUMMER_OPENAI_COMPAT_KEY OpenAI 兼容入站:静态 API 密钥 text — 重启后 供以 OpenAI 兼容服务方式连接服务器的程序使用的共享密钥。留空——共享密钥关闭;程序可使用“API 密钥”页面中的个人密钥连接。
AIHUMMER_OPENAI_COMPAT_WORKSPACE OpenAI 兼容入站:工作区 ID text — 重启后 静态 OpenAI 兼容身份验证映射到的工作区 ID。空白 = AIHUMMER_DEFAULT_WORKSPACE_ID。在启动时/重新启动后应用。
AIHUMMER_REQUIRE_2FA 需要 2FA运算符 bool 0 立即 操作员需要第二个因素 (TOTP/passkey)。启用后,没有 2FA 的操作员会在登录时收到立即设置的提示(不会阻塞,因此所有者永远不会被锁定)。立即申请。
AIHUMMER_REQUIRE_SECURE 仅接受安全 (HTTPS/WSS) 连接 bool 0 重启后 启用后,普通 HTTP 请求将重定向到 HTTPS (对于 GET/HEAD)或被拒绝 (403);始终允许本地主机访问,因此操作员永远不会被排除在外。尊重来自 TLS 终止反向代理的 X-Forwarded-Proto。在启动时/重新启动后应用。
AIHUMMER_TRUSTED_PROXIES 受信任的代理 list — 立即 如果服务器前面有代理(nginx、Caddy、负载均衡器),请用逗号分隔填写其地址或网段,例如 10.0.0.0/8。这样操作日志、IP 白名单和防密码猜测功能就能看到访问者的真实地址。留空——只计算直接连接的地址,且无法伪造。

Tools

键 名称 类型 默认值 生效时间 作用
AIHUMMER_BROWSER_ALLOWED_HOSTNAMES 浏览器:私有主机名例外 list — 立即 用逗号分隔的精确主机名,不含通配符、URL或端口。这是自托管原生CDP的附加私网例外,与web_fetch独立。
AIHUMMER_BROWSER_ALLOW_PRIVATE_NETWORK 浏览器:允许私有网络 bool — 立即 留空保留原策略;明确设置true或false可启用受检查的原生CDP。私网访问仅适用于自托管服务器。回环、本地链路和元数据地址仍被阻止。
AIHUMMER_BROWSER_PROFILE_SOCKET 浏览器配置文件控制套接字 text — 立即 可选。留空即可:网关会在标准安装位置自动找到浏览器服务的 managed-profiles.sock 控制套接字。已登录网站的配置文件在「连接」→「浏览器配置文件」中创建。这不是 URL,也不是源配置文件路径。
AIHUMMER_CODE_EXEC 智能体执行代码 enum: off \\| host \\| sandbox off 立即 代理的代码执行工具(code_exec)。默认为“关闭”。“在本服务器上”:命令在网关所在的服务器上运行;操作系统沙箱(bubblewrap)会隐藏安装的机密,但处于“无限制”模式的代理可以看到 SSH 密钥,并能在其文件夹之外写入——仅适用于受信任的服务器。“仅在沙箱中”:始终在操作系统沙箱中运行——机密和密钥被隐藏,只能写入代理的文件夹;没有 bubblewrap(或容器镜像)时无法保存此模式。每个代理可以运行什么,在代理处设置:代理 → 配置 → 工具。
AIHUMMER_CODE_EXEC_INTERPRETERS 代码执行解释器 (JSON) text — 立即 JSON 对象 {language: path_to_binary},例如{“python”:“/usr/bin/python3”}。空白 = 自动检测。
AIHUMMER_CODE_EXEC_NET_PORTS 向智能体代码开放的网络端口 list 53,80,443 立即 操作系统沙箱中的智能体代码(代码执行和计划命令)可以连接的 TCP 端口,用逗号分隔。默认为 53、80 和 443:DNS 和网站。此服务器及其本地网络中的其他服务(数据库、管理面板、浏览器、adb、本地模型、Home Assistant)对智能体代码保持关闭。列表中的端口在任何地址上都开放,包括此服务器本身,因此只添加代码需要的端口,例如 SSH 的 22。填写 any 可取消限制。“无限制”模式的智能体不受限制。需要 Linux 6.7 或更高版本;否则限制不生效,「智能体 → 工具」中会说明。立即生效。
AIHUMMER_CODE_EXEC_READ_DIRS 向智能体代码开放只读的文件夹 list — 立即 此服务器上智能体代码可以读取的文件夹:在操作系统沙箱中执行代码和计划命令。用逗号分隔或每行一个,例如 ~/reports。也可以指定单个文件,例如 ~/scripts/report.py。在这里开放的内容对所有智能体的代码都可见,因此只开放代码需要的内容。默认为空:在沙箱中,代码只能看到其智能体自己的文件夹和系统文件夹;网关用户的主目录、安装数据、其他智能体的文件夹、密钥和命令历史均保持隐藏。无法开放根目录、整个主目录、安装数据以及存放密钥的位置。代码无法写入这些文件夹。立即生效。
AIHUMMER_CODE_EXEC_SANDBOX_IMAGE 代码执行沙盒映像 text — 立即 可选,仅用于“仅在沙箱中”:用 Docker 容器镜像代替操作系统沙箱(无网络、只读根目录、资源限制);服务器上需要 Docker。留空 = 操作系统沙箱(bubblewrap)。
AIHUMMER_CODE_EXEC_TIMEOUT_SECONDS 代码执行时间上限(秒) int 1800 立即 代理的单条命令(包括后台命令)最长可运行多久:10 秒到 24 小时。30 秒内未返回的命令不会被中断,而是转入后台,代理用 process 工具查看。代理可以要求更短的时限,不能更长。
AIHUMMER_DB_QUERY_DSN “数据库查询”工具使用的数据库连接 text — 立即 智能体可读取的数据库的连接字符串(只读),例如 postgres://reader:password@host/db。请使用权限最小的用户,而不是数据库所有者。留空——该工具关闭。
AIHUMMER_FS_ROOT 文件系统工具根目录 text — 立即 代理读取服务器文件的目录范围(filesystem_read;代理不能写文件)。留空 = 以网关用户权限访问整个服务器,但其机密除外:安装设置(gateway.env)、SSH/GPG 密钥和进程环境。填写目录可缩小访问范围。
AIHUMMER_HTTP_ALLOWLIST 智能体 HTTP 请求可访问的地址 list — 立即 http_request 工具可以访问的主机列表,以逗号分隔。留空 = 除内部和专用地址外全部允许。
AIHUMMER_HTTP_AUTH_JSON http_请求身份验证(JSON) text — 立即 为 http_request 工具将主机映射到授权标头的 JSON 映射,从而不必把令牌保存在提示词中。留空 = 不做授权。
AIHUMMER_MCP_SERVERS MCP 服务器 (JSON) text — 立即 其工具挂接到智能体的外部 MCP 服务器的 JSON 描述。留空 = 没有外部 MCP。
AIHUMMER_PROJECT_STUDIOS_PUBLIC_NETWORK 项目工作室:公共网络 bool false 立即 允许所选服务商及明确请求的模型下载访问公共 HTTP(S)。私有地址、本机地址和元数据地址仍被阻止。离线模式优先。立即生效。
AIHUMMER_SIDECAR_CLOAKBROWSER 智能体浏览器(CloakBrowser) bool 0 立即 反检测浏览器(CloakBrowser、browser/computer 工具)。交付包中不包含的内容:包含内容下载已签名的附加组件(约 477 MiB,其中 Chromium 约 207 MiB)并在主机上安装服务。最重的 sidecar - 仅在代理需要打开网站时启用。
AIHUMMER_SIDECAR_SEARXNG 网页搜索(SearXNG) bool 0 立即 网络搜索(SearXNG、web_search 工具)。不包含在软件包中:打开会下载签名的附加组件(~154 MiB)并在主机上安装服务,关闭会停止它并释放空间。安装在后台进行,需要几分钟;这里的状态显示了服务器上的实际情况。
AIHUMMER_WEBFETCH_ALLOWLIST 智能体可打开的网站 list — 立即 web_fetch 工具可以访问的域名列表,以逗号分隔。留空 = 除内部和专用地址外全部允许。
AIHUMMER_WEB_SEARCH_LANGUAGE 网页搜索:默认结果语言 text auto 立即 代理未指定语言时结果使用的语言:ru、en、de 等代码,或 auto(根据查询本身识别,几乎总是合适)。代理仍可为某次搜索选择其他语言。
AIHUMMER_WEB_SEARCH_RESULTS 网页搜索:每次搜索的结果数 int 5 立即 代理未要求数量时每次搜索返回的结果数:1 到 10。结果越多回答越完整,但上下文越长。
AIHUMMER_WEB_SEARCH_SOURCE 网页搜索来源 enum: auto \\| searxng \\| provider auto 立即 代理在互联网上从哪里搜索(web_search 工具)。auto — 已安装 SearXNG 时用它,否则用模型提供方的内置搜索。searxng — 仅 SearXNG:没有它就无法搜索。provider — 在有内置搜索的地方使用提供方的内置搜索,其他模型用 SearXNG。Codex(ChatGPT 订阅)和 OpenAI(api.openai.com)有内置搜索;GigaChat、YandexGPT 和其他 OpenAI 兼容模型没有 — 没有 SearXNG 时,这些模型上的代理不会搜索。Claude(api.anthropic.com 和 Claude 订阅)使用 Anthropic 的内置搜索;如果账号拒绝,网关会把这一点写入日志,此后只为代理提供 SearXNG。哪些代理可以搜索,仍在代理卡片中设置。从下一轮起生效。
AIHUMMER_WEB_SEARCH_TIMEOUT_SECONDS 网页搜索超时(秒) int 30 立即 每次搜索1–600秒;任务的更短期限仍然有效。

Updates

键 名称 类型 默认值 生效时间 作用
AIHUMMER_RESTART_APPLY 应用需要重启的设置 enum: quiet \\| manual quiet 立即 quiet(默认)— 仅在网关重新启动后才生效的已保存设置会自动应用:当代理空闲且人们静默至少一个静默窗口时,网关会在最近的空闲时刻重启。manual — 仅显示“等待重启”标记和按钮。重启只需几秒;对话和任务不会丢失。立即生效。
AIHUMMER_RESTART_QUIET_MINUTES 空闲时刻:自动重启前的静默分钟数 int 0…1440 10 立即 网关自动重启以应用已保存设置之前,人们需要静默(且代理空闲)多少分钟。0 — 代理一完成当前工作就重启。0–1440。立即生效。

Web UI (separate port)

键 名称 类型 默认值 生效时间 作用
AIHUMMER_WEBUI_API_BASE 单独托管面板所用的服务器地址 text — 重启后 仅当面板从与服务器本身不同的地址打开时才需要。填写浏览器访问服务器的地址,例如 https://api.example.com。留空——使用服务器公网地址,如未设置则使用本地地址。
AIHUMMER_WEBUI_ENABLED 面板使用单独端口 bool 1 重启后 开启——面板在一个可对互联网关闭的单独内部端口上打开,公共端口只服务于应用和渠道。关闭则面板完全不可访问。
AIHUMMER_WEBUI_ORIGIN 打开面板所用的地址 text — 重启后 如果面板通过代理打开,或使用与其端口地址不同的名称打开,请填写,例如 https://admin.example.com。服务器将允许来自该地址的浏览器与其通信。留空——使用面板端口的地址。

运维人员可用的设置:237。