Tin tức về sản phẩm

Tăng mức độ tương tác của người dùng bằng tính năng Tạo hình ảnh bằng AI

Đọc trong 5 phút

Việc thêm hình ảnh tuỳ chỉnh vào ứng dụng có thể cải thiện và cá nhân hoá đáng kể trải nghiệm người dùng, đồng thời tăng mức độ tương tác của người dùng. Bài đăng này khám phá 2 tính năng mới để tạo hình ảnh bằng Firebase AI Logic: các tính năng chỉnh sửa chuyên biệt của Imagen (hiện đang ở bản dùng thử) và giai đoạn phát hành rộng rãi của Gemini 2.5 Flash Image (còn gọi là "Nano Banana"), được thiết kế để tạo hình ảnh theo ngữ cảnh hoặc hình ảnh dựa trên cuộc trò chuyện.

Tăng mức độ tương tác của người dùng bằng hình ảnh được tạo thông qua Firebase AI Logic

Bạn có thể sử dụng các mô hình tạo hình ảnh để tạo hình đại diện tuỳ chỉnh cho hồ sơ người dùng hoặc tích hợp các thành phần hình ảnh được cá nhân hoá trực tiếp vào các luồng màn hình chính.  

Ví dụ: Imagen cung cấp các tính năng chỉnh sửa mới (trong bản dùng thử cho nhà phát triển). Giờ đây, bạn có thể vẽ mặt nạ và sử dụng tính năng phục hồi ảnh để tạo pixel trong vùng được che. Ngoài ra, tính năng mở rộng ảnh cũng có sẵn để tạo pixel bên ngoài mặt nạ.   

Imagen inpainting.png

Imagen hỗ trợ tính năng phục hồi ảnh, cho phép chỉ tạo một phần của hình ảnh. 

Ngoài ra, Gemini 2.5 Flash Image (còn gọi là Nano Banana) có thể sử dụng kiến thức mở rộng về thế giới và khả năng suy luận của các mô hình Gemini để tạo hình ảnh phù hợp với ngữ cảnh. Đây là lựa chọn lý tưởng để tạo hình minh hoạ động phù hợp với trải nghiệm hiện tại của người dùng trong ứng dụng.   

 

In-context nano banana illustration.png

Sử dụng Gemini 2.5 Flash Image để tạo hình minh hoạ động phù hợp với ngữ cảnh của ứng dụng.

Cuối cùng, khả năng chỉnh sửa hình ảnh theo cuộc trò chuyện và lặp lại cho phép người dùng chỉnh sửa ảnh bằng ngôn ngữ tự nhiên.

 

photo edit natural language.png

Sử dụng Gemini 2.5 Flash Image để chỉnh sửa ảnh bằng ngôn ngữ tự nhiên.

Khi bắt đầu tích hợp AI vào ứng dụng, bạn cần tìm hiểu về tính an toàn của AI. Điều đặc biệt quan trọng là phải đánh giá rủi ro bảo mật của ứng dụng, cân nhắc điều chỉnh để giảm thiểu rủi ro về an toàn, thực hiện kiểm thử an toàn phù hợp với trường hợp sử dụng của bạn, đồng thời thu thập ý kiến phản hồi của người dùng và giám sát nội dung.

Imagen hay Gemini: Bạn có quyền lựa chọn

Sự khác biệt giữa Gemini 2.5 Flash Image ("Nano Banana") và Imagen nằm ở trọng tâm chính và các tính năng nâng cao. Là một mô hình hình ảnh trong nhóm Gemini lớn hơn, Gemini 2.5 Flash Image vượt trội trong việc chỉnh sửa hình ảnh dựa trên cuộc trò chuyện, duy trì ngữ cảnh và tính nhất quán của đối tượng trên nhiều lần lặp lại, đồng thời tận dụng "kiến thức và khả năng suy luận về thế giới" để tạo hình ảnh phù hợp với ngữ cảnh hoặc nhúng hình ảnh chính xác trong các chuỗi văn bản dài. 

Imagen là mô hình tạo hình ảnh chuyên biệt của Google, được thiết kế để kiểm soát sáng tạo tốt hơn, chuyên về đầu ra có độ chân thực cao như ảnh chụp thực tế, chi tiết nghệ thuật, kiểu cụ thể và cung cấp các chế độ kiểm soát rõ ràng để chỉ định tỷ lệ khung hình hoặc định dạng của hình ảnh được tạo.

Hình ảnh Gemini 2.5 Flash 
(Nano Banana 🍌)
Imagen

