跳转至

features.toml:能力、感知出口与调试

真实文件是 config/features.toml,可在「月璃设置」编辑。 完整字段范围见功能模板。 功能开关与模型候选分别配置;启用前应满足相关依赖,保存后重启生效。

语音合成

[tts] 默认关闭,关闭时保持文字回复。 开启需要三项同时成立:tts 任务有候选、厂商连接正确、voice 有值。 voice 填服务接受的音色 ID,不能使用自定义显示名代替。

format 支持 mp3、wav、opus,speed 调整语速。 兼容接口使用对应语音模型;专用语音协议还需厂商 App ID 和访问凭据。 cluster 仅在专用语音客户端下生效,默认 volcano_tts。 保存成功后发一条短消息,确认得到音频和播放结果,文字成功不等于语音成功。

屏幕视觉与聊天图片

[vision] enabled 默认关闭,控制桌面截图交给视觉模型。 开启后按用户的屏幕提问采集,托盘还可显式启用持续屏幕采样。 仅配置视觉模型不会自动开始截图;无头服务器没有桌面外壳提供的截图输入。

capture_mode = "window" 只截前台窗口, 改成 screen 会截主屏,可能包含其他窗口内容。 fullscreen_silent 控制疑似全屏时保持静默,不是删除已经获得的历史描述。 修改采集形态后重启应用,再用已知窗口核对实际描述。

chat_image_enabled 是 QQ 聊天图片描述的独立开关,初始配置为开启。 仅需识别聊天图片时,可单独启用该项,无需开放桌面截图。 两个开关都依赖 vision 任务候选,候选必须声明 visual = true。 模型接口实际接受图片,也要通过真实图片调用确认。

已获得的情境可以出现在哪里

[perception] surfaces 管前台程序、停留时间、屏幕描述进入哪些会话。 它与「是否截图」独立:

[perception]
surfaces = ["desktop"]

默认只给桌面出口;空列表表示不在任何出口提供该情境。 加入 direct 后,也只对 owner.qq 对应的用户本人私聊开放。 私聊白名单中的其他联系人不会因此获得屏幕情境。 group 不属于合法出口,配置加载时会被拒绝。

关闭截图不等于停止前台程序信息采集; 仅收紧出口也不等于停止采集或撤回已经发送的消息。 需要停止全部桌面输入采集时,应关闭桌宠并退出外壳。 群聊人物事实另受 bot.tomlprivate_facts_in_group 控制。

向量混合召回

[vector] enabled 初始配置为开启,不需要额外安装依赖。 还要配置 embedding 候选、正维度,并确认同一任务的所有候选维度一致。 向量模型的本地维度声明不能改变远端输出,见模型配置。 启用后应检查启动自检中的向量缺口和索引状态,开关值不能单独作为验收依据。 更换模型时保留旧数据并核对重建要求,不直接复用不匹配的向量。

记忆反馈纠错

[memory_feedback] 总开关初始配置为开启,它允许纠错链路写入事实取代关系;关闭后整条链路零写入。 它观察已进入提示词的事实与后续用户反馈,不会把所有聊天都当作修正指令。 window_hours 从事实进入提示词起算;check_interval_minutes 决定检查节奏。 batch_size 限制每轮数量,缩短间隔与扩大批次都会增加处理量。

auto_apply_threshold 是自动取代的置信度门槛,降低会放宽自动应用。 prefilter_enabled 先筛纠正信号,关闭会增加模型判定调用。 max_feedback_messages 限制单个观察项读取的用户消息数量。

标记、召回硬过滤、画像刷新、情节重建与重建期屏蔽相互配合。 仅保留标记却关闭硬过滤,不代表旧事实已经从召回中排除。 关闭画像或情节更新可能使派生内容保留旧信息。 一致性协调另有间隔和批量参数;修改后重启,并核对事实及派生内容的实际状态。

表情库管理在 bot.toml

表情包相关配置归 bot.toml[emoji][emoji.cleanup], 不在 features 文件里新增同名段。模板见 bot.tomlcollect_enabled 管从聊天自动收录,关闭后不会因此禁止已有表情发送。 max_file_size_mb 限制收录文件大小,0 表示不按大小限制。

max_count 限制可发送条目容量,0 表示不限。 auto_evict 开启后按少用、久未使用的顺序淘汰超限条目;关闭只报告超限。 content_filtration 开启后,入库前调用视觉审查; 视觉模型不可用时会拒绝入库并告警,不是跳过审核继续收录。 当前还需开启至少一个视觉入口,才会装配供审查使用的视觉连接。 仅需审查聊天表情时,可开启 chat_image_enabled,无需同时开放桌面截图。

[emoji.cleanup] 处理没有数据库记录的磁盘孤儿文件。 默认每 6 小时检查、孤儿保留 30 天;保留设为 0 会在下次检查时清理。 容量淘汰和孤儿清理分别控制;保留磁盘现场时,应分别核对两项设置。 自动收录异常时,应在管理面板「表情包库」检查条目与标签,并区分收录配置与连接故障。

日志、调试与代理

[log] 默认 INFO,终端和文件等级可分别覆盖。 临时排查时可只调某一端为 DEBUG,避免同时放大全部输出。 level_style 改等级列样式,color_scope 改着色范围,不改变日志严重程度。 to_file 默认开启,写到数据目录下 logs/app_*.log.jsonl。 轮转大小、文件数量、保留天数共同决定日志留存。

失败请求快照与逐任务调用记录默认开启,分别在 logs/llm_request/logs/prompt/。 密钥会隐去,但正文仍可能包含聊天和提示词;分享前检查内容。 事件数量和小时数控制事件账本留存,不等同于模型调用记录数量。 [advanced] https_proxy 是全局 HTTP(S) 代理,留空直连;不是浏览器访问面板的代理。

开发者命令通道由可选 [developer] enabled = true 显式开启。 模板未生成该段时默认关闭;普通日志排查不必开启命令通道。 保存并重启后,检查日志落点和保留策略确实改变。 更多边界见开发手册:可观测性