人生這部戲
人生這部戲

目錄

在 OpenClaw 中整合 Vercel AI Gateway 實現圖像生成

這幾天在折騰 OpenClaw 的時候,突然想到一個問題:我的 AI 助理阿呆現在能做很多事了,但生成圖片這個基本的要求,似乎還沒有完美做到。目前生成圖片的最厲害的工具,莫過於 Google 的 NanoBanana, 這個模型不僅支持文字生成圖片,甚至能根據現有圖片進行編輯。如果集成到 OpenClaw 中,圖片生成則可完美解決。

說做就做。但很快就遇到了第一個難題。

身處香港,直接調用 Google 的 API 並不容易。由於各種原因,部分地區無法直接訪問 Google 的生成式 AI 服務。這時候就需要一個「橋樑」來解決這個問題。

Vercel AI Gateway 正好可以扮演這個橋樑的角色。它提供了一個統一的接口,讓我們可以通過它的網關來調用各種 AI 模型,包括 Google 的 Gemini 系列。

根據 Vercel 官方文檔,它支持多種圖像生成模型:

  • 多模態 LLM:如 google/gemini-3-pro-image(Nano Banana Pro),通過 Chat Completions API 調用
  • 專用圖像模型:如 Black Forest Labs 的 Flux 系列、Google 的 Imagen 系列,通過 Images API 調用

這意味著,我可以通過 Vercel 的網關,間接使用 Google 的圖像生成能力,而不用直接面對地域限制的問題。

接下來的問題是:如何在 OpenClaw 中整合這個能力?

OpenClaw 有一個 Skill 系統,類似於插件機制。我決定創建一個專門的 Skill 來處理圖像生成。這部分的具體實現,我交給了阿呆來處理——畢竟這種重複性的技術工作,正是 AI 助理的強項。

至於如何讓 AI 協助撰寫這個 Skill,我的做法是給她一個清晰的 Prompt,大致如下:

「請幫我創建一個 OpenClaw Skill,用於調用 Vercel AI Gateway 生成圖片。要求:

  1. 使用 Python 編寫,支持調用 google/gemini-3-pro-image 模型;
  2. 參考 Vercel 官方文檔的範例代碼(https://vercel.com/docs/ai-gateway/capabilities/image-generation/openai),使用 REST API 而非 OpenAI SDK(因為 SDK 無法正確解析圖片響應);
  3. 從環境變數 AI_GATEWAY_API_KEY 讀取 API Key,同時支持從配置文件讀取作為備選;
  4. 提供命令行參數支持 --model--prompt--output 等;
  5. 處理好錯誤情況,給出清晰的日誌輸出。」

當然,實際過程中需要來回溝通幾次,調試細節,但大體的框架 AI 可以很快搭建出來。

AI 助理協助生成圖片

整個過程大致如下:

  1. 研究 API 接口:仔細閱讀 Vercel 的文檔,了解如何通過 REST API 調用圖像生成
  2. 設計 Skill 結構:確定 Skill 的目錄結構、配置文件和主腳本
  3. 編寫生成腳本:使用 Python 調用 Vercel AI Gateway 的 API,處理請求和響應
  4. 配置 OpenClaw:在 ~/.openclaw/openclaw.json 中註冊 Skill,存入 API Key

這裡有個技術細節值得注意。根據 Vercel 文檔,不同類型的模型調用方式不同:

Nano Banana 這類多模態模型,使用 /v1/chat/completions 端點:

response = client.chat.completions.create(
    model='google/gemini-3-pro-image',
    messages=[{
        'role': 'user',
        'content': '生成一張夕陽下的維多利亞港'
    }]
)
# 圖片數據在 response.choices[0].message.images 中

Flux、Imagen 這類專用圖像模型,則使用 /v1/images/generations 端點:

result = client.images.generate(
    model='bfl/flux-2-pro',
    prompt='描述',
    response_format='b64_json'
)

我選擇了第一種方式,因為 Nano Banana 的效果確實令人印象深刻。

Skill 寫好後,自然要測試一下。

第一個測試 prompt 是「夕陽下的維多利亞港」。當阿呆把生成的圖片發給我時,確實有些驚艷——ICC 和 IFC 大廈清晰可見,天空的雲彩呈現出黃昏時分特有的橙紫色漸變,維港上還有傳統的紅色帆船點綴其間。

然後我想到了一個更有趣的點子:「一隻灰白色的英國短毛貓,像巨大怪獸一樣俯瞰著香港城市」。

結果出來後,我忍不住笑了。畫面中,一隻圓臉圓眼的英短(看起來很像我們家 Chimmy)以哥斯拉般的姿態懸浮在香港天際線上方,背景是夜幕降臨時分的維港夜景。這種反差感,正是 AI 圖像生成的樂趣所在。

現在,阿呆已經具備了圖像生成的能力。只要告訴她「生成一張某某的圖片」,她就能自動調用這個 Skill,為我生成各種圖像。

這個方案有幾個優點:

  1. 繞過地域限制:通過 Vercel 網關,無需直接訪問 Google API
  2. 統一計費:Vercel AI Gateway 的費用相對透明,便於控制成本
  3. 模型選擇靈活:可以根據需要切換不同的圖像生成模型
  4. 與 OpenClaw 深度整合:生成後的圖片可以直接發送到 Telegram 等渠道

當然,這只是一個開始。未來可以考慮加入更多功能,比如支持圖片編輯(image-to-image)、批量生成、或者與其他 Skill 結合(例如根據天氣數據生成相應的場景圖)。

技術的樂趣,往往就在這種不斷試驗和迭代的過程中。


作者: Frank
AI 助理: 阿呆(負責 Skill 開發與調試)
發布日期: 2026年3月7日

評論

載入中...
0/200 字符