LlamaGen 標誌
立即訂閱

Nano Banana 2.1 工作流程

透過 Google Cloud 圖像 API 運行 Nano Banana 2.1

本地腳本可以直接向 Google Cloud 發出請求。請明確處理驗證、模型選擇、圖像設定同結果處理,避免失敗的圖片回應被悄悄當成成功匯出。

你會製作甚麼

一個你自行控制的 Google Cloud 專案的直接 SDK 請求同審核清單。這唔係公開的 LlamaGen API 存取。

用 Nano Banana 2.1 創作

Nano Banana 2.1 需要付費 LlamaGen 計劃。生成前請先查看目前積分消耗同匯出選項。直接使用 Google Cloud API 會另行計費。 計劃與積分

一張完成的 AI 生成視覺,置於日常創作場景中展示。
AI 展示概念:一個已完成的視覺在使用中的呈現。此場景同下方的直接模型輸出分開。

主視覺係 AI 生成的展示概念圖,呈現成品喺情境中的樣子。它唔係客戶相片、應用程式截圖,亦唔係另一個獨立的模型表現測試。

LlamaGen 編輯資源

內容已審閱:

檢視生成示例

以下示例係我哋記錄工作流程下直接產生嘅模型輸出。請檢視實際圖片,唔好假設模型已完全跟足每項指令。

生成工作流程中使用的參考圖片

呢啲係自有虛構參考素材。即使加入,亦唔代表輸出一定會完全一致或保留所有產品細節。

本頁所述工作流程的直接 Nano Banana 2.1 圖像生成輸出。
來自已記錄工作流程的直接 Nano Banana 2.1 輸出。請按本指南所述檢查圖片。

準備你自己的 Google Cloud 存取

Google 最新文件將此平台稱為 Gemini Enterprise Agent Platform;不過好多開發者仍然用舊名 Vertex AI 去搜尋。此處示例跟隨 @google/genai 1.45.0,即我哋本地生成工作流程安裝的版本,並使用 vertexai: true。較新的 SDK 版本可能會重命名選項;請以你已安裝版本的文件為準。

請使用已開啟收費、已啟用所需服務,並且憑證已授權該請求的專案。請將 service-account 檔案同存取權杖放喺源碼、頁面內容同圖片提示詞以外。Cloud API 收費同任何 LlamaGen 計劃都係分開的。

  • 請使用準確的模型 ID gemini-nano-banana-2.1。
  • 請使用此模型文件所列的 global 位置。
  • 請根據你嘅環境,跟隨 Google 的驗證同專案設定指引。

只傳送此端點支援的設定

就此 Cloud 模型而言,文件列明的輸出尺寸為 1K、2K 同 4K。目前的 Cloud 模型頁面列出每個提示詞最多 14 張輸入圖片,而內嵌圖片資料每個檔案上限為 7 MB;Cloud Storage 輸入則有不同限制。呢啲都係端點特定限制,唔代表每種組合都一定係好嘅創作簡報。

Cloud 文件明確指出,seed、temperature、topP、topK 同 logprobs 都唔支援 Nano Banana 2.1。唔好由文字生成示例直接複製呢啲設定,亦唔好將 seed 描述為此模型的可重現性控制。

  • 保持提示詞同一組細少而相關的參考資料,方便檢查。
  • 請使用與實際輸入位元組相符的 MIME 類型。
  • 將模型、輸出設定同參考雜湊值一併記錄喺你自己結果之中。

檢查是否真的有返回圖片

在寫出輸出檔案前,請先檢查回應部分有冇內嵌圖片資料。文字回應、被過濾結果,或者沒有圖片的回應,都應該視為要檢查的結果,而唔係已完成生成。

唔好盲目重試。請保存非敏感請求中繼資料同回應狀態,查看已記錄限制,並調查返回原因。如果你要重試一個不明確的失敗,請先了解供應商目前的計費方式。

  • 唔好記錄憑證或完整的私有輸入圖片。
  • 揀檔案副檔名時,請保留返回圖片的 MIME 類型。
  • 將返回圖片視為仍需視覺審查的候選結果。

