전체 그래프
MLOps

LLMOps Core Elements

  1. 프롬프트 엔지니어링 및 데이터 관리
    • 프롬프트 체인/워크플로우 관리: 좋은 답변을 유도하는 프롬프트를 설계하고, 여러 프롬프트를 연결(Chaining)하며, 이를 버전별로 관리 (LangChain, LlamaIndex)
    • 데이터 관리 및 전처리: 모델을 파인튜닝하거나 RAG(검색 증강 생성)에 사용할 데이터를 준비하고, 벡터로 변환하여 저장 (Vector DBs like Chroma, Pinecone)
    • 실험 추적: 어떤 프롬프트와 데이터 조합이 가장 좋은 성능을 내는지 모든 실험 과정을 기록하고 비교 (MLflow, W&B)
  2. CI / CD / CT 자동화 파이프라인
    • CI (Continuous Integration, 지속적 통합): 개발자가 프롬프트나 관련 코드를 수정하면, 자동으로 테스트가 실행되어 전체 시스템에 문제가 없는지 확인
    • CT (Continuous Training, 지속적 학습): 새로운 데이터가 들어오거나, 배포된 모델의 성능이 떨어지는 것을 감지하면 자동으로 모델을 재학습하거나 파인튜닝
    • CD (Continuous Deployment, 지속적 배포): 테스트와 학습을 통과한 새로운 버전의 모델을 자동으로 실제 서비스에 배포
  3. 모델 배포 및 서빙
    • 최적화된 추론: 거대한 LLM 모델이 최대한 빠르고 효율적으로 답변을 생성하도록 최적화 (vLLM, TensorRT-LLM)
    • API 서빙: 다른 서비스들이 LLM 기능을 쉽게 호출할 수 있도록 안정적인 API 형태로 제공 (BentoML, FastAPI)
    • 확장성 (Scalability): 사용자가 갑자기 몰려도 서비스가 다운되지 않도록 시스템을 유연하게 확장할 수 있어야 함 (Kubernetes, Serverless)
  4. 운영 및 모니터링
    • 성능 모니터링: 모델의 응답 속도, 정확도, 비용 등을 실시간으로 추적
    • 데이터/개념 드리프트 탐지: 사용자의 질문 패턴이 바뀌거나(Data Drift), 모델이 잘못된 답변을 하기 시작하는(Concept Drift) 현상을 감지
    • LLM 관찰 가능성 (Observability): 사용자가 어떤 질문을 했고, 모델이 어떤 과정을 거쳐 답변을 생성했으며, 그 결과가 어땠는지 전체 과정을 추적하여 문제의 원인을 빠르게 파악 (LangSmith, Arize AI)