Comprendere e configurare l'IA responsabile per Imagen

Imagen su Vertex AI offre le funzionalità di IA generativa all'avanguardia di Google agli sviluppatori di applicazioni. Essendo una tecnologia in fase iniziale, Imagen sulle funzionalità e gli utilizzi in evoluzione di Vertex AI creano potenziali applicazioni errate, usi impropri e conseguenze indesiderate o impreviste. Ad esempio, Imagen su Vertex AI potrebbe generare output imprevisti, come immagini offensive, insensibili o contestualmente errate.

Dati questi rischi e complessità, Imagen su Vertex AI è progettato secondo i principi dell'IA di Google. Tuttavia, è importante che gli sviluppatori comprendano e testino i propri modelli per eseguirne il deployment in modo sicuro e responsabile. Per aiutare gli sviluppatori, Imagen su Vertex AI dispone di filtri di sicurezza integrati per aiutare i clienti a bloccare output potenzialmente dannosi nel loro caso d'uso. Per saperne di più, consulta la sezione Filtri di sicurezza.

Quando Imagen su Vertex AI è integrato nel contesto e nel caso d'uso unico di un cliente, potrebbe essere necessario prendere in considerazione ulteriori considerazioni sull'AI responsabile e limiti del modello. Invitiamo i clienti a utilizzare pratiche consigliate per correttezza, interpretabilità, privacy e sicurezza.

Filtri di sicurezza

I prompt di testo forniti come input e immagini (generati o caricati) tramite Imagen su Vertex AI vengono valutati in base a un elenco di filtri di sicurezza, che includono "categorie dannose" (ad esempio, violence, sexual, derogatory e toxic). Questi filtri di sicurezza mirano a filtrare (generati o caricati) i contenuti che violano le nostre Norme di utilizzo accettabile (AUP), le Norme relative all'uso vietato dell'IA generativa o le nostre Norme sull'uso vietato dell'IA.

Se il modello risponde a una richiesta con un messaggio di errore come "Non è stato possibile inviare il prompt" o"Potrebbe violare le nostre norme ", l'input attiva un filtro di sicurezza. Se vengono restituite meno immagini di quelle richieste, alcuni output generati vengono bloccati perché non soddisfano i requisiti di sicurezza.

Puoi scegliere l'aggressività con cui filtrare i contenuti sensibili regolando il parametro safetySetting.

Attributi di sicurezza

Gli attributi e i filtri di sicurezza non hanno una relazione di mappatura one-to-one. Gli attributi di sicurezza sono l'insieme di attributi che restituiamo all'utente quando viene impostato includeSafetyAttributes. I filtri di sicurezza sono l'insieme di filtri che usiamo per filtrare i contenuti. Non applichiamo filtri in base a tutte le categorie degli attributi sicurezza. Ad esempio, per la categoria dell'attributo sicurezza"Salute", non filtriamo i contenuti in base al punteggio di confidenza in base alla salute. Inoltre, non esponiamo i punteggi di affidabilità per alcuni dei nostri filtri interni per la sicurezza sensibile.

Configura filtri di sicurezza

Esistono diversi parametri del filtro di sicurezza che puoi utilizzare con il modello imagegeneration. Ad esempio, puoi consentire al modello di segnalare i codici di filtro di sicurezza per i contenuti bloccati, disattivare la generazione di persone o volti, regolare la sensibilità del filtro dei contenuti o restituire punteggi di sicurezza arrotondati dell'elenco di attributi di sicurezza per input e output. Per informazioni più tecniche sui singoli campi, consulta la documentazione di riferimento dell'API del modello imagegeneration.

La risposta varia in base ai parametri impostati. Alcuni parametri influiscono sui contenuti prodotti, mentre altri influiscono sul filtro dei contenuti e sul modo in cui il filtro viene segnalato. Inoltre, il formato di output dipende dal fatto che i dati di input siano filtrati o che l'output dell'immagine generata venga filtrato.

Parametri che filtrano i contenuti

