dsh-pdf:DeepSeek Harness PDF 读取插件

DeepSeek Harness (DSH) 插件体系允许通过扩展来增强 AI 助手的能力。在文档处理场景中,读取 PDF 是常见需求,但通常面临文件大小限制(如 64KB)以及对扫描件或图片页无法直接读取的问题。dsh-pdf 插件通过 pdfjs-dist 提取完整 Unicode 文本层,并对扫描件/图片页自动 OCR,解决了这些痛点。

插件介绍

该插件由 henryxiao709 维护,旨在让 AI 助手读取任意大小的 PDF 文件。它通过 pdfjs-dist 提取完整的 Unicode 文本层,支持中文、英文及其他脚本;同时针对扫描件或图片页,提供自动 OCR 回退机制。插件采用 MIT 许可证。

核心能力

  • 分页读取:支持通过 pages 参数指定读取范围,如 "1-3"、"2"、"1,3-5" 或 "all"。
  • 无文件大小限制:默认单文件上限为 200MB,突破了常见的 64KB 限制。
  • 完整 Unicode 文本层:利用 pdfjs-dist 提取文本,支持多语言。
  • 自动 OCR 回退:在 auto 模式下,页面文字层字符数少于阈值时,会自动进行 OCR 处理。
  • 模式控制:提供 text(仅文本层,速度快)、ocr(强制 OCR)、auto(自动判断)三种模式。
  • OCR 引擎选择:支持 Windows WinRT OCR(零安装,需特定语言包)或 tesseract.js。

安装与启用

安装过程需要操作文件系统和 Node.js 环境。执行以下命令完成克隆和依赖安装,随后通过命令注入到运行中的 DSH 实例中。

  1. 克隆仓库:
    git clone https://github.com/henryxiao709/dsh-pdf.git
    cd dsh-pdf
  1. 安装依赖:
    npm install --ignore-scripts
  1. 注入运行实例:在 DSH 的 Agent 中执行以下命令,将本地路径注入:
    dev_install_package <绝对路径到 dsh-pdf>
或者,将插件添加到 `dsh.profile.bundles` 中,使其随 DSH 启动时自动加载。

使用方法

插件注册了 read_pdf 工具,支持通过参数控制读取范围和模式。

工具签名:

read_pdf file_path=... [pages="1-3"] [mode=auto|text|ocr] [ocrEngine=auto|windows|tesseract] [maxCharsPerPage=20000]

返回示例:

{
  "path": ".../test.pdf",
  "totalPages": 7,
  "mode": "auto",
  "pages": [
    { "number": 1, "text": "test… [OCR] test…", "source": "mixed", "chars": 163 },
    { "number": 2, "text": "1 test)…", "source": "text", "chars": 876 }
  ],
  "engines": ["windows: ok", "tesseract: unavailable (no traineddata)"],
  "warnings": []
}

每页返回 source 字段,标识数据来源:text(仅文本层)、ocr(仅 OCR)或 mixed(混合)。

系统要求与注意事项

  • 运行环境:需要运行中的 DeepSeek Harness 实例和 Node.js >= 20。
  • Windows OCR 限制:若使用 Windows OCR 引擎,系统需安装 zh-Hans-CN 和 en-US 语言包。
  • 依赖锁定:依赖的 @deepseek-ai/* 版本已锁定,无需手动链接。
  • 配置调整:通过 Settings → Plugins → dsh-pdf 可实时调整配置项(如 maxFileBytes、maxCharsPerPage 等)。
  • 许可证:MIT 许可证。

dsh-pdf 解决了 DSH 生态中 PDF 读取的文件大小限制和扫描件识别问题,适合需要在本地处理大量文档或非文本 PDF 的开发者。更多细节可参考 GitHub 仓库。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