大模型視覺問答技能:在 Agent 裏對圖片做開放式 VQA

前言

做圖像相關需求時,常見做法是單獨接一套多模態 API,或在對話裏手寫上傳與 prompt 拼裝。圖片路徑、用戶身份、歷史記錄往往各寫一套,Agent 也很難穩定復現同一套流程。下面介紹 SkillHub 上的 Large Model Visual Question Answering Skill | 大模型視覺問答技能(座標 @user_bb47e3e3/visual-qa-analysis,當前版本 1.0.4):把「看圖 + 任意自然語言提問 + 雲端問答與歷史查詢」收斂成標準 SKILL.md 與配套腳本,由 Agent 按文檔觸發與執行。

這是什麼

一句話定位:基於計算機視覺與大語言模型的開放式圖片問答(VQA) Skill,支持對任意圖片提問並得到自然語言回答。

  • 出品與來源:社區發佈者 user_bb47e3e3,來源爲 community,分類 knowledge-management。
  • 解決的問題:統一圖片輸入(本地文件或公網 URL)、用戶標識(open-id)、調用後端 API 問答,以及從雲端拉取歷史問答清單;避免 Agent 自行拼接口或誤讀本地記憶充當歷史數據。

官方頁面:SkillHub - visual-qa-analysis。SkillHub 展示評分 100000,下載 656 次;技能標籤含 requires_api_key=true,表示運行鏈路與密鑰/身份配置相關,需按文檔準備。

核心功能

以下能力均來自該 Skill 的 SKILL.md(v1.0.4)說明:

  1. 開放式視覺問答:識別物體、場景、文字、圖表等視覺元素,結合 LLM 對用戶問題做推理,生成自然語言回答;支持多輪對話場景的描述(如圖像分析、文檔解讀、教育輔助等)。
  2. 雙通道圖片輸入:本地路徑(--input)或網絡圖片 URL(--url,由 API 服務下載,Agent 側無需先下載到本地)。
  3. 歷史問答清單:通過 --list 與 --open-id 從雲端接口查詢歷史記錄,並以 Markdown 表格輸出(含 reportImageUrl 跳轉鏈接);Skill 明確要求不得用本地 memory 或 LanceDB 替代雲端數據。
  4. 可配置輸出:--detail 支持 basic / standard / json;可選 --output 寫入結果文件。
  5. 格式與體積限制:圖片支持 jpg、png、jpeg、webp,單張最大 20MB。

腳本依賴:requests>=2.28.0(見 Skill 前置準備)。

安裝與啓用

安裝 SkillHub CLI(若尚未安裝)

先確認本機是否已有 CLI:

command -v skillhub && skillhub --version

未安裝時,可按 SkillHub 安裝說明 執行完整安裝或僅 CLI:

curl -fsSL https://skillhub-1388575217.cos.ap-guangzhou.myqcloud.com/install/install.sh | bash
curl -fsSL https://skillhub-1388575217.cos.ap-guangzhou.myqcloud.com/install/install.sh | bash -s -- --cli-only

安裝本 Skill

安裝時必須用 --dir 指向當前 Agent 實際使用的 skills 目錄,否則默認落在 ./skills/ 可能不會被識別。

skillhub install visual-qa-analysis --namespace user_bb47e3e3 --dir <你的 skills 目錄>

也可將下面提示交給 AI,讓其按官方安裝文檔操作:

請根據 https://skillhub.cn/install/skillhub.md,安裝 `@user_bb47e3e3/visual-qa-analysis`。

常見 Agent 的 skills 路徑(摘自 SkillHub 安裝文檔):

環境 skills 目錄
Cursor ~/.cursor/skills/
Claude Code ~/.claude/skills/
Codex ~/.codex/skills/ 或項目下 .agents/skills/

安裝完成後,按你所用客戶端要求刷新或重啓 Agent,使新 Skill 被加載。

身份與配置(open-id)

執行問答前,Skill 規定按優先級獲取 open-id(用作用戶標識,並可能與 scripts/config.yaml 中的 api-key 字段關聯):

  1. 技能目錄下 scripts/config.yaml 的 api-key;
  2. 若存在共享配置:skills/smyx_common/scripts/config.yaml 的 api-key;
  3. 用戶在本輪對話中明確提供的 open-id;
  4. 以上皆無則暫停並提示用戶提供用戶名或手機號作爲 open-id。

禁止自行編造 open-id。可選參數 --api-key 用於 API 訪問密鑰;未正確鑑權時按 Skill 說明處理。

典型用法

在技能根目錄下調用模塊(與官方示例一致):

# 本地圖片
python -m scripts.visual_qa_analysis \
  --input /path/to/image.jpg \
  --question "這張圖片裏有什麼內容?請描述一下" \
  --open-id <你的-open-id>

# 網絡圖片(URL 由 API 側下載)
python -m scripts.visual_qa_analysis \
  --url https://example.com/image.jpg \
  --question "圖片中有幾個人,他們在做什麼?" \
  --open-id <你的-open-id>

# 雲端歷史問答列表
python -m scripts.visual_qa_analysis --list --open-id <你的-open-id>

# 精簡輸出或落盤
python -m scripts.visual_qa_analysis \
  --input image.jpg \
  --question "描述一下這張圖片" \
  --open-id <你的-open-id> \
  --detail basic

python -m scripts.visual_qa_analysis \
  --input image.jpg \
  --question "請識別圖片中的文字內容" \
  --open-id <你的-open-id> \
  --output result.json

在 Agent 對話中的觸發方式(摘自 Skill 約定):用戶提供圖片 URL/文件並提問;或出現 VQA、看圖問答、圖片問答等關鍵詞且已上傳圖片;查詢歷史時使用「查看歷史問答記錄」「視覺問答歷史」等表述時,應走 --list 雲端查詢而非本地記憶。

接口細節與錯誤碼見技能內 references/api_doc.md(需要時再讓 Agent 讀取,避免撐爆上下文)。

適用場景與注意

適合誰

  • 需要在 Cursor、Claude Code、Codex 等環境中,用統一 Skill 完成「上傳或引用圖片 + 自由提問」的開發者或團隊。
  • 希望歷史問答與當前會話分離、由雲端歸檔並可列表查看的場景。

限制與注意

  • 回答由大模型生成,Skill 註明僅供參考,關鍵信息需人工覈實。
  • 必須準備有效 open-id 及(按需)API 密鑰;標籤 requires_api_key=true 表示不能假設零配置即可調用生產接口。
  • 歷史記錄只能走雲端 API;Skill 禁止讀取 memory/、MEMORY.md 或 LanceDB 作爲回退。
  • 僅使用技能自帶腳本,不要臨時生成替代腳本;網絡圖傳 URL 即可,無需 Agent 先下載到本地。

結尾

大模型視覺問答技能把 VQA 的輸入規範、身份獲取、API 調用與歷史清單輸出寫進同一套 Agent Skill,減少每次對話重新約定接口的行爲。若要安裝或查看元數據,請訪問 SkillHub 技能頁 或 API 座標頁 https://api.skillhub.cn/user_bb47e3e3/visual-qa-analysis。

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

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

小夜