dsh-knowledge-base:在 DeepSeek Harness 裏自建跨境選品知識庫

前言

做跨境選品相關的 Agent,常見做法是每次把規範、閾值、合規清單整段貼進對話,或靠外部向量庫。文檔一多,上下文難維護,回答也難和「你自己的資料」對齊。DeepSeek Harness(DSH)支持以插件擴展 Web 宿主:工具、系統提示、側欄頁面都可以掛在同一套 profile 上。

下面介紹社區插件 dsh-knowledge-base(維護者 qinshige,分類:記憶)。它在 Harness 左側欄增加「我的知識庫」入口,支持上傳跨境選品類文檔;之後在任意對話裏提問時,Agent 會先檢索知識庫再作答,並引用文檔標題。知識庫清單還會以動態上下文注入每次模型請求,模型不必先調工具就知道庫裏有哪些文檔。

這是什麼

  • 名稱:dsh-knowledge-base(npm 包名同此)
  • 版本(資料記載):0.1.0
  • 許可證:MIT
  • 定位:純 JS 源包,無構建步驟、無第三方依賴;爲 DSH 0.2.x(README 實測 0.2.1-rc.5)提供左側欄知識庫頁面、6 個 kb_* 工具,以及面向跨境選品的系統提示規則。

插件不依賴廠商 API Key 或外部網絡服務,裝完後可離線使用本機知識庫與檢索。

核心功能

左側欄與知識庫頁面

  • 左側欄面板圖標區新增「我的知識庫」,點開爲完整管理頁。
  • 上傳:拖拽或多選文件,按分類入庫;逐文件顯示狀態與失敗原因。
  • 列表:標題、分類、字數、片段數、入庫時間、正文首行預覽;可改分類。
  • 檢索測試:頁內關鍵詞檢索,命中片段高亮,可跳轉預覽。
  • 預覽 / 刪除:全文彈層預覽;刪除需兩步確認且不可恢復。

給 Agent 的六個工具

工具 作用
kb_list_documents 列出文檔與統計,回答前確認覆蓋範圍
kb_search 中文 BM25(bigram 分詞),返回片段、標題、docId
kb_read_document 按片段讀取全文,避免一次撐爆上下文
kb_add_document 從本機路徑導入(如用戶要求把某文件加入知識庫)
kb_update_document 修改標題 / 分類
kb_delete_document 刪除(須用戶明確同意,且 confirm: true)

系統提示與問答策略

  • 靜態規則:跨境選品問題 → 先 kb_search,不夠再 kb_read_document → 回答時引用文檔標題;庫內沒有的內容須標註爲「知識庫外的通用經驗」。
  • 動態上下文:每次請求注入當前文檔清單(標題、分類、字數、id);庫爲空時給出上傳指引。

支持格式與限制

支持:.md、.markdown、.txt、.csv、.tsv、.json、.html、.yml、.yaml、.docx、.xlsx。
不支持 PDF 及 .doc / .xls / .ppt 等舊格式(README 建議另存爲 .docx / .txt 後上傳)。

單文件 ≤ 25MB,單篇正文 ≤ 60 萬字(超出截斷)。原始文件字節不保留,只保存提取後的正文,因此不支持「下載原文件」。HTTP 接口僅接受本機環回訪問。

安裝與啓用

插件以當前 DSH 進程的權限運行;安裝前建議瀏覽 GitHub 倉庫 源碼並確認 MIT 許可證。以下命令均摘自 README。

方式 A:Release tarball(推薦)

# 本地文件
dsh plugin --profile <profile> add /絕對路徑/dsh-knowledge-base-0.1.0.tgz
# 或 Release 直鏈
dsh plugin --profile <profile> add https://github.com/qinshige/dsh-knowledge-base/releases/download/v0.1.0/dsh-knowledge-base-0.1.0.tgz

# 確認已進入層棧
dsh --profile <profile> --dump-config | grep dsh-knowledge-base

裝完後重啓 Harness 並刷新 Web 頁面;左側欄出現「我的知識庫」即表示成功。

方式 B:Git 倉庫地址

dsh plugin --profile <profile> add https://github.com/qinshige/dsh-knowledge-base.git

README 提醒:Git 依賴可能觸發 pnpm 構建閘門;本插件無構建腳本,tarball 更省事。若用倉庫地址,可用 --ignore-scripts 或先以目錄方式 add。

方式 C / D

  • npm 發佈包名:dsh plugin --profile <profile> add dsh-knowledge-base(若包名衝突需改 scope 並同步 cordis.patch.yml 與 client.js 模塊 id)。
  • 本地開發:dsh plugin add <目錄絕對路徑>,pnpm link,改代碼可較快迭代。

升級需重裝對應版本並重啓 Harness;數據目錄與包版本無關,升級不丟文檔。

兼容性:需要帶 webServer / systemPrompt / tools 的標準 Web profile(desktop、dsh web 默認即可);DSH 0.2.x 實測可用。

典型用法

  1. 左側欄點「我的知識庫」。
  2. 把文檔拖進上傳區(或「選擇文件」),選分類,等狀態爲「已入庫」。
  3. 回到任意對話提問,例如:
    - 「按照我的知識庫,新手做亞馬遜美國站應該按什麼標準選品?」
    - 「我的知識庫裏關於物流成本的閾值是多少?」
    - 「把知識庫裏合規相關的內容整理成清單」
  4. 也可在對話中說:「把 ~/Desktop/選品資料.docx 加進知識庫」,Agent 會調用 kb_add_document。

倉庫自帶 sample/跨境選品示例文檔.md,上傳後即可驗證問答。

數據存放與備份

內容 位置
文檔正文 + 元數據 $DSH_HOME/knowledge-base/docs/<id>.json
未設置 DSH_HOME ~/.dsh/knowledge-base/docs/

頁面底部會顯示實際數據目錄。備份或遷移時拷貝整個 knowledge-base/ 目錄即可。檢索索引爲內存派生緩存,啓動後首次檢索時按需構建。

適用場景與注意

適合:在 DSH 裏做跨境選品諮詢、內部 SOP/閾值/合規類問答,希望回答優先 grounded 在你自己上傳的 Markdown、Office 表格等資料上,且願在本機維護文檔、接受環回 HTTP 與無 PDF 解析的限制。

注意:

  • 插件與 Harness 同權限,勿上傳含敏感憑證的文檔到共享環境。
  • kb_delete_document 需用戶明確同意;界面刪除不可恢復。
  • 社區目錄 SkillHub 插件頁 與 GitHub 爲分發與說明入口,與 DeepSeek / 幻方無法官方從屬關係;DSH 生態理念是「一切皆插件」。

結尾

dsh-knowledge-base 把「上傳—分塊—BM25 檢索—工具化問答」收進一個無第三方依賴的 DSH 插件:有獨立管理頁,又有 kb_search 等與系統提示聯動的 Agent 工作流。若你正在 Harness 上迭代選品類 Agent,可先裝 Release tarball,用示例文檔跑通檢索與引用,再遷入自己的資料庫。

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

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

小夜