Real-time Inference
즉각적인 AI prediction을 제공하는 real-time inference의 강력한 기능을 살펴보세요. Ultralytics YOLO26이 edge device와 robotics를 위해 low-latency result를 제공하는 방법을 알아보세요.
실시간 추론은 학습된 머신러닝 (ML) 모델이 실시간 입력 데이터를 받아 거의 즉시 예측을 생성하는 프로세스를 의미합니다. 데이터를 수집한 후 나중에 일괄적으로 처리하고 분석하는 오프라인 처리와 달리, 실시간 추론은 즉석에서 수행되므로 시스템이 빠르고 민첩하게 환경에 대응할 수 있습니다. 이러한 기능은 최신 인공지능 (AI) 애플리케이션의 핵심으로, 디바이스가 밀리초 단위로 데이터를 인식하고 해석하며 이에 따라 동작할 수 있도록 합니다.
낮은 지연 시간의 중요성#
실시간 성능을 평가하는 주요 지표는 추론 지연 시간입니다. 이는 데이터가 모델에 입력되는 순간(예: 비디오 카메라의 프레임)부터 모델이 출력(예: 바운딩 박스 또는 분류 레이블)을 생성하는 순간까지의 시간 지연을 측정합니다. 애플리케이션이 "실시간"으로 간주되려면 지연 시간이 들어오는 데이터 스트림의 속도에 맞출 수 있을 만큼 낮아야 합니다.
예를 들어 초당 30프레임(FPS)으로 실행되는 비디오 이해 작업에서는 시스템이 각 프레임을 처리하는 데 약 33밀리초라는 엄격한 시간 예산을 갖습니다. 추론에 더 오래 걸리면 시스템에 지연이 발생하여 프레임이 누락되거나 응답이 지연될 수 있습니다. 이를 달성하려면 GPU 또는 NVIDIA Jetson과 같은 특수 Edge AI 디바이스를 사용한 하드웨어 가속이 필요한 경우가 많습니다.
실시간 추론과 배치 추론#
실시간 워크플로와 배치 처리를 구분하는 것이 유용합니다. 둘 다 예측 생성을 포함하지만 목표와 아키텍처는 크게 다릅니다:
- 실시간 추론: 낮은 지연 시간을 우선합니다. 데이터가 도착하는 즉시 개별 데이터 포인트(또는 매우 작은 배치)를 처리합니다. 이는 차량이 제때 제동하려면 보행자를 즉시 감지해야 하는 자율주행 차량과 같은 인터랙티브 애플리케이션에 필수적입니다.
- 배치 추론: 높은 처리량을 우선합니다. 대량의 데이터를 수집하여 한 번에 모두 처리합니다. 야간 재고 보고서 생성이나 과거 빅데이터 추세 분석과 같은 긴급하지 않은 작업에 적합합니다.
실제 적용 사례#
순간적인 의사 결정을 내리는 능력은 동적인 환경에서 자동화를 가능하게 하여 다양한 산업을 변화시켰습니다.
- 스마트 제조: 제조 분야의 AI에서는 컨베이어 벨트 위에 배치된 카메라가 실시간 추론을 사용하여 자동화된 품질 관리를 수행합니다. 객체 감지 모델은 고속으로 이동하는 제품의 결함이나 이물질을 즉시 식별할 수 있습니다. 이상이 감지되면 시스템이 로봇 팔을 작동시켜 해당 제품을 즉시 제거하므로 고품질 제품만 포장 공정에 도달하도록 합니다.
- 감시 및 보안: 최신 보안 시스템은 경계를 모니터링하기 위해 컴퓨터 비전에 의존합니다. 이러한 카메라는 단순히 영상을 녹화하는 대신 실시간 사람 감지 또는 얼굴 인식을 실행하여 무단 접근이 발생하는 즉시 보안 담당자에게 알립니다.
- 로보틱스: 로보틱스 분야의 AI에서 로봇은 복잡한 물리적 공간을 탐색하기 위해 포즈 추정을 사용합니다. 창고 로봇은 안전하고 효율적으로 경로를 계획하기 위해 장애물과 작업자의 위치를 지속적으로 추론해야 합니다.
최적화 및 배포#
실시간 애플리케이션에 모델을 배포하려면 대상 하드웨어에서 효율적으로 실행되도록 최적화해야 하는 경우가 많습니다. 모델 양자화와 같은 기법은 모델 가중치의 정밀도(예: float32에서 int8로)를 낮춰 메모리 사용량을 줄이고 정확도에 미치는 영향을 최소화하면서 추론 속도를 높입니다.
개발자는 Ultralytics Platform을 활용하여 이 프로세스를 간소화할 수 있습니다. 이 플랫폼은 학습을 간소화하고 사용자가 NVIDIA GPU용 TensorRT, Intel CPU용 OpenVINO, 모바일 배포용 TFLite와 같은 최적화된 형식으로 모델을 내보낼 수 있도록 합니다.
코드 예제#
다음 Python 스니펫은 ultralytics 라이브러리를 사용하여 웹캠 피드에서 실시간 추론을 실행하는 방법을 보여줍니다. 이 스니펫은 엣지 디바이스에서 고속 성능을 발휘하도록 특별히 설계된 YOLO26 Nano 모델을 사용합니다.
from ultralytics import YOLO
# Load the YOLO26 Nano model, optimized for speed and real-time tasks
model = YOLO("yolo26n.pt")
# Run inference on the default webcam (source="0")
# 'stream=True' returns a generator for memory-efficient processing
# 'show=True' displays the video feed with bounding boxes in real-time
results = model.predict(source="0", stream=True, show=True)
# Iterate through the generator to process frames as they arrive
for result in results:
# Example: Print the number of objects detected in the current frame
print(f"Detected {len(result.boxes)} objects")








