Puoi utilizzare Imagen su Vertex AI per generare nuove immagini da un prompt di testo. Le interfacce supportate includono la console Google Cloud e l'API Vertex AI.
I seguenti modelli supportano la generazione di immagini a partire da prompt di testo:
-
imagen-3.0-generate-002 -
imagen-3.0-generate-001 -
imagen-3.0-fast-generate-001 -
imagen-4.0-generate-001 -
imagen-4.0-fast-generate-001 -
imagen-4.0-ultra-generate-001
Visualizza la scheda del modello Imagen per la generazione
Prova la generazione di immagini (Vertex AI Studio)
Prima di iniziare
- Accedi al tuo account Google Cloud . Se non conosci Google Cloud, crea un account per valutare le prestazioni dei nostri prodotti in scenari reali. I nuovi clienti ricevono anche 300 $di crediti senza costi per l'esecuzione, il test e il deployment dei workload.
-
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.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. 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.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.-
Configura l'autenticazione per il tuo ambiente.
Seleziona la scheda relativa a come intendi utilizzare i campioni in questa pagina:
Console
Quando utilizzi la console Google Cloud per accedere ai servizi Google Cloud e alle API, non devi configurare l'autenticazione.
Python
Per utilizzare gli esempi di Python in questa pagina in un ambiente di sviluppo locale, installa e inizializza gcloud CLI, quindi configura Credenziali predefinite dell'applicazione con le tue credenziali utente.
-
Installa Google Cloud CLI.
-
Se utilizzi un provider di identità (IdP) esterno, devi prima accedere a gcloud CLI con la tua identità federata.
-
Se utilizzi una shell locale, crea le credenziali di autenticazione locali per il tuo account utente:
gcloud auth application-default login
Non è necessario eseguire questa operazione se utilizzi Cloud Shell.
Se viene restituito un errore di autenticazione e utilizzi un provider di identità (IdP) esterno, verifica di aver acceduto a gcloud CLI con la tua identità federata.
Per saperne di più, consulta Configura ADC per un ambiente di sviluppo locale nella documentazione sull'autenticazione di Google Cloud .
REST
Per utilizzare gli esempi di API REST in questa pagina in un ambiente di sviluppo locale, utilizzi le credenziali che fornisci a gcloud CLI.
Installa Google Cloud CLI.
Se utilizzi un provider di identità (IdP) esterno, devi prima accedere a gcloud CLI con la tua identità federata.
Per saperne di più, consulta Autenticati per usare REST nella documentazione sull'autenticazione di Google Cloud .
-
Generare immagini con testo
Puoi generare nuove immagini utilizzando solo testo descrittivo come input. Gli esempi seguenti mostrano le istruzioni di base per generare immagini.
Console
1. Nella console Google Cloud , vai alla pagina Vertex AI > Media Studio.<a href="https://console.cloud.google.com/vertex-ai/studio/media/generate;tab=image" class="button button-primary"
target="console" track-name="consoleLink" track-type="task">Go to Media
Studio</a>
Fai clic su Immagine. Viene visualizzata la pagina di generazione di immagini di Imagen Media Studio.
(Facoltativo) Nel riquadro Impostazioni, configura le seguenti impostazioni:
Modello: scegli un modello tra le opzioni disponibili.
Per saperne di più sui modelli disponibili, consulta Modelli Imagen.
Proporzioni: scegli un formato tra le opzioni disponibili.
Numero di risultati: regola il cursore o inserisci un valore compreso tra 1 e 4.
Risoluzione output: scegli una risoluzione tra le opzioni disponibili.
(Facoltativo) Nella sezione Opzioni avanzate, seleziona una Regione in cui generare le immagini.
Nella casella Scrivi il prompt, inserisci il prompt di testo che descrive le immagini da generare. Ad esempio, piccola barca sull'acqua al mattino illustrazione ad acquerello.
Per saperne di più su come scrivere prompt efficaci, consulta la guida ai prompt e agli attributi delle immagini.
Fai clic su Genera.
Alle immagini generate viene aggiunta automaticamente una filigrana digitale. Non puoi disattivare la filigrana digitale per la generazione di immagini utilizzando la console Google Cloud .
Puoi selezionare un'immagine da visualizzare nella finestra Dettagli immagine. Le immagini con filigrana contengono un badge Filigrana digitale.
Python
Installa
pip install --upgrade google-genai
Per saperne di più, consulta la documentazione di riferimento dell'SDK.
Imposta le variabili di ambiente per utilizzare l'SDK Gen AI con Vertex AI:
# Replace the `GOOGLE_CLOUD_PROJECT` and `GOOGLE_CLOUD_LOCATION` values # with appropriate values for your project. export GOOGLE_CLOUD_PROJECT=GOOGLE_CLOUD_PROJECT export GOOGLE_CLOUD_LOCATION=global export GOOGLE_GENAI_USE_VERTEXAI=True
generate_images su
ImageGenerationModel e salvi le immagini generate localmente. Puoi
quindi utilizzare facoltativamente il metodo show() in un blocco note per
visualizzare le immagini generate. Per ulteriori informazioni sulle versioni e sulle funzionalità dei modelli, consulta Modelli Imagen.
REST
Per saperne di più sull'API Imagen, consulta le seguenti risorse:
- Metodo:
endpoints.predict VisionGenerativeModelInstanceVisionGenerativeModelParamsVisionGenerativeModelResult
Prima di utilizzare i dati della richiesta, apporta le sostituzioni seguenti:
- REGION: la regione in cui si trova il progetto. Per ulteriori informazioni sulle regioni supportate, consulta Località dell'AI generativa su Vertex AI.
- PROJECT_ID: il tuo Google Cloud ID progetto.
-
MODEL_VERSION: la versione del modello Imagen da utilizzare. Per ulteriori informazioni sui modelli disponibili, consulta Modelli Imagen.
- TEXT_PROMPT: il prompt di testo che guida le immagini che il modello genera. Questo campo è obbligatorio sia per la generazione che per la modifica.
-
IMAGE_COUNT: il numero di immagini da generare. L'intervallo accettato
di valori è compreso tra
1e4. - ADD_WATERMARK: booleano. Facoltativo. Se attivare una filigrana per le immagini generate.
Qualsiasi immagine generata quando il campo è impostato su
truecontiene una filigrana digitale SynthID che puoi utilizzare per verificare un'immagine con filigrana. Se ometti questo campo, viene utilizzato il valore predefinitotrue; devi impostare il valore sufalseper disattivare questa funzionalità. Puoi utilizzare il camposeedper ottenere un output deterministico solo quando questo campo è impostato sufalse. - ASPECT_RATIO: stringa. Facoltativo. Un parametro della modalità di generazione che controlla le proporzioni. Valori del rapporto supportati e loro utilizzo previsto:
1:1(valore predefinito, quadrato)3:4(annunci, social media)4:3(TV, fotografia)16:9(orizzontale)9:16(verticale)
- ENABLE_PROMPT_REWRITING: booleano. Facoltativo. Un parametro per utilizzare una funzionalità di riscrittura del prompt basata su LLM per fornire immagini di qualità superiore che riflettano meglio l'intent del prompt originale. La disabilitazione di questa funzionalità potrebbe influire sulla qualità delle immagini e sull'aderenza del prompt. Valore predefinito:
true. -
INCLUDE_RAI_REASON: booleano. Facoltativo. Se attivare il codice del motivo del filtro dell'AI responsabile nelle risposte con input o output bloccati. Valore predefinito:
true. - INCLUDE_SAFETY_ATTRIBUTES: booleano. Facoltativo. Se abilitare i punteggi di AI responsabile arrotondati per un elenco di attributi di sicurezza nelle risposte per input e output non filtrati. Categorie di attributi di sicurezza:
"Death, Harm & Tragedy","Firearms & Weapons","Hate","Health","Illicit Drugs","Politics","Porn","Religion & Belief","Toxic","Violence","Vulgarity","War & Conflict". Valore predefinito:false. - MIME_TYPE: stringa. Facoltativo. Il tipo MIME del contenuto dell'immagine. Valori
disponibili:
image/jpegimage/gifimage/pngimage/webpimage/bmpimage/tiffimage/vnd.microsoft.icon
- COMPRESSION_QUALITY: numero intero. Facoltativo. Si applica solo ai file di output JPEG. Il livello di dettaglio che il modello conserva per le immagini generate in formato file JPEG. Valori:
Da
0a100, dove un numero più alto indica una maggiore compressione. Valore predefinito:75. - PERSON_SETTING: stringa. Facoltativo. L'impostazione di sicurezza che controlla il tipo di
persone o generazione di volti consentita dal modello. Il valore predefinito dipende dal modello. Valori
disponibili:
allow_all: Consenti la generazione di persone, inclusi i minorenni. Questo è il valore predefinito per i modelli di generazione Imagen 4, imagen-3.0-capability-001 e imagen-product-recontext-preview-06-30.allow_adult: Consenti la generazione di immagini solo di adulti, comprese le celebrità. Questo è il valore predefinito per tutti gli altri modelli.dont_allow: disattiva l'inclusione di persone o volti nelle immagini generate.
- SAFETY_SETTING: stringa. Facoltativo. Un'impostazione che controlla le soglie del filtro di sicurezza
per le immagini generate. Valori disponibili:
block_low_and_above: la soglia di sicurezza più elevata, che comporta il filtraggio della maggior parte delle immagini generate. Valore precedente:block_most.block_medium_and_above(impostazione predefinita): una soglia di sicurezza media che bilancia il filtraggio di contenuti potenzialmente dannosi e sicuri. Valore precedente:block_some.block_only_high: una soglia di sicurezza che riduce il numero di richieste bloccate a causa dei filtri di sicurezza. Questa impostazione potrebbe aumentare i contenuti discutibili generati da Imagen. Valore precedente:block_few.
- SEED_NUMBER: numero intero. Facoltativo. Qualsiasi numero intero non negativo fornito per rendere deterministiche le immagini di output. Fornire lo stesso numero di seed genera sempre le stesse immagini di output. Se
il modello che utilizzi supporta la filigrana digitale, devi impostare
"addWatermark": falseper utilizzare questo campo. Valori interi accettati:1-2147483647. - OUTPUT_STORAGE_URI: stringa. Facoltativo. Il bucket Cloud Storage in cui archiviare le immagini di output. Se non vengono forniti, nella risposta vengono restituiti i byte dell'immagine con codifica base64. Valore di esempio:
gs://image-bucket/output/.
Parametri facoltativi aggiuntivi
Utilizza le seguenti variabili facoltative a seconda del tuo caso
d'uso. Aggiungi alcuni o tutti i seguenti parametri nell'oggetto "parameters": {}.
Questo elenco mostra i parametri facoltativi comuni e non è esaustivo. Per saperne di più
sui parametri facoltativi,
consulta Riferimento API Imagen: genera immagini.
"parameters": {
"sampleCount": IMAGE_COUNT,
"addWatermark": ADD_WATERMARK,
"aspectRatio": "ASPECT_RATIO",
"enhancePrompt": ENABLE_PROMPT_REWRITING,
"includeRaiReason": INCLUDE_RAI_REASON,
"includeSafetyAttributes": INCLUDE_SAFETY_ATTRIBUTES,
"outputOptions": {
"mimeType": "MIME_TYPE",
"compressionQuality": COMPRESSION_QUALITY
},
"personGeneration": "PERSON_SETTING",
"safetySetting": "SAFETY_SETTING",
"seed": SEED_NUMBER,
"storageUri": "OUTPUT_STORAGE_URI"
}
Metodo HTTP e URL:
POST https://REGION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/REGION/publishers/google/models/MODEL_VERSION:predict
Corpo JSON della richiesta:
{
"instances": [
{
"prompt": "TEXT_PROMPT"
}
],
"parameters": {
"sampleCount": IMAGE_COUNT
}
}
Per inviare la richiesta, scegli una di queste opzioni:
curl
Salva il corpo della richiesta in un file denominato request.json,
quindi esegui il comando seguente:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://REGION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/REGION/publishers/google/models/MODEL_VERSION:predict"
PowerShell
Salva il corpo della richiesta in un file denominato request.json,
quindi esegui il comando seguente:
$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://REGION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/REGION/publishers/google/models/MODEL_VERSION:predict" | Select-Object -Expand Content
"sampleCount":
2. La risposta restituisce due oggetti di previsione, con i byte dell'immagine generata
codificati in base64.
{ "predictions": [ { "bytesBase64Encoded": "BASE64_IMG_BYTES", "mimeType": "image/png" }, { "mimeType": "image/png", "bytesBase64Encoded": "BASE64_IMG_BYTES" } ] }
Se utilizzi un modello che supporta il miglioramento dei prompt, la risposta include un
ulteriore campo prompt con il prompt migliorato utilizzato per la
generazione:
{
"predictions": [
{
"mimeType": "MIME_TYPE",
"prompt": "ENHANCED_PROMPT_1",
"bytesBase64Encoded": "BASE64_IMG_BYTES_1"
},
{
"mimeType": "MIME_TYPE",
"prompt": "ENHANCED_PROMPT_2",
"bytesBase64Encoded": "BASE64_IMG_BYTES_2"
}
]
}
Passaggi successivi
Leggi gli articoli su Imagen e altri prodotti di AI generativa su Vertex AI:
- Guida per gli sviluppatori per iniziare a utilizzare Imagen 3 su Vertex AI
- Nuovi modelli e strumenti di media generativi, creati con e per i creator
- Novità di Gemini: Custom Gem e generazione di immagini migliorata con Imagen 3
- Google DeepMind: Imagen 3, il nostro modello di conversione da testo a immagine di altissima qualità