MLflow 포스팅 시리즈(DOC) 작성 계획

포스팅 구조

  • 포스팅은 환경 준비, MLflow 의 메인 컨셉, 그리고 각 아키텍처를 기준으로 나누어 포스팅을 한다.
  • 이 포스팅 시리즈는 “실무를 하면서 빠르게 찾을 수 있는” 구조를 지향한다. 순서대로 차근차근 배우기에는 적합하지 않을 수 있다.
  • 메인 컨셉 : MLflow 의 논리적 구성 요소와 그들의 개념
  • 아키텍처 : MLflow 의 물리적 아키텍처와 사용법
물리적 아키텍처 설명
MLflow Tracking Server 모든 실험의 중앙 관리자 역할을 하는 서버.
실험 메타데이터(파라미터, 메트릭 등)와 아티팩트 저장 위치를 관리한다.
MLflow Client 사용자가 실험을 기록하고 조회하는 쪽의 인터페이스
Python SDK, CLI 등이 있다.
Backend Store 실험, 런, 모델 등의 메타데이터를 저장하는 데이터베이스
Artifact Store 학습된 모델, 이미지, 데이터 파일 등 대용량 아티팩트를 저장하는 스토리지

목차

No 목차 작성 여부
- 소개  
1 MLflow 소개 미작성(가장 마지막에 작성 예정)
- 환경 준비  
1 MLflow Tracking Server 설치하기 미작성
- 메인 컨셉  
1 MLflow 의 논리적 구성 요소와 개념 미작성
2 Experiment 미작성
3 Run 미작성
4 Model 미작성
   
- MLflow Tracking Server  
1 MLflow 의 물리적 구성 요소 미작성
2 MLflow Tracking Server 설치하기 미작성
   
- MLflow Client(SDK)  
1 MLflow SDK의 주요 모듈과 클래스 미작성
   
- MLflow Backend Store  
   
- MLflow Artifact Store  
   

개발 환경

  • 본 포스팅 시리즈의 개발 환경은 다음과 같다.

MLflow 의 버전

  • 3.6.0

Server Side(Tracking Server)

구분 개발 환경 권장 환경
OS Rocky 9.3 리눅스 계열(Ubuntu 권장)
CPU Intel N100 공식 권장사양 확인 불가
저전력 N100 CPU 도 되니, 웬만한 환경에서는 가능할 듯
RAM 32GB 공식 권장사양 확인 불가
실험 결과 Tracking Server 컨테이너만 띄우면 100MB 수준
STORAGE SSD 1TB MLflow Docker : 약 800MB
그 외 실험하고자 하는 모델의 종류와 수에 따라 다름

Client Side

구분 개발 환경 권장 환경
OS MacOS 26 개발 및 CLI가 가능한 환경이면 상관 없음
CPU M2 상동
RAM 16GB 상동
STORAGE 256GB 상동

Reference

https://mlflow.org/docs/latest/self-hosting/architecture/overview/

Comments