Gen AI 앱 및 모델 수명 주기를 위한 MLflow
이 문서에서는 Databricks의 MLflow를 사용하여 고품질 생성 AI 에이전트 및 기계 학습 모델을 개발하는 방법을 설명합니다.
메모
Azure Databricks를 처음 시작하는 경우, Databricks Community Edition에서 MLflow를 사용해 보시는 것을 고려해 보세요.
MLflow란?
MLflow는 모델 및 생성 AI 애플리케이션을 개발하기 위한 오픈 소스 플랫폼입니다. 다음과 같은 기본 구성 요소가 있습니다.
- 추적: 실험을 추적하여 parameters과 결과를 기록하고 비교할 수 있습니다.
- 모델: 다양한 ML 라이브러리에서 다양한 모델 서비스 및 유추 플랫폼으로 모델을 관리하고 배포할 수 있습니다.
- 모델 레지스트리: 모델 버전 관리 및 주석 기능을 사용하여 스테이징에서 프로덕션까지 모델 배포 프로세스를 관리할 수 있습니다.
- AI 에이전트 평가 및 추적: 에이전트를 비교, 평가 및 문제 해결에 도움을 줌으로써 고품질의 AI 에이전트를 개발할 수 있습니다.
MLflow는 Java, Python, R 및 REST API를 지원합니다.
Databricks 관리형 MLflow
Databricks는 완전히 관리되고 호스트된 버전의 MLflow를 제공하여 오픈 소스 환경을 구축하여 엔터프라이즈용으로 보다 강력하고 확장성 있게 만듭니다.
다음 다이어그램에서는 Databricks가 MLflow와 통합되어 기계 학습 모델을 학습시키고 배포하는 방법을 보여 줍니다.
Databricks가 관리하는 MLflow는 ML 수명 주기에서 모든 데이터 및 AI 자산을 통합하기 위해 Unity Catalog과 Cloud Data Lake를 기반으로 합니다.
- 기능 저장소: Databricks 자동화된 기능 조회는 통합을 간소화하고 실수를 줄입니다.
- 모델 학습: 모자이크 AI를 사용하여 모델을 학습하거나 기본 모델을 미세 조정합니다.
- 추적: MLflow는 모델 성능을 평가하고 비교하기 위해 parameters, 메트릭 및 아티팩트 로깅을 통해 학습을 추적합니다.
- 모델 레지스트리: Unity Catalog와 통합된 MLflow 모델 레지스트리는 AI 모델과 아티팩트를 중앙에 통합합니다.
- 모델 서비스: Mosaic AI 모델 서비스 제공은 REST API 엔드포인트에 모델을 배포합니다.
- 모니터링: Mosaic AI 모델 제공은 모델을 모니터링하고 디버그하기 위한 요청 및 응답을 자동으로 캡처합니다. MLflow는 각 요청에 대한 추적 데이터로 이 데이터를 보강합니다.
모델 학습
MLflow 모델은 Databricks에서 AI 및 ML 개발의 핵심입니다. MLflow 모델은 기계 학습 모델 및 생성 AI 에이전트를 패키징하기 위한 표준화된 형식입니다. 표준화된 형식을 사용하면 Databricks의 다운스트림 도구 및 워크플로에서 모델 및 에이전트를 사용할 수 있습니다.
- MLflow 설명서 - 모델.
Databricks는 다양한 종류의 ML 모델을 학습시키는 데 도움이 되는 기능을 제공합니다.
- Mosaic AI를사용하여 AI 모델을 학습시키다.
실험 기록 및 추적
Databricks는 MLflow 실험을 조직적 단위로 활용하여 모델을 개발하는 동안 작업을 추적합니다.
실험 추적을 사용하면 기계 학습 학습 및 에이전트 개발 중에 parameters, 메트릭, 아티팩트 및 코드 버전을 기록하고 관리할 수 있습니다. 로그를 실험 및 실행으로 구성하면 모델을 비교하고, 성능을 분석하고, 더 쉽게 반복할 수 있습니다.
- Databricks를 사용한 실험 추적.
- 실행 및 실험 추적대한 일반적인 정보는 MLflow 설명서를 참조하세요.
Unity Catalog와 함께하는 모델 레지스트리
MLflow 모델 레지스트리는 모델 배포 프로세스를 관리하기 위한 중앙 집중식 모델 리포지토리, UI 및 API set.
Databricks는 모델 레지스트리를 Unity Catalog 통합하여 모델에 대한 중앙 집중식 거버넌스를 제공합니다. Unity Catalog 통합을 사용하면 작업 영역에서 모델에 액세스하고, 모델 계보를 추적하고, 다시 사용할 모델을 검색할 수 있습니다.
- Databricks Unity Catalog사용하여 모델을 관리합니다.
- 모델 레지스트리대한 일반적인 정보는 MLflow 설명서를 참조하세요.
모델 서빙
Databricks Model Serving는 MLflow 모델 레지스트리와 긴밀하게 통합되어 있으며 AI 모델을 배포, 관리 및 쿼리하기 위한 확장 가능한 통합 인터페이스를 제공합니다. 서비스하는 각 모델은 웹 또는 클라이언트 애플리케이션에 통합할 수 있는 REST API로 사용할 수 있습니다.
고유한 구성 요소이지만 모델 서비스 제공은 MLflow 모델 레지스트리를 사용하여 모델 버전 관리, 종속성 관리, 유효성 검사 및 거버넌스를 처리합니다.
- Databricks을 사용하여
모델을 제공하기.
AI 에이전트 개발 및 평가
AI 에이전트 개발을 위해 Databricks는 MLflow와 ML 모델 개발과 유사하게 통합됩니다. 그러나 몇 가지 주요 차이점이 있습니다.
- Databricks에서 AI 에이전트를 만들려면 MLflow를 사용하여 에이전트 코드, 성능 메트릭 및 에이전트 추적을 추적하는 Mosaic AI Agent Framework사용합니다.
- Databricks에서 에이전트를 평가하려면 Mosaic AI 에이전트 평가 을 사용하고, 평가 결과를 추적하기 위해 MLflow를 활용합니다.
- 에이전트용 MLflow 추적에는 MLflow 추적이 포함됩니다. MLflow 추적을 사용하면 에이전트 서비스 실행에 대한 자세한 정보를 볼 수 있습니다. 추적은 요청의 각 중간 단계와 연결된 입력, 출력 및 메타데이터를 기록하므로 에이전트에서 예기치 않은 동작의 원인을 신속하게 찾을 수 있습니다.
다음 다이어그램에서는 Databricks가 MLflow와 통합되어 AI 에이전트를 만들고 배포하는 방법을 보여 줍니다.
Databricks 관리형 MLflow는 GenAI 앱 수명 주기에서 모든 데이터와 AI 자산을 통합하기 위해 Unity Catalog 및 Cloud Data Lake를 기반으로 합니다.
- 벡터 & 기능 저장소: Databricks 자동화된 벡터 및 기능 조회는 통합을 간소화하고 실수를 줄입니다.
- AI 에이전트 만들기 및 평가: Mosaic AI 에이전트 프레임워크 및 에이전트 평가를 통해 에이전트를 만들고 해당 출력을 평가할 수 있습니다.
- 추적 & 추적: MLflow 추적은 향상된 genAI 관찰성을 위해 자세한 에이전트 실행 정보를 캡처합니다.
- 모델 레지스트리: Unity Catalog와 통합된 MLflow 모델 레지스트리는 AI 모델과 아티팩트를 중앙 집중화합니다.
- 모델 서비스: Mosaic AI 모델 서비스 제공은 REST API 엔드포인트에 모델을 배포합니다.
- 모니터링: MLflow는 모델을 모니터링하고 디버그하기 위한 요청 및 응답을 자동으로 캡처합니다.
오픈 소스와 Databricks 관리형 MLflow 기능 비교
오픈 소스와 Databricks 관리 버전 간에 공유되는 일반적인 MLflow 개념, API 및 기능은 MLflow 설명서참조하세요. Databricks 관리형 MLflow 전용 기능은 Databricks 설명서를 참조하세요.
다음 table 오픈 소스 MLflow와 Databricks 관리형 MLflow의 주요 차이점을 강조 표시하고 자세한 내용을 알아보는 데 도움이 되는 설명서 링크를 제공합니다.
특징 | 오픈 소스 MLflow의 가용성 | Databricks 관리형 MLflow의 가용성 |
---|---|---|
안전 | 사용자는 고유한 보안 거버넌스 계층을 제공해야 합니다. | Databricks 엔터프라이즈급 보안 |
재해 복구 | 이용 불가 | Databricks 재해 복구 |
실험 추적 | MLflow 추적 API | Databricks 고급 실험 추적 통합된 MLflow 추적 API |
모델 레지스트리 | MLflow 모델 레지스트리 |
Databricks Unity와 통합된 MLflow 모델 레지스트리 Catalog |
Unity Catalog 통합 | Unity Catalog을 위한 오픈 소스 통합 | Databricks Unity Catalog |
모델 배포 | 사용자가 구성한 외부 서비스 솔루션(SageMaker, Kubernetes, 컨테이너 서비스 등)과의 통합 | Databricks 모델 서비스 및 외부 서비스 솔루션 |
AI 에이전트 | MLflow LLM 개발 | Mosaic AI Agent Framework 및 에이전트 평가 통합된 MLflow LLM 개발 |
암호화 | 사용할 수 없음 | 고객 관리형 키를 사용한 암호화 |