Link to this section신속한 배포를 위한 YOLO26 모델의 TorchScript 내보내기#
임베디드 시스템, 웹 브라우저 또는 Python 지원이 제한적인 환경 등 다양한 환경에 computer vision 모델을 배포하려면 유연하고 이식 가능한 솔루션이 필요합니다. TorchScript는 전체 Python 프레임워크를 사용할 수 없는 환경에서 모델을 실행할 수 있는 이식성과 기능에 중점을 둡니다. 따라서 다양한 장치나 플랫폼 전반에 걸쳐 컴퓨터 비전 기능을 배포해야 하는 시나리오에 이상적입니다.
Ultralytics YOLO26 모델을 직렬화하여 플랫폼 간 호환성과 간소화된 배포를 달성하기 위해 TorchScript로 내보내십시오. 이 가이드에서는 YOLO26 모델을 TorchScript 형식으로 내보내는 방법을 보여드리며, 이를 통해 더 광범위한 애플리케이션에서 모델을 더 쉽게 사용할 수 있도록 지원합니다.
Link to this sectionTorchScript로 내보내야 하는 이유는 무엇입니까?#

PyTorch 제작자가 개발한 TorchScript는 다양한 플랫폼에서 PyTorch 모델을 최적화하고 배포하기 위한 강력한 도구입니다. YOLO26 모델을 TorchScript로 내보내는 것은 연구 단계에서 실제 애플리케이션으로 전환하는 데 매우 중요합니다. PyTorch 프레임워크의 일부인 TorchScript는 Python을 지원하지 않는 환경에서도 PyTorch 모델을 사용할 수 있게 함으로써 이러한 전환을 보다 원활하게 만들어 줍니다.
이 과정에는 트레이싱(tracing)과 스크립팅(scripting)이라는 두 가지 기술이 포함됩니다. 트레이싱은 모델 실행 중 작업을 기록하며, 스크립팅은 Python의 하위 집합을 사용하여 모델을 정의할 수 있게 합니다. 이러한 기술을 사용하면 YOLO26과 같은 모델이 기존 Python 환경 외부에서도 정상적으로 작동할 수 있습니다.

TorchScript 모델은 연산자 융합(operator fusion) 및 메모리 사용량 개선과 같은 기술을 통해 최적화되어 효율적인 실행을 보장할 수 있습니다. TorchScript로 내보낼 때의 또 다른 장점은 다양한 하드웨어 플랫폼에서 모델 실행을 가속화할 수 있다는 것입니다. 이는 C++ 환경이나 임베디드 시스템에 통합하거나 웹 또는 모바일 애플리케이션에 배포할 수 있는 독립형 프로덕션 준비 완료된 PyTorch 모델 표현을 생성합니다.
Link to this sectionTorchScript 모델의 주요 특징#
PyTorch 생태계의 핵심 부분인 TorchScript는 deep learning 모델을 최적화하고 배포하기 위한 강력한 기능을 제공합니다.

