YOLO 모델을 엣지 및 웹 배포용 LiteRT로 내보내기#
LiteRT(Lite Runtime의 약어)은 온디바이스 AI를 위한 구글의 고성능 런타임입니다. TensorFlow Lite(TFLite)의 차세대 버전이자 새로운 이름이며, 동일한 .tflite 모델 포맷을 실행합니다. LiteRT를 사용하면 단일 내보내기된 Ultralytics YOLO 모델이 모바일, 임베디드, 엣지, 브라우저 전반에 걸쳐 배포됩니다. 이전의 tflite 및 tfjs 내보내기 포맷이 개별적으로 처리하던 모든 영역을 이제 하나의 우산 아래에서 아우릅니다.
LiteRT 내보내기 포맷은 객체 검출, 세그멘테이션, 포즈 추정, 분류 등의 태스크에 모델을 최적화하여 다양한 기기에서 빠르고 오프라인으로 실행될 수 있도록 합니다.
공식 Ultralytics YOLO Flutter 플러그인은 안드로이드에서 별도의 설정 없이 LiteRT .tflite 내보내기를 실행합니다(실시간 카메라 추론, 단일 이미지 예측, GPU 가속 및 Depth를 포함한 7가지 모든 YOLO26 태스크에 대한 자동 모델 다운로드 지원). 애플 기기의 경우 CoreML 내보내기를 사용하고, 퀄컴 스냅드래곤 NPU의 경우 Qualcomm QNN 연동을 참조하십시오.
imgsz=224에서 분류 모델을 내보내십시오. imgsz=640에서 detect, segment, semantic, depth, pose, OBB 모델을 내보내십시오. 이 224/640 표준은 공식 LiteRT, CoreML, QNN 모바일 에셋에서 공통으로 사용됩니다.
공식 Ultralytics YOLO NPM package는 서버나 Python 없이 LiteRT.js를 통해 브라우저에서 직접 LiteRT .tflite 내보내기를 실행하며, 모든 6가지 YOLO26 태스크(detect, segment, pose, OBB, classify, semantic) 전반에 걸쳐 실시간 웹캠 추론, 단일 이미지 예측, WebGPU 가속(자동 CPU/WASM 폴백)을 제공합니다. WebGPU 환경에서는 ONNX Runtime Web보다 대략 ~2배 더 빠른 경우가 많습니다.
npm i @ultralytics/yolo @litertjs/coreLiteRT로 내보내야 하는 이유는 무엇입니까?#
LiteRT는 엣지 컴퓨팅이라고도 불리는 온디바이스 추론을 위해 설계된 오픈소스 프레임워크입니다. 개발자에게 모바일, 임베디드, IoT 기기, 전통적인 컴퓨터, 그리고 LiteRT.js를 통해 웹 브라우저와 Node.js 환경에서 직접 학습된 모델을 실행할 수 있는 도구를 제공합니다.
하나의 모델 형식, 모든 타겟:
- 모바일 및 임베디드: Android, iOS, 임베디드 Linux 및 마이크로컨트롤러(MCU).
- 엣지 가속기: 추가적인 가속을 위해 Coral Edge TPU와 호환됩니다.
- 브라우저 및 Node.js: LiteRT.js는 WebGPU/WASM 가속을 사용하여 웹에서 동일한
.tflite모델을 실행하며, 별도의 TensorFlow.js 내보내기 필요성을 대체합니다.
LiteRT 모델의 주요 기능#
- 온디바이스 최적화: 로컬에서 데이터를 처리하여 지연 시간을 줄이고, 개인 데이터를 전송하지 않아 프라이버시를 강화하며, 모델 크기를 최소화하여 저장 공간을 절약합니다.
- 다양한 플랫폼 지원: Android, iOS, 임베디드 Linux, 마이크로컨트롤러 및 최신 웹 브라우저에서 실행됩니다.
- 하드웨어 가속: CPU의 XNNPACK, OpenCL, Metal 및 WebGPU를 통한 GPU 가속을 활용합니다. GPU 델리게이트는 추가적인 속도를 위해 기본적으로 FP16으로 실행됩니다.
- 양자화(Quantization): 모델을 압축하고 최소한의 정확도 손실로 추론 속도를 높이기 위해 FP32, 정적 INT8(
quantize=8, int8 가중치 + int8 활성화), 정적 INT16 활성화(quantize="w8a16", 더 높은 정확도를 위한 int8 가중치 + int16 활성화), 그리고 동적 INT8(quantize="w8a32", int8 가중치 + FP32 활성화, 캘리브레이션 데이터 불필요)을 지원합니다. - 다양한 언어 지원: Java/Kotlin, Swift, Objective-C, C++, Python 및 JavaScript와 호환됩니다.
측정된 성능#
하드웨어: 12GB LPDDR5X 메모리와 안드로이드 16 / API 36이 탑재된 Xiaomi 17. 3nm Snapdragon 8 Elite Gen 5(SM8850)는 8코어 퀄컴 Oryon CPU(최대 4.6 GHz의 Prime 코어 2개 및 최대 3.62 GHz의 Performance 코어 6개), Adreno GPU, Hexagon NPU를 탑재하고 있습니다.
| 모델 | 작업 | 크기 (픽셀) | CPU w8a32 LiteRT (ms) | GPU w8a32 LiteRT (ms) |
|---|---|---|---|---|
| YOLO26n | 탐지(Detect) | 640 | 52.2 1.8 / 48.1 / 2.4 | 15.8 2.3 / 8.9 / 4.6 |
| YOLO26n-seg | 세그멘테이션(Segment) | 640 | 73.4 1.8 / 65.6 / 6.0 | 33.2 1.8 / 23.8 / 7.6 |
| YOLO26n-sem | 의미론적(Semantic) | 640 | 61.2 1.8 / 51.1 / 8.3 | 34.2 1.8 / 24.0 / 8.3 |
| YOLO26n-depth | Depth | 640 | 124.4 1.9 / 115.1 / 7.4 | 23.0 1.8 / 13.5 / 7.7 |
| YOLO26n-cls | 분류(Classify) | 224 | 4.4 0.4 / 4.0 / 0.0 | 3.1 0.8 / 2.1 / 0.2 |
| YOLO26n-pose | 포즈(Pose) | 640 | 57.4 1.8 / 53.8 / 1.8 | 16.6 2.7 / 10.1 / 3.9 |
| YOLO26n-obb | OBB(방향성 경계 상자) | 640 | 50.3 1.8 / 47.2 / 1.4 | 11.7 1.8 / 7.8 / 2.0 |
- 속도 값은 단일 이미지 버스트 지연 시간으로,
bus.jpg에서 3회의 워밍업 실행 후 15회 실행한 평균값이며 Ultralytics Flutter 플러그인0.6.10및 표준화된v0.6.6에셋을 사용하여 측정되었습니다. 하나의 순차적 스위프에서 태스크 간 CPU/GPU 순서가 교대되었습니다. 네이티브 로그를 통해 모든 CPU 행이 LiteRT CPU/XNNPACK을 사용했고 모든 GPU 행이 전체 그래프를 LiteRT OpenCL(LITERT_CL)에 위임했음이 확인되었습니다. - LiteRT 내보내기는 PyTorch 모델을 직접 추적하여 플로트 입력이 포함된 NCHW
.tflite을 생성합니다. GPU 위임기는 전체 그래프를 컴파일하며(여기서는 7개 태스크 모두 Adreno GPU에서 실행됨),w8a32은 캘리브레이션 데이터가 필요하지 않습니다. 사용자는 레거시 onnx2tf NHWC 레이아웃이나Identity출력 이름을 가정하는 대신 텐서 형태와 시그니처 이름을 읽어야 합니다. RGB 데이터를 평면 CHW로 직접 패킹하거나 추론 전에 전치하십시오. 시맨틱 내보내기는 NCHW 로짓을 반환하며 호스트 측 클래스 argmax가 필요합니다. 공식 안드로이드 에셋은 yolo-flutter-appv0.6.6릴리스에 호스팅되어 있으며, 상세한 벤치마크 기록은 Flutter 성능 문서에서 확인할 수 있습니다. - 일치하는 Snapdragon Hexagon NPU 및 LiteRT CPU/GPU 수치는 Qualcomm QNN 연동에서 확인할 수 있습니다.
- CoreML 연동에서 Apple CPU/가속기 결과를 비교해 보세요.
다음 기기 스위프는 동일한 표준화된 v0.6.6 에셋을 사용합니다.
Google Pixel 10#
하드웨어: 12GB 메모리와 안드로이드 16 / API 36이 탑재된 Google Pixel 10. 3nm Google Tensor G5는 8코어 CPU(최대 3.78 GHz의 Prime 코어 1개, 최대 3.05 GHz의 Performance 코어 5개, 최대 2.25 GHz의 Efficiency 코어 2개), PowerVR D-Series GPU, Google TPU를 탑재하고 있습니다. 코어 클럭과 GPU 드라이버 이름은 구글이 링크된 사양에 게시하지 않기 때문에 벤치마크 기기에서 직접 읽어왔습니다.
| 모델 | 작업 | 크기 (픽셀) | CPU w8a32 LiteRT (ms) | GPU w8a32 LiteRT (ms) |
|---|---|---|---|---|
| YOLO26n | 탐지(Detect) | 640 | 53.3 1.5 / 50.2 / 1.6 | 45.5 3.8 / 37.7 / 4.0 |
| YOLO26n-seg | 세그멘테이션(Segment) | 640 | 87.7 1.8 / 78.5 / 7.5 | 50.9 3.0 / 36.9 / 10.9 |
| YOLO26n-sem | 의미론적(Semantic) | 640 | 68.6 1.5 / 59.0 / 8.0 | 71.6 1.5 / 59.5 / 10.6 |
| YOLO26n-depth | Depth | 640 | 120.3 1.5 / 112.5 / 6.3 | 52.5 2.0 / 37.5 / 13.0 |
| YOLO26n-cls | 분류(Classify) | 224 | 4.0 0.3 / 3.4 / 0.2 | 17.6 0.9 / 16.7 / 0.1 |
| YOLO26n-pose | 포즈(Pose) | 640 | 59.7 1.5 / 57.0 / 1.2 | 46.6 3.8 / 39.2 / 3.5 |
| YOLO26n-obb | OBB(방향성 경계 상자) | 640 | 52.0 1.5 / 48.9 / 1.7 | 45.5 4.0 / 38.5 / 2.9 |
벤치마크: bus.jpg에서 3회의 웜업 후 수행한 15회의 predict() 호출 평균이며, ultralytics_yolo 0.6.10 및 공식 v0.6.6 에셋을 사용했습니다. CPU/GPU 순서는 하나의 순차적 스위프 내에서 태스크마다 번갈아 나타납니다. 기본 로그를 통해 모든 CPU 행은 LiteRT CPU/XNNPACK을 사용했고 모든 GPU 행은 전체 그래프를 LiteRT OpenCL(LITERT_CL)에 위임했음을 확인했습니다.
Samsung Galaxy S26#
하드웨어: 12GB 메모리와 안드로이드 16 / API 36이 탑재된 Samsung Galaxy S26(SM-S942B). 2nm Exynos 2600은 10코어 Armv9.3 CPU(최대 3.8 GHz의 C1-Ultra 코어 1개, 최대 3.26 GHz의 성능 C1-Pro 코어 3개, 최대 2.76 GHz의 효율 C1-Pro 코어 6개), Xclipse 960 GPU, Samsung NPU를 탑재하고 있습니다.
| 모델 | 작업 | 크기 (픽셀) | CPU w8a32 LiteRT (ms) | GPU w8a32 LiteRT (ms) |
|---|---|---|---|---|
| YOLO26n | 탐지(Detect) | 640 | 36.7 1.3 / 33.8 / 1.7 | 16.4 1.4 / 12.3 / 2.6 |
| YOLO26n-seg | 세그멘테이션(Segment) | 640 | 54.6 1.2 / 48.0 / 5.3 | 32.8 1.3 / 24.5 / 7.0 |
| YOLO26n-sem | 의미론적(Semantic) | 640 | 47.8 1.2 / 38.4 / 8.1 | 34.2 1.3 / 24.9 / 8.0 |
| YOLO26n-depth | Depth | 640 | 92.9 1.2 / 84.8 / 6.9 | 33.5 1.3 / 22.4 / 9.8 |
| YOLO26n-cls | 분류(Classify) | 224 | 2.7 0.2 / 2.3 / 0.2 | 2.6 0.2 / 2.4 / 0.0 |
| YOLO26n-pose | 포즈(Pose) | 640 | 42.8 1.3 / 40.5 / 1.0 | 18.4 1.4 / 14.1 / 2.9 |
| YOLO26n-obb | OBB(방향성 경계 상자) | 640 | 37.5 1.3 / 35.1 / 1.2 | 18.8 2.5 / 14.6 / 1.8 |
벤치마크: bus.jpg에서 3회의 웜업 후 수행한 15회의 predict() 호출 평균이며, ultralytics_yolo 0.6.10 및 공식 v0.6.6 에셋을 사용했습니다. CPU/GPU 순서는 하나의 순차적 스위프 내에서 태스크마다 번갈아 나타납니다. 기본 로그를 통해 모든 CPU 행은 LiteRT CPU/XNNPACK을 사용했고 모든 GPU 행은 전체 그래프를 LiteRT OpenCL(LITERT_CL)에 위임했음을 확인했습니다.
Xiaomi 17T Pro#
하드웨어: 12GB LPDDR5X 메모리와 안드로이드 16 / API 36이 탑재된 Xiaomi 17T Pro(2602EPTC0G). 3nm MediaTek Dimensity 9500(MT6993)은 8코어 Armv9.3 CPU(최대 4.21 GHz의 C1-Ultra 코어 1개, 최대 3.5 GHz의 C1-Premium 코어 3개, 최대 2.7 GHz의 C1-Pro 코어 4개), Mali-G1 Ultra MC12 GPU, MediaTek NPU 990을 탑재하고 있습니다.
| 모델 | 작업 | 크기 (픽셀) | CPU w8a32 LiteRT (ms) | GPU w8a32 LiteRT (ms) |
|---|---|---|---|---|
| YOLO26n | 탐지(Detect) | 640 | 45.4 1.3 / 42.1 / 2.0 | 26.6 1.9 / 22.0 / 2.7 |
| YOLO26n-seg | 세그멘테이션(Segment) | 640 | 126.2 2.6 / 113.9 / 9.7 | 46.7 2.6 / 33.3 / 10.8 |
| YOLO26n-sem | 의미론적(Semantic) | 640 | 117.9 2.6 / 98.8 / 16.5 | 74.3 2.6 / 54.7 / 17.0 |
| YOLO26n-depth | Depth | 640 | 182.4 2.5 / 167.6 / 12.3 | 47.8 2.5 / 32.3 / 12.9 |
| YOLO26n-cls | 분류(Classify) | 224 | 6.2 0.4 / 5.3 / 0.4 | 7.4 0.4 / 6.9 / 0.1 |
| YOLO26n-pose | 포즈(Pose) | 640 | 97.6 2.5 / 93.3 / 1.8 | 28.6 2.5 / 23.3 / 2.8 |
| YOLO26n-obb | OBB(방향성 경계 상자) | 640 | 91.5 2.6 / 85.8 / 3.2 | 27.5 2.7 / 21.8 / 2.9 |
벤치마크: bus.jpg에서 3회의 웜업 후 수행한 15회의 predict() 호출 평균이며, ultralytics_yolo 0.6.10 및 공식 v0.6.6 에셋을 사용했습니다. CPU/GPU 순서는 하나의 순차적 스위프 내에서 태스크마다 번갈아 나타납니다. 기본 로그를 통해 모든 CPU 행은 LiteRT CPU/XNNPACK을 사용했고 모든 GPU 행은 전체 그래프를 LiteRT OpenCL(LITERT_CL)에 위임했음을 확인했습니다.
지원되는 작업#
LiteRT 내보내기는 Ultralytics의 7가지 태스크 모두를 지원합니다. 시맨틱 세그멘테이션과 깊이 추정은 해당 헤드를 제공하는 유일한 패밀리인 YOLO26에서만 사용할 수 있습니다.
LiteRT로 내보내기: YOLO 모델 변환#
모델을 LiteRT 형식으로 변환하여 온디바이스 실행 효율성을 개선하고 배포 옵션을 넓힐 수 있습니다.
설치#
필수 패키지를 설치하려면 다음을 실행하십시오:
# Install the required package for YOLO
pip install ultralytics상세한 지침과 모범 사례를 보려면 Ultralytics 설치 가이드를 확인하세요. 어려움이 발생하면 일반적인 문제 가이드를 참조하세요.
LiteRT 내보내기는 현재 Linux x86_64 및 macOS에서 지원됩니다. 내보내기된 .tflite 모델 자체는 LiteRT를 지원하는 모든 플랫폼(모바일, 임베디드, 엣지, 브라우저)에서 실행됩니다.
사용법#
모든 Ultralytics YOLO 모델은 기본적으로 내보내기를 지원합니다. LiteRT 포맷은 Export, Predict, Validate 모드를 지원하므로, 모델을 내보낸 후 로드하여 로컬에서 추론을 실행하거나 정확도를 검증할 수 있습니다.
from ultralytics import YOLO
# Load a YOLO26 model
model = YOLO("yolo26n.pt")
# Export the model to LiteRT format
model.export(format="litert", imgsz=640) # use imgsz=224 for classificationfrom ultralytics import YOLO
model = YOLO("yolo26n.pt")
# Dynamic INT8: int8 weights, FP32 activations - no calibration data needed
model.export(format="litert", quantize="w8a32", imgsz=640) # use imgsz=224 for classification
# Static INT8: int8 weights + int8 activations - needs calibration data
model.export(format="litert", quantize=8, data="coco8.yaml", imgsz=640) # use 224 for classification
# Static w8a16: int8 weights + int16 activations (higher accuracy) - needs calibration data
model.export(format="litert", quantize="w8a16", data="coco8.yaml", imgsz=640) # use 224 for classificationfrom ultralytics import YOLO
# Load the exported LiteRT model
model = YOLO("yolo26n.tflite")
# Run inference
results = model("https://ultralytics.com/images/bus.jpg")from ultralytics import YOLO
# Load the exported LiteRT model
model = YOLO("yolo26n.tflite")
# Validate accuracy on the COCO8 dataset
metrics = model.val(data="coco8.yaml")내보내기 인수#
| 인수 | 유형 | 기본값 | 설명 |
|---|---|---|---|
format | str | 'litert' | 내보낸 모델의 대상 형식이며, 다양한 배포 환경과의 호환성을 정의합니다. |
imgsz | int 또는 tuple | 640 | 모델 입력에 사용할 원하는 이미지 크기입니다. 정방형 이미지의 경우 정수일 수 있으며, 특정 치수의 경우 튜플 (height, width)일 수 있습니다. |
quantize | int 또는 str | None | 양자화 정밀도: 8(정적 INT8, int8 가중치 + int8 활성화; 캘리브레이션 data/fraction 필요), 'w8a16'(정적, int8 가중치 + int16 활성화; 캘리브레이션 data/fraction 필요), 'w8a32'(동적 INT8, int8 가중치 + FP32 활성화; 캘리브레이션 불필요), 또는 32/미설정(FP32). FP16은 별도로 내보내지지 않습니다(아래 참고 사항 참조). 더 이상 사용되지 않는 half/int8 플래그를 대체합니다. |
batch | int | 1 | 내보낸 모델의 배치 추론 크기 또는 predict 모드에서 내보낸 모델이 동시에 처리할 최대 이미지 수를 지정합니다. |
data | str | None | INT8 캘리브레이션에 사용되는 데이터셋 YAML입니다. 분류 작업의 경우 대신 데이터셋 디렉터리나 내장 데이터셋 이름을 사용합니다. quantize=8 또는 'w8a16'에서 생략하면, Ultralytics는 모델 작업에 적합한 기본 캘리브레이션 데이터셋을 선택합니다. |
device | str | None | 내보내기를 수행할 장치를 지정합니다. LiteRT 내보내기는 CPU(device=cpu)에서 실행됩니다. |
레거시 tflite 내보내기와 달리 LiteRT는 별도의 FP16 내보내기를 요구하지 않습니다. FP32 .tflite 모델은 GPU 위임기(WebGPU, OpenCL, Metal)를 사용할 때 **런타임 시 절반 정밀도(half precision)**로 실행됩니다. 이것이 FP16 추론을 위한 공식적인 LiteRT 방식입니다.
내보내기 프로세스에 대한 자세한 내용은 내보내기에 관한 Ultralytics 문서 페이지를 방문하세요.
내보낸 YOLO LiteRT 모델 배포#
Ultralytics YOLO 모델을 LiteRT로 내보낸 후, 여러 플랫폼에 배포할 수 있습니다. 로컬에서 확인하는 가장 빠른 방법은 위에 표시된 YOLO("yolo26n.tflite") 메서드입니다. 다른 환경에서의 배포에 대해서는 다음 리소스를 참조하세요:
모바일 및 임베디드#
- 안드로이드: 안드로이드 애플리케이션에 LiteRT를 통합하기 위한 빠른 시작 가이드.
- iOS: iOS 애플리케이션에서 LiteRT 모델을 통합하고 배포하기 위한 가이드.
- 임베디드 Linux 및 Raspberry Pi: 단일 보드 컴퓨터에서 LiteRT 모델을 실행하며, 선택적으로 Coral Edge TPU로 가속화할 수 있습니다.
- 마이크로컨트롤러: 몇 킬로바이트의 메모리만 있는 MCU에 배포 — 코어 런타임은 Arm Cortex-M3에서 약 16KB 크기에 맞습니다.
브라우저 및 Node.js (LiteRT.js)#
- LiteRT.js 개요: WebGPU/WASM 가속을 사용하여 브라우저에서 동일한
.tflite모델을 직접 실행하며, 서버 측 연산을 없애고 데이터가 사용자의 기기에 머물도록 합니다. - 엔드투엔드 예제: 모바일, 엣지, 웹 전반에 걸쳐 LiteRT를 구현하기 위한 실용적인 예제 및 튜토리얼.
요약#
이 가이드에서는 Ultralytics YOLO 모델을 LiteRT 포맷으로 내보내는 방법을 다루었습니다. 모바일/엣지(구 TFLite) 및 브라우저(구 TF.js) 배포를 단일 .tflite 모델로 통합함으로써, LiteRT는 YOLO 모델을 더 빠르고 작게 만들며 사실상 모든 온디바이스 타겟에서 이식성 있게 작동하도록 합니다.
자세한 내용은 LiteRT 공식 문서를 방문하세요.
또한 다른 Ultralytics YOLO 연동에 관심이 있으시다면, 유용한 리소스가 가득한 연동 가이드 페이지를 확인해 보세요.
FAQ#
YOLO 모델을 LiteRT 형식으로 내보내려면 어떻게 해야 합니까?#
Ultralytics 라이브러리를 사용하여 YOLO 모델을 LiteRT(.tflite)로 내보내십시오. 먼저 패키지를 설치합니다:
pip install ultralytics그런 다음 모델을 내보내십시오:
from ultralytics import YOLO
# Load a YOLO26 model
model = YOLO("yolo26n.pt")
# Export the model to LiteRT format
model.export(format="litert", imgsz=640) # use imgsz=224 for classificationCLI 사용자용:
yolo export model=yolo26n.pt format=litert imgsz=640 # use imgsz=224 for classification자세한 내용은 Ultralytics 내보내기 가이드를 방문하세요.
LiteRT, TFLite, TF.js의 차이점은 무엇입니까?#
LiteRT는 TensorFlow Lite의 새로운 이름입니다. 동일한 .tflite 모델 포맷과 동일한 런타임 계통을 가지며 구글에 의해 리브랜딩되었습니다. Ultralytics에서 단일 litert 내보내기 포맷은 이제 이전에 두 개의 별도 포맷이 필요했던 두 가지 유스케이스를 모두 충족합니다:
- 기존
tflite포맷 → 모바일, 임베디드, 엣지 배포. - 기존의
tfjs포맷은 브라우저 및 Node.js 배포를 위한 것으로, 현재는 동일한.tflite파일을 실행하는 LiteRT.js를 통해 처리됩니다.
기존 .tflite 파일이 있는 경우 YOLO("model.tflite")을 사용하여 직접 로드할 수 있으며 LiteRT 백엔드를 통해 실행됩니다.
Raspberry Pi에서 YOLO LiteRT 모델을 실행할 수 있습니까?#
예. 모델을 LiteRT 포맷으로 내보낸 다음 Raspberry Pi에서 실행하여 추론 속도를 향상시키세요. 추가적인 최적화를 위해 Coral Edge TPU를 고려해보세요. 자세한 단계는 Raspberry Pi 배포 가이드를 참조하세요.
LiteRT를 사용하여 브라우저에서 YOLO 모델을 실행할 수 있습니까?#
예. LiteRT.js는 WebGPU/WASM 가속과 함께 웹 브라우저 또는 Node.js 애플리케이션에서 동일한 내보내기된 .tflite 모델을 직접 실행합니다. 이는 이전 TensorFlow.js 워크플로우를 대체합니다. 별도의 브라우저 내보내기가 필요 없으며, LiteRT 런타임으로 LiteRT 모델을 배포하기만 하면 됩니다.
LiteRT는 FP16(반정밀도) 추론을 지원합니까?#
예, 런타임 시 가능합니다. FP32 LiteRT 모델은 GPU 위임기(WebGPU, OpenCL 또는 Metal)에서 실행될 때 자동으로 FP16으로 실행되며, 이는 공식적인 LiteRT 방식입니다. 따라서 전용 FP16 내보내기가 필요하지 않습니다. 추가 압축을 원하시면 quantize=8과 함께 INT8 양자화를 사용하세요.
LiteRT 내보내기 중 발생하는 일반적인 문제를 해결하려면 어떻게 해야 합니까?#
YOLO 모델을 LiteRT로 내보내는 중 오류가 발생하면 일반적인 해결 방법은 다음과 같습니다:
- 플랫폼 확인: LiteRT 내보내기는 Linux x86_64 및 macOS에서 지원됩니다. 환경이 일치하는지 확인하십시오.
- 패키지 호환성 확인: 호환되는 버전의 Ultralytics를 사용하고 있는지 확인하세요. 설치 가이드를 참조하세요.
- 양자화 문제: INT8 양자화를 사용할 때
data파라미터에 데이터셋 경로가 올바르게 지정되었는지 확인하세요.
추가적인 문제 해결 팁은 일반적인 문제 가이드를 방문하세요.