Skip to content

v0.1.1 — 视觉模型配置(官方 settings 通道 + 图形化选择)

Choose a tag to compare

@237229953-create 237229953-create released this 14 Aug 07:13
· 3 commits to master since this release

v0.1.1

视觉模型配置功能:按官方做法接入 settings 通道 + 图形化选择。

新增

  • 官方 settings 配置通道:插件注册 dsh-vision settings 命名空间(schemastery schema),配置持久化到 settings.yaml(与 llm-pi-ai 同款机制),热生效(无需重启),带 revision 冲突保护
  • 图形化视觉模型选择:设置 → 插件 → 额外插件 → 可配置插件 → dsh-vision 卡片,展开后:
    • 视觉模型下拉:自动枚举当前所有 provider 中声明 [text, image] 输入的模型,按提供方分组
    • 高级字段:输出上限、模式(auto/manual/both)、超时
  • 宿主配置 API:GET/POST /api/dsh-vision/ui(模型发现走 ctx.llm.listProviders/listModels,60 秒缓存;写入校验必须是已发现的可识图模型)

配置层级

patch 的 config 成为组合层 base;settings.yaml 用户层字段级覆盖,优先;均热生效。

说明

官方"插件配置"标签页只服务 dsh 仓库内白名单命名空间(apiproxy 限制,官方 README 原文),第三方插件的配置 UI 由 uiopt 的"额外插件"卡片承载;数据通道为官方 settings seam。

完整变更

  • 宿主端:settings 命名空间注册、配置运行时读取(桥接热生效)、视觉模型发现、配置 API
  • 修复:桥/工具注册条件误引用旧 config 对象
  • 文档:README/挂载层注释更新(配置方式、UI 位置)

v0.1.0

首个发布版本:给纯文本模型自动配眼。

特性

  • 自动识图桥:图片出现在纯文本模型(如 DeepSeek-V4 系列)的请求中时,自动用视觉模型生成文字描述,无需模型或用户做任何事
  • 日志内表面替换:描述以 user/message surface-replace 事件写入会话日志(与官方 compaction 同款机制)——只对模型可见,人类转录保留原图
  • 缓存友好:替换事件固化后,历史前缀缓存与普通文本会话完全等价(历史全命中,仅新消息 miss);新图首次出现按未命中价计费一次
  • 原生看图优先:当前模型自身支持 image(如 kimi-k3)时插件完全不干预
  • see_image 追问工具:手动/定向追问图片细节(file_path + 可选 question)
  • 零新增凭据:视觉模型复用 profile 已配置的 llm-pi-ai 路由(默认 opencode-go / minimax-m3,与主模型同一把 key)
  • 失败安全:视觉调用失败时本次请求仍成功(占位文本),且不固化、下次自动重试;任何未预期错误原样放行,绝不拖垮主请求

安装

dsh plugin --profile web add link:<本目录路径>
# 并在 profiles/web/package.json 的 dsh.profile.bundles 追加 "dsh-vision",重启 dsh web

配置

- insert:
    - id: dsh-vision
      name: dsh-vision
      config:
        provider: opencode-go   # 视觉模型路由
        model: minimax-m3       # 快(~3s)且便宜;可选 kimi-k2.7-code / qwen3.6-plus / kimi-k3 等
        maxTokens: 4096
        mode: both              # auto=仅自动桥 | manual=仅工具 | both=两者
        timeoutMs: 60000

验证

仓库自带 smoke-test.mjs,12 项检查覆盖:桥接触发、路由、消息改写、替换事件落库、无图放行、原生视觉放行。运行 node smoke-test.mjs

已知限制

  • 依赖 dsh 预览版 API(llm/stream waterfall、surface replace、foldSurface),rc 升级若改签名需同步更新
  • 图片位于历史中部首次出现时,该轮从图片处起前缀缓存失效一次,之后恢复(前缀缓存固有特性)
  • 视觉调用不进入会话 usage 统计(绕过 agent loop 记录路径),缓存命中后成本趋零