I seguenti parametri facoltativi influiscono sul filtro dei contenuti o sul modo in cui il filtro ti viene segnalato:

  • safetySetting* - Consente di impostare l'aggressività del filtro per i contenuti di output potenzialmente sensibili.
  • includeRaiReason: fornisce informazioni più dettagliate sull'output filtrato.
  • personGeneration - Un'impostazione che consente un maggiore controllo sulla generazione di persone, volti e bambini.
  • disablePersonFace: ritirato. La scelta se consentire o meno la generazione di persone e volti. Gli utenti devono invece impostare personGeneration.
  • includeSafetyAttributes: fornisce informazioni complete sull'attributo sicurezza per il testo di input, l'immagine di input (per la modifica) e tutte le immagini generate. Queste informazioni includono la categoria di sicurezza (ad esempio "Firearms & Weapons", "Illicit Drugs" o "Violence") e i punteggi di confidenza.

* Disponibile solo per il modello imagegeneration@006.

Input filtrato

Se l'input di testo o l'immagine di input (per la modifica) viene filtrata, ricevi una risposta con un codice di errore 400. Una richiesta con input filtrato RAI restituisce questo formato di output se imposti includeRaiReason o includeSafetyAttributes.

L'output dipende dalla versione del modello utilizzata. Di seguito viene mostrato l'output quando l'input viene filtrato in base alle diverse versioni del modello:

Modello

{
  "error": {
    "code": 400,
    "message": "Image generation failed with the following error: The prompt could not be submitted. This prompt contains sensitive words that violate Google's Responsible AI practices. Try rephrasing the prompt. If you think this was an error, send feedback."
    "status": "INVALID_ARGUMENT",
    "details": [
      {
        "@type": "type.googleapis.com/google.rpc.DebugInfo",
        "detail": "[ORIGINAL ERROR] generic::invalid_argument: Image generation failed with the following error: The prompt could not be submitted. This prompt contains sensitive words that violate Google's Responsible AI practices. Try rephrasing the prompt. If you think this was an error, send feedback. [google.rpc.error_details_ext] { message: \"Image editing failed with the following error: The prompt could not be submitted. This prompt contains sensitive words that violate Google's Responsible AI practices. Try rephrasing the prompt. If you think this was an error, send feedback.\" }"
      }
    ]
  }
}

Modelli

{
  "error": {
    "code": 400,
    "message": "Image generation failed with the following error: The prompt could not be submitted. This prompt contains sensitive words that violate Google's Responsible AI practices. Try rephrasing the prompt. If you think this was an error, send feedback.",
    "status": "INVALID_ARGUMENT",
    "details": [
      {
        "@type": "type.googleapis.com/google.rpc.DebugInfo",
        "detail": "[ORIGINAL ERROR] generic::invalid_argument: Image generation failed with the following error: The prompt could not be submitted. This prompt contains sensitive words that violate Google's Responsible AI practices. Try rephrasing the prompt. If you think this was an error, send feedback. [google.rpc.error_details_ext] { message: \"Image generation failed with the following error: The prompt could not be submitted. This prompt contains sensitive words that violate Google\\'s Responsible AI practices. Try rephrasing the prompt. If you think this was an error, send feedback.\" }"
      }
    ]
  }
}

Output filtrato

I contenuti dell'output filtrato variano a seconda del parametro RAI impostato. I seguenti esempi di output mostrano il risultato dell'utilizzo dei parametri includeRaiReason e includeSafetyAttributes.

Output filtrato utilizzando includeRaiReason

Se non aggiungi includeRaiReason o non imposti includeRaiReason: false, la risposta include solo gli oggetti immagine generati che non sono filtrati. Tutti gli oggetti immagine filtrati vengono omessi dall'array "predictions": []. Ad esempio, questa è una risposta a una richiesta con "sampleCount": 4, ma due immagini vengono filtrate e omesse:

{
  "predictions": [
    {
      "bytesBase64Encoded": "/9j/4AAQSkZJRgABA[...]bdsdgD2PLbZQfW96HEFE/9k=",
      "mimeType": "image/png"
    },
    {
      "mimeType": "image/png",
      "bytesBase64Encoded": "/9j/4AAQSkZJRgABA[...]Ct+F+1SLLH/2+SJ4ZLdOvg//Z"
    }
  ],
  "deployedModelId": "MODEL_ID"
}

