ภาพรวมของ ML Kit GenAI API

GenAI API ของ ML Kit ใช้ประโยชน์จากประสิทธิภาพของ Gemini Nano เพื่อช่วยให้แอปของคุณทำงาน Generative AI ในอุปกรณ์ได้ API เหล่านี้สร้างขึ้นบน AICore ซึ่งเป็นบริการระบบ Android ที่จัดการโมเดลพื้นฐานในอุปกรณ์และเร่งการอนุมานในขณะที่รักษาข้อมูลผู้ใช้ให้เป็นส่วนตัว

ข้อกำหนดในการให้บริการเพิ่มเติมของ GenAI API ใน ML Kit มีผลบังคับใช้กับการใช้ GenAI API นักพัฒนาแอปเป็นผู้รับผิดชอบแต่เพียงผู้เดียวต่อความปลอดภัยของไคลเอ็นต์ API และประสบการณ์ของผู้ใช้แอป

ความสามารถหลัก

ML Kit จัดระเบียบความสามารถของ GenAI ออกเป็นหมวดหมู่ต่อไปนี้

การสร้างและ Agent ที่กำหนดเอง

ทำงานร่วมกับโมเดลพื้นฐาน Gemini Nano โดยตรงสำหรับการเขียนพรอมต์ที่กำหนดเองและเวิร์กโฟลว์ Agent อัตโนมัติ

  • การเข้าถึงโมเดลโดยตรง (โดยใช้คลาส GenerativeModel): สร้างข้อความหรือเอาต์พุตที่มีโครงสร้างซึ่งพิมพ์จากพรอมต์แบบข้อความเท่านั้นหรือแบบหลายรูปแบบที่กำหนดเอง หรือจัดการประวัติการแชทแบบหลายรอบของคุณเองโดยตรงโดยใช้ออบเจ็กต์ List<Content> ที่มีบทบาท USER และ MODEL และค่า sessionId และจัดการการประกาศเครื่องมือโดยตรง
  • เวิร์กโฟลว์แบบ Agentic (ใช้คลาส AgentRunner): สร้างขึ้นต่อยอดจากคลาส GenerativeModel โดยจะจัดการเซสชันแบบหลายรอบ (รวมถึงประวัติการสนทนาในหน่วยความจำ) และลูปการเรียกใช้เครื่องมือแบบหลายขั้นตอนโดยอัตโนมัติ

เสียงพูดและเสียง

ถอดเสียง แปล และสังเคราะห์เสียงพูดในอุปกรณ์:

งานเกี่ยวกับข้อความและรูปภาพ

ใช้ API สำหรับงานที่เฉพาะเจาะจงซึ่งได้รับการเพิ่มประสิทธิภาพสำหรับงานด้านการมองเห็น การเขียน และการค้นหาทั่วไปโดยไม่ต้องใช้วิศวกรรมพรอมต์ (Prompt Engineering) ดังนี้

  • คำอธิบายรูปภาพ: สร้างคำอธิบายสั้นๆ ของรูปภาพที่ระบุ
  • การสรุป: สรุปบทความหรือการสนทนาในแชทเป็นรายการสัญลักษณ์หัวข้อย่อย
  • การพิสูจน์อักษร: ปรับแต่งเนื้อหาสั้นๆ โดยการปรับปรุงไวยากรณ์และแก้ไขข้อผิดพลาดในการสะกดคำ
  • การเขียนใหม่: เขียนข้อความสั้นๆ ใหม่ในโทนหรือสไตล์ที่แตกต่างกัน
  • การฝัง: สร้างการฝังเวกเตอร์สำหรับข้อความและรูปภาพโดยใช้ Embeddings API และจับคู่กับ AppSearch ของ AndroidX เพื่อค้นหาเนื้อหาตามความหมาย

ประโยชน์ของ GenAI API

GenAI API ทำงานในอุปกรณ์ทั้งหมดเช่นเดียวกับฟีเจอร์ ML Kit อื่นๆ ที่มีอยู่ จึงมีประโยชน์ดังนี้

  • ระบบจะประมวลผลข้อมูลอินพุต การอนุมาน และเอาต์พุตในเครื่อง
  • ฟังก์ชันการทำงานยังคงเหมือนเดิมแม้ไม่มีการเชื่อมต่ออินเทอร์เน็ตที่เสถียร
  • ไม่มีค่าใช้จ่ายเพิ่มเติมสำหรับเซิร์ฟเวอร์ในการเรียก API แต่ละครั้ง

