Skip to content

feat(multimodal): 增强附件 UID、图文混排与参考图生图#53

Merged
69gg merged 21 commits intomainfrom
bugfix/bugs-5
Apr 3, 2026
Merged

feat(multimodal): 增强附件 UID、图文混排与参考图生图#53
69gg merged 21 commits intomainfrom
bugfix/bugs-5

Conversation

@69gg
Copy link
Copy Markdown
Owner

@69gg 69gg commented Apr 2, 2026

变更概览

  • 新增持久化附件 UID 注册层,为普通消息与合并转发里的图片/文件建立当前会话可复用的 pic_* / file_* 标识。
  • 打通图文混排发送链路,支持在回复中使用 <pic uid="..."/> 内嵌图片,并在历史记录与 WebUI 中保持可追溯的影子文本。
  • 扩展 ai_draw_one:默认返回可嵌入图片 UID,新增参考图生图能力,支持通过 reference_image_uidsimages/edits,并新增平级配置 [models.image_edit]
  • 为生图请求增加基于 agent 模型的提示词审核;同时保留上游错误透传,便于定位模型或服务端能力问题。
  • 侧写与认知记忆补充“改名收敛”:当用户或群名称变化时,自动刷新现有侧写的展示名与向量元数据,不改变实体归属与摘要正文。

主要内容

  • 多模态与文件分析链路现在优先使用内部附件 UID,不再依赖临时 file_id -> url 解析作为主路径。
  • file_analysis_agent / download_file 已支持 UID、URL 和 legacy file_id 三种输入来源。
  • WebUI 会话也接入了附件注册与本地图展示,file:// 图片在运行时聊天中可正确显示。
  • 参考图生图配置采用与 models_image_gen 平级的 [models.image_edit],字段与生成模型配置保持一致,能力由上游模型自行决定。

测试

  • uv run pytest tests/

Open with Devin

@chatgpt-codex-connector
Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.

devin-ai-integration[bot]

This comment was marked as resolved.

Add delivery parameter (embed/send, default embed) to render_markdown,
render_latex, render_html, get_picture, and minecraft_skin so they
register images via AttachmentRegistry and return <pic uid="..."/>
tags. Update wenchang_dijun to register sign images by UID instead
of returning raw URLs. Add new fetch_image_uid tool for converting
arbitrary image URLs into attachment UIDs.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
devin-ai-integration[bot]

This comment was marked as resolved.

devin-ai-integration[bot]

This comment was marked as resolved.

69gg and others added 3 commits April 2, 2026 21:54
Add async binary reads for reference images and cover related prompt-format regressions.

Co-authored-by: GPT-5.4 xhigh <noreply@openai.com>
Apply Ruff formatting to the new async read regression test.

Co-authored-by: GPT-5.4 xhigh <noreply@openai.com>
Update package versions, lockfiles, and changelog for the 3.2.8 release.

Co-authored-by: GPT-5.4 xhigh <noreply@openai.com>
devin-ai-integration[bot]

This comment was marked as resolved.

69gg and others added 2 commits April 2, 2026 22:52
Avoid syncing placeholder poke names into cognitive profiles, align WebUI tool timeout handling with actual agent schemas, and load attachment registry asynchronously.

Co-authored-by: GPT-5.4 xhigh <noreply@openai.com>
Apply Ruff formatting to the new review regression tests.

Co-authored-by: GPT-5.4 xhigh <noreply@openai.com>
devin-ai-integration[bot]

This comment was marked as resolved.

69gg and others added 2 commits April 3, 2026 09:13
Make WebUI session scope explicit in runtime chat context and add regression tests for WebUI-scoped image embeds.

Co-authored-by: GPT-5.4 xhigh <noreply@openai.com>
Reorder prompt construction so stable instruction blocks stay ahead of frequently changing context, improving prompt-cache friendliness without changing prompt content.

Co-authored-by: GPT-5.4 xhigh <noreply@openai.com>
devin-ai-integration[bot]

This comment was marked as resolved.

69gg and others added 2 commits April 3, 2026 10:24
Restore bounded WebUI tool invoke timeouts for non-agent tools, prune and flush attachment registry state, deduplicate profile name refresh scheduling, pass history_message in group auto replies, and simplify ai_draw_one request param flow.

Co-authored-by: GPT-5.4 xhigh <noreply@openai.com>
Stop AttachmentRegistry from reading disk during construction and keep initial registry loading explicit and async.

Co-authored-by: GPT-5.4 xhigh <noreply@openai.com>
@69gg 69gg merged commit 97094d7 into main Apr 3, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant