优先级/严重性:
中等
平台:
Discourse b66fca70d0e3d12ef930398289fac5269cd240c7
描述:
官方 “自动化”插件 包含一个“使用 AI 分类帖子”脚本。该脚本将帖子内容提供给 LLM,然后根据结果执行可配置的分类操作。
为了将 LLM 的使用量控制在 Discourse 托管计划 提供的信用额度范围内(当使用 CDCK 托管的 LLM 时),或在 使用第三方 LLM 提供商 时控制在预算范围内,管理每次查询所需的 token 数量至关重要。“使用 AI 分类帖子”脚本提供了一个“最大帖子 Token 数”设置,允许设置包含在请求中的帖子内容量的上限。
如果帖子附有图片,大量的图片数据总是会被包含在请求中,即使这导致超过了通过“最大帖子 Token 数”设置为自动化设定的帖子 token 限制。
即使在自动化使用的 AI 角色 配置中禁用了“启用视觉”选项,此问题仍然会发生。
这导致 token 消耗失控。
在许多用例中,人们只关心帖子的文本数据,在这种情况下,导致 token 使用量激增的图片数据甚至没有价值。
可复现的步骤:
- 如果您还没有合适的自定义 AI 角色,请创建一个。
- 在角色的设置中禁用“启用视觉”选项。
- 如果尚未启用,请启用内置的“自动化”插件。
- 导航到插件的“自动化”页面(
/admin/plugins/automation/automation)。 - 点击“+ 添加自动化”按钮。
“选择脚本”页面将打开。 - 选择“使用 AI 分类帖子”脚本。
自动化配置页面将打开。 - 根据需要配置自动化以进行简单测试。自动化不需要执行任何操作,只需生成 LLM 查询即可。
- 在自动化配置的 脚本选项 > 角色 菜单中,选择您在第 1 步中创建的 AI 角色。
- 在自动化配置中,将 脚本选项 > 最大帖子 Token 数 设置为
20。 - 点击自动化配置页面底部的“更新自动化”按钮。
您将返回到“自动化”页面。 - 将新创建自动化的“启用自动化”开关切换到“开”位置。
- 撰写将触发自动化的帖子或私信。向帖子中添加一张图片。
- 发布帖子或消息。
- 导航到“数据浏览器”插件的管理页面(
/admin/plugins/explorer)。 - 点击页面上的“+”按钮。
将出现一个“查询名称…”字段。 - 在“查询名称…”字段中输入
Get AI Audit Logs。 - 点击“+ 新建”按钮。
将创建一个新的 数据浏览器 查询。 - 点击“编辑”按钮。
将打开查询代码编辑字段。 - 用以下内容替换占位符查询代码的内容:
SELECT request_tokens, raw_request_payload FROM ai_api_audit_logs WHERE feature_name = 'llm_triage' - 点击“运行”按钮。
在数据浏览器的查询结果中,由您的帖子触发的自动化生成的请求的 request_tokens字段值,远远超过了根据 AI 角色配置中的“系统提示”以及自动化配置中施加的 20 个 token 的帖子文本上下文限制所预期的数量。 - 点击数据浏览器查询结果中
raw_request_payload字段值右侧的 ●●● 按钮。
将打开一个对话框,显示该字段的完整值。
附加到帖子的图片数据通过请求数据中的 messages[*].image_url 键包含在内。
示例:
{
"model": "Qwen/Qwen3-VL-30B-A3B-Instruct",
"max_tokens": 16384,
"messages": [
{
"role": "system",
"content": "你将获得一段文本,你的任务是检测该文本的语言区域"