ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 모델 서빙(Model Serving)
    OpenShift AI 2024. 8. 10. 16:13

    모델 서빙(Model Serving)이란?

     

    모델 서빙은 머신러닝 모델을 실제 애플리케이션 환경에서 사용할 수 있도록 배포하고 관리하는 과정입니다. 이는 모델을 API 형태로 노출하여 다른 시스템이나 애플리케이션이 이를 호출하고 결과를 활용할 수 있도록 합니다.

     

    OpenVINO 모델 서버

     

    OpenVINO란?

     

    OpenVINO(Open Visual Inference & Neural Network Optimization)는 Intel에서 제공하는 도구로, 딥러닝 모델의 추론 성능을 최적화하고 가속화하는 데 사용됩니다.

    OpenVINO는 다양한 하드웨어(Intel CPU, GPU, VPU 등)에서 최적화된 추론을 지원하며, 특히 컴퓨터 비전과 관련된 작업에 유리합니다.

     

    OpenVINO 모델 서버

     

    OpenVINO 모델 서버는 OpenVINO 툴킷을 기반으로 모델을 호스팅하고 추론 요청을 처리하는 서버입니다.

    이 서버는 고성능 추론을 제공하며, HTTP/REST API를 통해 모델을 쉽게 배포하고 사용할 수 있습니다.

     

    기본 모델 서버 런타임 제공

     

    기본 런타임 제공: OpenShift AI는 기본적으로 OpenVINO 모델 서버 런타임을 제공하여 사용자가 쉽게 모델을 배포하고 서비스할 수 있도록 합니다.

    사용 사례: 예를 들어, 이미지 분류 모델을 OpenVINO 모델 서버에 배포하면, 애플리케이션은 HTTP 요청을 통해 이미지를 보내고, 모델은 이미지를 분석하여 분류 결과를 반환할 수 있습니다.

     

    커스텀 런타임 추가 가능

     

    커스텀 런타임이란?

     

    커스텀 런타임은 기본 제공되는 런타임 외에, 특정 요구사항이나 환경에 맞춘 사용자 정의 런타임을 추가하는 것을 의미합니다.

    이를 통해 사용자는 특정 프레임워크(TensorFlow, PyTorch 등)나 라이브러리 요구사항에 맞는 런타임 환경을 구성할 수 있습니다.

     

    왜 커스텀 런타임이 필요한가?

     

    다양한 모델 지원: 기본 런타임이 지원하지 않는 특정 프레임워크나 버전의 모델을 서빙하려는 경우.

    특수 요구사항: 특정 하드웨어나 소프트웨어 의존성이 있는 모델을 서빙할 때.

    성능 최적화: 특정 환경에서의 성능 최적화를 위해 맞춤형 구성을 필요로 하는 경우.

     

    예제: 커스텀 런타임 활용하기

     

    1. 상황: 한 데이터 과학 팀이 PyTorch로 훈련된 모델을 배포하고자 합니다. 그러나 기본 OpenVINO 런타임은 PyTorch를 직접 지원하지 않습니다.

    2. 해결책:

    커스텀 런타임 개발: PyTorch 모델을 서빙할 수 있는 환경을 갖춘 Docker 이미지를 생성합니다.

    OpenShift에 배포: 해당 이미지를 OpenShift에 배포하여, PyTorch 모델을 서빙할 수 있는 API를 구성합니다.

    3. 결과: 클라이언트 애플리케이션은 REST API를 통해 PyTorch 모델에 요청을 보내고 결과를 받을 수 있습니다.

     

    이렇게 OpenShift AI 플랫폼은 다양한 모델 서빙 요구사항에 대응할 수 있도록 기본 런타임을 제공하는 동시에, 커스텀 런타임을 통해 확장성과 유연성을 제공합니다. 이를 통해 사용자는 다양한 머신러닝 모델을 효율적으로 운영 환경에 배포하고 관리할 수 있습니다.

Designed by Tistory.