🌎 kiến thức và khả năng suy luận về thế giới để có hình ảnh phù hợp với ngữ cảnh hơn

💬 chỉnh sửa hình ảnh theo cuộc trò chuyện trong khi vẫn duy trì ngữ cảnh

📖 nhúng hình ảnh chính xác trong các chuỗi văn bản dài

📐 chỉ định tỷ lệ khung hình hoặc định dạng của hình ảnh được tạo

 

🖌️Hỗ trợ chỉnh sửa dựa trên mặt nạ để phục hồi ảnh và mở rộng ảnh. 

 

🎚️ kiểm soát tốt hơn các chi tiết của hình ảnh được tạo (chất lượng, chi tiết nghệ thuật và kiểu cụ thể)

Hãy xem cách sử dụng các mô hình này trong ứng dụng của bạn.

Phục hồi ảnh bằng Imagen

Vài tháng trước, chúng tôi đã phát hành các tính năng chỉnh sửa mới cho Imagen. Mặc dù Imagen hiện đã sẵn sàng để phát hành chính thức cho tính năng tạo hình ảnh, nhưng các tính năng chỉnh sửa vẫn đang ở bản dùng thử cho nhà phát triển.

Các tính năng chỉnh sửa của Imagen bao gồm phục hồi ảnhmở rộng ảnh, các tính năng chỉnh sửa hình ảnh dựa trên mặt nạ. Tính năng mới này cho phép người dùng sửa đổi các vùng cụ thể của hình ảnh mà không cần tạo lại toàn bộ hình ảnh. Điều này có nghĩa là bạn có thể giữ lại những phần đẹp nhất của hình ảnh và chỉ thay đổi những gì bạn muốn.

Imagen inpainting dog.png

Sử dụng các tính năng chỉnh sửa của Imagen để thực hiện các thay đổi chính xác, có mục tiêu trong hình ảnh và đảm bảo tính toàn vẹn của phần còn lại của hình ảnh

Những thay đổi này được thực hiện trong khi vẫn duy trì các thành phần cốt lõi và tính toàn vẹn tổng thể của hình ảnh gốc, đồng thời chỉ sửa đổi vùng trong mặt nạ.

Để triển khai tính năng phục hồi ảnh bằng Imagen, trước tiên hãy khởi động imagen-3.0-capability-001 một mô hình Imagen cụ thể hỗ trợ các tính năng chỉnh sửa:

  // 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),
            ),
        )

Từ đó, hãy xác định hàm phục hồi ảnh:

  // 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()
    }

Bạn cung cấp cả sourceImage, maskImage và câu lệnh cho thao tác chỉnh sửa cũng như số bước chỉnh sửa cần thực hiện.

Bạn có thể xem ví dụ thực tế trong Mẫu chỉnh sửa Imagen trong danh mục Mẫu AI Android!

Imagen cũng hỗ trợ tính năng mở rộng ảnh cho phép bạn để mô hình tạo pixel bên ngoài mặt nạ. Bạn cũng có thể sử dụng các tính năng Tuỳ chỉnh hình ảnh của Imagen để thay đổi kiểu của hình ảnh hoặc cập nhật đối tượng trong hình ảnh. Đọc thêm về tính năng này trong tài liệu dành cho nhà phát triển Android.

Tạo hình ảnh dựa trên cuộc trò chuyện bằng Gemini 2.5 Flash Image

Một cách để chỉnh sửa hình ảnh bằng Gemini 2.5 Flash Image là sử dụng các tính năng trò chuyện nhiều lượt của mô hình.

Trước tiên, hãy khởi động mô hình:

  // 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)
    }
)

Để đạt được kết quả tương tự như phương thức Imagen dựa trên mặt nạ được mô tả ở trên, chúng ta có thể sử dụng API chat để bắt đầu cuộc trò chuyện với 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

Bạn có thể xem ví dụ thực tế trong mẫu Trò chuyện bằng hình ảnh Gemini trong danh mục Mẫu AI Android và đọc thêm về mẫu này trong tài liệu Android.

Lời kết

Cả Imagen và Gemini 2.5 Flash Image đều cung cấp các tính năng mạnh mẽ, cho phép bạn chọn mô hình tạo hình ảnh lý tưởng để cá nhân hoá ứng dụng và tăng mức độ tương tác của người dùng, tuỳ thuộc vào trường hợp sử dụng cụ thể của bạn.

Tác giả:

Tiếp tục đọc