การเพิ่มรูปภาพที่กำหนดเองลงในแอปจะช่วยปรับปรุงและปรับเปลี่ยนประสบการณ์ของผู้ใช้ในแบบของคุณได้อย่างมาก รวมถึงเพิ่มการมีส่วนร่วมของผู้ใช้ด้วย โพสต์นี้จะสำรวจความสามารถใหม่ 2 อย่างสำหรับการสร้างรูปภาพด้วย Firebase AI Logic ได้แก่ ฟีเจอร์แต่งภาพ Imagen เฉพาะทางที่ปัจจุบันอยู่ในเวอร์ชันตัวอย่าง และความพร้อมใช้งานทั่วไปของรูปภาพ Gemini 2.5 Flash (หรือที่เรียกว่า "Nano Banana") ซึ่งออกแบบมาสำหรับการสร้างรูปภาพตามบริบทหรือแบบสนทนา
เพิ่มการมีส่วนร่วมของผู้ใช้ด้วยรูปภาพที่สร้างผ่าน Firebase AI Logic
คุณสามารถใช้โมเดลการสร้างรูปภาพเพื่อสร้างอวาตาร์โปรไฟล์ผู้ใช้ที่กำหนดเอง หรือผสานรวมชิ้นงานภาพที่ปรับเปลี่ยนในแบบของคุณลงในโฟลว์หน้าจอหลักได้โดยตรง
เช่น Imagen มีฟีเจอร์แต่งภาพใหม่ (ในเวอร์ชันตัวอย่างสำหรับนักพัฒนาซอฟต์แวร์) ตอนนี้คุณสามารถวาดมาสก์และใช้การวาดภาพใหม่เพื่อสร้างพิกเซลภายในพื้นที่ที่มาสก์ นอกจากนี้ คุณยังใช้การวาดภาพนอกกรอบเพื่อสร้างพิกเซลนอกมาสก์ได้ด้วย
Imagen รองรับการวาดภาพเติม ทำให้สร้างได้เฉพาะบางส่วนของรูปภาพ
หรือ Gemini 2.5 Flash Image (หรือที่เรียกว่า Nano Banana) สามารถใช้ความรู้เกี่ยวกับโลกที่กว้างขวางและความสามารถในการให้เหตุผลของโมเดล Gemini เพื่อสร้างรูปภาพที่เกี่ยวข้องตามบริบท ซึ่งเหมาะสำหรับการสร้างภาพประกอบแบบไดนามิกที่สอดคล้องกับประสบการณ์การใช้งานในแอปของผู้ใช้ในปัจจุบัน
ใช้รูปภาพ Gemini 2.5 Flash เพื่อสร้างภาพประกอบแบบไดนามิกที่เกี่ยวข้องกับแอปของคุณตามบริบท
สุดท้าย ความสามารถในการแก้ไขรูปภาพแบบสนทนาและแบบวนซ้ำช่วยให้ผู้ใช้แก้ไขรูปภาพได้โดยใช้ภาษาธรรมชาติ
ใช้รูปภาพ Gemini 2.5 Flash เพื่อแก้ไขรูปภาพโดยใช้ภาษาที่เป็นธรรมชาติ
เมื่อเริ่มผสานรวม AI เข้ากับแอปพลิเคชัน คุณควรศึกษาเกี่ยวกับความปลอดภัยของ AI โดยเฉพาะอย่างยิ่ง คุณต้องประเมินความเสี่ยงด้านความปลอดภัยของแอปพลิเคชัน พิจารณาการปรับเพื่อลดความเสี่ยงด้านความปลอดภัย ทำการทดสอบความปลอดภัยที่เหมาะสมกับกรณีการใช้งานของคุณ และขอความคิดเห็นจากผู้ใช้พร้อมทั้งตรวจสอบเนื้อหา
Imagen หรือ Gemini: คุณเลือกได้
ความแตกต่างระหว่างรูปภาพ Gemini 2.5 Flash ("Nano Banana") กับ Imagen อยู่ที่จุดมุ่งหมายหลักและความสามารถขั้นสูง Gemini 2.5 Flash Image เป็นโมเดลรูปภาพในตระกูล Gemini ขนาดใหญ่ ซึ่งมีความโดดเด่นในการแก้ไขรูปภาพแบบสนทนา โดยจะรักษาบริบทและความสอดคล้องของเรื่องราวในหลายๆ การทำซ้ำ และใช้ประโยชน์จาก "ความรู้และการให้เหตุผลเกี่ยวกับโลก" เพื่อสร้างภาพที่เกี่ยวข้องตามบริบทหรือฝังภาพที่ถูกต้องภายในลำดับข้อความยาว
Imagen เป็นโมเดลการสร้างรูปภาพเฉพาะของ Google ซึ่งออกแบบมาเพื่อการควบคุมความคิดสร้างสรรค์ที่มากขึ้น โดยเน้นที่ผลลัพธ์ที่สมจริงสูง รายละเอียดทางศิลปะ สไตล์ที่เฉพาะเจาะจง และให้การควบคุมที่ชัดเจนสำหรับการระบุสัดส่วนภาพหรือรูปแบบของรูปภาพที่สร้างขึ้น
| รูปภาพ Gemini 2.5 Flash (Nano Banana 🍌) | Imagen |
🌎 ความรู้และการให้เหตุผลเกี่ยวกับโลกเพื่อให้ได้รูปภาพที่เกี่ยวข้องตามบริบทมากขึ้น 💬 แก้ไขรูปภาพแบบสนทนาพร้อมคงบริบท 📖 ฝังภาพที่ถูกต้องภายในลำดับข้อความยาว | 📐 ระบุสัดส่วนภาพหรือรูปแบบของรูปภาพที่สร้างขึ้น
🖌️รองรับการแก้ไขตามมาสก์สำหรับการวาดภาพภายในและภายนอก
🎚️ ควบคุมรายละเอียดของรูปภาพที่สร้างขึ้นได้มากขึ้น (คุณภาพ รายละเอียดทางศิลปะ และสไตล์ที่เฉพาะเจาะจง) |
มาดูวิธีใช้ในแอปกัน
การซ่อมแซมส่วนที่เสียหายของรูปภาพด้วย Imagen
เมื่อไม่กี่เดือนที่ผ่านมา เราได้เปิดตัวฟีเจอร์แต่งภาพใหม่สำหรับ Imagen แม้ว่าตอนนี้ Imagen จะพร้อมใช้งานจริงสำหรับการสร้างรูปภาพแล้ว แต่ฟีเจอร์แต่งภาพยังอยู่ในรุ่นตัวอย่างสำหรับนักพัฒนาซอฟต์แวร์
ฟีเจอร์แต่งภาพของ Imagen ได้แก่ Inpainting และ Outpainting ซึ่งเป็นฟีเจอร์แต่งภาพตามมาสก์ ความสามารถใหม่นี้ช่วยให้ผู้ใช้แก้ไขพื้นที่ใดพื้นที่หนึ่งของรูปภาพได้โดยไม่ต้องสร้างรูปภาพทั้งรูปใหม่ ซึ่งหมายความว่าคุณสามารถเก็บส่วนที่ดีที่สุดของรูปภาพไว้และเปลี่ยนแปลงเฉพาะส่วนที่ต้องการ
ใช้ฟีเจอร์แต่งภาพ Imagen เพื่อทำการเปลี่ยนแปลงที่กำหนดเป้าหมายได้อย่างแม่นยำในรูปภาพ และรับประกันความสมบูรณ์ของรูปภาพส่วนที่เหลือ
การเปลี่ยนแปลงเหล่านี้จะเกิดขึ้นในขณะที่ยังคงรักษาองค์ประกอบหลักและความสมบูรณ์โดยรวมของรูปภาพต้นฉบับไว้ และจะแก้ไขเฉพาะพื้นที่ในมาสก์เท่านั้น
หากต้องการใช้การวาดภาพในส่วนที่ขาดหายไปด้วย Imagen ให้เริ่มต้นด้วยการเริ่มต้นimagen-3.0-capability-001โมเดล Imagen ที่เฉพาะเจาะจงซึ่งรองรับฟีเจอร์แต่งภาพ
// 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),
),
)
จากนั้นกำหนดฟังก์ชันการลบวัตถุออกจากภาพ
// 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()
}
คุณต้องระบุทั้ง sourceImage, maskImage และพรอมต์สำหรับการแก้ไข รวมถึงจำนวนขั้นตอนการแก้ไขที่จะดำเนินการ
คุณดูการทำงานของฟีเจอร์นี้ได้ในตัวอย่างการแก้ไข Imagen ในแคตตาล็อกตัวอย่าง AI ของ Android
นอกจากนี้ Imagen ยังรองรับ Outpainting ซึ่งช่วยให้คุณอนุญาตให้โมเดลสร้างพิกเซลนอกมาสก์ได้ นอกจากนี้ คุณยังใช้ความสามารถในการปรับแต่งรูปภาพของ Imagen เพื่อเปลี่ยนสไตล์ของรูปภาพหรืออัปเดตวัตถุในรูปภาพได้ด้วย อ่านข้อมูลเพิ่มเติมได้ในเอกสารประกอบสำหรับนักพัฒนาแอป Android
การสร้างรูปภาพแบบสนทนาด้วย Gemini 2.5 Flash Image
วิธีหนึ่งในการแก้ไขรูปภาพด้วย Gemini 2.5 Flash Image คือการใช้ความสามารถในการแชทแบบหลายรอบของโมเดล
ก่อนอื่น ให้เริ่มต้นโมเดลโดยทำดังนี้
// 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)
}
)
หากต้องการให้ได้ผลลัพธ์คล้ายกับวิธีของ Imagen ที่อิงตามมาสก์ที่อธิบายไว้ข้างต้น เราสามารถใช้ chat API เพื่อเริ่มการสนทนากับรูปภาพ Gemini 2.5 Flash ได้
// 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
คุณดูการทำงานของฟีเจอร์นี้ได้ในตัวอย่างแชทรูปภาพของ Gemini ในแคตตาล็อกตัวอย่าง AI ของ Android และอ่านเพิ่มเติมได้ในเอกสารประกอบของ Android
สรุป
ทั้ง Imagen และ Gemini 2.5 Flash Image มีความสามารถอันทรงพลังที่ช่วยให้คุณเลือกโมเดลการสร้างรูปภาพที่เหมาะสมที่สุดเพื่อปรับแต่งแอปและเพิ่มการมีส่วนร่วมของผู้ใช้ได้ ทั้งนี้ขึ้นอยู่กับกรณีการใช้งานเฉพาะของคุณ
อ่านต่อ
-
ข่าวสารผลิตภัณฑ์
หากคุณเป็นนักพัฒนาแอป Android ที่ต้องการใช้ฟีเจอร์ AI ที่เป็นนวัตกรรมใหม่ในแอป เราได้เปิดตัวการอัปเดตใหม่ที่มีประสิทธิภาพไปเมื่อเร็วๆ นี้
Thomas Ezan • ใช้เวลาอ่าน 3 นาที
-
ข่าวสารผลิตภัณฑ์
วันนี้เราจะขยายกลุ่มผลิตภัณฑ์โมเดล Gemini 3 ด้วยการเปิดตัว Gemini 3 Flash ซึ่งเป็นความสามารถอันชาญฉลาดระดับแนวหน้าที่สร้างขึ้นเพื่อเน้นความรวดเร็วในราคาที่ถูกกว่า
Thomas Ezan • ใช้เวลาอ่าน 2 นาที
-
ข่าวสารผลิตภัณฑ์
Android Studio Panda 4 พร้อมให้คุณใช้ในเวอร์ชันที่ใช้งานจริงแล้ว การเปิดตัวครั้งนี้มาพร้อมโหมดการวางแผน การคาดการณ์การแก้ไขครั้งถัดไป และอื่นๆ ซึ่งจะช่วยให้การสร้างแอป Android คุณภาพสูงง่ายกว่าที่เคย
Matt Dyor • ใช้เวลาอ่าน 5 นาที
รับข่าวสาร
รับข้อมูลเชิงลึกด้านการพัฒนาแอป Android ล่าสุดส่งตรงถึงกล่องจดหมายของคุณทุกสัปดาห์