jupyter 노트북으로 시작하는 소소한 AI as a Service #NGC #kubeflow #DeepOps
GPU-as-a-Service 방식으로 자원 공유가 가능한 클러스터를 운영하고 있다면! 다음 단계로 AI-as-a-Service 기반으로 데이터 과학자, 개발자가 더 빠르고 효율적으로 모델을 만들고, 배포하고, 트레이닝할 수 있는 그런 환경으로 나아가는 것입니다. AI as a Service는 거창한 구호가 아닙니다. 당장 실천해 볼 수 있습니다. jupyter 노트북을 띄워 놓고 하나하나 따라가다 보면 AI as a Service가 일상이 될 수 있습니다. jupyter 노트북은 요즘 많이들 쓰시죠? 데이터 과학자와 분석가의 완소템이 된지 오래죠. jupyter 노트북을 사용하면 한 화면에서 코드로 실행하고, 결과도 시각화해보고 참 많은 일들을 할 수 있습니다.

jupyter 노트북과 환상 궁합 NGC
jupyter 노트북을 머신 러닝, 딥러닝 프로젝트에서 쓸 때 NGC를 더하면 매우 편리한 개발 환경이 눈앞에 펼쳐집니다. NGC를 통해 컨테이너 이미지를 가져오고, 사전에 트레이닝을 마친 모델을 가져오고, 각종 스크립트를 가져와 쓰면? 개발, 배포, 트레이닝 과정이 매우 간결해집니다.

여기에 한 가지를 더하면 워크플로우까지 아주 명확하고, 간결하게 관리할 수 있습니다. 바로 쿠버네티스 환경에서 머신 러닝 파이프라인을 설계하는 데 사용하는 툴킷인 kubeflow를 사용하는 것입니다.

AI as a Service를 완성하는 화룡점정 DeepOps
jupyter 노트북에 NGC를 더하고 여기에 kubeflow를 더하는 것까지만 해도 놀라운 변화가 생깁니다. 여기에 한 가지를 덧붙이면 AI-as-a-Service가 완성됩니다. 바로 DeepOps를 추가하는 것입니다. DeepOps는 NVIDIA가 주도하는 오픈 소스 기반 프로젝트입니다. DeepOps를 적용하면 잡 스케줄링, 애플리케이션 배포, 멀티 노드 확장, 애플리케이션 프로파일링, 머신 러닝 파이프라인 실행 등의 운영 작업을 개별적인 태스크가 아니라 긴밀히 연계된 흐름으로 매끄럽게 이어집니다. 앞서 언급한 GPU as a Services가 자원 측면의 통합 환경이라면, DeepOps는 플랫폼 측면에서 자동화 기반 통합 환경을 구현한 것입니다. 간단히 말해 GPU as a Serivices는 IaaS 그리고 DeepOps는 컨테이너 환경에 최적화된 PaaS라 보면 됩니다.

GPU as a Serivices 제공을 위한 GPU 클러스터 상에 DeepOps를 구현하면 다음과 같은 쿠너베티스 환경에 최적화된 AI as a Service 환경이 구축됩니다. AI as a Service를 실현하는 데 필요한 것은 jupyter 노트북, NGC 컨테이너, Kubeflow 그리고 쿠버네티스면 충분합니다.
#GPU#jupyter#jupyter_노트북#GPU_as_a_Service#DeepOps#화룡점정#kubeflow