Se imposti includeRaiReason: true e diverse immagini di output vengono filtrate, la risposta include gli oggetti immagine generati e gli oggetti raiFilteredReason per tutte le immagini di output filtrate. Ad esempio, di seguito è riportata una risposta a una richiesta con "sampleCount": 4 e includeRaiReason: true, ma due immagini vengono filtrate. Di conseguenza, due oggetti includono informazioni sull'immagine generata e l'altro include un messaggio di errore.

Modello

{
  "predictions": [
    {
      "bytesBase64Encoded": "/9j/4AAQSkZJRgABA[...]bdsdgD2PLbZQfW96HEFE/9k=",
      "mimeType": "image/png"
    },
    {
      "mimeType": "image/png",
      "bytesBase64Encoded": "/9j/4AAQSkZJRgABA[...]Ct+F+1SLLH/2+SJ4ZLdOvg//Z"
    },
    {
      "raiFilteredReason": "Your current safety filter threshold filtered out 2 generated images. You will not be charged for blocked images. Try rephrasing the prompt. If you think this was an error, send feedback."
    },
  ],
  "deployedModelId": "MODEL_ID"
}

Modelli

{
  "predictions": [
    {
      "bytesBase64Encoded": "/9j/4AAQSkZJRgABA[...]bdsdgD2PLbZQfW96HEFE/9k=",
      "mimeType": "image/png"
    },
    {
      "mimeType": "image/png",
      "bytesBase64Encoded": "/9j/4AAQSkZJRgABA[...]Ct+F+1SLLH/2+SJ4ZLdOvg//Z"
    },
    { 
      "raiFilteredReason": "56562880"
    },
    { 
      "raiFilteredReason": "56562880"
    }
  ],
  "deployedModelId": "MODEL_ID"
}
Output filtrato utilizzando includeSafetyAttributes

Se imposti "includeSafetyAttributes": true, l'array "predictions": [] della risposta include i punteggi RAI (arrotondati a una posizione decimale) degli attributi di sicurezza del testo del prompt positivo. Gli attributi sicurezza dell'immagine vengono aggiunti anche a ogni output non filtrato. Se un'immagine di output viene filtrata, i suoi attributi di sicurezza non vengono restituiti. Ad esempio, questa è una risposta a una richiesta senza filtri e viene restituita un'immagine:

{
  "predictions": [
    {
      "bytesBase64Encoded": "/9j/4AAQSkZJRgABA[...]bdsdgD2PLbZQfW96HEFE/9k=",
      "mimeType": "image/png", 
      "safetyAttributes": {
        "categories": [
          "Porn",
          "Violence"
        ],
        "scores": [
          0.1,
          0.2
        ]
      } 
    }, 
    {
      "contentType": "Positive Prompt",
      "safetyAttributes": {
        "categories": [
          "Death, Harm & Tragedy",
          "Firearms & Weapons",
          "Hate",
          "Health",
          "Illicit Drugs",
          "Politics",
          "Porn",
          "Religion & Belief",
          "Toxic",
          "Violence",
          "Vulgarity",
          "War & Conflict"
        ],
        "scores": [
          0,
          0,
          0,
          0,
          0,
          0,
          0.2,
          0,
          0.1,
          0,
          0.1,
          0
        ]
      }
    }, 
  ],
  "deployedModelId": "MODEL_ID"
}

Limitazioni

I seguenti limiti si applicano alle diverse attività:

Limitazioni per la generazione di immagini

  • Amplificazione del bias: anche se Imagen su Vertex AI può generare immagini di alta qualità, potrebbero esserci potenziali bias nei contenuti generati. Le immagini generate si basano sui dati di addestramento del prodotto, che possono includere involontariamente bias che potrebbero perpetuare stereotipi o discriminare determinati gruppi. Sono necessarie un'attenta monitoraggio e una valutazione per garantire che i risultati siano conformi alle Norme di utilizzo accettabile di Google e al tuo caso d'uso.
  • Trasparenza e divulgazione: può essere difficile per gli utenti distinguere tra immagini create con AI'IA e immagini non create con l'IA. Quando utilizzi immagini create con l'AI nel tuo caso d'uso, è importante comunicare chiaramente agli utenti che le immagini sono state generate da un sistema di AI per garantire trasparenza e mantenere fiducia nel processo. Abbiamo applicato l'etichettatura dei metadati alle immagini create con AI per contribuire a combattere il rischio di disinformazione e nell'ambito del nostro approccio responsabile all&#AI.
  • Contesto insufficiente: Imagen su Vertex AI potrebbe non disporre delle conoscenze contestuali necessarie per generare immagini appropriate per tutte le situazioni o i segmenti di pubblico all'interno del tuo caso d'uso. Assicurati di verificare che le immagini generate siano in linea con il contesto, lo scopo e il pubblico di destinazione selezionati.

