LiteRT หรือเดิมเรียกว่า TensorFlow Lite เป็นรันไทม์ประสิทธิภาพสูงของ Google สำหรับ AI ในอุปกรณ์ คุณสามารถค้นหาโมเดล LiteRT ที่พร้อมใช้งานได้ งาน ML/AI ได้มากมาย หรือแปลงและเรียกใช้โมเดล TensorFlow, PyTorch และ JAX เป็น รูปแบบ TFLite โดยใช้เครื่องมือการแปลงและเครื่องมือเพิ่มประสิทธิภาพของ AI Edge
ฟีเจอร์หลัก
เพิ่มประสิทธิภาพเพื่อแมชชีนเลิร์นนิงในอุปกรณ์: LiteRT จะตอบ 5 ข้อจำกัด ODML หลัก: เวลาในการตอบสนอง (ไม่มีการเดินทางไป-กลับไปยังเซิร์ฟเวอร์), ความเป็นส่วนตัว (ไม่มีข้อมูลส่วนตัวออกจากอุปกรณ์) การเชื่อมต่อ (การเชื่อมต่ออินเทอร์เน็ต (ไม่บังคับ) ขนาด (รุ่นที่ลดลงและขนาดไบนารี) และการใช้พลังงาน (การอนุมานที่มีประสิทธิภาพและไม่มีการเชื่อมต่อเครือข่าย)
การสนับสนุนหลายแพลตฟอร์ม: ใช้ได้กับ Android และ อุปกรณ์ iOS ที่ฝัง Linux และ ไมโครคอนโทรลเลอร์
ตัวเลือกโมเดลแบบหลายเฟรมเวิร์ก: AI Edge มีเครื่องมือในการแปลงโมเดล จากโมเดล TensorFlow, PyTorch และ JAX ให้อยู่ในรูปแบบ FlatBuffers (
.tflite
) ทำให้คุณสามารถใช้โมเดลล้ำสมัยที่หลากหลายใน การอ่านเขียน นอกจากนี้ยังมีสิทธิ์เข้าถึงเครื่องมือเพิ่มประสิทธิภาพโมเดลที่สามารถจัดการ การวัดปริมาณ และข้อมูลเมตารองรับภาษาที่หลากหลาย: มี SDK สำหรับ Java/Kotlin, Swift, Objective-C, C++ และ Python
ประสิทธิภาพสูง: การเร่งฮาร์ดแวร์ ผ่านตัวแทนเฉพาะทาง เช่น GPU และ Core ML ของ iOS
เวิร์กโฟลว์การพัฒนา
เวิร์กโฟลว์การพัฒนา LiteRT เกี่ยวข้องกับการระบุปัญหา ML/AI การเลือกโมเดลที่แก้ปัญหาดังกล่าว แล้วนำรูปแบบไปใช้ในอุปกรณ์ ขั้นตอนต่อไปนี้จะแนะนำขั้นตอนการทำงานโดยละเอียด รวมถึงให้ลิงก์ไปยัง วิธีทำ
1. ระบุวิธีแก้ปัญหาที่เหมาะสมที่สุดสำหรับโจทย์ ML
LiteRT มอบความยืดหยุ่นและความสามารถในการปรับแต่งในระดับสูงให้แก่ผู้ใช้ เมื่อต้องแก้ปัญหาเกี่ยวกับแมชชีนเลิร์นนิง ที่เหมาะสำหรับ ผู้ใช้ที่ต้องการโมเดลเฉพาะหรือการติดตั้งใช้งานเฉพาะทาง ผู้ใช้ การมองหาโซลูชันแบบปลั๊กอินและเพลย์อาจต้องการใช้ MediaPipe Tasks ซึ่งให้ โซลูชันสำเร็จรูปสำหรับงานด้านแมชชีนเลิร์นนิงทั่วไป เช่น การตรวจจับวัตถุ การจำแนกประเภทข้อความ และการอนุมาน LLM
เลือกเฟรมเวิร์ก AI Edge รายการใดรายการหนึ่งต่อไปนี้
- LiteRT: รันไทม์ที่ยืดหยุ่นและปรับแต่งได้ ซึ่งใช้ได้กับ รุ่นต่างๆ มากมาย เลือกรูปแบบสำหรับกรณีการใช้งานของคุณ แล้วแปลงเป็น รูปแบบ LiteRT (หากจำเป็น) และเรียกใช้ในอุปกรณ์ หากคุณต้องการ เพื่อใช้ LiteRT ให้อ่านต่อ
- งาน MediaPipe: โซลูชันแบบเชื่อมต่อแล้วเล่นที่มีรูปแบบเริ่มต้นที่อนุญาตให้ เพื่อการกำหนดค่าเอง เลือกงานที่ช่วยแก้ปัญหา AI/ML และ นำไปใช้ในหลายแพลตฟอร์ม หากคุณต้องการใช้งาน MediaPipe ให้ดูที่ MediaPipe Tasks
2. เลือกโมเดล
โมเดล LiteRT แสดงในรูปแบบพกพาที่มีประสิทธิภาพหรือที่เรียกว่า
FlatBuffers ซึ่งใช้ .tflite
นามสกุลไฟล์
คุณใช้โมเดล LiteRT ได้ด้วยวิธีต่อไปนี้
ใช้รูปแบบ LiteRT ที่มีอยู่: วิธีที่ง่ายที่สุดคือการใช้ โมเดล LiteRT อยู่ในรูปแบบ
.tflite
อยู่แล้ว โมเดลเหล่านี้ไม่ ต้องมีขั้นตอน Conversion เพิ่มเติม คุณสามารถค้นหารุ่น LiteRT ได้ใน โมเดล Kaggleแปลงโมเดลเป็นโมเดล LiteRT: คุณสามารถใช้ TensorFlow Converter, PyToch Converter หรือ JAX ตัวแปลงเพื่อแปลงโมเดลเป็นรูปแบบ FlatBuffers (
.tflite
) และเรียกใช้ใน LiteRT ในการเริ่มต้นใช้งาน คุณสามารถค้นหา รุ่นบนเว็บไซต์ต่อไปนี้:- โมเดล TensorFlow ใน Kaggle รุ่นและ หน้ากอด
- โมเดล PyTorch ในการกอด
ใบหน้าและ
torchvision
- โมเดล JAX ในการกอดใบหน้า
โมเดล LiteRT สามารถมีข้อมูลเมตาที่มี คำอธิบายโมเดลที่มนุษย์อ่านได้และข้อมูลที่เครื่องอ่านได้สำหรับ การสร้างไปป์ไลน์ก่อนและหลังการประมวลผลระหว่างการอนุมานในอุปกรณ์ โปรดดูเพิ่มข้อมูลเมตาสำหรับรายละเอียดเพิ่มเติม
3. ผสานรวมโมเดลลงในแอปของคุณ
คุณนำโมเดล LiteRT ไปใช้เพื่อเรียกใช้การอนุมานได้อย่างสมบูรณ์ ในอุปกรณ์บนเว็บ แบบฝัง และในอุปกรณ์เคลื่อนที่ LiteRT มี API สำหรับ Python, Java และ Kotlin สำหรับ Android, Swift สำหรับ iOS และ C++ สำหรับอุปกรณ์ไมโคร
ใช้คำแนะนำต่อไปนี้เพื่อใช้โมเดล LiteRT ที่คุณต้องการ แพลตฟอร์ม:
- เรียกใช้ใน Android: เรียกใช้โมเดลในอุปกรณ์ Android โดยใช้ Java/Kotlin API
- เรียกใช้บน iOS: เรียกใช้โมเดลในอุปกรณ์ iOS โดยใช้ Swift API
- เรียกใช้ใน Micro: เรียกใช้โมเดลในอุปกรณ์แบบฝัง โดยใช้ C++ API
ในอุปกรณ์ Android และ iOS คุณปรับปรุงประสิทธิภาพได้โดยใช้ฮาร์ดแวร์ การเร่งความเร็ว ไม่ว่าจะใช้แพลตฟอร์มใดก็ตาม คุณสามารถใช้ GPU Delegate และใน iOS คุณจะใช้ Core ML ได้ การมอบสิทธิ์ หากต้องการเพิ่มการรองรับตัวเร่งฮาร์ดแวร์ใหม่ คุณสามารถ กำหนดตัวแทนของคุณเอง
คุณเรียกใช้การอนุมานได้ด้วยวิธีต่อไปนี้ตามประเภทโมเดล
โมเดลที่ไม่มีข้อมูลเมตา: ใช้ LiteRT API โหมดล่าม รองรับในหลายแพลตฟอร์มและภาษา เช่น Java, Swift, C++, Objective-C และ Python
โมเดลที่มีข้อมูลเมตา: คุณสามารถสร้างไปป์ไลน์การอนุมานที่กำหนดเองด้วย ไลบรารีการสนับสนุน LiteRT
ย้ายข้อมูลจาก LiteRT
แอปพลิเคชันที่ใช้ไลบรารี LiteRT จะยังคงทำงานต่อไป แต่ การพัฒนาและการอัปเดตใหม่ๆ ที่ใช้งานอยู่ทั้งหมดจะรวมอยู่ในแพ็กเกจ LiteRT เท่านั้น LiteRT API มีชื่อเมธอดเหมือนกับ TF Lite API ดังนั้นการย้ายข้อมูล เป็น LiteRT ไม่จําเป็นต้องเปลี่ยนแปลงโค้ดโดยละเอียด
โปรดดูข้อมูลเพิ่มเติมในคำแนะนำในการย้ายข้อมูล
ขั้นตอนถัดไป
ผู้ใช้ใหม่ควรเริ่มต้นใช้งานด้วยการเริ่มต้นใช้งาน LiteRT อย่างรวดเร็ว สำหรับข้อมูลเฉพาะ โปรดดูส่วนต่อไปนี้
Conversion โดยประมาณ
คำแนะนำเกี่ยวกับแพลตฟอร์ม