前言¶
DeepSeek Harness 的核心设计理念是「一切皆插件」。在网页搜索这个环节,已有的官方 provider 适合通用场景,但对中文/国内信源的覆盖有限。腾讯云元宝搜索(SearchPro)以权威垂直领域和时效过滤见长,适合需要针对国内站点、政务与金融信源做检索的场景。本文介绍 dsh-web-search-yuanbao 插件,它把元宝搜索接入 Harness 的 ctx.web 搜索 provider,同时暴露 yuanbao_search 工具,让模型按需决定检索参数。
插件定位与维护者¶
dsh-web-search-yuanbao 是一个「联网工具」类插件,用于在 DeepSeek Harness 中使用腾讯云元宝搜索(SearchPro)作为网页搜索后端。维护者为 Alancere(作者为 Peng Jiahui)。它通过两条通道共用一个请求核心,实现无感替换 web_search 后端,并为模型提供 yuanbao_search 工具,支持模型侧按次调参。
核心功能¶
- 两条通道共用一个请求核心:
- ctx.web 搜索 provider:内置 web_search 工具无感替换搜索后端,工具接口不变。
- yuanbao_search 工具:模型直接调用,暴露元宝专有参数,让模型按需决定检索参数。
- 配置通过 Config(schemastery + volatile)声明,Harness 设置页会自动生成表单,改动即时生效。
- 支持中文/国内信源优先,包括微信、知乎、今日头条、国内云厂商文档等。
- 支持权威与时效过滤,通过 industry 和 freshness 参数实现(标准版起)。
- 版本感知:version 为 auto 时,从 Response.Version 判定极速/标准/旗舰,不支持的参数自动剥离并明示。
安装与启用¶
-
确保你的 DeepSeek Harness 运行环境满足 Node >= 20。
-
安装插件(从 npm):
dsh plugin --profile web add dsh-web-search-yuanbao
- 安装时也可锁定版本:
dsh plugin --profile web add dsh-web-search-yuanbao@0.2.2
- 从源码安装:
dsh plugin --profile web add github:Alancere/dsh-web-search-yuanbao
安装后检查 profile 的 package.json 中 dsh.profile.bundles 是否包含 dsh-web-search-yuanbao,然后重启 dsh web。
配置与密钥¶
前置:腾讯云侧¶
-
注册/登录腾讯云并完成实名认证。
-
访问控制台 https://console.cloud.tencent.com/wsapi/index → 开通元宝搜索服务,选择版本(极速/标准/旗舰)。
-
在概览页面选择「服务 API KEY 方式」并创建 API KEY,复制或下载 CSV(只显示一次)。
注意:每账号最多 3 个 KEY;子账号需 CAM 授予元宝搜索(WSA)全读写权限。极速版只接受 Query 与 Site,其他参数会被服务端静默忽略,需要这些能力需升级到标准版或旗舰版。
配置字段¶
插件导出的 Config 字段(均为 volatile,设置页保存后即时生效):
| 字段 | 类型 | 默认值 | 说明 |
|---|---|---|---|
| apiKey | secret | — | 字面量密钥,优先于环境变量 |
| apiKeyEnv | credential-ref | TENCENTCLOUD_WSA_APIKEY | 密钥引用名 |
| endpoint | string | https://api.wsa.cloud.tencent.com/SearchPro | 搜索端点 |
| version | enum | auto | auto 由服务端 Response.Version 判定;可强制 lite/standard/flagship |
| mode | enum | — | 0 公开网页 / 1 权威垂直信源 / 2 混合 |
| site | string | — | 单域名,或 exclude:a.com|b.com(最多 5 个) |
| industry | enum | — | gov / news / acad / finance |
| freshness | string | — | d7 / m3 / y1 / 2026-08-20 / 日期区间 |
| timeoutMs | number | 20000 | 单次搜索超时 |
| snippetChars | number | 500 | 摘要截断长度 |
| exposeTool | boolean | true | 是否注册 yuanbao_search 工具(改后需重启) |
密钥解析优先级¶
按以下顺序解析密钥:
- config.apiKey(设置页写入的值)
- ctx.credentials.resolve(apiKeyEnv)
- process.env[apiKeyEnv]
引用名默认为 TENCENTCLOUD_WSA_APIKEY,可用 apiKeyEnv 改成任意环境变量名。三个来源都没有时,错误码为 WEB_PROVIDER_CREDENTIAL_MISSING,提示信息会直接告诉你缺哪一层。
第三方用户配置自己的 API Key¶
-
在腾讯云创建自己的 API KEY。
-
安装插件:
dsh plugin --profile web add github:Alancere/dsh-web-search-yuanbao
dsh --profile web
-
在设置页「插件 → 已安装 → 元宝搜索」中填入 API Key 并保存(改动即时生效,不用重启)。
-
验证:询问一个有时效性的问题,工具结果首行应显示元宝搜索信息,如“元宝搜索「今日长沙天气」(极速版,10 条)”。
工具参数(yuanbao_search)¶
| 参数 | 类型 | 说明 |
|---|---|---|
| query | string(必填) | 搜索词 |
| count | integer enum | 10/20/30/40/50(服务端只接受这五档) |
| freshness | string | 时效范围 |
| industry | enum | 垂直领域 |
| site | string | 站点定向/排除 |
| mode | integer enum | 结果类型 |
调用参数优先于设置页的默认值(query 除外)。工具返回的文本首行会写明生效版本与被忽略的参数。
版本能力矩阵与降级¶
| 能力 | 极速版 | 标准版 | 旗舰版 |
|---|---|---|---|
| Query | ✅ | ✅ | ✅ |
| Site | ✅ | ✅ | ✅ |
| Cnt / Mode / Industry / Freshness | ❌ | ✅ | ✅ |
| 返回 content / pics | ❌ | ✅ | ✅ |
| authority_level / deeplinks | ❌ | ❌ | ✅ |
降级有两条路径:
- 按探测到的版本预先裁剪:知道是 lite 就只发 Query(+ Site)。
- 事后纠偏:版本未知时先发全参数;收到 InvalidParameter 就记住 lite 并重试一次。实测极速版可能不报错、直接忽略这些参数,此时按最终版本重新结算哪些参数没被采纳,在结果里明示。
错误码映射¶
| 元宝错误码 | 本插件 code |
|---|---|
| UnauthorizedOperation / 401 / 403 | WEB_PROVIDER_UNAUTHORIZED |
| ResourceNotFound | WEB_PROVIDER_NOT_SUBSCRIBED |
| ResourceUnavailable | WEB_PROVIDER_UNAVAILABLE |
| RequestLimitExceeded | WEB_PROVIDER_RATE_LIMITED |
| InvalidParameter | WEB_PROVIDER_ERROR(内部触发一次降级重试) |
| 无密钥 | WEB_PROVIDER_CREDENTIAL_MISSING |
| 超时 | WEB_PROVIDER_TIMEOUT |
| 取消 | WEB_ABORTED |
已知限制¶
- 没有 fetch:web_fetch 仍由 dsh-web-fetch-http 提供。
- 设置页下拉里没有它:内置「网页搜索」卡片只列官方 provider;元宝的配置走自己那张自动生成的表单,切换 provider 仍要改补丁或 DSH_WEB_SEARCH_PROVIDER。
- 无 schema 校验时静默忽略:以 link: 方式安装时,Config 为 undefined,配置键名写错不会报错。
- Cnt 是档位不是精确值:要 8 条也得请求 10 条,由 seam 截断到 maxResults。
常见问题¶
| 现象 | 原因 |
|---|---|
| 设置页里找不到「元宝搜索」 | 插件没真正加载:检查 profile 的 dsh.profile.bundles 是否含 dsh-web-search-yuanbao,装完要重启 |
| 表单是空的 / 字段不显示 | 用 link: 安装导致 @deepseek-ai/schemastery 解析失败;改用 github: 或 tarball |
| 报 ResourceNotFound | 腾讯云侧没开通元宝搜索服务 |
| 报 UnauthorizedOperation | Key 错了/失效,或子账号没有 WSA 全读写权限 |
| 结果里说“已忽略 count/freshness” | 你的套餐是极速版,换成标准版/旗舰版才生效 |
| 填了参数但结果一样 | 同上,极速版服务端直接忽略这些参数 |
| web_search 仍像在走别的引擎 | 有另一个可用 provider 抢了选择权;用 DSH_WEB_SEARCH_PROVIDER=yuanbao 或改 web 行的 searchProvider |
适用场景与注意事项¶
适合需要中文/国内信源、权威垂直领域与时效过滤的场景。插件以当前 dsh 进程权限运行,安装前建议检查源码与许可证(MIT)。社区目录 https://www.skillhub.cn/plugins/Alancere/dsh-web-search-yuanbao 与 DeepSeek / 幻方无官方从属关系。
短结尾¶
dsh-web-search-yuanbao 让 Harness 在网页搜索时优先使用元宝搜索,并通过 yuanbao_search 工具把检索参数交给模型自主决策,适合对中文/国内信源和时效性有要求的场景。插件目录与 GitHub 链接见上文。