Your browser does not support JavaScript!

온프레미스 환경에서의 MLOps 구축 방안 연구

일일 보고서 2024년 09월 29일
goover

목차

  1. 요약
  2. 온프레미스 MLOps 도입 배경
  3. 오픈소스 기반 MLOps 도구의 선정
  4. 오픈소스 AutoML 도구 분석
  5. AutoML 도구 비교 평가
  6. 온프레미스 MLOps 구축 사례
  7. 결론

1. 요약

  • 이 리포트는 온프레미스 환경에서 MLOps를 효과적으로 구축하기 위한 방법들을 다룹니다. 주요 주제는 보안, 커스터마이즈 가능성, 운영 유연성 등의 장점을 분석하고, 네이버클라우드의 미래에셋증권 구축 사례를 통해 구체적 적용 방안을 제시합니다. Kubeflow, MLflow, DVC와 같은 오픈소스 소프트웨어를 중심으로 각 도구의 특징 및 활용 가능성을 비교하며, H2O.ai, AutoKeras, Ludwig, Microsoft NNI 등의 AutoML 도구들도 분석 평가합니다. 이 리포트는 다양한 도구들의 활용법과 사례를 통해 온프레미스 환경에서 MLOps를 도입하는 전략을 상세히 설명합니다.

2. 온프레미스 MLOps 도입 배경

  • 2-1. 온프레미스 소프트웨어 개념 및 장점

  • 온프레미스 소프트웨어란 서버와 클라우드가 아닌 개인 또는 단체가 직접 전산 서버에 설치하여 실행하는 소프트웨어를 말합니다. 이는 주로 대형 조직의 고유 비즈니스 시스템과 기능 자동화에 관련한 특징을 제공하는데 적합합니다. 온프레미스 소프트웨어는 자유롭게 커스터마이즈가 가능하여 다른 자사의 시스템과 연계하기 쉽지만, 구축하는 데 시간이 걸리고 비용이 많이 드는 단점이 있습니다.

  • 2-2. 보안 향상

  • 네이버클라우드는 온프레미스 환경에서 생성형 AI를 활용할 수 있도록 미래에셋증권에 소형언어모델을 구축했습니다. 이는 공공과 금융 분야의 기업들이 클라우드 기반의 생성형 AI 도입을 꺼리는 보안 이슈를 해결하는 한 방법으로, 기업이 보유한 IT 인프라 내에서 구현됨으로써 보안 수준을 높이고 있습니다.

  • 2-3. 커스터마이즈 용이성

  • 온프레미스 환경에서는 사용자가 직접 소프트웨어를 설치하고 커스터마이즈할 수 있습니다. 미래에셋증권의 경우, 금융 규제 준수와 AI 활용을 통한 사업 혁신을 위해 맞춤형 LLM을 구축하였으며, 특정 업무에 특화된 모델을 구축하여 사내 AI 적용을 확대할 계획을 세웠습니다.

  • 2-4. 운영 및 유지 관리의 유연성

  • 온프레미스 시스템은 기업이 자체적으로 환경을 구축하고 관리하기 때문에 운영 및 유지 관리에서 유연성을 제공합니다. 기업이 필요로 하는 기반 구조에 따라 설계할 수 있으며, 시스템 운용 시 발생할 수 있는 문제를 신속하게 대응할 수 있는 장점을 가지고 있습니다.

  • 2-5. 온프레미스 도입의 주요 고려사항

  • 온프레미스 MLOps 도입 시 가장 중요한 고려사항 중 하나는 기업의 IT 인프라와의 적합성입니다. 또한 초기 구축 비용과 유지 관리 비용, 보안 체계 강화의 필요성, LLM 시스템 구축 시 제공되는 기술 지원이 포함되어야 합니다. 네이버클라우드는 이러한 모든 요소를 고려하여 미래에셋증권에 구축형 LLM을 제공하였습니다.

3. 오픈소스 기반 MLOps 도구의 선정

  • 3-1. Kubeflow: 특징 및 활용

  • Kubeflow는 Kubernetes 기반의 MLOps 플랫폼으로, 머신 러닝 모델의 개발, 학습 및 배포 과정 전체를 자동화하는 데 중점을 둡니다. 다양한 머신 러닝 프레임워크인 TensorFlow, PyTorch, scikit-learn 등을 지원하여 유연한 개발 환경을 제공합니다. 이 플랫폼은 데이터와 모델을 통합적으로 관리할 수 있는 기능을 제공하며, 클라우드에 최적화된 머신 러닝 파이프라인을 구축하는 데 이점이 있습니다.

  • 3-2. MLflow: 특징 및 활용

  • MLflow는 기계 학습 프로젝트의 관리 및 배포를 위한 오픈소스 플랫폼입니다. 모델의 버전 관리, 파라미터 조정, 모델 배포 및 재현성 보장을 위한 다양한 기능을 제공합니다. MLflow는 사용자가 실험을 관리하고 결과를 시각화할 수 있도록 도와주며, 프로덕션 환경으로의 손쉬운 배포를 지원하여 개발자에게 유용한 도구입니다.

  • 3-3. DVC: 데이터 버전 관리 및 활용

  • DVC(Data Version Control)는 데이터 과학 프로젝트의 버전 관리를 용이하게 하는 도구입니다. DVC는 데이터 및 모델 버전 관리를 통해 팀원 간의 협업을 개선하고 프로젝트의 재현성을 높입니다. 이 도구는 Git과 통합되어 있어 소스 코드뿐 아니라 데이터와 모델도 버전 관리할 수 있으며, 대규모 데이터 세트와의 연동이 가능합니다.

  • 3-4. 주요 기능 비교: 데이터 관리, 모델 버전 관리, 파이프라인 자동화

  • Kubeflow, MLflow, DVC는 각각 데이터 관리, 모델 버전 관리, 파이프라인 자동화에서 상이한 특징을 보입니다. Kubeflow는 전체 머신 러닝 파이프라인 자동화에 중점을 두고, MLflow는 실험 관리 및 모델 배포에 강점을 가지며, DVC는 데이터와 모델의 버전 관리를 효율적으로 지원합니다. 이들 도구의 기능 비교를 통해 상황에 맞는 최적의 선택이 가능합니다.

