H繁中版
文件user-guideimage generation
<!-- Source: https://hermesbible.com/docs/user-guide/features/image-generation -->

Section: Core Features · URL: https://hermesbible.com/docs/user-guide/features/image-generation

圖像生成

Hermes Agent 透過 FAL.ai 從文字提示生成圖像。開箱即支援十一款模型,各自在速度、品質和成本之間有不同的取捨。使用者可透過 hermes tools 設定目前使用的模型,設定會儲存在 config.yaml 中。

支援的模型

模型速度特色價格
fal-ai/flux-2/klein/9b (預設)<1s快速、文字清晰$0.006/MP
fal-ai/flux-2-pro~6s影棚級照片寫實$0.03/MP
fal-ai/z-image/turbo~2s雙語 EN/CN、6B 參數$0.005/MP
fal-ai/nano-banana-pro~8sGemini 3 Pro、推理深度、文字渲染$0.15/image (1K)
fal-ai/gpt-image-1.5~15s提示詞遵從性$0.034/image
fal-ai/gpt-image-2~20s頂級文字渲染 + CJK、具備世界知識的照片寫實$0.04–0.06/image
fal-ai/ideogram/v3~5s最佳排版效果$0.03–0.09/image
fal-ai/recraft/v4/pro/text-to-image~8s設計、品牌系統、可直接用於生產環境$0.25/image
fal-ai/qwen-image~12s基於 LLM、複雜文字$0.02/MP
fal-ai/krea/v2/medium/text-to-image~15-25s插畫、動漫、油畫、表現性/藝術風格$0.030–0.035/image
fal-ai/krea/v2/large/text-to-image~25-60s照片寫實、原始質感(動態模糊、顆粒感、膠片風格)$0.060–0.065/image

價格為撰寫時 FAL 的定價;請查閱 fal.ai 以取得最新資訊。

設定

提示 — Nous 訂閱者

如果你有付費的 Nous Portal 訂閱,可以透過 Tool Gateway 使用圖像生成功能,無需 FAL API 金鑰。你的模型選擇會在兩種途徑之間共用。新安裝可以執行 hermes setup --portal 登入並一次啟用所有閘道工具;既有安裝可以透過 hermes tools 選擇 Nous Subscription 作為圖像生成的後端。

如果託管閘道對特定模型回傳 HTTP 4xx,表示該模型尚未在 Portal 端提供代理——Agent 會告知你,並提供補救步驟(設定 FAL_KEY 以直接存取,或選擇其他模型)。

取得 FAL API 金鑰

  1. fal.ai 註冊帳號
  2. 從控制台產生 API 金鑰

設定與選擇模型

執行 tools 指令:

hermes tools

導覽至 🎨 Image Generation,選擇你的後端(Nous Subscription 或 FAL.ai),接著選擇器會以欄位對齊的表格顯示所有支援的模型——使用方向鍵導覽,按 Enter 選擇:

  Model                          Speed    Strengths                    Price
  fal-ai/flux-2/klein/9b         <1s      Fast, crisp text             $0.006/MP   ← currently in use
  fal-ai/flux-2-pro              ~6s      Studio photorealism          $0.03/MP
  fal-ai/z-image/turbo           ~2s      Bilingual EN/CN, 6B          $0.005/MP
  ...

你的選擇會儲存至 config.yaml

image_gen:
  model: fal-ai/flux-2/klein/9b
  use_gateway: false            # true if using Nous Subscription

GPT-Image 品質

fal-ai/gpt-image-1.5fal-ai/gpt-image-2 的品質固定為 medium(在 1024×1024 解析度下約 $0.034–$0.06/張)。我們不將 low / high 級別作為使用者選項開放,以確保所有使用者在 Portal 計費上保持可預測——各級別之間的成本差距為 3–22 倍。如果需要更便宜的選項,請選擇 Klein 9B 或 Z-Image Turbo;如果需要更高品質,請使用 Nano Banana Pro 或 Recraft V4 Pro。

使用方式

Agent 端的介面刻意保持精簡——模型會採用你已設定的參數:

Generate an image of a serene mountain landscape with cherry blossoms
Create a square portrait of a wise old owl — use the typography model
Make me a futuristic cityscape, landscape orientation

縱橫比

從 Agent 的角度來看,所有模型都接受相同的三種縱橫比。在內部,各模型的原生尺寸規格會自動填入:

Agent 輸入image_size (flux/z-image/qwen/recraft/ideogram)aspect_ratio (nano-banana-pro)image_size (gpt-image-1.5)image_size (gpt-image-2)
landscapelandscape_16_916:91536x1024landscape_4_3 (1024×768)
squaresquare_hd1:11024x1024square_hd (1024×1024)
portraitportrait_16_99:161024x1536portrait_4_3 (768×1024)

GPT Image 2 對應到 4:3 預設而非 16:9,原因是其最低像素數為 655,360——landscape_16_9 預設(1024×576 = 589,824)會被拒絕。

這個轉換發生在 _build_fal_payload() 中——Agent 程式碼無須了解各模型的 schema 差異。

自動升頻

透過 FAL 的 Clarity Upscaler 進行升頻,會依模型進行門控:

模型升頻?原因
fal-ai/flux-2-pro向後相容(為選擇器推出前的預設模型)
其他所有快速模型會失去其亞秒級速度優勢;高解析度模型不需要升頻

升頻執行時使用以下設定:

設定
升頻倍數
創造力0.35
相似度0.6
引導比例4
推論步數18

如果升頻失敗(網路問題、速率限制),會自動回傳原始圖像。

內部運作原理

  1. 模型解析_resolve_fal_model()config.yaml 讀取 image_gen.model,回退至環境變數 FAL_IMAGE_MODEL,再回退至 fal-ai/flux-2/klein/9b
  2. Payload 組裝_build_fal_payload() 將你的 aspect_ratio 轉換為模型的原生格式(預設列舉、縱橫比列舉或 GPT 字面值),合併模型的預設參數,套用呼叫端的覆寫值,然後依模型的 supports 白名單過濾,確保不支援的鍵值永遠不會被送出。
  3. 提交_submit_fal_request() 透過直接的 FAL 憑證或託管的 Nous 閘道進行路由。
  4. 升頻 — 僅在模型中繼資料設有 upscale: True 時才執行。
  5. 交付 — 最終圖像 URL 回傳給 Agent,Agent 發出 MEDIA:<url> 標籤,由各平台介面轉換為原生媒體格式。

除錯

啟用除錯日誌:

export IMAGE_TOOLS_DEBUG=true

除錯日誌會寫入 ./logs/image_tools_debug_<session_id>.json,包含每次呼叫的詳細資訊(模型、參數、時間、錯誤)。

平台交付

平台交付方式
CLI圖像 URL 以 Markdown ![](url) 格式輸出——點擊即可開啟
Telegram附有提示詞說明的相片訊息
Discord嵌入於訊息中
Slack由 Slack 展開 URL
WhatsApp媒體訊息
其他純文字 URL

限制

  • 需要 FAL 憑證(直接的 FAL_KEY 或 Nous Subscription)
  • 僅支援文字轉圖像 — 此工具不支援局部繪製(inpainting)、img2img 或編輯功能
  • 暫時性 URL — FAL 回傳的是託管 URL,會在數小時/數天後過期;如有需要請自行儲存至本機
  • 各模型限制 — 部分模型不支援 seednum_inference_steps 等參數。supports 過濾器會靜默丟棄不支援的參數——這是預期行為


Voice & TTS