前言¶
DeepSeek Harness(DSH)通过插件机制接入各类 LLM provider,但内置的 google-vertex 路由基于 pi-ai 的静态模型目录,尚未包含 gemini-4-argon。同时直接使用该模型时,会遇到区域路由限制与多轮工具调用签名校验等协议问题,导致请求失败。本插件在 DSH 中注册独立的 gemini-argon 路由,通过 Vertex AI 原生 streamGenerateContent 接口稳定运行 gemini-4-argon。
核心能力¶
- 流式输出与思考摘要:支持流式文本生成与思考过程输出(
thinkingLevel可配置为off/low/medium/high;off为最低档LOW且不展示思考内容)。 - 原生多轮工具调用:基于原生 function calling,完整回放原生 parts 与
thoughtSignature,思考模式下也能稳定续接。 - 图片输入:用户消息和工具结果中的图片会按路由预算缩放,并以 Gemini
inlineData发送。 - 跨 Provider 工具历史:来自其他模型的工具调用没有 Gemini 签名,插件会自动降级为文本,切换模型不再触发 400。
- 流式稳定性:长时间收不到数据会以
TIMEOUT失败并交给重试策略,不会无限挂起。 - 可视化配置:在 Settings → Models 的 provider 卡片里直接编辑项目、认证、模型、思考档位、代理和 API Key。
- 精细化用量统计:完整统计输入、输出、思考 token 以及缓存命中情况。
- 智能代理探测:支持从环境变量、macOS 系统代理(
scutil)自动探测代理,或通过配置显式指定。 - API Key 凭据:默认接入 DSH 的 credentials 服务,同时支持通过启动环境变量注入。
- Service Account 支持:读取 service account JSON(文件、内联或
GOOGLE_APPLICATION_CREDENTIALS),自动完成 OAuth2 JWT 交换、access token 缓存与刷新。 - 结构化错误分类:精准识别并分类认证失败、配额耗尽、触发限流、上下文超限及非法请求等错误。
安装与启用¶
通过 npm 安装插件(推荐):
dsh plugin --profile desktop add dsh-gemini-argon
也可以固定到 GitHub 指定 tag:
dsh plugin --profile desktop add github:zh-plus/dsh-gemini-argon#v0.7.0
或从本地开发目录安装:
dsh plugin --profile desktop add file:/path/to/dsh-gemini-argon
安装完成后需重启 DeepSeek Harness,profile 的 bundle 列表仅在启动时加载。
配置¶
配置 Google Cloud Project¶
project 字段支持 Google Cloud Project ID 或 Project Number(纯数字),两者在 Vertex 的 projects/{project} 路径下等价。优先级为:配置中的 project > service account JSON 里的 project_id > 环境变量 GOOGLE_CLOUD_PROJECT。
获取方式可通过 Cloud Console、gcloud 命令或 service account JSON 文件。
配置认证¶
插件支持两种认证方式:
- Express API Key:在 Settings → Models 的
GOOGLE_VERTEX_API_KEY项中填入,DSH 会将其安全保存至$DSH_HOME/.credentials.yaml;CLI 模式下可通过环境变量传入。 - Service Account JSON:把 service account 密钥 JSON 放在本机,在 profile 补丁中指定文件路径(支持
~)或使用GOOGLE_APPLICATION_CREDENTIALS环境变量。
默认认证方式为 auth: auto,检测到 service account 时优先使用 JSON 密钥,否则使用 API Key;也可显式指定 auth: api-key / auth: service-account。
配置模型与参数¶
在 Settings → Models 的 Google Vertex AI provider 卡片中,可配置:
project:Google Cloud 项目(必填)auth:认证方式(auto/api-key/service-account)apiKeyEnv:API Key 环境变量名(默认GOOGLE_VERTEX_API_KEY)serviceAccountFile:Service account JSON 文件路径model/modelName:模型 ID 与展示名称thinkingLevel:思考级别(off/low/medium/high)proxy:代理配置- 高级项:
location(默认global)、baseURL、contextWindow、maxTokens、streamIdleTimeoutMs、imageMaxPixels、imageMaxBytes
保存后写入 profile 的 cordis.patch.yml,下一次模型请求生效,无需重启。
典型用法¶
重启应用后,在模型选择器中选择 Gemini 4 Argon(Provider 显示为 Google Vertex AI,路由 ID 为 gemini-argon)。
插件内置默认配置如下:
- insert:
- id: llm-gemini-argon
name: "dsh-gemini-argon"
config:
auth: auto
apiKeyEnv: GOOGLE_VERTEX_API_KEY
location: global
model: gemini-4-argon
modelName: Gemini 4 Argon
contextWindow: 1048576
maxTokens: 65536
thinkingLevel: "off"
可在配置文件中覆盖上述字段。
适用场景与注意¶
适合需要在 DSH 中使用 gemini-4-argon 模型,特别是需要流式输出、多轮工具调用、思考摘要、图片输入及精细化用量统计的场景。
注意:插件以当前 DSH 进程的权限运行,安装前建议检查源码与许可证;Service account JSON 文件不要提交至公开仓库。