LiteRT-LM เป็นเฟรมเวิร์กการอนุมานแบบโอเพนซอร์สที่พร้อมใช้งานจริง ซึ่งออกแบบมาเพื่อ มอบการติดตั้งใช้งาน LLM ประสิทธิภาพสูงแบบข้ามแพลตฟอร์มบนอุปกรณ์ Edge
ฟีเจอร์หลัก
- รองรับหลายแพลตฟอร์ม: ทำงานบน Android, iOS, เว็บ และเดสก์ท็อป
- การเร่งฮาร์ดแวร์:
- GPU: ขับเคลื่อนโดย ML Drift ซึ่งรองรับทั้งโมเดล ML และ Generative AI
- NPU: การอนุมานที่เร่งความเร็วในอุปกรณ์ที่มีชิปเซ็ต Qualcomm และ MediaTek (การทดลองใช้)
- มัลติโมดัล: รองรับการป้อนข้อมูลภาพและเสียง
- การใช้เครื่องมือ: รองรับการเรียกใช้ฟังก์ชันสำหรับเวิร์กโฟลว์ของเอเจนต์
- รองรับโมเดลที่หลากหลาย: เรียกใช้ Gemma, Llama, Phi-4, Qwen และอื่นๆ
แบ็กเอนด์และแพลตฟอร์มที่รองรับ
| แพลตฟอร์ม | การสนับสนุน CPU | การรองรับ GPU | รองรับ NPU |
|---|---|---|---|
| Android | ✅ | ✅ | ✅ |
| iOS | ✅ | ✅ | - |
| macOS | ✅ | ✅ | - |
| Windows | ✅ | ✅ | - |
| Linux | ✅ | ✅ | - |
| ฝัง | ✅ | - | - |
คู่มือเริ่มต้นฉบับย่อ
หากต้องการลองใช้ก่อน ก่อนที่จะดำเนินการตั้งค่าทั้งหมด คุณสามารถใช้ไบนารีที่สร้างไว้ล่วงหน้าสำหรับเดสก์ท็อปหรือแอป Google AI Edge Gallery สำหรับอุปกรณ์เคลื่อนที่เพื่อเรียกใช้ LiteRT-LM ได้ทันที
แอปบนมือถือ
Google AI Edge Gallery เป็นแอปเดโมที่ช่วยให้คุณได้สัมผัสพลังของ โมเดล Generative AI ที่ล้ำสมัยได้โดยตรง ซึ่งขับเคลื่อนโดย LiteRT-LM
CLI บนเดสก์ท็อป
หลังจากดาวน์โหลดไบนารี lit แล้ว ให้เรียกใช้ lit เพื่อดูตัวเลือก
เลือกแพลตฟอร์ม
| ภาษา | สถานะ | เหมาะสำหรับ... | เอกสารประกอบ |
|---|---|---|---|
| Kotlin | ✅ เสถียร |
แอป Android ที่มาพร้อมเครื่องและเครื่องมือบนเดสก์ท็อปที่ใช้ JVM ได้รับการเพิ่มประสิทธิภาพสำหรับ Coroutines | เอกสารอ้างอิง Kotlin API |
| C++ | ✅ เสถียร |
ตรรกะหลักและระบบฝังตัวประสิทธิภาพสูงแบบข้ามแพลตฟอร์ม | เอกสารอ้างอิง C++ API |
| Swift | 🚀 ในเวอร์ชันพัฒนา |
การผสานรวม iOS และ macOS แบบเนทีฟพร้อมการรองรับ Metal โดยเฉพาะ | เร็วๆ นี้ |
| Python | 🚀 ในเวอร์ชันพัฒนา |
การสร้างต้นแบบ การพัฒนา และการเขียนสคริปต์ฝั่งเดสก์ท็อปอย่างรวดเร็ว | เร็วๆ นี้ |
รุ่นที่รองรับ
ตารางต่อไปนี้แสดงตัวอย่างโมเดลที่รองรับและทดสอบกับ LiteRT-LM อย่างเต็มรูปแบบ
หมายเหตุ: "พร้อมใช้งานใน Chat" หมายถึงโมเดลที่ปรับแต่งมาสำหรับแชท (การปรับแต่งตามคำสั่ง) โมเดล "พื้นฐาน" มักต้องมีการปรับแต่งเพื่อให้แชททำงานได้ดีที่สุด เว้นแต่จะใช้สำหรับการเติมข้อความที่เฉพาะเจาะจง
| รุ่น | ประเภท | การทำให้เล็กลง | ความยาวของบริบท | ขนาด (MB) | ดาวน์โหลด |
|---|---|---|---|---|---|
| Gemma | |||||
| Gemma3-1B | พร้อมแชท | 4 บิตต่อช่อง | 4096 | 557 | ดาวน์โหลด |
| Gemma-3n-E2B | พร้อมแชท | 4 บิตต่อช่อง | 4096 | 2965 | ดาวน์โหลด |
| Gemma-3n-E4B | พร้อมแชท | 4 บิตต่อช่อง | 4096 | 4235 | ดาวน์โหลด |
| FunctionGemma-270M | พื้นฐาน (ต้องมีการปรับแต่ง) | 8 บิตต่อช่อง | 1024 | 288 | คู่มือการปรับแต่ง |
| ↪ TinyGarden-270M | สาธิต | 8 บิตต่อช่อง | 1024 | 288 | ดาวน์โหลด / ลองใช้แอป |
| Llama | |||||
| Llama-3.2-1B-Instruct | พร้อมแชท | 8 บิตต่อช่อง | 8192 | 1162 | ดาวน์โหลด |
| Llama-3.2-3B-Instruct | พร้อมแชท | 8 บิตต่อช่อง | 8192 | 2893 | ดาวน์โหลด |
| Phi | |||||
| phi-4-mini | พร้อมแชท | 8 บิตต่อช่อง | 4096 | 3728 | ดาวน์โหลด |
| Qwen | |||||
| qwen2.5-1.5b | พร้อมแชท | 8 บิตต่อช่อง | 4096 | 1524 | ดาวน์โหลด |
ประสิทธิภาพ
ด้านล่างนี้คือตัวเลขประสิทธิภาพของการเรียกใช้แต่ละโมเดลในอุปกรณ์ต่างๆ โปรดทราบ ว่าการวัดผลการเปรียบเทียบจะใช้โทเค็นการเติมล่วงหน้า 1024 รายการและการถอดรหัสโทเค็น 256 รายการ ( โดยมีการล็อกประสิทธิภาพในอุปกรณ์ Android)
| รุ่น | อุปกรณ์ | แบ็กเอนด์ | การป้อนข้อความล่วงหน้า (โทเค็น/วินาที) | ถอดรหัส (โทเค็น/วินาที) | ขนาดบริบท |
|---|---|---|---|---|---|
| Gemma3-1B | MacBook Pro (2023 M3) |
CPU | 423 | 67 | 4096 |
| Gemma3-1B | Samsung S24 (Ultra) |
CPU | 243 | 44 | 4096 |
| Gemma3-1B | Samsung S24 (Ultra) |
GPU | 1877 | 45 | 4096 |
| Gemma3-1B | Samsung S25 (Ultra) |
NPU | 5837 | 85 | 1280 |
| Gemma-3n-E2B | MacBook Pro (2023 M3) |
CPU | 233 | 28 | 4096 |
| Gemma-3n-E2B | Samsung S24 (Ultra) |
CPU | 111 | 16 | 4096 |
| Gemma-3n-E2B | Samsung S24 (Ultra) |
GPU | 816 | 16 | 4096 |
| Gemma-3n-E4B | MacBook Pro (2023 M3) |
CPU | 170 | 20 | 4096 |
| Gemma-3n-E4B | Samsung S24 (Ultra) |
CPU | 74 | 9 | 4096 |
| Gemma-3n-E4B | Samsung S24 (Ultra) |
GPU | 548 | 9 | 4096 |
| FunctionGemma | Samsung S25 (Ultra) |
CPU | 1718 | 126 | 1024 |
หมายเหตุ: การโหลดโมเดลหนึ่งๆ ในอุปกรณ์หนึ่งๆ เป็นครั้งแรกจะใช้เวลานานกว่าเนื่องจากระบบจะเพิ่มประสิทธิภาพน้ำหนัก การโหลดครั้งต่อๆ ไปจะเร็วขึ้นเนื่องจากมีการแคช
การโฮสต์และการทำให้โมเดลใช้งานได้
เมื่อโมเดลมีขนาดเกินขีดจำกัดการดาวน์โหลด "ผ่านอากาศ" (มักจะอยู่ที่ประมาณ 1.5 GB) คุณจะต้องใช้กลยุทธ์การดึงข้อมูลจากระยะไกล
- Firebase: ขอแนะนำให้ใช้ดาวน์โหลดไฟล์ขนาดใหญ่ใน Android และ iOS
- API ของ HuggingFace: ดึงข้อมูลโมเดลโดยตรงโดยใช้ API ของ HuggingFace
ปัญหาเกี่ยวกับรายงาน
หากพบข้อบกพร่องหรือมีคำขอฟีเจอร์ โปรดใช้หน้าปัญหาใน GitHub ของ LiteRT-LM