A API Gemini oferece acesso ao Imagen 3, o modelo de geração de imagens de última geração do Google. Com o Imagen, você pode gerar novas imagens a partir de comandos de texto. A integração da API Gemini com o Imagen foi projetada para ajudar você a criar aplicativos de IA de última geração que transformam comandos do usuário em recursos visuais de alta qualidade em questão de segundos.
Este guia vai ajudar você a começar a usar o Imagen usando o SDK da API Gemini para Python.
Sobre a Imagen 3
O Imagen 3 é o modelo de conversão de texto em imagem de maior qualidade do Google, com vários recursos novos e aprimorados. O Imagen 3 pode fazer o seguinte:
- Gera imagens com mais detalhes, iluminação mais rica e menos artefatos distrativos do que os modelos anteriores.
- Entenda os comandos escritos em linguagem natural e cotidiana, facilitando a geração alinhada sem engenharia de comando complexa.
- Gere imagens em uma ampla variedade de formatos e estilos, de paisagens realistas a pinturas a óleo com texturas ricas ou cenas de animação em stop-motion.
- Renderiza texto de maneira mais eficaz do que os modelos anteriores, abrindo novas possibilidades para casos de uso, como cartões de aniversário estilizados, apresentações e mais.
A Imagen 3 foi criada com as inovações de segurança e responsabilidade mais recentes do Google, desde o desenvolvimento de dados e modelos até a produção. A equipe do Google DeepMind usou filtragem extensiva e rotulagem de dados para minimizar conteúdos nocivos nos conjuntos de dados e reduzir a probabilidade de saídas prejudiciais. A equipe também realizou uma equipe vermelha e avaliações em tópicos como imparcialidade, viés e segurança de conteúdo.
Para saber mais e conferir exemplos de saída, consulte a Visão geral do Google DeepMind Imagen 3.
Antes de começar: configure o projeto e a chave de API
pip install -U git+https://github.com/google-gemini/generative-ai-python@imagen
Antes de chamar a API Gemini, você precisa configurar seu projeto e a chave de API.
Gerar imagens
Nesta seção, mostramos como instanciar um modelo do Imagen e gerar imagens.
Para executar o código de exemplo, primeiro instale o Pillow:
pip install --upgrade Pillow
Em seguida, com o Pillow e o SDK do Python instalados, use o seguinte código para gerar imagens:
import os
import google.generativeai as genai
genai.configure(api_key=os.environ['API_KEY'])
imagen = genai.ImageGenerationModel("imagen-3.0-generate-001")
result = imagen.generate_images(
prompt="Fuzzy bunnies in my kitchen",
number_of_images=4,
safety_filter_level="block_only_high",
person_generation="allow_adult",
aspect_ratio="3:4",
negative_prompt="Outside",
)
for image in result.images:
print(image)
# The output should look similar to this:
# <vertexai.preview.vision_models.GeneratedImage object at 0x78f3396ef370>
# <vertexai.preview.vision_models.GeneratedImage object at 0x78f3396ef700>
# <vertexai.preview.vision_models.GeneratedImage object at 0x78f33953c2b0>
# <vertexai.preview.vision_models.GeneratedImage object at 0x78f33953c280>
for image in result.images:
# Open and display the image using your local operating system.
image._pil_image.show()
O bloco de notas vai mostrar quatro imagens semelhantes a esta:
Parâmetros do modelo do Imagen
Os seguintes parâmetros estão disponíveis para generate_images()
:
prompt
: o comando de texto para a imagem.negative_prompt
: uma descrição do que você quer omitir nas imagens geradas. O padrão é nenhum.Por exemplo, considere o comando "uma rua chuvosa à noite sem pessoas". O modelo pode interpretar "pessoas" como uma diretiva do que incluir em vez de omitir. Para gerar resultados melhores, você pode usar o comando "uma rua de cidade chuvosa à noite" com um comando negativo "pessoas".
number_of_images
: o número de imagens a serem geradas, de 1 a 4. O padrão é 4.aspect_ratio
: muda a proporção da imagem gerada. Os valores aceitos são"1:1"
,"3:4"
,"4:3"
,"9:16"
e"16:9"
. O padrão é"1:1"
.safety_filter_level
: adiciona um nível de filtro à filtragem de segurança. Os seguintes valores são válidos:"block_low_and_above"
: bloqueia quando a pontuação de probabilidade ou de gravidade éLOW
,MEDIUM
ouHIGH
."block_medium_and_above"
: bloqueia quando a pontuação de probabilidade ou de gravidade éMEDIUM
ouHIGH
."block_only_high"
: bloqueia quando a pontuação de probabilidade ou de gravidade éHIGH
.
person_generation
: permite que o modelo gere imagens de pessoas. Os seguintes valores são compatíveis:"dont_allow"
: bloqueia a geração de imagens de pessoas."allow_adult"
: gera imagens de adultos, mas não de crianças.
Idioma do comando de texto
Os seguintes idiomas de comando de texto de entrada são compatíveis:
- Chinês (simplificado) (
zh
/zh-CN
) - Chinese (Traditional) (
zh-TW
) - Inglês (
en
) - Hindi (
hi
) - Japonês (
ja
) - Coreano (
ko
) - Português (
pt
) - Espanhol (
es
)
A seguir
A imagem 3 na API Gemini está em acesso antecipado. Fique de olho nos anúncios sobre o status do recurso.