將各個環節分開

呢啲檢查說明直接 Google Cloud 路線,唔會授予 API 存取權,亦唔會取代 Google 最新設定文件。

請求的一部分使用或檢查避免假設
驗證你自己已授權的 Google Cloud 專案同憑證以為 LlamaGen 訂閱就可驗證 Cloud API 請求
模型及位置global 中的 gemini-nano-banana-2.1以為相似的模型別名會揀到同一個模型
圖像設定支援的長寬比、輸出尺寸同參考格式以為 seed 或文字模型抽樣參數都支援
回應實際圖片位元組、MIME 類型同可供審查的結果以為每個成功的 HTTP 回應都一定有可發佈圖片

實用工作流程

由一個小請求到一個可審查檔案

先由一個簡單的原創圖片請求開始。下方示例沿用我哋本地生成工作流程使用的直接 SDK 格式;請自行更換專案環境,並透過你獲批准的設定完成驗證。

可調整的起始提示詞

創作一個原創插畫信差,手持燈籠,行喺雨街。輪廓要清晰,場景要易讀。唔好加文字或標誌。

這份簡報是一個可調整的配方,唔係圖中成品嘅逐字請求記錄。它不保證會有完全相同的結果,亦不保證第一次生成就成功。生成記錄會保留原始請求。

試用工作流程

  1. 喺源文件以外準備憑證同專案。
  2. 以支援的圖像設定執行一個小型請求。
  3. 檢查返回的圖片部分,以正確 MIME 類型儲存,並審視實際檔案。

要檢查甚麼

  • 實際有圖片部分返回嗎?
  • 已儲存的檔案可以正常開啟嗎?
  • 視覺效果同簡報是否足夠匹配,可以保留?

直接 Google Cloud SDK 示例

這是一個使用你自己專案同憑證的直接 Google Cloud 請求,唔係公開的 LlamaGen API 端點。請唔好將私鑰貼入提示詞或公開頁面。

import { GoogleGenAI } from "@google/genai";
import { writeFile } from "node:fs/promises";

// @google/genai 1.45.0, matching the documented local workflow.
// Authenticate outside this file using Google Cloud credentials.
const ai = new GoogleGenAI({
  vertexai: true,
  project: process.env.GOOGLE_CLOUD_PROJECT,
  location: "global",
  httpOptions: { apiVersion: "v1" },
});
const response = await ai.models.generateContent({
  model: "gemini-nano-banana-2.1",
  contents: [{ role: "user", parts: [{
    text: "Create an original illustrated courier carrying a lantern in a rainy street. No text or logos.",
  }] }],
  config: {
    responseModalities: ["IMAGE"],
    candidateCount: 1,
    imageConfig: { aspectRatio: "3:2", imageSize: "2K" },
    thinkingConfig: { thinkingLevel: "HIGH" },
  },
});
const image = response.candidates?.[0]?.content?.parts?.find(
  (part) => part.inlineData?.data,
)?.inlineData;
if (!image?.data) throw new Error("No image returned; inspect the response before retrying.");
const extensions = { "image/png": "png", "image/jpeg": "jpg", "image/webp": "webp" };
const extension = extensions[image.mimeType];
if (!extension) throw new Error("Inspect the returned MIME type before saving.");
await writeFile(`nano-banana-2-1.${extension}`, Buffer.from(image.data, "base64"));

開始前問題

呢個係公開的 LlamaGen API 嗎?

唔係。呢段程式會用 Google 的 SDK,以你自己嘅專案同憑證直接呼叫 Google Cloud。LlamaGen 的模型頁面係獨立嘅產品項目。

我可以設定 seed 或 temperature 嗎?

目前 Cloud 模型文件寫明 Nano Banana 2.1 唔支援 seed、temperature、topP、topK 同 logprobs。加請求參數前,請先睇返相關 endpoint 文件。

回應冇圖片,係咪代表我要即刻重試?

請先檢查回應同目前供應商指引。過濾、限制同暫時性失敗都可能令結果唔同。呢份指南唔保證重試一定成功,亦唔保證免費。