🛠️ DeepSeek Harness · 视觉识别 + 图像生成 架构图

本次会话完成的两条外挂能力链路 —— 纯文本 DeepSeek 模型的「眼」(读图)与「手」(生图)

✅ 视觉链路 · 实测通过(Kimi 读出测试图全文) ✅ 生图链路 · 实测通过(wanx 6 秒出图 399KB) ⚠️ 生效前提:重启 dsh + 硬刷新页面
👁️ 视觉链路 —— 读图(modlens + Kimi)
把图片「翻译」成结构化文字证据,喂给纯文本 DeepSeek
用户粘贴图片
浏览器端 modlens 客户端插件拦截粘贴(仅纯文本模型被接管,经 /modlens/paste 落盘为临时文件路径)
图片字节 → 文件路径
DSHDeepSeek-V4-Pro(纯文本模型)
文本模型收不到像素,只能拿到路径 —— 由工具补眼
调用工具
工具modlens_read_image
schema 随每次请求到达模型,无触发博弈
spawn CLI
插件@liustack/modlens@3.18.1
dsh bundle 插件,自带 CLI(dist/main.js)+ 设置卡片 + 粘贴路由
OpenAI 兼容协议
视觉引擎Kimi k3(api.moonshot.cn/v1)
通过 openai provider 路线接入;key 存于 ~/.modlens/config.json(0600)
结构化 JSON 证据
输出:结构化证据
ocr.full_text 全文转写 · layout.regions 版面区块 · semantics.entities 实体关系
→ 模型基于「读到的事实」作答,不再靠猜
🎨 生图链路 —— 画图(dsh-genimg + 阿里云百炼)
把文字描述变成 PNG 图片文件,落到工作区
用户“帮我画一只猫”
任意自然语言描述:主体、风格、构图、色彩
意图识别
DSHDeepSeek-V4-Pro(纯文本模型)
不直接生图,负责任务编排与结果汇报
调用工具
工具generate_image(prompt / size / n)
本次会话新写的原生 DSH 插件工具,零第三方依赖
提交异步任务
插件@local/dsh-genimg@0.1.0
提交 → 轮询任务状态 → 下载图片 → 落盘 outputs/genimg/(key 存 ~/.dsh-genimg/config.json,每次调用重读)
原生异步 API(非 OpenAI 兼容)
阿里云百炼 DashScope · wanx2.1-t2i-turbo
image-synthesis 任务接口(async)+ 任务轮询 + OSS 签名 URL
PNG 下载
输出:本地图片文件
C:\Users\季\Desktop\deepseek\test\outputs\genimg\genimg-*.png
→ 模型返回绝对路径,可随时用视觉链路回读验证画面

🧱 共同底座 —— DSH web profile(C:\Users\季\.dsh\profiles\web)

bundles插件层栈
@deepseek-ai/dsh-base · dsh-web-app · @liustack/modlens · @local/dsh-genimg(dsh plugin 自动 reconcile)
配置两处密钥文件
~/.modlens/config.json(Kimi key)
~/.dsh-genimg/config.json(阿里云 key + 模型 + 输出目录)
工具链离线 pnpm 垫片
.bin/pnpm.cmd → 工作区 .tool/pnpm(11.22.0),免全局安装;npm 走华为云镜像,GitHub 直连不通时用 Node 抓包
流程安装与升级
dsh plugin --profile web add <包> → 重启 dsh + Ctrl+F5 硬刷新 → 新工具随请求到达模型