AetherNo2332
157517c2bd
feat(cloud-agent): 看图工具 canvas_inspect_image 与同批多图工具结果配对
云端 Agent 过去只能凭标题或提示词猜画面:上游既有的 image_text_detect / image_annotation_render
是"组织 OCR 请求"和"渲染标注图当参考"两种不同能力,模型自己从不看像素。本 PR 新增只读工具
canvas_inspect_image,把画面本身交给模型。
- 交付走与生成任务参考图同一套短时签名链接(providerResourceURL),Agent 上下文只增长一个
URL,不内联 base64:一张 500 KB 的内联图片会同时顶穿请求体硬限与压缩阈值。
- 能力门控:仅当本轮渠道模型声明 text.references.maxImages > 0 时暴露该工具;VisionEnabled 在
建 run 时按渠道模型合同定格并持久化(工具授权每步从落库状态重建,客户端传入值被忽略)。
- 上下文治理:图片保留最近 3 个工具轮次,同一张图一轮内最多附图 2 次(之后只回执文字,确需
重看传 refresh=true),超出保留轮次换成逐图文字占位符并落 context_images_pruned 事件。
- 视觉锚点:模型看过后写进正文的一句观察记入 ReferenceAssets[].VisualNote 并跨轮继承,下一轮
不必重复看图,也不再对这张图声称"没有视觉识别证据"。
- 同批多图合并成一条 user 消息:图片只能挂 user 消息(tool 角色只接受字符串),逐张 append 会让
历史退化成 tool → user(图) → tool → user(图),被上游以"tool_calls 之后缺少对应 tool 消息"
拒绝。改为先缓冲到 PendingImageInspections,等整批 tool 结果入历史后合并成一条;两个 flush 点
共用同一个幂等助手,ask_user 提前结束路径单独 flush。缓冲必须进检查点:一次推进只执行一个
调用,整批跨越多次转移,每次转移都从 StateJSON 重新解码。
- 附带把上述 400 从"渠道余额不足"归类里拆出来(原文含 insufficient 会落进额度类目掩盖真因),
归为"会话里的工具调用与结果不匹配"。
- 文档补该能力口径与工具全集条目;前端零改动。
2026-09-22 01:32:07 +08:00
..
2026-09-11 14:02:49 +08:00
2026-09-11 14:02:49 +08:00
2026-09-19 09:54:27 +08:00
2026-09-21 09:48:43 +08:00
2026-09-21 09:48:43 +08:00
2026-09-11 14:02:49 +08:00
2026-09-21 14:11:29 +08:00
2026-09-11 14:02:49 +08:00
2026-09-11 14:02:49 +08:00
2026-09-11 14:02:49 +08:00
2026-09-21 11:11:10 +08:00
2026-09-18 23:26:54 +08:00
2026-09-20 01:40:40 +08:00
2026-09-20 01:40:40 +08:00
2026-09-20 01:40:40 +08:00
2026-09-17 23:17:09 +08:00
2026-09-17 23:17:09 +08:00
2026-09-19 09:54:27 +08:00
2026-09-18 23:28:57 +08:00
2026-09-21 14:11:29 +08:00
2026-09-21 14:11:29 +08:00
2026-09-21 14:11:29 +08:00
2026-09-18 23:28:57 +08:00
2026-09-11 14:02:49 +08:00
2026-09-21 14:11:29 +08:00
2026-09-11 14:02:49 +08:00
2026-09-11 14:02:49 +08:00
2026-09-11 14:02:49 +08:00
2026-09-21 20:14:05 +08:00
2026-09-21 20:14:05 +08:00
2026-09-11 14:02:49 +08:00
2026-09-14 01:11:56 +08:00
2026-09-21 11:11:10 +08:00
2026-09-20 11:18:19 +08:00
2026-09-20 11:18:19 +08:00
2026-09-21 11:11:10 +08:00
2026-09-21 11:11:10 +08:00
2026-09-19 21:04:03 +08:00
2026-09-11 14:02:49 +08:00
2026-09-11 14:02:49 +08:00
2026-09-21 11:11:10 +08:00
2026-09-11 14:02:49 +08:00
2026-09-11 14:02:49 +08:00
2026-09-14 01:11:56 +08:00
2026-09-19 09:54:27 +08:00
2026-09-19 09:54:27 +08:00
2026-09-11 14:02:49 +08:00
2026-09-22 01:32:07 +08:00
2026-09-21 09:37:20 +08:00
2026-09-21 09:37:20 +08:00
2026-09-19 20:43:20 +08:00
2026-09-20 17:18:46 +08:00
2026-09-19 15:35:11 +08:00
2026-09-17 18:40:42 +08:00
2026-09-17 18:40:42 +08:00
2026-09-19 20:43:20 +08:00
2026-09-19 20:43:20 +08:00
2026-09-19 20:43:20 +08:00
2026-09-19 20:43:20 +08:00
2026-09-19 20:43:20 +08:00
2026-09-18 15:26:26 +08:00
2026-09-18 15:26:26 +08:00
2026-09-17 20:21:25 +08:00
2026-09-19 20:43:20 +08:00
2026-09-19 20:43:20 +08:00
2026-09-17 20:21:25 +08:00
2026-09-18 15:26:26 +08:00
2026-09-19 20:43:20 +08:00
2026-09-17 20:21:25 +08:00
2026-09-18 15:26:26 +08:00
2026-09-21 09:30:38 +08:00
2026-09-18 15:26:26 +08:00
2026-09-18 15:26:26 +08:00
2026-09-19 20:43:20 +08:00
2026-09-19 20:43:20 +08:00
2026-09-19 20:43:20 +08:00
2026-09-19 20:43:20 +08:00
2026-09-18 15:26:26 +08:00
2026-09-20 12:47:07 +08:00
2026-09-17 20:21:25 +08:00
2026-09-17 20:21:25 +08:00
2026-09-20 12:47:07 +08:00
2026-09-20 12:47:07 +08:00
2026-09-14 17:58:21 +08:00
2026-09-14 17:58:21 +08:00
2026-09-18 15:26:26 +08:00
2026-09-17 20:21:25 +08:00
2026-09-18 15:26:26 +08:00
2026-09-22 01:32:07 +08:00
2026-09-18 15:26:26 +08:00
2026-09-19 20:43:20 +08:00
2026-09-17 23:31:54 +08:00
2026-09-14 17:58:21 +08:00
2026-09-22 01:32:07 +08:00
2026-09-18 15:26:26 +08:00
2026-09-19 20:43:20 +08:00
2026-09-19 20:43:20 +08:00
2026-09-19 20:43:20 +08:00
2026-09-22 01:32:07 +08:00
2026-09-19 20:43:20 +08:00
2026-09-19 20:43:20 +08:00
2026-09-19 20:43:20 +08:00
2026-09-17 18:40:42 +08:00
2026-09-15 13:37:21 +08:00
2026-09-15 05:22:07 +08:00
2026-09-19 20:43:20 +08:00
2026-09-17 20:21:25 +08:00
2026-09-19 20:43:20 +08:00
2026-09-19 20:43:20 +08:00
2026-09-17 20:21:25 +08:00
2026-09-21 09:30:38 +08:00
2026-09-21 09:30:38 +08:00
2026-09-21 09:48:43 +08:00
2026-09-22 01:32:07 +08:00
2026-09-17 18:40:42 +08:00
2026-09-17 18:40:42 +08:00
2026-09-22 01:32:07 +08:00
2026-09-22 01:32:07 +08:00
2026-09-17 20:21:25 +08:00
2026-09-17 20:21:25 +08:00
2026-09-22 01:32:07 +08:00
2026-09-11 14:02:49 +08:00
2026-09-11 14:02:49 +08:00
2026-09-11 14:02:49 +08:00
2026-09-17 18:40:42 +08:00
2026-09-18 20:34:28 +08:00
2026-09-14 18:12:29 +08:00
2026-09-19 09:54:27 +08:00
2026-09-19 09:54:27 +08:00
2026-09-11 14:02:49 +08:00
2026-09-18 14:09:50 +08:00
2026-09-11 14:02:49 +08:00
2026-09-11 14:02:49 +08:00
2026-09-11 14:02:49 +08:00
2026-09-11 14:02:49 +08:00
2026-09-11 14:02:49 +08:00
2026-09-11 14:02:49 +08:00
2026-09-11 14:02:49 +08:00
2026-09-20 12:47:07 +08:00
2026-09-11 14:02:49 +08:00
2026-09-11 14:02:49 +08:00
2026-09-15 11:10:12 +08:00
2026-09-11 14:02:49 +08:00
2026-09-11 14:02:49 +08:00
2026-09-18 23:26:54 +08:00
2026-09-18 23:26:54 +08:00
2026-09-19 09:54:27 +08:00
2026-09-11 14:02:49 +08:00
2026-09-11 14:02:49 +08:00
2026-09-11 14:02:49 +08:00
2026-09-18 23:26:54 +08:00
2026-09-20 12:59:23 +08:00
2026-09-18 23:26:54 +08:00
2026-09-19 20:40:55 +08:00
2026-09-20 13:05:42 +08:00
2026-09-19 09:54:27 +08:00
2026-09-21 11:11:10 +08:00
2026-09-11 14:02:49 +08:00
2026-09-20 13:05:42 +08:00
2026-09-11 14:02:49 +08:00
2026-09-11 14:02:49 +08:00
2026-09-18 09:31:40 +08:00
2026-09-18 09:31:40 +08:00
2026-09-11 21:42:15 +08:00
2026-09-11 14:02:49 +08:00
2026-09-20 05:18:16 +08:00
2026-09-20 04:04:42 +08:00
2026-09-18 09:31:40 +08:00
2026-09-17 23:32:11 +08:00
2026-09-18 09:31:40 +08:00
2026-09-14 01:11:56 +08:00
2026-09-17 23:32:11 +08:00
2026-09-17 23:32:11 +08:00
2026-09-18 23:26:54 +08:00
2026-09-18 23:26:54 +08:00
2026-09-11 14:02:49 +08:00
2026-09-11 14:02:49 +08:00
2026-09-11 14:02:49 +08:00
2026-09-11 14:02:49 +08:00
2026-09-11 14:02:49 +08:00
2026-09-11 14:02:49 +08:00
2026-09-17 18:40:42 +08:00
2026-09-20 16:40:08 +08:00
2026-09-11 14:02:49 +08:00
2026-09-11 14:02:49 +08:00
2026-09-11 14:02:49 +08:00
2026-09-11 14:02:49 +08:00
2026-09-11 14:02:49 +08:00
2026-09-17 18:40:42 +08:00
2026-09-11 14:02:49 +08:00
2026-09-17 23:32:11 +08:00
2026-09-17 23:32:11 +08:00
2026-09-19 20:29:46 +08:00
2026-09-15 05:22:07 +08:00
2026-09-11 21:40:47 +08:00
2026-09-17 17:44:44 +08:00
2026-09-17 18:15:32 +08:00
2026-09-11 14:02:49 +08:00
2026-09-14 01:11:56 +08:00
2026-09-21 09:38:11 +08:00
2026-09-11 14:02:49 +08:00
2026-09-11 14:02:49 +08:00
2026-09-18 14:09:50 +08:00
2026-09-18 14:09:50 +08:00
2026-09-18 14:09:50 +08:00
2026-09-11 14:02:49 +08:00
2026-09-11 14:02:49 +08:00
2026-09-14 01:11:56 +08:00
2026-09-11 14:02:49 +08:00
2026-09-21 09:38:11 +08:00
2026-09-11 14:02:49 +08:00
2026-09-11 14:02:49 +08:00
2026-09-14 01:11:56 +08:00
2026-09-11 14:02:49 +08:00
2026-09-17 17:55:12 +08:00
2026-09-11 14:02:49 +08:00
2026-09-14 01:11:56 +08:00
2026-09-22 01:32:07 +08:00
2026-09-21 09:38:11 +08:00
2026-09-17 17:44:44 +08:00
2026-09-12 21:28:41 +08:00
2026-09-12 21:28:41 +08:00
2026-09-17 17:55:12 +08:00
2026-09-22 01:32:07 +08:00
2026-09-11 14:02:49 +08:00
2026-09-11 14:02:49 +08:00
2026-09-21 20:14:05 +08:00
2026-09-21 20:14:05 +08:00
2026-09-21 20:14:05 +08:00
2026-09-21 09:48:43 +08:00
2026-09-11 14:02:49 +08:00
2026-09-14 01:11:56 +08:00
2026-09-11 14:02:49 +08:00
2026-09-11 14:02:49 +08:00
2026-09-21 14:11:29 +08:00
2026-09-11 14:02:49 +08:00
2026-09-11 14:02:49 +08:00
2026-09-11 14:02:49 +08:00
2026-09-12 21:28:41 +08:00
2026-09-20 16:40:08 +08:00
2026-09-11 14:02:49 +08:00
2026-09-11 14:02:49 +08:00
2026-09-11 14:02:49 +08:00
2026-09-11 14:02:49 +08:00
2026-09-11 14:02:49 +08:00
2026-09-11 14:02:49 +08:00
2026-09-11 14:02:49 +08:00
2026-09-14 01:11:56 +08:00
2026-09-14 01:11:56 +08:00
2026-09-11 14:02:49 +08:00
2026-09-11 14:02:49 +08:00
2026-09-11 14:02:49 +08:00
2026-09-11 14:02:49 +08:00
2026-09-18 20:34:28 +08:00
2026-09-11 14:02:49 +08:00
2026-09-18 20:34:28 +08:00
2026-09-14 19:45:56 +08:00
2026-09-11 14:02:49 +08:00
2026-09-11 14:02:49 +08:00
2026-09-11 14:02:49 +08:00
2026-09-11 14:02:49 +08:00
2026-09-14 18:12:29 +08:00
2026-09-20 16:40:08 +08:00
2026-09-20 12:47:07 +08:00
2026-09-20 12:47:07 +08:00
2026-09-19 20:43:20 +08:00
2026-09-14 01:11:56 +08:00
2026-09-14 01:11:56 +08:00
2026-09-19 20:43:20 +08:00
2026-09-11 14:02:49 +08:00
2026-09-19 20:43:20 +08:00
2026-09-11 14:02:49 +08:00
2026-09-14 01:11:56 +08:00
2026-09-11 14:02:49 +08:00
2026-09-14 01:11:56 +08:00
2026-09-14 01:11:56 +08:00
2026-09-19 20:43:20 +08:00
2026-09-19 20:43:20 +08:00
2026-09-15 05:22:07 +08:00
2026-09-11 14:02:49 +08:00
2026-09-14 01:11:56 +08:00
2026-09-21 09:48:43 +08:00
2026-09-21 09:48:43 +08:00
2026-09-21 09:48:43 +08:00
2026-09-11 14:02:49 +08:00
2026-09-11 14:02:49 +08:00
2026-09-11 14:02:49 +08:00
2026-09-11 14:02:49 +08:00
2026-09-11 14:02:49 +08:00
2026-09-11 14:02:49 +08:00
2026-09-20 16:40:08 +08:00
2026-09-20 16:40:08 +08:00
2026-09-11 14:02:49 +08:00
2026-09-11 14:02:49 +08:00
2026-09-14 01:11:56 +08:00
2026-09-14 01:11:56 +08:00
2026-09-11 14:02:49 +08:00
2026-09-11 14:02:49 +08:00
2026-09-18 23:26:54 +08:00
2026-09-18 23:26:54 +08:00
2026-09-18 23:26:54 +08:00
2026-09-18 23:26:54 +08:00
2026-09-18 23:26:54 +08:00
2026-09-11 14:02:49 +08:00
2026-09-11 14:02:49 +08:00
2026-09-18 23:26:54 +08:00
2026-09-18 20:34:28 +08:00
2026-09-11 14:02:49 +08:00
2026-09-14 01:11:56 +08:00
2026-09-14 19:45:56 +08:00
2026-09-14 19:45:56 +08:00