opencode-eyes-nvidia: Integrating NVIDIA NIM Vision Capabilities into Text Models

前言

DeepSeek Harness 的插件生态允许开发者扩展模型能力。对于纯文本模型而言,缺乏视觉理解能力是常见的限制。opencode-eyes-nvidia 插件通过 NVIDIA NIM 为 Harness 提供了视觉推理能力,使文本模型能够“看见”并处理图像。

插件定位

  • 名称:opencode-eyes-nvidia
  • 维护者:bauerelizabeth07139
  • 协议:MIT
  • 核心价值:为不具备多模态能力的模型提供视觉接口,默认通过 MiniMax-M3 模型进行图像描述。

安装与启用

在终端中执行以下命令将插件安装到 web 配置文件:

dsh plugin --profile web add bauerelizabeth07139/opencode-eyes-nvidia

如果系统未安装 Git,可以使用 tarball 地址进行安装:

dsh plugin --profile web add https://codeload.github.com/bauerelizabeth07139/opencode-eyes-nvidia/tar.gz/main

卸载时执行:

dsh plugin --profile web remove dsh-opencode-eyes-nvidia

前置条件

  • Python:版本需 ≥ 3.8,且在 PATH 环境变量中可用。
  • Pillow:Python 环境中需安装该库(pip install Pillow)。
  • NVIDIA API Key:至少需要一个有效的 NVIDIA API 密钥。

核心功能

该插件主要提供以下能力:
1. 多模型支持:集成 7 个 NVIDIA 托管的视觉模型,默认为 minimaxai/minimax-m3。
2. 密钥轮换:当 API Key 遇到限流或失败时,自动切换到下一个 Key,无需人工干预。
3. MCP 服务器:插件内部打包了 MCP 服务器,安装即用,无需手动配置 mcpServers 文件。
4. 工具集:暴露两个工具,自动注册为 mcp__opencode_eyes_nvidia__<tool>。

工具使用

插件注册了两个工具,调用时需注意 DSH 的命名空间前缀。

describe_image

向选定的视觉模型发送图像并获取描述。参数包括:
- image_path(必填):本地图像路径。
- prompt(可选):描述提示词。
- model(可选):指定模型 ID。

list_vision_models

返回当前可用的视觉模型列表,当配置了有效的 API Key 时,会查询 /models 接口。

配置说明

插件通过 cordis.patch.yml 加载。以下是关键配置项:

配置项 环境变量 默认值 说明
model NVIDIA_MODEL minimaxai/minimax-m3 默认使用的视觉模型 ID
apiKey NVIDIA_API_KEY (空) 轮换密钥环中的第一个 Key
env — {} 用于透传多个 Key 或其他环境变量
timeoutSeconds NVIDIA_TIMEOUT 120 服务器自身的 HTTP 超时时间
maxDimension NVIDIA_MAX_DIMENSION 2048 图像边缘缩放的最大尺寸
jpegQuality NVIDIA_JPEG_QUALITY 85 重编码图像的 JPEG 质量
thinkingMode NVIDIA_THINKING_MODE (未设置) 仅对包含 minimax 的模型生效,取值 enabled / disabled / adaptive
toolCallTimeoutMs — 300000 DSH 单次调用的预算时间

配置示例(多 Key 轮换):

- id: dsh-opencode-eyes-nvidia
  name: 'dsh-opencode-eyes-nvidia'
  config:
    apiKey: 'nvapi-first-key'
    model: 'minimaxai/minimax-m3'
    env:
      NVIDIA_API_KEYS: 'nvapi-first-key,nvapi-second-key'
      NVIDIA_ROTATION_BACKOFF: '2'

注意事项

  1. ThinkingMode 限制:thinkingMode 配置仅在模型 ID 包含 minimax 时才会生效,否则会被忽略。
  2. 凭证安全:DeepSeek Harness 会自动过滤子进程继承环境变量中的凭证类变量(如 KEY, TOKEN 等)。因此,建议通过插件的 config.apiKey 或 config.env 显式传递密钥,而非直接在全局环境变量中设置。
  3. 独立运行:该插件仅是 opencode-eyes-nvidia 项目的 DSH 封装,其核心服务器本身是一个标准的 stdio MCP 服务器,可在其他支持 MCP 的环境中独立运行。

结语

opencode-eyes-nvidia 插件通过封装 NVIDIA NIM,为 Harness 提供了低成本、高兼容性的视觉接入方案。它解决了多 Key 轮换和配置复杂的问题,适合需要在文本流中集成图像理解的场景。

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

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

Xiaoye