개발자에게 TorchScript를 가치 있는 도구로 만들어 주는 주요 기능은 다음과 같습니다:
-
정적 그래프 실행(Static Graph Execution): TorchScript는 PyTorch의 동적 그래프 실행과는 다른 모델 연산의 정적 그래프 표현을 사용합니다. 정적 그래프 실행에서는 실제 실행 전에 연산 그래프가 정의되고 컴파일되므로 추론 중 성능이 향상됩니다.
-
모델 직렬화(Model Serialization): TorchScript를 사용하면 PyTorch 모델을 플랫폼 독립적인 형식으로 직렬화할 수 있습니다. 직렬화된 모델은 원본 Python 코드 없이도 로드할 수 있어 다양한 런타임 환경에 배포가 가능합니다.
-
JIT 컴파일: TorchScript는 JIT(Just-In-Time) 컴파일을 사용하여 PyTorch 모델을 최적화된 중간 표현으로 변환합니다. JIT는 모델의 연산 그래프를 컴파일하여 대상 장치에서 효율적인 실행을 가능하게 합니다.
-
언어 간 통합(Cross-Language Integration): TorchScript를 사용하면 PyTorch 모델을 C++, Java, JavaScript와 같은 다른 언어로 내보낼 수 있습니다. 이를 통해 서로 다른 언어로 작성된 기존 소프트웨어 시스템에 PyTorch 모델을 더 쉽게 통합할 수 있습니다.
-
점진적 변환(Gradual Conversion): TorchScript는 점진적 변환 방식을 제공하여 PyTorch 모델의 일부를 단계적으로 TorchScript로 변환할 수 있습니다. 이러한 유연성은 복잡한 모델을 다루거나 코드의 특정 부분을 최적화하려는 경우 특히 유용합니다.
Link to this sectionTorchScript의 배포 옵션#
YOLO26 모델을 TorchScript 형식으로 내보내는 코드를 살펴보기 전에, TorchScript 모델이 일반적으로 어디에 사용되는지 알아보겠습니다.
TorchScript는 다음과 같은 machine learning 모델에 대한 다양한 배포 옵션을 제공합니다.
-
C++ API: TorchScript의 가장 일반적인 사용 사례는 C++ API이며, 이를 통해 최적화된 TorchScript 모델을 C++ 애플리케이션 내에서 직접 로드하고 실행할 수 있습니다. 이는 Python이 적합하지 않거나 사용할 수 없는 프로덕션 환경에 이상적입니다. C++ API는 TorchScript 모델의 낮은 오버헤드와 효율적인 실행을 제공하여 성능 잠재력을 극대화합니다.
-
모바일 배포: TorchScript는 모바일 장치에 즉시 배포 가능한 형식으로 모델을 변환하는 도구를 제공합니다. PyTorch Mobile은 iOS 및 Android 앱 내에서 이러한 모델을 실행하기 위한 런타임을 제공합니다. 이를 통해 낮은 지연 시간의 오프라인 추론 기능을 구현하여 사용자 경험과 data privacy를 향상할 수 있습니다.
-
클라우드 배포: TorchScript 모델은 TorchServe와 같은 솔루션을 사용하여 클라우드 기반 서버에 배포할 수 있습니다. 이는 프로덕션 환경에서의 확장 가능한 배포를 위해 모델 버전 관리, 배치 처리, 메트릭 모니터링과 같은 기능을 제공합니다. TorchScript를 사용한 클라우드 배포는 API나 기타 웹 서비스를 통해 모델을 액세스할 수 있게 합니다.
Link to this sectionTorchScript로 내보내기: YOLO26 모델 변환#
YOLO26 모델을 TorchScript로 내보내면 다양한 장소에서 더 쉽게 사용할 수 있으며, 더 빠르고 효율적으로 실행하는 데 도움이 됩니다. 이는 실제 애플리케이션에서 딥러닝 모델을 보다 효과적으로 사용하려는 모든 사람에게 유용합니다.
Link to this section설치#
필수 패키지를 설치하려면 다음을 실행하십시오:
# Install the required package for YOLO26
pip install ultralytics설치 과정과 관련된 자세한 지침 및 모범 사례는 Ultralytics 설치 가이드를 확인하십시오. YOLO26용 필수 패키지를 설치하는 동안 문제가 발생하면 일반 문제 가이드에서 해결책과 팁을 확인하십시오.
Link to this section사용법#
모든 Ultralytics YOLO26 모델은 즉시 내보내기를 지원하도록 설계되어 있어 선호하는 배포 워크플로우에 쉽게 통합할 수 있습니다. 전체 지원 내보내기 형식 및 구성 옵션 목록을 보고 애플리케이션에 가장 적합한 설정을 선택할 수 있습니다.
TorchScript 형식은 Export, Predict, Validate 모드를 지원합니다. 모델을 내보낸 다음 내보낸 모델을 로드하여 추론을 실행하거나 정확도를 검증하십시오.
from ultralytics import YOLO
# Load a YOLO26 model
model = YOLO("yolo26n.pt")
# Export the model to TorchScript format
model.export(format="torchscript") # creates 'yolo26n.torchscript'from ultralytics import YOLO
# Load the exported TorchScript model
model = YOLO("yolo26n.torchscript")
# Run inference
results = model("https://ultralytics.com/images/bus.jpg")from ultralytics import YOLO
# Load the exported TorchScript model
model = YOLO("yolo26n.torchscript")
# Validate accuracy on the COCO8 dataset
metrics = model.val(data="coco8.yaml")Link to this section내보내기 인수#
| 인수 | 유형 | 기본값 | 설명 |
|---|---|---|---|
format | str | 'torchscript' | 내보낸 모델의 대상 형식이며, 다양한 배포 환경과의 호환성을 정의합니다. |
imgsz | int 또는 tuple | 640 | 모델 입력에 필요한 이미지 크기입니다. 정사각형 이미지의 경우 정수를 사용할 수 있으며, 특정 치수의 경우 (height, width) 튜플을 사용할 수 있습니다. |
dynamic | bool | False | 동적 입력 크기를 허용하여 다양한 이미지 크기를 처리하는 데 유연성을 높입니다. |
quantize | int 또는 str | None | 양자화 정밀도: 16 (FP16)은 device=0을 사용한 GPU 내보내기가 필요하며, 32/미설정은 FP32입니다. 이는 더 이상 사용되지 않는 half 플래그를 대체합니다. |
optimize | bool | False | 모바일 장치에 대한 최적화를 적용하여 모델 크기를 줄이고 성능을 개선할 수 있습니다. |
nms | bool | False | 정확하고 효율적인 탐지 후처리에 필수적인 NMS(Non-Maximum Suppression)를 추가합니다. |
batch | int | 1 | 내보낸 모델의 배치 추론 크기 또는 내보낸 모델이 predict 모드에서 동시에 처리할 최대 이미지 수를 지정합니다. |
device | str | None | 내보내기를 위한 장치를 지정합니다: GPU(device=0), CPU(device=cpu), Apple silicon용 MPS(device=mps). |
내보내기 프로세스에 대한 자세한 내용은 내보내기에 대한 Ultralytics 문서 페이지를 참조하십시오.
Link to this section내보낸 YOLO26 TorchScript 모델 배포#
Ultralytics YOLO26 모델을 TorchScript 형식으로 성공적으로 내보낸 후에는 이를 배포할 수 있습니다. TorchScript 모델을 실행하기 위한 기본적이고 권장되는 첫 번째 단계는 이전 사용 코드 스니펫에 설명된 대로 YOLO("model.torchscript") 메서드를 사용하는 것입니다. 다른 설정에서 TorchScript 모델을 배포하는 방법에 대한 자세한 지침은 다음 리소스를 참조하십시오:
-
모바일 배포 탐색: PyTorch 모바일 문서는 모바일 장치에 모델을 배포하기 위한 포괄적인 지침을 제공하여 애플리케이션이 효율적이고 반응성이 뛰어나도록 보장합니다.
-
서버 측 배포 마스터: 확장 가능하고 효율적인 모델 서비스를 위한 단계별 자습서를 제공하는 TorchServe를 사용하여 서버 측에 모델을 배포하는 방법을 배우십시오.
-
C++ 배포 구현: C++ 애플리케이션에 TorchScript 모델을 로드하는 방법에 대한 자습서를 살펴보고 향상된 성능과 다양성을 위해 C++ 애플리케이션에 모델을 통합하는 방법을 배우십시오.
Link to this section요약#
이 가이드에서는 Ultralytics YOLO26 모델을 TorchScript 형식으로 내보내는 과정을 살펴보았습니다. 제공된 지침을 따르면 YOLO26 모델을 성능을 위해 최적화하고 다양한 플랫폼과 환경에 배포할 수 있는 유연성을 확보할 수 있습니다.
사용법에 대한 자세한 내용은 TorchScript 공식 문서를 방문하십시오.
또한 다른 Ultralytics YOLO26 통합에 대해 자세히 알고 싶다면 통합 가이드 페이지를 방문하십시오. 그곳에서 유용한 리소스와 통찰력을 많이 얻으실 수 있습니다.
Link to this sectionFAQ#
Link to this sectionUltralytics YOLO26 모델의 TorchScript 내보내기란 무엇입니까?#
Ultralytics YOLO26 모델을 TorchScript로 내보내면 유연한 플랫폼 간 배포가 가능합니다. PyTorch 생태계의 일부인 TorchScript는 모델의 직렬화를 촉진하며, 이를 통해 Python 지원이 없는 환경에서도 실행할 수 있습니다. 따라서 임베디드 시스템, C++ 환경, 모바일 애플리케이션, 심지어 웹 브라우저에 모델을 배포하는 데 이상적입니다. TorchScript로 내보내면 다양한 플랫폼에서 YOLO26 모델의 효율적인 성능과 더 넓은 적용 가능성을 확보할 수 있습니다.
Link to this sectionUltralytics를 사용하여 YOLO26 모델을 어떻게 TorchScript로 내보낼 수 있습니까?#
YOLO26 모델을 TorchScript로 내보내려면 다음 예제 코드를 사용할 수 있습니다:
from ultralytics import YOLO
# Load a YOLO26 model
model = YOLO("yolo26n.pt")
# Export the model to TorchScript format
model.export(format="torchscript") # creates 'yolo26n.torchscript'
# Load the exported TorchScript model
torchscript_model = YOLO("yolo26n.torchscript")
# Run inference
results = torchscript_model("https://ultralytics.com/images/bus.jpg")내보내기 과정에 대한 자세한 내용은 내보내기에 관한 Ultralytics 문서를 참조하십시오.
Link to this sectionYOLO26 모델을 배포하는 데 왜 TorchScript를 사용해야 합니까?#
YOLO26 모델 배포에 TorchScript를 사용하면 다음과 같은 여러 가지 장점이 있습니다:
- 이식성: 내보낸 모델은 C++ 애플리케이션, 임베디드 시스템, 모바일 장치와 같이 Python이 필요 없는 환경에서 실행될 수 있습니다.
- 최적화: TorchScript는 정적 그래프 실행과 JIT(Just-In-Time) 컴파일을 지원하여 모델 성능을 최적화할 수 있습니다.
- 언어 간 통합: TorchScript 모델을 다른 프로그래밍 언어에 통합하여 유연성과 확장성을 높일 수 있습니다.
- 직렬화: 모델을 직렬화하여 플랫폼 독립적인 로딩과 추론을 가능하게 합니다.
For more insights into deployment, visit the TorchServe Documentation and the C++ Deployment Guide. For on-device mobile deployment, PyTorch now recommends ExecuTorch, which uses its own separate torch.export() → .pte pipeline rather than TorchScript.
Link to this sectionYOLO26 모델을 TorchScript로 내보내기 위한 설치 단계는 무엇입니까?#
YOLO26 모델을 내보내는 데 필요한 패키지를 설치하려면 다음 명령을 사용하십시오:
# Install the required package for YOLO26
pip install ultralytics자세한 지침은 Ultralytics 설치 가이드를 방문하십시오. 설치 중 문제가 발생하면 공통 문제 가이드를 참조하십시오.
Link to this section내보낸 TorchScript YOLO26 모델을 어떻게 배포합니까?#
YOLO26 모델을 TorchScript 형식으로 내보낸 후에는 다양한 플랫폼에 배포할 수 있습니다:
- C++ API: 오버헤드가 낮고 효율성이 높은 프로덕션 환경에 이상적입니다.
- Mobile Deployment: Run TorchScript models on-device with LibTorch (the PyTorch C++ runtime). For new mobile projects, PyTorch recommends ExecuTorch, a separate
.pteexport pipeline. - 클라우드 배포: 확장 가능한 서버 측 배포를 위해 TorchServe와 같은 서비스를 활용하십시오.
TorchScript의 기능을 최대한 활용하려면 이러한 환경에서 모델을 배포하기 위한 포괄적인 지침을 살펴보십시오.