前言¶
做圖像相關需求時,常見做法是單獨接一套多模態 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)說明:
- 開放式視覺問答:識別物體、場景、文字、圖表等視覺元素,結合 LLM 對用戶問題做推理,生成自然語言回答;支持多輪對話場景的描述(如圖像分析、文檔解讀、教育輔助等)。
- 雙通道圖片輸入:本地路徑(
--input)或網絡圖片 URL(--url,由 API 服務下載,Agent 側無需先下載到本地)。 - 歷史問答清單:通過
--list與--open-id從雲端接口查詢歷史記錄,並以 Markdown 表格輸出(含reportImageUrl跳轉鏈接);Skill 明確要求不得用本地 memory 或 LanceDB 替代雲端數據。 - 可配置輸出:
--detail支持basic/standard/json;可選--output寫入結果文件。 - 格式與體積限制:圖片支持 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 字段關聯):
- 技能目錄下
scripts/config.yaml的api-key; - 若存在共享配置:
skills/smyx_common/scripts/config.yaml的api-key; - 用戶在本輪對話中明確提供的 open-id;
- 以上皆無則暫停並提示用戶提供用戶名或手機號作爲 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。