หน้านี้แสดงวิธีตั้งค่าสภาพแวดล้อมการพัฒนาเพื่อใช้ MediaPipe Tasks ในแอปพลิเคชัน iOS
อุปกรณ์และแพลตฟอร์มที่รองรับ
หากต้องการสร้างแอปพลิเคชัน iOS ด้วย MediaPipe Tasks สภาพแวดล้อมในการพัฒนาซอฟต์แวร์ของคุณจำเป็นต้องมีสิ่งต่อไปนี้
macOS Mojave 10.14.3 ขึ้นไป
Xcode 10.3 ขึ้นไป
อุปกรณ์ iOS ที่ใช้ iOS 12.0 ขึ้นไป หรือเครื่องมือจำลอง iOS สามารถจัดการ แอปพลิเคชันที่ไม่ใช้กล้องของอุปกรณ์
การตั้งค่าสภาพแวดล้อมของนักพัฒนาซอฟต์แวร์
ก่อนที่จะเรียกใช้งาน MediaPipe ในแอปพลิเคชัน iOS คุณต้องมีโปรเจ็กต์ Xcode อยู่แล้วหรือสร้างโปรเจ็กต์ใหม่บนเครื่องภายใน
คุณสามารถติดตั้งงาน MediaPipe Tasks ได้โดยใช้ CocoaPods เท่านั้น คุณต้องติดตั้ง CocoaPods 1.12.1 หรือสูงกว่าก่อนเริ่มต้นใช้งาน สำหรับคำแนะนำในการติดตั้ง CocoaPods ใน macOS โปรดอ่านคู่มือการติดตั้ง CocoaPods
ตัวอย่างการตั้งค่าโค้ด
ที่เก็บ MediaPipe Example มีตัวอย่างแอปพลิเคชัน iOS สำหรับงาน MediaPipe
คุณสร้างโปรเจ็กต์จากโค้ดตัวอย่าง สร้างโปรเจ็กต์ และเรียกใช้งานได้ ขั้นตอนต่อไปนี้จะเป็นการสร้างงานตัวแยกประเภทข้อความ
วิธีนำเข้าและสร้างโปรเจ็กต์โค้ดตัวอย่าง
เปิดเทอร์มินัล โคลนที่เก็บ MediaPipeExample แล้วไปยังไดเรกทอรีที่มี
TextClassifier.xcodeproj
และPodfile
git clone https://github.com/google-ai-edge/mediapipe-samples cd mediapipe/examples/text_classification/ios
ติดตั้งงาน MediaPipe โดยใช้ CocoaPods โดยทำดังนี้
pod install
คำสั่งนี้จะสร้างไฟล์
TextClassifier.xcworkspace
ในไดเรกทอรีโปรเจ็กต์ตัวอย่างดับเบิลคลิกไฟล์
TextClassifier.xcworkspace
เพื่อเปิดโปรเจ็กต์ใน Xcode หากไฟล์TextClassifier.xcodeproj
เปิดอยู่แล้ว ให้ปิดก่อนเปิดไฟล์TextClassifier.xcworkspace
เลือกชุดรูปแบบ
TextClassifier
แล้วเลือกอุปกรณ์ iOS หรือเครื่องมือจำลองจากแถบเครื่องมือของหน้าต่างโปรเจ็กต์ เมื่อใช้อุปกรณ์ iOS จริงๆ ให้ตรวจสอบว่าอุปกรณ์นั้นเชื่อมต่อกับ Macคลิกปุ่ม
Run
ในแถบเครื่องมือของโปรเจ็กต์
สำหรับคำแนะนำเพิ่มเติมเกี่ยวกับการเรียกใช้แอปใน Xcode โปรดดูการสร้างและการเรียกใช้แอป
ทรัพยากร Dependency ของงาน MediaPipe
MediaPipe Tasks มีไลบรารีที่สร้างไว้ล่วงหน้า 2 รายการสำหรับการมองเห็นและข้อความ ไฟล์โมเดล .tflite
ต้องอยู่ในแพ็กเกจของแอปพลิเคชัน iOS ที่ใช้โมเดลดังกล่าว เพิ่มไลบรารี Vision หรือไลบรารีข้อความลงในรายการพ็อดภายใน CocoaPods Podfile
ทั้งนี้ขึ้นอยู่กับ MediaPipe Tas ดูวิธีสร้าง Podfile
ด้วยพ็อดที่จำเป็นสำหรับแอปได้ที่การใช้ CocoaPods
งาน Generative AI
ไลบรารี MediaPipe Tasks Generative AI มีงานที่จัดการการสร้างรูปภาพหรือข้อความ หากต้องการติดตั้งไลบรารี MediaPipe Tasks Generative AI ให้เพิ่มพ็อด MediaPipeTasksGenAI
และ MediaPipeTasksGenAIC
ไปยังเป้าหมายของแอปใน Podfile
API การอนุมาน LLM
งานการอนุมาน MediaPipe LLM อยู่ในพ็อด MediaPipeTasksGenAI
และ MediaPipeTasksGenAIC
target 'MyLlmInferenceApp' do
use_frameworks!
pod 'MediaPipeTasksGenAI'
pod 'MediaPipeTasksGenAIC'
end
งานด้านการมองเห็น
ไลบรารีวิสัยทัศน์ของ MediaPipe Tasks มีงานที่จัดการอินพุตรูปภาพหรือวิดีโอ หากต้องการติดตั้งไลบรารีวิสัยทัศน์ของ MediaPipe Tasks ให้เพิ่มพ็อด MediaPipeTasksVision
ลงในเป้าหมายของแอปใน Podfile
target 'MyAppWithMediaPipeTasksVision' do
use_frameworks!
pod 'MediaPipeTasksVision'
end
งานข้อความ
ไลบรารีข้อความงาน MediaPipe Tasks มีงานที่จัดการข้อมูลภาษาในรูปแบบข้อความ หากต้องการติดตั้งไลบรารีข้อความ MediaPipe Tasks ให้เพิ่มพ็อด MediaPipeTasksText
ลงในเป้าหมายของแอปใน Podfile
target 'MyAppWithMediaPipeTasksText' do
use_frameworks!
pod 'MediaPipeTasksText'
end
กำหนดค่าเป้าหมายทดสอบ
หากแอปมีเป้าหมายการทดสอบ ให้ตรวจสอบว่า Podfile เป็นไปตามการใช้งานอย่างใดอย่างหนึ่งต่อไปนี้เพื่อหลีกเลี่ยงลักษณะการทำงานที่ไม่พึงประสงค์เมื่อใช้ไลบรารีงาน MediaPipe
การติดตั้งใช้งานที่ง่ายที่สุดคือการตรวจสอบว่าเป้าหมายการทดสอบไม่ได้ฝังอยู่ในเป้าหมายแอปหลักที่เพิ่มพ็อดงาน MediaPipe
target 'MyAppWithMediaPipeTasks' do
pod 'MediaPipeTasksVision'
end
target 'MyAppWithMediaPipeTasksTests' do
end
หากเป้าหมายการทดสอบต้องฝังอยู่ในเป้าหมายของแอปหลัก Podfile ต้องเป็นไปตามการติดตั้งใช้งานต่อไปนี้
target 'MyAppWithMediaPipeTasks' do
pod 'MediaPipeTasksVision'
target 'MyAppWithMediaPipeTasksTests' do
inherit! :none
end
end
การกำหนดค่า BaseOptions
BaseOptions ช่วยให้กำหนดค่าทั่วไปของ API งาน MediaPipe
ชื่อตัวเลือก | คำอธิบาย | ค่าที่ยอมรับ |
---|---|---|
modelAssetPath |
เส้นทางโมเดลไปยังไฟล์โมเดลในแพ็กเกจแอปพลิเคชัน iOS | เส้นทางเป็นสตริง |
การเร่งฮาร์ดแวร์
ใน iOS นั้น MediaPipe Tasks รองรับเฉพาะโมเดลที่ทำงานอยู่บนตัวประมวลผล CPU มาตรฐานเท่านั้น
การแก้ปัญหา
สำหรับความช่วยเหลือเกี่ยวกับคำถามทางเทคนิคที่เกี่ยวข้องกับ MediaPipe โปรดไปที่กลุ่มสนทนาหรือ Stack Overflow เพื่อรับการสนับสนุนจากชุมชน หากต้องการรายงานข้อบกพร่องหรือส่งคำขอฟีเจอร์ ให้แจ้งปัญหาใน GitHub
หากต้องการความช่วยเหลือในการตั้งค่าสภาพแวดล้อมในการพัฒนาซอฟต์แวร์ iOS โปรดไปที่เอกสารประกอบสำหรับนักพัฒนาซอฟต์แวร์ Apple