นอกจากนี้ เนื่องจาก GenAI API สร้างขึ้นบน AICore และขับเคลื่อนโดย Gemini Nano แอปและ API สำหรับงานที่เฉพาะเจาะจงจึงใช้โมเดลพื้นฐาน Gemini Nano เดียวกันในอุปกรณ์ ซึ่งจะช่วยหลีกเลี่ยงการรอให้ดาวน์โหลดโมเดลแยกต่างหากหากมี Gemini Nano อยู่ในอุปกรณ์แล้ว และช่วยประหยัดพื้นที่เก็บข้อมูล ดูข้อมูลเพิ่มเติมเกี่ยวกับวิธีที่ AICore แยกคำขอเพื่อปกป้องความเป็นส่วนตัว

สตรีมมิงเทียบกับไม่ใช่สตรีมมิง

GenAI API ของ ML Kit มีทั้งตัวเลือกการสตรีมและไม่ใช่การสตรีมสำหรับการรับผลลัพธ์ Streaming API จะส่งคำตอบแบบเพิ่มขึ้นเรื่อยๆ ตามที่สร้างขึ้น ซึ่งจะทำให้มีการไหลเวียนของข้อมูลอย่างต่อเนื่อง ในทางตรงกันข้าม API ที่ไม่ใช่สตรีมมิงจะรอจนกว่าการตอบกลับทั้งหมดจะเสร็จสมบูรณ์ก่อนที่จะแสดงผลเป็นบล็อกเดียว

เลือก Streaming API สำหรับคำตอบที่ยาว เนื่องจากช่วยให้แสดงความคิดเห็นเบื้องต้นได้เร็วขึ้น API ที่ไม่ใช่สตรีมมิงเหมาะสำหรับคำตอบสั้นๆ หรือเมื่อประมวลผลผลลัพธ์เป็นกลุ่ม

การรองรับอุปกรณ์

การรองรับอุปกรณ์สำหรับการสร้างที่กำหนดเองและ Agent รวมถึง Tasks API งานข้อความและรูปภาพจะอธิบายไว้ในส่วนต่อไปนี้ สำหรับฟีเจอร์ที่ไม่ได้ระบุไว้ในส่วนนี้ โปรดดูข้อมูลการรองรับอุปกรณ์ในหน้าฟีเจอร์แต่ละรายการ

การสร้างที่กำหนดเองและการรองรับอุปกรณ์ของ Agent

การเข้าถึงโมเดลโดยตรงและเวิร์กโฟลว์ Agentic รองรับในอุปกรณ์ต่อไปนี้

Gemini Nano 2

  • POCO: POCO F7 Ultra, POCO F8 Pro, POCO F8 Ultra, POCO X7 Pro, POCO X8 Pro
  • realme: realme GT 7
  • Redmi: Redmi Turbo 5
  • vivo: vivo T4 Ultra, vivo X200 FE
  • Xiaomi: Leitzphone ที่ขับเคลื่อนโดย Xiaomi, Xiaomi 15, Xiaomi 15T, Xiaomi 15 Ultra, Xiaomi 17, Xiaomi 17T, Xiaomi 17 Ultra

Gemini Nano 3

  • Acer: Acer Googlebook 14
  • ASUS: ASUS Googlebook 14
  • Dell: XPS Googlebook
  • Google: Pixel 9, Pixel 9 Pro, Pixel 9 Pro XL, Pixel 9 Pro Fold
  • HP: HP Googlebook 14
  • Lenovo: Lenovo Googlebook 15
  • OPPO: Reno 14 Pro 5G, Reno 15 Pro 5G, Reno 15 Pro Mini 5G, Reno 15 Pro Max 5G, Reno 16 Pro 5G
  • realme: realme GT 7T

