把聊天图片转成 OCR 文字,让纯文本模型也能看图作答
23.8/100
综合分
0
GitHub 星标
—
npm 周下载
—/5
用户评分
数据截至 2026/10/23 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add paul-yangmy/dsh-umi-ocr-vision该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:仅索引
是什么
dsh 原生插件 · vision
装得上吗
本站尚未做安装检查
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
更新放缓:最近一次提交在 78 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码v2.7.0🔵 扫描:含敏感能力尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。
读写/删除本地文件发起外部网络请求
查看扫描证据(共 23 处,展示前 20 条)
- 写入本地文件lib/index.js:233
await writeFile(filePath, image.data); - 删除本地文件递归lib/index.js:237
if (root !== undefined) await rm(root, { recursive: true, force: true }).catch(() => {}); - 删除本地文件递归lib/index.js:257
await rm(root, { recursive: true, force: true }); - 发起网络请求lib/umi-ocr.js:76
const response = await fetch(`${baseURL}/api/ocr`, { - 读取本地文件lib/umi-ocr.js:99
text = await readFile(outputPath, "utf8"); - 删除本地文件递归lib/umi-ocr.js:105
await rm(root, { recursive: true, force: true }); - 写入本地文件lib/umi-ocr.js:115
await writeFile(filePath, data); - 删除本地文件递归lib/umi-ocr.js:118
await rm(root, { recursive: true, force: true }); - 读取本地文件lib/umi-ocr.js:127
const data = await readFile(filePath); - 写入本地文件lib/vision-tools.js:15
mkdirSync(dir, { recursive: true }); - 读取本地文件lib/vision-tools.js:68
if (!existsSync(filePath)) return { ok: false, error: `文件不存在:${args.path}` }; - 读取本地文件lib/vision-tools.js:106
if (!existsSync(filePath)) return { ok: false, error: `文件不存在:${args.path}` }; - 读取本地文件lib/vision-tools.js:151
if (!existsSync(filePath)) return { ok: false, error: `文件不存在:${args.path}` }; - 读取本地文件lib/vision-tools.js:195
if (!existsSync(filePath)) return { ok: false, error: `文件不存在:${args.path}` }; - 写入本地文件lib/vision-tools.js:205
await extractRegionBuffer(filePath, match.box, "png").then((buf) => writeFileSync(previewPath, buf)); - 读取本地文件lib/vision-tools.js:245
if (!existsSync(filePath)) return { ok: false, error: `文件不存在:${args.path}` }; - 写入本地文件lib/vision-tools.js:249
await extractRegionBuffer(filePath, region, "png").then((buf) => writeFileSync(cropPath, buf)); - 读取本地文件lib/vision-tools.js:290
if (!existsSync(filePath)) return { ok: false, error: `文件不存在:${args.path}` }; - 写入本地文件lib/vision-tools.js:318
writeFileSync(markdownPath, texts.join("\n\n"), "utf8"); - 写入本地文件lib/vision-tools.js:319
writeFileSync(manifestPath, JSON.stringify({ image: args.path, width: meta.width, height: meta.height, maxHeight, overlap, failedCount, chunks }, null
扫描于 2026/11/2(1 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
依赖的 DSH / Cordis 模块
@deepseek-ai/schemastery@deepseek-ai/cordis@deepseek-ai/dsh-anonymous-user-id@deepseek-ai/dsh-attachment@deepseek-ai/dsh-credentials@deepseek-ai/dsh-launch-environment@deepseek-ai/dsh-llm@deepseek-ai/dsh-llm-deepseek@deepseek-ai/dsh-settings给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
README
由 DeepSeek 最新模型翻译生成dsh-umi-ocr-vision
DeepSeek Harness 的 Umi-OCR 视觉桥接插件。
它参考 dsh-vision 的桥接思路:主模型只有文本能力时,自动把聊天中的图片交给本地 Umi-OCR 识别成文字,再把 OCR 结果作为「非可信视觉上下文」注入请求,最后由原来的 DeepSeek 文本模型完成回答。
Umi-OCR 是离线 OCR 工具,提供文字识别能力,不做完整的多模态语义理解。纯截图、文档、验证码、界面文字这类场景非常合适;如果图片需要理解空间关系、物体语义,请改用真正的视觉大模型插件(例如 dsh-vision)。
工作原理
| 当前主模型 | 图片处理方式 | 最终回答者 |
| 支持图片 | 原图直接发送,不经过 Umi-OCR | 当前模型 |
| deepseek-official 等文本模型 | Umi-OCR 读取原图,OCR 文本作为非可信附件上下文注入 | DeepSeek |
- 插件不会替换你在界面中选择的主模型。
- 多张聊天附件按顺序分别 OCR,然后一起放入同一次 DeepSeek 请求。
- OCR 结果标记为「非可信观察数据」,图片中出现的提示词不会获得系统权限。
- 不把图片发送到任何云端服务(HTTP 模式也默认只访问本机 127.0.0.1)。
展开完整文档(README 剩余 1 节)
dsh-umi-ocr-vision DeepSeek Harness 的 Umi-OCR 视觉桥接插件。 它参考 dsh-vision 的桥接思路:主模型只有文本能力时,自动把聊天中的图片交给本地 Umi-OCR 识别成文字,再把 OCR 结果作为「非可信视觉上下文」注入请求,最后由原来的 DeepSeek 文本模型完成回答。 Umi-OCR 是离线 OCR 工具,提供文字识别能力,不做完整的多模态语义理解。纯截图、文档、验证码、界面文字这类场景非常合适;如果图片需要理解空间关系、物体语义,请改用真正的视觉大模型插件(例如 dsh-vision)。 工作原理 | 当前主模型 | 图片处理方式 | 最终回答者 | | 支持图片 | 原图直接发送,不经过 Umi-OCR | 当前模型 | | deepseek-official 等文本模型 | Umi-OCR 读取原图,OCR 文本作为非可信附件上下文注入 | DeepSeek | - 插件不会替换你在界面中选择的主模型。 - 多张聊天附件按顺序分别 OCR,然后一起放入同一次 DeepSeek 请求。 - OCR 结果标记为「非可信观察数据」,图片中出现的提示词不会获得系统权限。 - 不把图片发送到任何云端服务(HTTP 模式也默认只访问本机 127.0.0.1)。 安装 从本地源码目录安装(当前仓库) dsh plugin --profile web add /path/to/dsh-umi-ocr-vision 或打包成 tgz 后安装 dsh plugin --profile web add ./dsh-umi-ocr-vision-0.1.0.tgz 安装后重启 Harness。 准备 Umi-OCR 1. 下载并启动 Umi-OCR。 2. 确认 Umi-OCR 的 HTTP 服务已开启:默认监听 http://127.0.0.1:1224。 - 如果关闭了 HTTP 服务,请到 Umi-OCR「全局设置」中开启。 3. 可先用浏览器访问 http://127.0.0.1:1224/api/ocr/get_options 验证服务可用。 CLI 模式(可选) 如果你不想开 HTTP 服务,也可以让插件直接调用 Umi-OCR 命令行: settings.yaml 中 llm-deepseek 段落(或插件配置卡片) llm-deepseek: umiOcrMode: cli umiOcrCommand: "C:/Umi-OCR/Umi-OCR.exe" CLI 模式会先把图片写入临时目录,再执行: Umi-OCR.exe --path <image> --output <result.txt> 然后读取输出文件。CLI 模式需要 Umi-OCR 支持命令行调用。 配置 在 $DSH_HOME/settings.yaml 的 llm-deepseek 段落中配置(不需要重启): llm-deepseek: umiOcrBaseURL: http://127.0.0.1:1224 # Umi-OCR HTTP 地址 umiOcrMode: http # http 或 cli umiOcrCommand: "" # cli 模式时填写 Umi-OCR.exe 路径 umiOcrTimeoutMs: 120000 # 单张图片 OCR 超时(毫秒) maxImages: 8 # 单次请求最多处理图片数 cacheEntries: 64 # OCR 结果缓存条数 dataFormat: text # 说明:桥接和工具统一使用 Umi-OCR dict 格式以获取文本坐标;dataFormat 配置保留兼容但不再影响行为。 ocrLanguage: 简体中文 # Umi-OCR 语言/模型库(Rapid 版用 "简体中文") ocrCls: false # 是否启用方向纠正 ocrLimitSideLen: 960 # 图像边长限制 tbpuParser: multi_para # 排版解析方案 enableVisionTools: true # 是否启用 vision_* 工具集 artifactDir: .dsh-umi-vision/artifacts # vision_* 工具产物输出目录 longImageMaxHeight: 4096 # 长截图分块时单块最大高度 longImageOverlap: 80 # 长截图分块重叠像素 也可以直接在 Harness「设置 → 插件 → 插件配置」中修改同一份配置。 工具集 启用 enableVisionTools: true 后,插件会导出 createVisionTools,向 Harness 注册以下 vision_ 工具: - vision_ocr: 对图片执行 Umi-OCR,返回全文和行级坐标。 - vision_glance: 快速查看图片,返回尺寸和可见文本。 - vision_detect_text: 列出所有文本块及原始坐标。 - vision_ground_text: 按文本定位元素,返回 x1,y1,x2,y2,可生成裁剪预览。 - vision_crop: 裁剪图片区域并输出 PNG。 - vision_long_screenshot_ocr: 长截图分块 OCR,合并 Markdown 并保存 manifest。 - vision_dominant_colors: 分析主色调并返回 HEX 调色板。 - vision_pixel_diff: 对比两张图片,返回差异百分比、差异区域和可选热力图。 vision_ 工具的 artifacts 默认输出到 .dsh-umi-vision/artifacts。 sharp 是可选依赖。未安装时,OCR 类工具和自动桥接仍可用(自动桥接会退化为直接整图 OCR,不做长图分块);vision_crop、vision_dominant_colors、vision_pixel_diff、vision_long_screenshot_ocr 等图像处理工具需要安装 sharp。 开发 纯 JS 插件,无需构建: node --check lib/index.js node test/smoke.mjs 冒烟测试只检查插件导出契约,不要求 Umi-OCR 已运行、不需要 API Key。 License MIT
预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
paul-yangmy/dsh-umi-ocr-vision
把聊天图片转成 OCR 文字,让纯文本模型也能看图作答
相关插件 · 视觉能力
智能体工作台Devin-AXIS/iPolloWork
企业级、本地优先的智能体工作台,面向个人和智能体团队——一个工作区,容纳多个智能体引擎;一套统一体系,管理插件和技能;支…
★ 7,359已汉化DSH
72
开源设计工作台nexu-io/open-design
OpenDesign:首个协作式 AI 设计智能体工作区
★ 105,514已汉化DSH
71.8
多智能体编码工作区spacering-net/codeg
多智能体协作的 AI 编程工作区:汇总 Claude Code、Codex、OpenCode、Pi、Grok Build 等来源的会话。支持桌面应用、自托管服务器或 Docker。
★ 4,289已汉化DSH
71.6
GPT 图像提示词库freestylefly/awesome-gpt-image-2
Prompt as Code | GPT Image 2 / 2.5 提示词与案例库,530+ 个案例、20+…
★ 34,534已汉化DSH
71.5
架构图生成器tt-a1i/archify
把你想理解、规划或分享的事,变成可以互动的可视化作品。
★ 92,675已汉化DSH
71.2
AI 用量桌面小部件Javis603/token-monitor
EN | 简 | 繁 | KO | JA | PT
★ 3,522已汉化DSH
71
这是你的仓库?认领条目