dsh-modelprint:DeepSeek Harness 请求指纹识别与漂移检测插件

前言

DeepSeek Harness(DSH)开发智能体时,配置层面的变更(如注册新工具、修改系统提示词、调整采样参数)很容易导致调用行为发生漂移。开发者通常需要在本地调试或 CI 环境中验证请求参数是否与预期一致。

dsh-modelprint 专注于解决“当前请求的配置指纹是否与上一次已知良好的配置一致”这一问题。它不依赖网络请求或模型加载,仅通过读取本地文件进行对比。

这是什么

这是一个 DSH 插件,用于对每次请求的配置进行指纹识别,并通过 modelprint_check 工具对比当前 live card 与 pinned card,检测配置漂移。

插件由 jwilson411 维护,基于 MIT 许可证开源。其核心价值在于提供一种轻量级的配置一致性检查手段,帮助开发者确认 Harness 在组装请求时,是否使用了预期的 provider、model id、sampling、tool schemas 以及 system-prompt prefix。

核心功能

1. 请求指纹识别

插件会对 DSH 发出的请求进行标准化,生成一个“card”,包含以下字段:
* provider:提供者名称。
* model:实际发送的模型 ID。
* temperature:采样温度。
* top_p:采样核值。
* tools_hash:工具列表的 SHA-256 哈希值。
* system_prompt_prefix_hash:系统提示词前缀的 SHA-256 哈希值。

2. 配置对比与漂移检测

通过 modelprint_check 工具,将生成的 live card 与本地的 pinned card 进行比对。如果存在差异,工具会返回所有不一致的字段名称。

3. 零依赖与轻量化

  • 不涉及网络请求。
  • 不加载模型。
  • 无需密钥。
  • 仅依赖读取 pin 文件进行 I/O 操作。

4. 灵活的配置路径

支持通过 cordis.patch.yml 配置 pinPath,也可以通过环境变量 DSH_MODELPRINT_PIN 或默认路径 modelprint.pin.json 指定 pin 文件位置。

安装与启用

使用官方 CLI 命令安装该插件:

dsh plugin --profile web add github:jwilson411/dsh-modelprint

安装后,插件会自动将其 dsh.bundle.patch 声明附加到 profile manifest 中,并加载 cordis.patch.yml 配置层。

典型用法

1. 配置 Pin 路径

在 cordis.patch.yml 中配置 pin 文件的路径。优先级为:配置文件中的 config.pinPath > 环境变量 DSH_MODELPRINT_PIN > 默认的 modelprint.pin.json。

- id: modelprint
  config:
    pinPath: ./modelprint.pin.json

2. 生成 Pin 文件

第一次使用时,可以调用 modelprint_check 并指定一个不存在的 pin 路径,从返回的 PIN_MISSING 结果中复制 live 字段内容,生成 pin 文件。

{
  "provider": "deepseek",
  "model": "deepseek-chat",
  "temperature": 0.2,
  "top_p": null,
  "tools_hash": "841e5f22...",
  "system_prompt_prefix_hash": "d2c86f05..."
}

3. 调用检测工具

在代码或 CLI 中调用 modelprint_check 工具。如果不指定 pin 参数,则使用配置的路径;若指定 request_json,则仅对当前请求进行指纹比对,不会覆盖 pin 文件。

适用场景与注意

适用场景

  • 在 CI/CD 流程中验证 Harness 配置是否发生变化。
  • 在本地开发中确认工具注册顺序或系统提示词是否意外修改。
  • 需要快速排查请求参数异常的调试环节。

注意事项

  • 非认证产品:此插件不是水印检测、权重交换检测或模型认证工具。它只能证明发起请求的一侧配置未变,无法证明模型本身未被替换。
  • 故意误报:插件在检测到工具列表或系统提示词发生有意更改时,会产生误报。这是设计特性,旨在区分“有意的配置变更”和“意外的配置漂移”。
  • 环境要求:需要 Node.js 版本 >= 22.14.0。
  • 依赖关系:插件依赖于 @deepseek-ai/dsh-tools 版本 ^0.1.1-rc.2。

总结

dsh-modelprint 提供了一种基于配置指纹的漂移检测机制。通过将请求参数固化到 pin 文件中并定期比对,开发者可以更清晰地掌握 Harness 的行为轨迹。

更多详情请参考项目主页:GitHub | 技能社区目录

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

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

小夜