「受控自訂」功能可根據來源圖片或來源圖片信號 (Canny 邊緣或塗鴉) 建立新圖片。本頁說明如何傳送兩種受控自訂要求:
Imagen 3 受控自訂 (正式版功能)
Imagen 2 受控自訂功能 - Canny 邊緣或塗鴉來源圖片信號 (預先發布版功能)
下列機型支援受控自訂:
用途
Imagen 3 可控式自訂功能提供自由風格的提示,因此您可能會覺得模型的功能超出訓練範圍。以下各節將說明 Imagen 3 可控式自訂功能的使用案例和範例。
我們已使用提供的用途訓練模型,預期您在使用 Imagen 3 Controlled Customization 時能獲得良好成效。如果強迫模型以非預期的方式回應,結果可能不會很理想。
預定用途範例
Imagen 3 Controlled Customization 經過訓練,可處理下列應用實例,並產生優質結果:
生成符合提示和 Canny 邊緣控制圖像的圖片。
根據提示和塗鴉圖像生成圖片。
為人物相片套用風格,同時保留臉部表情。
非預期用途示例
Imagen 3 Controlled Customization 未經過訓練,因此無法處理下列應用情境,且會產生品質不佳的結果:
根據提示中指定的風格生成圖片。
根據參考圖像的特定樣式,透過文字生成圖片,並使用控制圖片在某種程度上控制圖像構圖。
根據參考圖像提供的特定樣式,使用文字生成圖片,並透過控制塗鴉,在某種程度上控制圖像構圖。
根據文字生成圖片,並遵循參考圖像提供的特定風格,同時使用控制圖片,在某種程度上控制圖片構圖。圖片中的人有特定臉部表情。
為兩人以上的相片套用風格,並保留他們的臉部表情。
將寵物相片套用風格,轉換成繪圖。保留或指定圖片的構圖 (例如水彩)。
事前準備
- 登入 Google Cloud 帳戶。如果您未曾使用過 Google Cloud,歡迎 建立帳戶,親自體驗實際使用我們產品的成效。新客戶還能獲得價值 $300 美元的免費抵免額,能用於執行、測試及部署工作負載。
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Vertex AI API, if it is not already enabled.
Roles required to enable APIs
To enable APIs, you need the
serviceusage.services.enablepermission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Vertex AI API, if it is not already enabled.
Roles required to enable APIs
To enable APIs, you need the
serviceusage.services.enablepermission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.-
為環境設定驗證機制。
請根據您打算如何使用本頁範例,選取對應的分頁標籤:
控制台
使用 Google Cloud 控制台存取 Google Cloud 服務和 API 時,您不需要設定驗證機制。
REST
如要在本機開發環境中使用本頁的 REST API 範例,請使用您提供給 gcloud CLI 的憑證。
安裝 Google Cloud CLI。
若您採用的是外部識別資訊提供者 (IdP),請先 使用聯合身分登入 gcloud CLI。
詳情請參閱 Google Cloud 驗證說明文件中的「使用 REST 進行驗證」。
撰寫自訂提示
使用 Imagen 3 自訂功能時,提示可能會影響生成的圖片品質。請使用下列提示詞範本,做為撰寫自訂提示詞的起點。您可能需要傳送多個要求,才能取得目標輸出內容。
| 用途 | 參考圖片 | 提示詞範本 | 範例 |
|---|---|---|---|
| 可控的自訂功能 | 手繪地圖 (1) | 生成符合scribble map [1] 的圖片,與說明相符:${STYLE_PROMPT} ${PROMPT}。 | 生成符合 scribble map [1] 的圖片,與說明相符:圖片應採用印象派油畫風格,筆觸輕鬆。這類作品的氛圍自然明亮,筆觸清晰可見。車輛的側面圖。車輛停在潮濕且會反射光線的路面上,水窪中映照著城市燈光。 |
| 可控的自訂功能 | Canny 控制圖片 (1) | 生成符合edge map [1]的圖片,並符合以下說明:${STYLE_PROMPT} ${PROMPT} | 生成圖片,使其與edge map [1]相符,以符合說明: 圖片應採用印象派油畫風格,筆觸輕鬆。這類圖片的氛圍自然明亮,筆觸也十分明顯。汽車的側視圖。車輛停在潮濕且會反射光線的路面上,水窪中映照著城市燈光。 |
| 使用 FaceMesh 輸入內容,將人物圖片風格化 |
主體圖片 (1-3) FaceMesh 控制圖片 (1) |
製作 SUBJECT_DESCRIPTION [1] 的圖片,姿勢與 CONTROL_IMAGE [2] 相同,符合以下說明:SUBJECT_DESCRIPTION [1] 的肖像 ${PROMPT} | 以control image [2]的姿勢製作「a woman with short hair [1]」的圖片,符合以下描述:a woman with short hair [1]的肖像照,採用 3D 卡通風格,背景模糊。可愛的角色,面帶微笑,面向鏡頭,粉彩色調,高畫質,4K,傑作,超級細節,皮膚紋理,紋理對應,柔和陰影,柔和逼真的光線,鮮豔色彩 |
| 使用 FaceMesh 輸入內容,將人物圖片風格化 |
主體圖片 (1-3) FaceMesh 控制圖片 (1) |
製作 SUBJECT_DESCRIPTION [1] 的 ${STYLE_PROMPT}圖片,姿勢與 CONTROL_IMAGE [2] 相同,並符合以下說明:SUBJECT_DESCRIPTION [1] 的肖像${PROMPT} | 建立 3D 卡通風格圖片,呈現a woman with short hair [1],姿勢與control image [2]相符,並符合以下描述:a woman with short hair [1]的肖像,採用 3D 卡通風格,背景模糊。可愛迷人的角色,面帶微笑,面向鏡頭,粉彩色調,高畫質,4K,傑作,超級細節,皮膚紋理,紋理對應,柔和陰影,柔和寫實的光線,鮮豔色彩 |
傳送 Imagen 3 受控自訂要求
請使用下列範例傳送 Imagen 3 受控自訂要求:
REST
如要進一步瞭解 Imagen API,請參閱下列內容:
- 方法:
endpoints.predict VisionGenerativeModelInstanceVisionGenerativeModelParamsVisionGenerativeModelResult
使用任何要求資料之前,請先修改下列項目的值:
- PROJECT_ID:您的 Google Cloud 專案 ID。
- LOCATION:專案的區域。例如:
us-central1、europe-west2或asia-northeast3。如需可用區域的清單,請參閱「Vertex AI 的生成式 AI 服務地區」。使用區域 API 端點時,系統會根據端點網址中的區域,決定處理要求的位置。如果資源路徑中的LOCATION與端點網址中的區域衝突,系統會忽略資源路徑中的LOCATION。 - TEXT_PROMPT:文字提示詞會引導模型生成圖片。如要使用 Imagen 3 受控自訂功能,請以 [$referenceId] 格式提供控制參考圖像,並加入
referenceId。例如:- 根據塗鴉地圖 [1] 生成圖片,並符合以下描述: [image description]。
- BASE64_CONTROL_IMAGE:基本控制圖片 (草圖)。圖片必須指定為 Base64 編碼的位元組字串。
CONTROL_TYPE_SCRIBBLE:預期的塗鴉控制項圖片應有黑色背景和白色塗鴉線條。
適用於CONTROL_TYPE_CANNY:預期的 Canny 邊緣控制圖片應為黑底白邊。
- CONTROL_TYPE:控制信號的類型。使用
CONTROL_TYPE_CANNY進行 Canny 邊緣偵測。使用CONTROL_TYPE_SCRIBBLE手寫輸入。 enableControlImageComputation:如果您提供自己的控制圖片,請設為false。在本例中,B64_BASE_IMAGE應為控制信號圖片。如要讓 Imagen 根據參考圖像計算控制圖像,請設為true。在這種情況下,B64_BASE_IMAGE應為原始 RGB 圖片。- IMAGE_COUNT:生成的圖像數量。 接受的整數值:1 到 4。預設值:4。
HTTP 方法和網址:
POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/imagen-3.0-capability-001:predict
JSON 要求內文:
{
"instances": [
{
"prompt": "TEXT_PROMPT",
"referenceImages": [
{
"referenceType": "REFERENCE_TYPE_CONTROL",
"referenceId": 1,
"referenceImage": {
"bytesBase64Encoded": "BASE64_CONTROL_IMAGE"
},
"controlImageConfig": {
"controlType": "CONTROL_TYPE",
"enableControlImageComputation": false
}
}
]
}
],
"parameters": {
"sampleCount": IMAGE_COUNT
}
}
如要傳送要求,請選擇以下其中一個選項:
curl
將要求主體儲存在名為 request.json 的檔案中,然後執行下列指令:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/imagen-3.0-capability-001:predict"
PowerShell
將要求主體儲存在名為 request.json 的檔案中,然後執行下列指令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/imagen-3.0-capability-001:predict" | Select-Object -Expand Content
"sampleCount": 2 要求的範例回應。回應會傳回兩個預測物件,其中包含以 Base64 編碼的生成圖像位元組。
{
"predictions": [
{
"bytesBase64Encoded": "BASE64_IMG_BYTES",
"mimeType": "image/png"
},
{
"mimeType": "image/png",
"bytesBase64Encoded": "BASE64_IMG_BYTES"
}
]
}
傳送 Imagen 2 受控自訂要求
| 輸入圖像 | 其他參數 | 輸出圖片 |
|---|---|---|
|
提示:「數位藝術版本」 負面提示:「黑白」 引導圖片類型:標準 RGB 控制條件:canny edge Imagen Control 比例:0.95 |
|
(已套用 Canny 邊緣偵測)。 |
提示:「數位藝術版本」 負面提示:「黑白」 引導圖片類型:canny edge Imagen 控制比例:0.95 |
|
請使用下列範例,傳送 Imagen 2 受控自訂要求:
產品使用量累進區間
如要查看與 Vertex AI 上的 Imagen 相關聯的使用標準和內容限制,請參閱使用指南。
模型版本
你可以使用多種圖像生成模型。詳情請參閱「Imagen 模型」。
後續步驟
閱讀有關 Imagen 和其他 Vertex AI 生成式 AI 產品的文章:
- 開發人員指南:開始在 Vertex AI 使用 Imagen 3
- 全新生成式媒體模型和工具,專為創作者打造
- Gemini 新功能:自訂 Gem 和 Imagen 3 圖像生成功能升級
- Google DeepMind:Imagen 3 - 品質最高的文字轉圖像模型