1937 字
5 分钟
视频解析插件翻车记录:人格失效、追问误触发,以及我现在怎么修

这两天在继续测试 AstrBot 视频解析插件 的时候,确实暴露出了一些比较明显的问题。

这篇就不写设计目标了,直接把现在遇到的问题、为什么会这样、已经做了哪些处理,以及目前修到哪一步,完整记一下。

现在出现了什么问题#

目前确认过的,主要有两类。

1. 视频解析和视频追问,没有按“当前对话人格”走#

用户现在在 AstrBot 里把插件设置成了:

  • 按当前对话人格

但实际测试里发现:

  • 普通聊天时,Bot 的人格是正常的
  • 只有在 视频解析视频后的追问 这两条链路里,回复风格明显不对
  • 看起来不像当前对话里设定好的那个人格

也就是说,问题不是 AstrBot 整体人格系统坏了,而是:

  • 主聊天链路正常
  • 视频插件自己的生成链路没有正确继承当前对话人格

这个区别非常关键。

2. 视频追问存在误触发#

另一个问题是,插件会把某些并不是“继续问视频”的消息,误判成视频追问。

一个典型场景是:

  1. 用户发:@bot 解析视频
  2. Bot 先回复一句:我这就去看视频
  3. 用户回复这句话:你看什么视频你看

按正常理解,这句更像是在吐槽或者打断,而不是在继续追问视频内容。

但插件之前会把它当成:

  • “用户在围绕刚才那个视频继续提问”

于是直接走视频追问逻辑,结果就容易出现:

  • 回复内容不自然
  • 像答非所问
  • 甚至让人感觉是“人格突然坏了”

实际上这不是同一个问题,而是:

  • 误触发
  • 再叠加 人格没继承好

最后才表现成一种看起来很怪的回复效果。

为什么会这样#

问题一:插件自己在做 LLM 调用#

视频解析插件不是完全走 AstrBot 主聊天那条统一链路,而是插件内部自己会调用模型。

也就是类似这种逻辑:

  • 自己取人格
  • 自己拼 system prompt
  • 自己调用 provider 生成开场白、总结、追问回复

这种做法本身没问题,但前提是:

  • 插件必须准确拿到当前对话绑定的人格

而这次测试日志里已经很明确地显示出,插件没有拿到:

  • conversation_persona=''
  • 人格未命中

所以不是它“没按人格说好”,而是它实际上根本没取到当前人格

问题二:追问触发条件太宽#

原来的逻辑里,只要满足这些条件中的一部分,就可能进入 follow-up:

  • 用户这条消息不是命令
  • 当前消息里没有新视频链接
  • 存在最近一次视频上下文
  • 回复了 Bot,或者像是在继续追问

问题就在于:

  • “回复了 Bot” 这个条件太宽了

它会把很多并不是追问视频的消息,也纳入视频插件处理范围。

于是插件就可能错误接管一些:

  • 吐槽句
  • 打断句
  • 纠正式短句
  • 情绪化回复

这也是为什么“你看什么视频你看”这种话会被错误处理。

目前已经做了哪些修复#

1. 先修了 follow-up 误触发#

这部分已经先在测试区落地了,主要加了几层限制。

增加冷却#

视频总结刚发出后,不会立刻把下一条回复都当成 follow-up。

这样可以避免:

  • Bot 刚说完“我去看视频”
  • 用户马上回一句吐槽
  • 插件立刻误判成继续追问

增加噪音筛选#

像下面这类消息,现在会优先判定为噪音或非追问:

  • 你看什么视频你看
  • 你在说啥
  • 不是这个
  • ??

也就是说,不会再只因为“回复了 Bot”就自动进入视频 follow-up。

增加上下文完成判断#

现在 follow-up 必须建立在:

  • 已经确实有可用的视频总结上下文
  • 且已经过了一个最基本的冷却时间

这样可以避免还没真正总结完成,就把后续消息错误接进去。

目前还没完全修好的部分#

2. “按当前对话人格” 这条链路还在继续修#

这个是目前最核心的未完成项。

因为现在已经能确认:

  • 普通聊天人格正常
  • 视频解析/追问人格不正常

所以问题范围已经缩得很小:

  • 不是 AstrBot 整体问题
  • 就是插件内部读取“当前对话人格”的逻辑没有对齐当前环境

为了修这个问题,测试区现在已经把人格读取逻辑改成了多级兜底,按下面这个顺序去找:

  1. session_service_config.persona_id
  2. 当前对话的 conversation.persona_id
  3. UMO 默认人格
  4. selected_default_persona fallback

也就是说,不再只依赖单一来源,而是尽量和 AstrBot 现有的人格获取方式保持一致。

临时解决方法#

在问题彻底修好前,如果你现在就要用这个插件,比较稳的临时方案有两个。

方案一:先尽量避免用“回复 Bot 的短句吐槽”去接视频#

比如尽量不要用这种:

  • 你看什么视频你看
  • 你在说啥
  • 不是这个

这种句子本身就很容易被误判为上下文接话。

虽然测试区已经开始加筛选,但在最终版稳定前,还是建议减少这类测试噪音。

方案二:如果特别依赖人格效果,先重点测普通聊天和非插件链路#

因为当前问题不是 Bot 整体人格坏了,而是视频插件自己的生成链路还在修。

也就是说:

  • 普通聊天能正常按人格走
  • 视频插件链路暂时不完全稳定

目前修到哪一步了#

现在的实际进度是这样的。

已修#

  • 视频追问误触发
  • 回复 Bot 就乱接 follow-up 的问题
  • follow-up 冷却与噪音筛选

在修#

  • 视频解析开场白的人格继承
  • 视频总结正文的人格继承
  • 视频追问回复的人格继承
  • “按当前对话人格” 在插件链路中的稳定命中

还没做的#

  • 等测试区确认稳定后,再整理并推送到 GitHub
  • 再补一轮更完整的说明文档和使用注意事项

现在的结论#

这次问题不是一个点炸了,而是两个问题叠在一起:

  1. 视频追问误触发
  2. 插件链路没有正确继承当前对话人格

所以用户看到的最终现象才会是:

  • 回复怪怪的
  • 像没按人格说话
  • 有时甚至像答非所问

目前修复工作已经在测试区继续推进中。

在确认:

  • 视频解析按人格走
  • 追问按人格走
  • 误触发也稳定消失

之前,不会急着把这版直接发到 GitHub。

最后#

这种问题其实比“单纯报错”更烦一点,因为它不是直接崩,而是会表现成:

  • 好像能用
  • 但又不太对
  • 而且用户一眼就能感知到体验不自然

所以这次会先在测试区把人格链路彻底抠顺,再整理正式版本。

等测试稳定,再发 GitHub。

分享

如果这篇文章对你有帮助,欢迎分享给更多人!

视频解析插件翻车记录:人格失效、追问误触发,以及我现在怎么修
https://xn--jpra6118a.xn--6qq986b3xl/posts/video-summary-plugin-status-2026-03-31/
作者
TaiLaa
发布于
2026-03-31
许可协议
CC BY-NC-SA 4.0

部分信息可能已经过时