opencode-eyes-nvidia:爲文本模型接入 NVIDIA NIM 視覺能力

前言

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 輪換和配置複雜的問題,適合需要在文本流中集成圖像理解的場景。

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

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

小夜