MLOps 5

Airflow 기초 사용법 및 DockerOperator

사내에서 데이터파이프라인을 담당하시던 동료분이 에어플로우 세미나를 진행하신 적이 있었습니다. 그분은 워낙 내공이 있으신 분이기도 하고, 발표도 잘하는 분이셔서 에어플로우 파악에 많은 도움이 되었습니다. 그 때의 기억을 바탕으로 Airflow 기초 사용법을 간단히 정리하고, 제가 업무에 사용하였던 DockerOperator 사용 방법도 간략히 정리하도록 하겠습니다. 먼저 airflow 설치 방법은 아래와 같습니다. pip install apache-airflow airflow db init airflow users create \ --role Admin \ --username admin \ --email admin \ --firstname admin \ --lastname admin \ --password..

MLOps 2022.08.10

모델 배포 및 모니터링 전략

UC 버클리에서 주관하는 Full Stack Deep Learning 강의에서 model deploy & monitoring 세션이 있습니다. 강의 내용이 모델 배포 및 모니터링 업무에서 큰 도움이 될 것 같아서 관련 내용을 포스팅할까 합니다. 기본적인 내용이 많지만 나중에 팀원에게 관련 내용에 대해 소개할 때 유용하게 사용할 수 있을 것 같습니다. 프로덕션 환경에서는 수백만의 사용자가 ML 모델을 사용할 수 있습니다. 따라서 여러 사항들을 고려해야 합니다. 먼저 모델 배포 타입에 대해 서술해보면, 모델 배포 타입은 크게 3가지 방법을 고려할 수 있습니다. client-side에서 모델을 실행하는 방법(웹브라우저, 모바일 디바이스 등) server-side에서 모델을 실행하는 방법 서버가 데이터베이스에 ..

MLOps 2022.08.08

NVIDIA Docker 설치

현재 회사에서 NVIDIA GPU 자원이 사용 가능한 도커가 필요했습니다. 따라서 NVIDIA Docker를 설치해야 했는데, 나중에 참고하기 위해서 설치 방법을 포스팅하도록 하겠습니다. 1. 먼저 도커를 설치합니다. 도커 설치에 사용한 명령어는 아래와 같습니다. sudo apt-get install ca-certificates curl gnupg lsb-release sudo mkdir -p /etc/apt/keyrings` curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg curl -fsSL https://download.docker.com/linux/ubu..

MLOps 2022.08.08

MLFlow 원격 모델 저장소에서 pytorch 모델 로딩 시 에러

현재 회사에서 오프라인 배치 서빙을 수행하는 스크립트를 작성하는 기회가 있었습니다. 이를 위해 타팀 연구원분께서 개발하신 딥러닝 모델을 전달받아 사용하여야 했고, 모델을 공유할 방안을 마련하여야 했습니다. 기존에는 slack이나 google drive를 사용하여 모델을 전달받았지만, 회사에 MLFlow 프로토타입을 구축하여 운용하고 있었으므로 MLFlow 원격저장소 기능을 테스트할 좋은 기회라고 생각했습니다. 아직 딥러닝 연구원분들은 MLFlow를 잘 다루지 못하므로, 일단 slack으로 모델을 전달받고 제가 원격저장소에 업로드하였습니다. 이때 얻은 경험은 MLFlow 운영에 큰 도움이될 것 같았습니다. 전에 포스팅한 것 처럼, MLFlow 업로드는 그리 어렵지 않았습니다. mlflow.pytorch.l..

MLOps 2022.07.20

MLFlow

현재 회사에서 MLOps 엔지니어로 근무하고 있습니다. 기존에는 GPU 병렬 컴퓨팅을 공부했고, 딥러닝에 대한 이론적 지식이 있으며 백엔드 엔지니어링을 공부한 배경을 바탕으로 MLOps 엔지니어 포지션을 제안받았기 때문입니다. MLOps 엔지니어는 아래와 같이 크게 세가지 일을 수행한다고 생각합니다. 1. 데이터 파이프라인 구축 2. 머신러닝 파이프라인 구축 3. 머신러닝 모델 서빙 이 번 포스팅에서는 머신러닝 파이프라인 구축 카테고리에서 머신러닝 모델 관리에 관한 오픈 소스를 리뷰할 까 합니다. 제목과 같이 MLFlow를 리뷰하려고 하고, MLFlow의 여러 기능 중에서 tracking과 registry 기능에 대해 리뷰하려고 합니다. MLFlow는 클라이언트-서버 구조를 갖고 있습니다. 따라서 로컬머..

MLOps 2022.07.04