fmind/cookiecutter-mlops-package

Start building and deploying Python packages and Docker images for MLOps tasks.

해결하는 문제

이 프로젝트는 MLOps 프로젝트를 위한 표준화되고 프로덕션 준비 완료된 기반을 제공합니다. Python 패키지 및 Docker 이미지의 빌드, 테스트, 패키지화, 배포 작업을 반복적으로 설정하는 번거로움을 제거하여, 일관된 구조와 사전 구성된 툴체인을 통해 AI/ML 코드베이스를 빠르게 시작할 수 있도록 합니다.

작동 방식

Cookiecutter 템플릿으로, 완전한 프로젝트 구조를 생성합니다. 생성된 프로젝트는 uv를 통한 의존성 관리, Ruff를 통한 린팅, mise를 통한 작업 실행(설치, 테스트, 빌드)을 통합한 현대적인 Python 스택을 사용합니다. MLflow를 통한 트래킹 및 모델 레지스트리 지원(로컬 SQLite 백엔드 사용), 멀티스테이지 Docker 이미지, GitHub Actions 워크플로우를 통한 CI/CD(자동 문서 배포를 포함한 GitHub Pages)를 포함합니다.

대상 사용자

Kubernetes, Vertex AI, Databricks, Azure ML, AWS SageMaker 등의 다양한 MLOps 플랫폼에 통합할 수 있는 재사용 가능한 AI/ML 컴포넌트를 구축해야 하는 ML 엔지니어 및 데이터 사이언티스트.

주요 특징

  • 통합된 작업 어휘: mise를 사용하여 로컬 개발, Git 훅, CI에서 동일한 명령어를 사용할 수 있도록 합니다.
  • 빠른 Python 스택: uvRuff를 활용하여 고성능 의존성 및 코드 품질 관리를 실현합니다.
  • 통합된 보안: 의존성 CVE 스캔(pip-audit), 시크릿 스캔(gitleaks), 컨테이너 이미지 스캔(Trivy)을 내장하고 있습니다.
  • 즉시 사용 가능한 CI/CD: 자동 테스트, 릴리스, 보안 재스캔을 수행하는 GitHub Actions를 포함합니다.
  • MLflow 통합: 로컬 SQLite 저장소를 사용하여 트래킹 및 모델 레지스트리가 사전 구성되어 있습니다.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트