DeepSeek Harness (DSH) 的原生提供方配置通常作用於整個路由,無法區分同一路由下的不同模型。在企業網關、自研代理或 OpenAI 兼容端點的部署中,不同模型往往需要攜帶不同的請求頭(如租戶標識、計費標籤或自定義鑑權)。dsh-custom-headers 插件提供了按模型粒度管理請求頭的能力:定義命名的配置,並在模型調用時自動附加。
核心功能¶
- Per-model custom request headers:爲特定模型附加自定義 HTTP 請求頭。
- Define named header profiles:支持定義多個命名的請求頭配置,每個配置包含一組鍵值對。
- Auto-apply headers:調用模型時自動解析並附加選定的請求頭配置,實時生效,無需重啓。
- Persist configuration:配置保存在 DSH 自身的設置層中,重啓後保留。
- Validate header names and values:在保存時校驗請求頭名稱和值的合法性。
安裝與啓用¶
安裝前請確認已安裝 DeepSeek Harness 0.1.7-rc.1 或 0.1.5-rc.2。
通過 DSH CLI 將插件添加到指定的 Profile(以下示例使用 web Profile,請按需替換):
dsh plugin --profile web add dsh-custom-headers
如果插件託管在 GitHub,可以使用以下命令:
dsh plugin --profile web add github:EPCN-fla/dsh-custom-headers
或者安裝本地構建的 .tgz 包:
dsh plugin --profile web add /path/to/dsh-custom-headers-0.1.0.tgz
使用步驟¶
1. 創建請求頭配置¶
打開 設置 頁面,進入 插件 或 插件配置(取決於 DSH 版本):
- DSH 0.1.7+:在插件詳情頁找到 自定義請求頭 配置卡片。
- DSH 0.1.5:在 設置 → 插件 → 插件配置 中找到 自定義請求頭 卡片。
點擊卡片展開後,點擊 添加配置。爲配置命名(如 gateway),然後添加請求頭名稱與值。點擊 保存。系統會校驗 ID 是否重複、請求頭名稱和值是否合法。
2. 爲模型選擇配置¶
打開 設置 → 模型,展開某個提供方卡片,在 模型目錄 中找到目標模型。展開 容量 摺疊區,在 請求頭 下拉框中選擇配置:
- 默認:不附加自定義請求頭。
- 選擇具體配置 ID:該模型後續的每次調用都會自動附加該配置的請求頭。
配置存儲格式¶
插件將配置持久化在 DSH 的用戶設置中。在 DSH 0.1.7+ 版本中,數據存儲於 Profile 的 cordis 補丁中;在 0.1.5 版本中,數據存儲於用戶設置文檔的同名命名空間。
配置示例:
custom-headers:
profiles:
- id: gateway
headers:
- name: X-Tenant
value: acme
- name: X-Trace-Id
value: "1"
模型行上的選擇(llm-pi-ai 提供方配置):
llm-pi-ai:
providers:
acme:
models:
- id: my-model
headersProfile: gateway
適用範圍與限制¶
- 適配器限制:僅對 pi-ai 適配器(
llm-pi-ai)的調用生效。其他適配器(如deepseek-official)不經過此路徑,配置不會生效。 - 優先級規則:
- 提供方資料(Provider Profile)自帶的
headers優先級高於模型級的自定義請求頭。 - DSH 的歸屬標識頭(如
User-Agent)始終由 Harness 決定,同名自定義項會被過濾。 - 憑據認證頭(如
Authorization)由 SDK 管理,與自定義頭同名時,SDK 認證頭優先。
- 提供方資料(Provider Profile)自帶的
- 配置生效:修改配置或更換模型的選擇後,下一次請求立即生效,無需重啓進程。