เส้นทางการติดตั้งโมเดล ML Kit บน Android

ฟีเจอร์ทั้งหมดของ ML Kit ใช้โมเดลแมชชีนเลิร์นนิงที่ Google ฝึก (เรียกว่าโมเดลพื้นฐาน) โดยค่าเริ่มต้น คำแนะนำนี้ใช้ได้กับโมเดลพื้นฐานเท่านั้น ดูคำแนะนำเกี่ยวกับโมเดลที่กำหนดเองได้ที่นี่

คุณติดตั้งโมเดลใน ML Kit API ได้ 3 วิธีดังนี้

  1. แยกกัน: ระบบจะดาวน์โหลดและจัดการโมเดลผ่านบริการ Google Play
  2. รวม: โมเดลจะลิงก์กับแอปของคุณแบบคงที่ในเวลาที่สร้าง
  3. ดาวน์โหลดแบบไดนามิก: ระบบจะดาวน์โหลดโมเดลตามคำขอ

เส้นทางการติดตั้งที่รองรับสำหรับ API แต่ละรายการ

ตารางด้านล่างแสดงเส้นทางการติดตั้งโมเดลที่ฟีเจอร์ ML Kit แต่ละรายการรองรับ

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

คำแนะนำเฉพาะ API จะแสดงตัวเลือกการติดตั้งที่มีให้สำหรับ API นั้นๆ

ความแตกต่างที่สำคัญระหว่างตัวเลือกการติดตั้ง

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

วิธีเลือกระหว่างการรวมแพ็กเกจกับการแยกแพ็กเกจ

หาก API รองรับทั้งตัวเลือกการติดตั้งแบบรวมและแบบแยก ให้ทำดังนี้

  • ใช้ตัวเลือกแบบแพ็กเกจหากคุณให้ความสำคัญกับสิ่งต่อไปนี้

    • ฟังก์ชันการทำงานของฟีเจอร์ที่สมบูรณ์ทันทีหลังจากติดตั้งแอป
    • ฟังก์ชันการทำงานของฟีเจอร์โดยไม่ต้องเชื่อมต่อเครือข่ายหลังจากติดตั้งแอป
  • ใช้ตัวเลือกแบบไม่รวมหากคุณให้ความสำคัญกับสิ่งต่อไปนี้

    • ขนาดแอปเล็กลง
    • การอัปเดตโมเดลอัตโนมัติโดยบริการ Google Play

วิธีดาวน์โหลดโมเดล

เมื่อใช้ตัวเลือกโมเดลที่ไม่ได้รวมกลุ่ม คุณจะระบุวิธีที่ต้องการให้ดาวน์โหลดโมเดลไปยังอุปกรณ์ได้ดังนี้

  • คุณเปิดใช้การดาวน์โหลดโมเดลขณะติดตั้งได้โดยเพิ่มการประกาศลงในไฟล์ AndroidManifest.xml ของแอป ตัวอย่างเช่น ข้อมูลโค้ดด้านล่าง แสดงวิธีตั้งค่าแอปให้ดาวน์โหลดโมเดลการสแกนบาร์โค้ด โดยอัตโนมัติหลังจากติดตั้งแอปจาก Play Store แล้ว

    <application ...>
          ...
          <meta-data
              android:name="com.google.mlkit.vision.DEPENDENCIES"
              android:value="barcode" >
          <!-- To use multiple models: android:value="barcode,model2,model3" -->
    </application>
    
  • คุณขอการดาวน์โหลดที่ชัดเจนผ่าน Google Play Services ModuleInstallClient API ได้

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

วิธีอัปเดตโมเดล

วิธีอัปเดตรุ่นเมื่อใช้ตัวเลือกโมเดลที่รวมไว้หรือโมเดลที่ดาวน์โหลดแบบไดนามิก มีดังนี้

  1. อัปเดตไฟล์ Gradle ของแอปเพื่อใช้ไคลเอ็นต์ฟีเจอร์ ML Kit เวอร์ชันล่าสุด

    dependencies {
      implementation 'com.google.mlkit:barcode-scanning: 17.3.0' // The latest version number of the API
    }
    
  2. สร้างแอปใหม่

เหตุใด API บางรายการจึงมีโมเดลที่ดาวน์โหลดแบบไดนามิก

API บางตัวของ ML Kit มีตัวเลือกโมเดลมากเกินไปที่จะรวมไว้ เช่น การจดจำ ลายมือดิจิทัลรองรับมากกว่า 300 ภาษา และไม่จำเป็น ต้องใส่ทุกภาษาไว้ในฟีเจอร์ระหว่างการติดตั้งเสมอไป ด้วยเหตุนี้ เราจึงมีตัวเลือกการติดตั้งที่ 3 ซึ่งจะดาวน์โหลดโมเดลตามต้องการหลังการติดตั้ง ปัจจุบันมีเพียงการจดจำหมึกดิจิทัล การแปล และการแยกเอนทิตีเท่านั้นที่มีตัวเลือกนี้