Limitazioni alla modifica delle immagini

  • Rappresentazione ingannevole e autenticità: la modifica delle immagini mediante Imagen su Vertex AI può comportare una rappresentazione ingannevole o una manipolazione delle immagini, con conseguente creazione di contenuti ingannevoli o fuorvianti. È importante garantire che il processo di editing venga utilizzato responsabilmente, senza compromettere l'autenticità e la veridicità delle immagini modificate. Abbiamo applicato l'etichettatura dei metadati alle immagini modificate con AI'IA per contribuire a combattere il rischio di disinformazione e nell'ambito del nostro approccio responsabile all&#AI.

Limitazioni delle didascalie visive

  • Accuratezza e sensibilità al contesto: la creazione di didascalie visive potrebbe compromettere la descrizione accurata di immagini complesse o ambigue. Le descrizioni generate potrebbero non comprendere sempre il contesto completo o le sfumature dei contenuti visivi. È importante riconoscere che i sistemi di sottotitolaggio automatizzato hanno limitazioni nella comprensione delle immagini con vari livelli di complessità e le relative descrizioni devono essere utilizzate con cautela, soprattutto in contesti critici o sensibili.
  • Ambiguità e interpretazioni soggettive: le immagini possono spesso essere aperte a più interpretazioni e le didascalie generate potrebbero non essere sempre in linea con la comprensione o le aspettative umane. Persone diverse possono percepire e descrivere le immagini in modo diverso in base alle loro esperienze soggettive e al background culturale. È fondamentale considerare il potenziale di ambiguità e soggettività nelle descrizioni delle immagini e fornire contesto aggiuntivo o interpretazioni alternative se necessario.
  • Considerazioni sull'accessibilità: anche se i sottotitoli automatici delle immagini possono supportare l'accessibilità fornendo descrizioni per le persone con disabilità visiva, è importante riconoscere che potrebbero non sostituire completamente il testo alternativo generato da persone fisiche o le descrizioni su misura per esigenze di accessibilità specifiche. I sottotitoli automatici potrebbero non disporre del livello di dettaglio o di comprensione del contesto necessario per determinati casi d'uso relativi all'accessibilità.

Limitazioni relative alla risposta alle domande visive (VQA)

  • Iperfiducia e incertezza: i modelli VQA a volte possono fornire risposte con sicurezza ingiustificata, anche se la risposta corretta è incerta o ambigua. È essenziale comunicare l'incertezza del modello e fornire punteggi di confidenza appropriati o risposte alternative in caso di ambiguità, anziché trasmettere un falso senso di certezza.

Per utilizzare questa tecnologia in modo sicuro e responsabile, è importante considerare anche altri rischi specifici per il tuo caso d'uso, gli utenti e il contesto aziendale, oltre alle salvaguardie tecniche integrate.

Ti consigliamo di procedere nel seguente modo:

  1. Valuta i rischi per la sicurezza della tua applicazione.
  2. Valuta la possibilità di apportare modifiche per mitigare i rischi per la sicurezza.
  3. Esegui test di sicurezza appropriati per il tuo caso d'uso.
  4. Sollecitare il feedback degli utenti e monitorare i contenuti.

Risorse aggiuntive

Fornisci un feedback su Imagen su Vertex AI

Se ricevi un output o una risposta imprecisi o che ritieni non sicuri, puoi comunicarcelo inviando un feedback. Il tuo feedback può contribuire a migliorare Imagen su Vertex AI e l'impegno di Google nel campo dell'IA.

Poiché il feedback potrebbe essere leggibile, non inviare dati contenenti informazioni personali, riservate o sensibili.