Gemini API 中的圖片 3

Gemini API 可使用 Imagen 3,這是 Google 最高品質的文字轉圖片模型,具備多項新功能與改良功能。Imagen 3 可執行下列操作:

  • 產生比先前模型更清晰、光線更豐富的圖像,且雜訊干擾較少
  • 解讀以自然語言撰寫的提示
  • 以多種格式和風格產生圖片
  • 比先前模型更有效率地算繪文字

生成圖像

本節說明如何將 Imagen 模型執行個體化並產生圖片。

安裝 Google 生成式 AI SDK 後,您可以使用以下程式碼產生映像檔:

from google import genai
from google.genai import types
from PIL import Image
from io import BytesIO

client = genai.Client(api_key='GEMINI_API_KEY')

response = client.models.generate_images(
    model='imagen-3.0-generate-002',
    prompt='Fuzzy bunnies in my kitchen',
    config=types.GenerateImagesConfig(
        number_of_images= 4,
    )
)
for generated_image in response.generated_images:
  image = Image.open(BytesIO(generated_image.image.image_bytes))
  image.show()

程式碼範例會輸出四張圖片,如下所示:

AI 生成的圖像:廚房中兩隻毛茸茸的兔子

Python 開發人員也可以試用 Gemini Cookbook 中的「開始使用 Imagen 筆記本」。

Imagen 模型參數

以下是 generate_images() 可用的參數:

  • prompt:圖片的文字提示。
  • number_of_images:要產生的圖片數量,從 1 到 4 (含)。預設值為 4。
  • aspect_ratio:變更產生圖片的顯示比例。支援的值為 "1:1""3:4""4:3""9:16""16:9"。預設為 "1:1"
  • safety_filter_level:為安全性篩選功能新增篩選器層級。以下為有效值:
    • "BLOCK_LOW_AND_ABOVE":在機率分數或嚴重性分數為 LOWMEDIUMHIGH 時封鎖。
    • "BLOCK_MEDIUM_AND_ABOVE":在機率分數或嚴重性分數為 MEDIUMHIGH 時封鎖。
    • "BLOCK_ONLY_HIGH":在機率分數或嚴重性分數為 HIGH 時封鎖。
  • person_generation:允許模型產生人物圖片。支援的值如下:
    • "DONT_ALLOW":禁止產生人物圖片。
    • "ALLOW_ADULT":產生成人圖片,但不產生兒童圖片。此為預設值。

產生的圖片一律會加入不可見的數位 SynthID 浮水印。

文字提示語言

系統支援下列輸入文字提示語言:

  • 英文 (en)

後續步驟

如要進一步瞭解如何撰寫 Imagen 提示,請參閱「圖片提示指南」。