4. 오픈소스 AutoML 도구 분석

  • 4-1. H2O.ai 설치 및 특징

  • H2O.ai는 데이터 분석 및 머신러닝을 위한 오픈소스 플랫폼으로, 사용자가 쉽게 설치하여 사용할 수 있습니다. 이 도구는 빅데이터를 처리할 수 있는 분산형 아키텍처를 제공하며, 다양한 머신러닝 알고리즘을 지원합니다. H2O.ai는 웹 UI와 API를 통해 사용자들이 손쉽게 모델을 구축하고 배포할 수 있도록 돕습니다.

  • 4-2. AutoKeras 설치 및 특징

  • AutoKeras는 자동화된 머신러닝(AutoML) 라이브러리로, TensorFlow를 기반으로 하여 다양한 모델을 자동으로 생성합니다. 사용자는 복잡한 머신러닝 모델을 수동으로 설계할 필요 없이, 데이터셋을 입력하기만 하면 AutoKeras가 최적의 네트워크 아키텍처를 선택하여 학습을 진행합니다. 설치가 간편하며, 배포 및 예측 또한 원활하게 처리할 수 있습니다.

  • 4-3. Ludwig 설치 및 특징

  • Ludwig는 데이터 과학자와 머신러닝 엔지니어를 위한 오픈소스 딥러닝 프레임워크입니다. 사용자가 코드 작성 없이 YAML 파일로 모델을 정의할 수 있는 특징이 있어, 비전문가도 쉽게 사용할 수 있습니다. Ludwig는 다양한 데이터 유형을 지원하며, GPU 가속을 통해 성능을 극대화할 수 있습니다.

  • 4-4. Microsoft NNI 설치 및 특징

  • Microsoft NNI(Neural Network Intelligence)는 하이퍼파라미터 최적화와 신경망 아키텍처 검색을 위한 오픈소스 툴입니다. 사용자는 TensorFlow, PyTorch 등 다양한 프레임워크와 연동하여 자신의 모델을 최적화할 수 있습니다. NNI는 사용자 친화적인 웹 UI와 다양한 실험 관리 기능을 제공, 연구자와 개발자가 효율적으로 모델을 개선할 수 있도록 지원합니다.

5. AutoML 도구 비교 평가

  • 5-1. 사용자 통합 기능

  • AkaLlama 모델은 사용자와의 대화를 위해 설계된 인공지능 언어 모델로, 다양한 주제에 대한 질문에 답변할 수 있는 능력을 가지고 있습니다. 이는 사용자가 원하는 정보를 효율적으로 통합하고 제공하는데 도움이 됩니다.

  • 5-2. UI 커스터마이징 가능성

  • 에이닷의 '멀티 LLM 에이전트' 기능은 사용자가 원하는 엔진을 선택할 수 있게 하여, UI 커스터마이징의 자유도를 증가시킵니다. 이를 통해 사용자 요구에 맞춘 맞춤형 대화 환경을 제공할 수 있습니다.

  • 5-3. 지원 알고리즘의 다양성

  • 각 AutoML 도구는 다양한 알고리즘을 지원합니다. 예를 들어, 에이닷은 Perplexity, ChatGPT-3.5 turbo, ChatGPT-4o 등 7개의 모델에서 통합된 답변을 제공하며, 이는 알고리즘의 다양성을 잘 보여줍니다.

  • 5-4. 각 도구의 비교 및 최적 선택

  • 대안으로 제공되는 여러 AutoML 도구들 중 Kubeflow, MLflow, DVC와 같은 도구들은 각기 다른 특성과 장단점을 가지고 있습니다. 이러한 요소들을 충분히 분석하여 사용 상황에 맞는 최적의 선택을 하는 것이 중요합니다.