Gemini Nano 4

  • Google: Pixel 11, Pixel 11 Pro, Pixel 11 Pro XL, Pixel 11 Pro Fold, Pixel 10, Pixel 10 Pro, Pixel 10 Pro XL, Pixel 10 Pro Fold
  • Honor: Honor 600 Pro, Magic 7, Magic 7 Pro, Porsche Design Magic 7 RSR, Magic 8 Pro, Magic V5, Magic V6, MagicPad 4
  • iQOO: iQOO 13, iQOO 15
  • Lenovo: Lenovo Idea Tab Pro Gen 2, Lenovo Legion Tab Gen 5(8.8"), Lenovo Yoga Tab Plus Gen 2
  • Motorola: Edge 70 Pro, Edge 70 Pro+, Razr 60 Ultra, Razr Ultra 2025, Razr Fold, Signature
  • OnePlus: OnePlus 13, OnePlus 13s, OnePlus 15, OnePlus 15R, OnePlus Pad 3
  • OPPO: Find N5, Find N6, Find X8, Find X8 Pro, Find X9, Find X9 Pro, Find X9s, Find X9 Ultra, Find X10, Find X10 Pro Max
  • POCO: POCO F9 Pro, POCO X8 Pro Max
  • realme: realme GT 7 Pro, realme GT 8 Pro
  • Samsung: Galaxy S25, Galaxy S25+, Galaxy S25 Edge, Galaxy S25 Ultra, Galaxy S26, Galaxy S26+, Galaxy S26 FE, Galaxy S26 Ultra, Galaxy Tab S12+, Galaxy Tab S12 Ultra, Galaxy Z Flip7, Galaxy Z Flip8, Galaxy Z Fold7, Galaxy Z Fold8, Galaxy Z Fold8 Ultra, Galaxy Z TriFold
  • Sharp: AQUOS R11
  • Sony: Xperia 1 VIII
  • vivo: vivo X200, vivo X200 Pro, vivo X200T, vivo X300, vivo X300 FE, vivo X300 Pro, vivo X300 Ultra, vivo X500 Pro, vivo X500 Pro Max, vivo X Fold3 Pro, vivo X Fold5, vivo X Fold6
  • Xiaomi: Xiaomi 15T Pro, Xiaomi 17T Pro, Xiaomi Pad Mini

ความพร้อมใช้งานและเวอร์ชันของโมเดลอาจแตกต่างกันไปตามการกำหนดค่า RAM, เวอร์ชันระบบปฏิบัติการ และสถานะการอัปเดต AICore ของอุปกรณ์ หากต้องการตรวจสอบเวอร์ชันโมเดลที่ใช้งานอยู่ในอุปกรณ์ โปรดดูหัวข้อดึงข้อมูลเวอร์ชัน Gemini Nano

การรองรับอุปกรณ์สำหรับงานข้อความและรูปภาพ

API คำอธิบายรูปภาพ, การสรุป, การพิสูจน์อักษร และการเขียนใหม่พร้อมใช้งานในอุปกรณ์ต่อไปนี้ โดยมีแผนที่จะขยายการรองรับไปยังอุปกรณ์อื่นๆ เพิ่มเติม

  • Acer: Acer Googlebook 14
  • ASUS: ASUS Googlebook 14
  • Dell: XPS Googlebook
  • Google: Pixel 11, Pixel 11 Pro, Pixel 11 Pro XL, Pixel 11 Pro Fold, Pixel 10, Pixel 10 Pro, Pixel 10 Pro XL, Pixel 10 Pro Fold, Pixel 9, Pixel 9 Pro, Pixel 9 Pro XL, Pixel 9 Pro Fold
  • Honor: Honor 400 Pro, Honor 600 Pro, Magic 7, Magic 7 Pro, Porsche Design Magic 7 RSR, Magic 8 Pro, Magic V5, Magic V6, MagicPad 4
  • HP: HP Googlebook 14
  • iQOO: iQOO 13, iQOO 15
  • Lenovo: Lenovo Googlebook 15, Lenovo Idea Tab Pro Gen 2, Lenovo Legion Tab Gen 5(8.8 นิ้ว), Lenovo Yoga Tab Plus Gen 2
  • Motorola: Edge 70 Pro, Edge 70 Pro+, Razr 60 Ultra, Razr Ultra 2025, Razr Fold, Signature
  • OnePlus: OnePlus 13, OnePlus 13s, OnePlus 15, OnePlus 15R, OnePlus Pad 3
  • OPPO: Find N5, Find N6, Find X8, Find X8 Pro, Find X9, Find X9 Pro, Find X9s, Find X9 Ultra, Find X10, Find X10 Pro Max, Reno 14 Pro 5G, Reno 15 Pro 5G, Reno 15 Pro Mini 5G, Reno 15 Pro Max 5G, Reno 16 Pro 5G
  • POCO: POCO F7 Ultra, POCO F8 Pro, POCO F8 Ultra, POCO F9 Pro, POCO X7 Pro, POCO X8 Pro, POCO X8 Pro Max
  • realme: realme GT 7, realme GT 7 Pro, realme GT 7T, realme GT 8 Pro
  • Redmi: Redmi Turbo 5
  • Samsung: Galaxy S25, Galaxy S25+, Galaxy S25 Edge, Galaxy S25 Ultra, Galaxy S26, Galaxy S26+, Galaxy S26 FE, Galaxy S26 Ultra, Galaxy Tab S12+, Galaxy Tab S12 Ultra, Galaxy Z Flip7, Galaxy Z Flip8, Galaxy Z Fold7, Galaxy Z Fold8, Galaxy Z Fold8 Ultra, Galaxy Z TriFold
  • Sharp: AQUOS R11
  • Sony: Xperia 1 VIII
  • vivo: vivo T4 Ultra, vivo X200, vivo X200 FE, vivo X200 Pro, vivo X200T, vivo X300, vivo X300 FE, vivo X300 Pro, vivo X300 Ultra, vivo X500 Pro, vivo X500 Pro Max, vivo X Fold3 Pro, vivo X Fold5, vivo X Fold6
  • Xiaomi: Leitzphone ที่ขับเคลื่อนโดย Xiaomi, Xiaomi 15, Xiaomi 15T, Xiaomi 15T Pro, Xiaomi 15 Ultra, Xiaomi 17, Xiaomi 17T, Xiaomi 17T Pro, Xiaomi 17 Ultra, Xiaomi Pad Mini

ความพร้อมใช้งานของการรองรับภาษาที่เฉพาะเจาะจงอาจแตกต่างกันไปตามการกำหนดค่าของอุปกรณ์นั้นๆ และโมเดลที่ดาวน์โหลดลงในอุปกรณ์

ดึงข้อมูลเวอร์ชัน Gemini Nano

Gemini Nano เวอร์ชันต่างๆ จะทำงานบนอุปกรณ์ที่แตกต่างกัน หากต้องการแสดงผลเวอร์ชันของ Gemini Nano ในอุปกรณ์ ให้ใช้เมธอด getBaseModelName()

โควต้าต่อแอปพลิเคชัน

AICore บังคับใช้โควต้าการอนุมานต่อแอป การส่งคำขอ GenAI API มากเกินไปในระยะเวลาสั้นๆ จะส่งผลให้เกิดการตอบกลับ ErrorCode.BUSY เมื่อได้รับข้อผิดพลาดดังกล่าว ให้พิจารณาใช้ Exponential Backoff เพื่อลองส่งคำขออีกครั้ง นอกจากนี้ ระบบอาจแสดงผล ErrorCode.PER_APP_BATTERY_USE_QUOTA_EXCEEDED หากแอปเกินโควต้าระยะยาว (เช่น โควต้ารายวัน)

การใช้งานในเบื้องหลัง

การอนุมาน GenAI API จะได้รับอนุญาตก็ต่อเมื่อแอปเป็นแอปพลิเคชันที่ทำงานอยู่เบื้องหน้าในระดับบนสุดเท่านั้น การใช้ API เมื่อแอปไม่ได้ทำงานอยู่เบื้องหน้า ซึ่งรวมถึงการใช้บริการที่ทำงานอยู่เบื้องหน้า จะส่งผลให้เกิดการตอบสนอง ErrorCode.BACKGROUND_USE_BLOCKED

โค้ดตัวอย่าง

หากต้องการรับโค้ดนี้ โปรดดูตัวอย่างต่อไปนี้