前言¶
在 DeepSeek Harness(DSH)中使用文本模型時,常見的問題是:模型本身只支持文本輸入,但用戶仍希望把圖片附加到會話中,讓模型基於圖片裏的文字繼續回答。
如果不想把圖片字節直接發給模型 API,也不想修改模型輸入模態,可以先做本地 OCR,再把識別出來的文本發給模型。dsh-tesseract-ocr 就是爲此提供的 DSH 插件。
這是什麼¶
dsh-tesseract-ocr 是一個 DeepSeek Harness 插件,倉庫標識爲 maxwell-feng/dsh-tesseract-ocr,許可證爲 MIT。
它的作用是:讓文本模型接受附加圖片。插件在本地調用 Tesseract OCR 識別圖片,默認只把識別出的文本發送到模型 API。
它適合使用 DSH、希望文本模型也能處理圖片附件,並且希望默認不把圖片原始字節發送給模型提供商的場景。
核心功能¶
dsh-tesseract-ocr 提供的能力包括:
- 讓文本模型接受附加圖片。
- 使用 Tesseract OCR 在本地識別附加圖片。
- 默認只把識別出的文本發送到模型 API。
- 默認將圖片字節保留在本地,不發送給模型提供商。
- 提供可選的視覺模型直通:
passthrough: true。 - 當插件未加載時採用 fail-closed 行爲,拒絕圖片附件。
- 可以與 DSH 中的 providers/models 配合使用,不要求修改模型輸入模態。
安裝與啓用¶
1、準備 Tesseract¶
插件依賴本地 tesseract CLI。以下以 Ubuntu 爲例安裝 Tesseract 和簡體中文語言包:
sudo apt install -y tesseract-ocr tesseract-ocr-chi-sim
安裝後檢查版本和可用語言:
tesseract --version
tesseract --list-langs
2、安裝插件¶
使用 DSH 插件命令安裝:
dsh plugin --profile web add dsh-tesseract-ocr
--profile web 是示例 profile,使用時可替換爲你自己的 profile。
也可以從本地源碼目錄、本地 tarball 或 GitHub 倉庫安裝。已覈實的安裝方式包括:
dsh plugin --profile web add ./dsh-tesseract-ocr
dsh plugin --profile web add ./dsh-tesseract-ocr-0.3.2.tgz
dsh plugin --profile web add github:maxwell-feng/dsh-tesseract-ocr
注意:Git 安裝拉取的是源碼,而不是已經構建好的產物。該流程中 prepare 腳本會執行 tsc,在 pnpm 10 及以上版本中可能需要先允許一次構建。
3、手動加載插件¶
如果你不使用 npm 包安裝,而是手動加載插件,可以把下面配置追加到 profile 的 cordis.patch.yml 中:
- insert:
- id: tesseract-ocr
name: '/home/you/tesseract-ocr/lib/index.js'
config:
language: eng+chi_sim
passthrough: false
這裏:
language: eng+chi_sim表示同時啓用英文和簡體中文識別。passthrough: false表示默認不把原始圖片字節發送給視覺模型,只發送 OCR 後的文本。
手動路徑必須指向插件入口文件。在 Windows 上,手動路徑需要使用 file:// URL;在 Linux 上也可以使用普通絕對路徑。
4、使用臨時 patch overlay¶
如果只想臨時啓用,不想修改 profile,可以把同樣的插件行放在 overlay 文件中,然後啓動 DSH:
dsh --profile web --patch /home/you/tesseract-ocr/dev.patch.yml
典型用法¶
安裝並啓用後,在 DSH 會話中附加圖片時,插件會用本地 Tesseract OCR 識別圖片,並默認只把識別出的文本發送給模型 API。
如果確實希望視覺模型接收原始圖片字節,需要顯式開啓直通:
config:
language: eng+chi_sim
passthrough: true
如果插件沒有被加載,它不會靜默放行圖片附件,而是拒絕圖片附件。
適用場景與注意¶
dsh-tesseract-ocr 適合以下場景:
- 使用 DSH 的文本模型,但希望它也能基於圖片中的文字回答。
- 希望默認保留圖片字節在本地,不把原始圖片發送給模型提供商。
- 不希望修改模型
input modalities這類模型配置。 - 使用本地 Tesseract CLI,並且機器上已安裝對應語言包。
使用前請注意:
- 插件會以當前 DSH 進程權限運行,安裝前應檢查源碼與許可證。
- 不要同時啓用
windows-ocr,因爲兩者會處理同一張圖片。 - 只選擇一種加載方式:npm 包安裝或手動
insert配置,不要同時重複註冊同一個插件入口。 - npm 安裝會自行註冊
tesseract-ocr條目,不要另外再手動添加相同id的insert行。 dsh web出現EADDRINUSE時,可能表示舊實例仍佔用端口,需要先停止舊進程再啓動。- 該插件以 Ubuntu 作爲主要驗證目標,並在安裝了
tesseractCLI 的環境中可用。 - 已對照
dsh 0.1.2-alpha.2(master)驗證。
鏈接¶
GitHub:
https://github.com/maxwell-feng/dsh-tesseract-ocr
目錄頁:
https://www.skillhub.cn/plugins/maxwell-feng/dsh-tesseract-ocr