6. 온프레미스 MLOps 구축 사례

  • 6-1. 미래에셋증권의 온프레미스 MLOps 사례

  • 네이버클라우드는 자사의 AI 경량 모델인 '하이퍼클로바X 대시'를 기반으로 금융 환경에 맞춤형인 소형언어모델(sLLM)을 미래에셋증권의 온프레미스 환경에 구축하였습니다. 이 사례는 공공과 금융 분야 기업들이 보안 이슈로 인해 클라우드 기반 생성형 AI 도입을 꺼리는 상황에서 이루어진 최초의 구축형 LLM 비즈니스 사례입니다. 미래에셋증권은 금융 규제 준수와 AI 활용을 통한 사업 혁신이라는 두 가지 목표를 달성하기 위해 구축형 LLM을 선택하였으며, 업무별로 특화된 sLLM을 구축하여 사내 AI 적용을 확대할 계획을 세우고 있습니다.

  • 6-2. 네이버클라우드의 sLLM 구축 사례

  • 네이버클라우드는 미래에셋증권에 금융 특화의 sLLM 구축 작업을 2024년 9월 19일 완료하였습니다. 이 구축 작업은 공공 및 금융 분야 기업들이 온프레미스 환경에서 생성형 AI를 활용할 수 있도록 지원하기 위한 주요 파트너사와의 협력이 이루어진 결과입니다. 이로써, 네이버클라우드는 클라우드 기반의 하이퍼클로바X 서비스와 더불어 기업 인프라에 설치해 사용할 수 있는 구축형 LLM 서비스를 제공하게 되었습니다.

  • 6-3. 각 사례의 구축 과정 및 결과 분석

  • 미래에셋증권의 온프레미스 MLOps 구축 과정은 다음과 같습니다. 네이버클라우드는 HCX-DASH 모델과 함께 미래에셋증권의 데이터를 학습할 수 있는 클래스 코드와 기술 지원을 제공하였습니다. 구축 완료 후, 미래에셋증권 측은 클라우드 기반의 AI 서비스와 맞춤형 AI 서비스 생성이 가능하게 되었다고 강조하였습니다. 이로써, 고객사는 생성형 AI 사용 목적과 환경에 맞추어 원하는 형태로 AI 서비스를 선택하고 사용할 수 있는 기회를 가지게 되었습니다.

7. 결론

  • 이 리포트에서 다룬 온프레미스 환경에서의 MLOps 구축 방안은 보안성, 커스터마이즈 가능성, 운영 유연성에서 많은 장점을 가집니다. 특히 금융과 같은 규제가 엄격한 분야에서 효과적입니다. 주요 발견은 Kubeflow, MLflow, DVC와 같은 오픈소스 도구들이 상황에 맞게 선택될 때 최적의 성능을 발휘한다는 점입니다. 또한, H2O.ai, AutoKeras, Ludwig, Microsoft NNI 등의 AutoML 도구들은 사용자 통합, UI 커스터마이징, 지원 알고리즘 다양성 측면에서 각기 다른 장점을 제공합니다. 그러나 초기 구축 비용과 유지 관리 문제, 보안 체계 강화가 필요하며, 이를 보완하기 위한 추가적인 기술 지원과 협력이 요구됩니다. 미래에는 이러한 도구와 방법론들이 더욱 발전하여 온프레미스 환경에서도 안정적이고 효율적인 MLOps 구현이 가능할 것입니다. 실제 적용 사례로 네이버클라우드와 미래에셋증권의 협력은 타기업들에게 유용한 가이드를 제공할 것입니다.

8. 용어집

  • 8-1. Kubeflow [오픈소스 소프트웨어]

  • Kubernetes 위에서 머신러닝 워크플로우를 설계하고 운영할 수 있는 플랫폼으로, GUI를 통해 복잡한 머신러닝 파이프라인을 시각적으로 구성할 수 있습니다.

  • 8-2. MLflow [오픈소스 소프트웨어]

  • 머신러닝 실험의 추적, 모델 관리를 위한 오픈소스 플랫폼으로, 데이터 및 모델을 쉽게 버전 관리하고 GUI를 통해 실험 추가 및 추적이 가능합니다.

  • 8-3. DVC (Data Version Control) [오픈소스 소프트웨어]

  • 데이터 및 모델 버전 관리를 위한 도구로, Git과 통합하여 데이터를 효율적으로 관리할 수 있으며, GUI 도구인 DVC Studio와 함께 사용 가능.

  • 8-4. H2O.ai [오픈소스 소프트웨어]

  • 머신러닝 모델을 쉽게 구축하고 배포할 수 있도록 돕는 인공지능 플랫폼으로, 광범위한 알고리즘 지원과 GUI 기반의 웹 인터페이스 제공.

  • 8-5. Ludwig [오픈소스 소프트웨어]

  • Uber에서 개발한 딥러닝 도구로, YAML 형식 파일을 통해 모델을 정의하고 학습할 수 있으며, 시각적 인터페이스 제공.

  • 8-6. Microsoft NNI (Neural Network Intelligence) [오픈소스 소프트웨어]

  • MS에서 개발한 하이퍼파라미터 튜닝, 모델 최적화 및 AutoML을 위한 도구로, 사용자 친화적인 웹 UI를 통해 다양한 머신러닝 모델을 실험하고 최적화 가능.

9. 출처 문서