Notícias sobre produtos

Aumente o engajamento dos usuários com a geração de imagens com IA

Leitura de 5 minutos

Adicionar imagens personalizadas ao app pode melhorar e personalizar significativamente a experiência do usuário, além de aumentar o engajamento. Esta postagem explora dois novos recursos para geração de imagens com o Firebase AI Logic: os recursos especializados de edição do Imagen, atualmente em prévia, e a disponibilidade geral do Gemini 2.5 Flash Image (também conhecido como "Nano Banana"), projetado para geração de imagens contextuais ou de conversação.

Aumente o engajamento dos usuários com imagens geradas pelo Firebase AI Logic

Os modelos de geração de imagens podem ser usados para criar avatares personalizados de perfil de usuário ou integrar recursos visuais personalizados diretamente aos principais fluxos de tela.  

Por exemplo, o Imagen oferece novos recursos de edição (na prévia para desenvolvedores). Agora é possível desenhar uma máscara e usar a pintura interna para gerar pixels na área mascarada. Além disso, a pintura externa está disponível para gerar pixels fora da máscara.   

Imagen inpainting.png

O Imagen é compatível com a repintura, permitindo gerar apenas uma parte de uma imagem. 

Outra opção é usar o Gemini 2.5 Flash Image (também conhecido como Nano Banana), que usa o conhecimento de mundo e as capacidades de raciocínio dos modelos do Gemini para gerar imagens contextualmente relevantes. Isso é ideal para criar ilustrações dinâmicas que se alinham à experiência atual do usuário no app.   

 

In-context nano banana illustration.png

Use o Gemini 2.5 Flash Image para criar ilustrações dinâmicas contextualmente relevantes para seu app. 

Por fim, a capacidade de editar imagens de forma conversacional e iterativa permite que os usuários editem uma foto usando linguagem natural.

 

photo edit natural language.png

Use o Gemini 2.5 Flash Image para editar uma imagem usando linguagem natural.

Ao começar a integrar a IA ao seu aplicativo, é importante aprender sobre segurança de IA. É fundamental avaliar os riscos de segurança do aplicativo, considerar ajustes para mitigar riscos, realizar testes de segurança adequados ao caso de uso, pedir feedback dos usuários e monitorar o conteúdo.

Imagen ou Gemini: a escolha é sua 

A diferença entre o Gemini 2.5 Flash Image ("Nano Banana") e o Imagen está no foco principal e nos recursos avançados de cada um. O Gemini 2.5 Flash Image, como um modelo de imagem na família Gemini, é excelente na edição de imagens conversacionais, mantendo o contexto e a consistência do assunto em várias iterações e aproveitando o "conhecimento e raciocínio do mundo" para criar recursos visuais contextualmente relevantes ou incorporar recursos visuais precisos em sequências de texto longas. 

O Imagen é o modelo especializado de geração de imagens do Google, projetado para maior controle criativo, especializado em resultados altamente fotorrealistas, detalhes artísticos, estilos específicos e controles explícitos para especificar a proporção ou o formato da imagem gerada.

Criação de imagens do Gemini 2.5 Flash 
(Nano Banana 🍌)
Imagen

🌎 conhecimento mundial e raciocínio para imagens mais relevantes ao contexto
  

💬 edite imagens de forma conversacional sem perder o contexto
  

📖 incorporar recursos visuais precisos em sequências de texto longas;

📐 especificar a proporção ou o formato das imagens geradas

 

🖌️Suporte à edição com base em máscara para pintura interna e externa. 

 

🎚️ mais controle sobre os detalhes da imagem gerada (qualidade, detalhes artísticos e estilos específicos)

Vamos ver como usá-los no seu app.
 

Retoque de imagens com o Imagen 

Há alguns meses, lançamos novos recursos de edição para o Imagen. Embora o Imagen já esteja pronto para produção de geração de imagens, os recursos de edição ainda estão na prévia para desenvolvedores.

Os recursos de edição do Imagen incluem inpainting e outpainting, que são recursos de edição de imagens baseados em máscara. Com esse novo recurso, os usuários podem modificar áreas específicas de uma imagem sem precisar regenerar a foto inteira. Isso significa que você pode preservar as melhores partes da imagem e alterar apenas o que quiser mudar.

Imagen inpainting dog.png

Use os recursos de edição do Imagen para fazer mudanças precisas e direcionadas em uma imagem, garantindo a integridade do restante dela.

