DSH 插件:使用 MarkItDown 转换文件为 Markdown

前言

DeepSeek Harness(DSH)采用插件化架构,通过扩展组件来丰富功能。在处理非文本文件(如 PDF、Word、Excel 等)时,大模型往往难以直接理解。dsh-tool-markitdown 插件通过 Microsoft MarkItDown 引擎,将文件在本地转换为 Markdown 格式,使大模型可以直接阅读和处理。

安装

在安装插件前,需先满足环境依赖:安装 Python 3.9+,并安装 MarkItDown 库。

0. 安装 MarkItDown

pip install "markitdown[all]"

安装完成后,可通过 python -m markitdown --version 验证版本号。

1. 安装插件

在 DSH Web 环境中,使用以下命令安装插件:

dsh plugin --profile web add dsh-tool-markitdown

2. 安装插件依赖

插件是独立目录,DSH 加载器会按插件路径解析依赖。安装插件代码后,需在插件目录内安装运行时依赖(schemastery):

cd dsh-tool-markitdown
pnpm install        # 或 npm install

使用

插件提供多种方式将文件转换为 Markdown。

输入框一键转换

点击输入框工具栏的 📄 按钮,选择文件。MarkItDown 会立即转换并在输入框插入 Markdown 内容(带注释头),发送前可编辑。

拖拽与自动转换

从右侧文件面板将文件拖拽到输入框,发送时插件会自动识别该行文件路径(如 docs/报告.pdf),将其转换为 Markdown 后再发送。

模型侧工具调用

在对话中,若用户提及本地路径、HTTP(S) 链接或上传后的 attachmentId,模型会自动调用 markitdown 工具进行转换后再阅读。

超长内容处理

默认单次返回 120,000 字符。超出时内容会被截断,并在结尾给出 attachmentId。模型可通过该 ID 调用接口获取完整内容。

配置与注意事项

可视化配置

在「设置 > 插件配置 > markitdown」中,可调整 Python 命令、文件大小上限、输出字符上限、超时时间以及发送时自动转换开关。

注意事项

  • 本地执行:转换在本地执行,不消耗 API 额度。
  • 原文件安全:磁盘上的原文件为只读状态,不会被修改或删除。上传的临时副本在转换完成后会立即清理。
  • 图片处理:默认不转换图片,图片仍优先走视觉识别。若需 OCR,需使用模型调用 markitdown 工具处理图片路径。
  • 依赖要求:转换功能依赖 Python 3.9+ 和 markitdown 库。
羽毛球分组比赛记分
小程序二维码

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

小夜