前言¶
DeepSeek Harness (DSH) 的核心設計理念是「一切皆插件」。在構建長上下文智能體或需要深度推理的任務時,通常需要對接支持 1M 上下文和結構化思考能力的模型。dsh-llm-longcat 是一款爲此設計的適配器插件,它將 LongCat-2.0 接入 DSH 的 LLM seam,提供長上下文處理、思考模式回溯以及原生工具調用能力。
是什麼¶
dsh-llm-longcat 是由維護者 ffyuuu 開發的 DeepSeek Harness 插件。它作爲一個模型提供商,連接了 LongCat-2.0 模型。該插件解決了在 Harness 生態中直接使用 1M 上下文模型、解析模型思考鏈以及處理工具調用參數的需求。
核心功能¶
插件實現了以下核心能力:
- 思考模式:識別 LongCat 的
reasoning_content字段,並將其轉換爲 Harness 的ReasoningBlock結構,以便在界面或日誌中展示模型的思考過程。 - 工具調用:提供完整的函數調用支持,且在端到端的傳輸中保持
arguments爲原始 JSON 字符串。 - 多輪對話:在包含工具調用的輪次中回放
reasoning_content,確保思考鏈在複雜交互中不丟失。 - 流式傳輸:使用 SSE 協議傳輸,並嚴格遵循 Harness 要求的
usage優先於finish的順序。 - 憑據 seam:密鑰不寫入配置文件,而是通過
ctx.credentials或環境變量按請求解析。
安裝與啓用¶
安裝插件需要使用 DSH 的插件管理命令。安裝腳本會在本地機器上運行,而非在 DSH 進程的沙箱環境中。
dsh plugin --profile default add github:ffyuuu/dsh-llm-longcat
安裝完成後,需要配置 API 密鑰。建議通過環境變量設置,避免密鑰泄露:
export LONGCAT_API_KEY=...
如果需要鎖定特定版本以防止未來的代碼變更影響執行,可以使用 commit hash:
dsh plugin --profile default add github:ffyuuu/dsh-llm-longcat#3dcb3b1b5870ba52baab053453bdbb28826e5f13
典型用法¶
在 DSH 的配置文件(如 $DSH_HOME/settings.yaml)中添加插件定義。默認的 apiKeyEnv 爲 LONGCAT_API_KEY,baseURL 可選。
- id: llm-longcat
name: dsh-llm-longcat
config:
apiKeyEnv: LONGCAT_API_KEY
baseURL: https://api.longcat.chat/openai/v1
thinking: enabled
reasoningEffort: high
maxTokens: 131072
defaultContextWindow: 1048576
streamIdleTimeoutMs: 300000
retryPolicy:
mode: normal
maxRetries: 3
models:
- id: LongCat-2.0
contextWindow: 1048576
配置中的 thinking 字段控制推理模式的啓用狀態,reasoningEffort 目前僅支持 high 和 off 兩個二進制級別。
適用場景與注意¶
- 適用場景:需要處理百萬級 Token 上下文的任務,或者需要 Harness 能夠展示模型內部推理鏈(Chain of Thought)的場景,以及涉及複雜工具調用的對話。
- 限制說明:
- 無圖像輸入:LongCat-2.0 僅支持 text->text 模態,插件會拒絕圖片內容。
- 無停止序列:
stop參數不在supported_parameters中,傳入該參數會報錯。 - 推理二進制:不支持低/中/高推理強度的梯度,僅支持開啓或關閉。
- 安裝注意事項:
- 插件安裝腳本在沙箱外運行,需確保對源碼和許可證(MIT)的信任。
- 在某些環境下,安裝 Harness 本身可能遇到上游依賴問題,例如
dsh-typert-protocol版本不匹配或 npm 堆內存耗盡。這通常是因爲@deepseek-ai/dsh發佈了0.1.0-rc.8而依賴包停留在0.1.0-rc.7。可以通過 npm overrides 鎖定版本解決,但這不影響插件本身的兼容性。
總結¶
dsh-llm-longcat 爲 DeepSeek Harness 提供了長上下文模型(1M 上下文)和思考模式的對接能力。它通過處理 reasoning_content 和原生工具調用支持,完善了 Harness 在複雜推理任務中的生態鏈。更多細節可參考 GitHub 倉庫 或 社區目錄。