Essas mudanças são feitas mantendo os elementos principais e a integridade geral da imagem original, modificando apenas a área na máscara.

Para implementar o inpainting com o Imagen, primeiro inicialize imagen-3.0-capability-001 um modelo específico do Imagen que ofereça suporte a recursos de edição:

// Copyright 2025 Google LLC.
// SPDX-License-Identifier: Apache-2.0
val editingModel =
        Firebase.ai(backend = GenerativeBackend.vertexAI()).imagenModel(
            "imagen-3.0-capability-001",
            generationConfig = ImagenGenerationConfig(
                numberOfImages = 1,
                aspectRatio = ImagenAspectRatio.SQUARE_1x1,
                imageFormat = ImagenImageFormat.jpeg(compressionQuality = 75),
            ),
        )

Em seguida, defina a função de inpainting:

// Copyright 2025 Google LLC.
// SPDX-License-Identifier: Apache-2.0

val prompt = "remove the pancakes and make it an omelet instead"

suspend fun inpaintImageWithMask(sourceImage: Bitmap, maskImage: Bitmap, prompt: String, editSteps: Int = 50): Bitmap {
        val imageResponse = editingModel.editImage(
            referenceImages = listOf(
                ImagenRawImage(sourceImage.toImagenInlineImage()),
                ImagenRawMask(maskImage.toImagenInlineImage()),
            ),
            prompt = prompt,
            config = ImagenEditingConfig(
                editMode = ImagenEditMode.INPAINT_INSERTION,
                editSteps = editSteps,
            ),
        )
        return imageResponse.images.first().asBitmap()
    }

Você fornece uma sourceImage, uma maskImage e um prompt para a edição, além do número de etapas de edição a serem realizadas.

Confira o Exemplo de edição de imagens em ação no catálogo de exemplos de IA do Android.

O Imagen também oferece suporte à extensão de pintura, que permite que o modelo gere os pixels fora de uma máscara. Você também pode usar os recursos de personalização de imagens do Imagen para mudar o estilo de uma foto ou atualizar um assunto nela. Leia mais sobre isso na documentação para desenvolvedores do Android.

Geração de imagens conversacionais com o Gemini 2.5 Flash Image

Uma maneira de editar imagens com o Gemini 2.5 Flash Image é usar os recursos de conversa multiturno do modelo.

Primeiro, inicialize o modelo:

// Copyright 2025 Google LLC.
// SPDX-License-Identifier: Apache-2.0

val model = Firebase.ai(backend = GenerativeBackend.googleAI()).generativeModel(
    modelName = "gemini-2.5-flash-image",
    // Configure the model to respond with text and images (required)
    generationConfig = generationConfig {
        responseModalities = listOf(ResponseModality.TEXT,
        ResponseModality.IMAGE)
    }
)

Para alcançar um resultado semelhante ao método do Imagen baseado em máscara descrito acima, podemos usar a API chat para iniciar uma conversa com o Gemini 2.5 Flash Image.

// Copyright 2025 Google LLC.
// SPDX-License-Identifier: Apache-2.0

// Initialize the chat
val chat = model.startChat()


// Load a bitmap
val source = ImageDecoder.createSource(context.contentResolver, uri)
val bitmap = ImageDecoder.decodeBitmap(source)


// Create the initial prompt instructing the model to edit the image
val prompt = content {
    image(bitmap)
    text("remove the pancakes and add an omelet")
}

// To generate an initial response, send a user message with the image and text prompt
var response = chat.sendMessage(prompt)

// Inspect the returned image
var generatedImageAsBitmap = response
    .candidates.first().content.parts.filterIsInstance<ImagePart>().firstOrNull()?.image

// Follow up requests do not need to specify the image again
response = chat.sendMessage("Now, center the omelet in the pan")
generatedImageAsBitmap = response
    .candidates.first().content.parts.filterIsInstance<ImagePart>().firstOrNull()?.image

Confira o recurso em ação na amostra de conversa por imagens do Gemini no catálogo de amostras de IA do Android e leia mais sobre ele na documentação do Android.

Conclusão

O Imagen e o Gemini 2.5 Flash Image oferecem recursos avançados. Assim, você pode selecionar o modelo de geração de imagens ideal para personalizar seu app e aumentar o engajamento dos usuários, dependendo do seu caso de uso específico.

Escrito por:

Continuar lendo