전체 그래프
MLOps

LLMOps

ai-mlmlopsmoc

상위: AI & ML

vs. MLOps

LLMOps는 전통적인 MLOps의 원칙을 계승하지만, LLM의 고유한 특성으로 인해 몇 가지 중요한 차이점을 가짐.

  • MLOps (Machine Learning Operations): 주로 정형 데이터를 다루며, 모델의 예측 정확도를 중심으로 평가가 이루어짐. 핵심 과제는 모델을 효율적으로 **학습(Training)**하고 버전을 관리.
  • LLMOps (Large Language Model Operations): 비정형 텍스트를 다루며, 출력의 **비결정성(non-deterministic)**이 특징. 단순 정확도 외에 품질, 안전성, 일관성 등 정성적 평가가 중요. 모델 학습 외 프롬프트 엔지니어링, Model Drift, RAG 파이프라인 관리 등이 핵심 과제로 추가.

1. LLM 테스트의 종류

1.1. 기능 테스트 (Functional Testing)

요약, 코드 생성, Q&A 등 핵심 기능의 성능 평가. 정답이 정해지지 않은 경우가 많아 일관성, 정확성, 관련성 등 정성적 품질 기준 충족 여부 검증이 중요.

1.2. 성능 테스트 (Performance Testing)

모델의 효율성과 확장성 측정. 사용자 경험과 운영 비용에 직접적 영향.

  • 지연 시간 (Latency): 첫 토큰 생성까지 걸리는 시간(Time to First Token, TTFT)은 사용자의 반응성 체감에 핵심 지표.
  • 처리량 (Throughput): 초당 생성 토큰 수(Tokens per Second)는 모델의 생성 속도 및 동시 처리 용량을 의미.
  • 비용 (Cost): API 호출 당 비용 또는 인프라 비용을 측정하여 재무적 실행 가능성 평가.

1.3. 회귀 테스트 (Regression Testing)

코드, 프롬프트, 모델 업데이트 후 기존 기능의 의도치 않은 성능 저하 여부 확인. 자동화를 위해 골든 데이터셋(Golden Dataset) 필수.

1.4. Responsible AI (책임감 있는 AI) 테스트

AI 특유의 테스트 영역. 모델의 윤리적, 법적 리스크 예방을 위해 편향, 유해성, 공정성 등을 검증.

  • 편향 (Bias): 특정 집단에 대한 고정관념을 담은 출력 생성 여부 테스트.
  • 유해성 (Toxicity): 혐오 발언 등 유해 콘텐츠 생성 여부 확인.
  • 공정성 (Fairness): 특정 그룹에 차별적인 결과를 내놓지 않는지 평가.
  • 안전 가드레일 (Safety Guardrails): 법률, 의료 등 민감 분야에 대한 미검증 조언을 차단하는 안전 장치의 정상 작동 여부 검증.

2. LLM 평가 기법 및 지표 (Metrics)

2.1. LLM-as-a-Judge (평가자로서의 LLM)

LLM 출력의 정성적 품질을 다른 고성능 LLM을 이용해 평가하는 기법.

  • 작동 방식: 심판 LLM에게 **[입력(Prompt), 모델 출력, 참조 답변(선택), 평가 기준]**을 제공하고, **점수(Score)**와 **판단 근거(Rationale)**를 산출.
  • 고급 기법 (G-Eval): 평가 과정을 **구체적 단계(사실 나열 → 검증 → 점수 산출)**로 분해하여 일관성과 신뢰도 향상.
  • 고려사항: 심판 LLM의 편향성(위치 편향 등)과 API 비용 고려. 점수와 판단 근거(Rationale)를 함께 검토하는 것이 중요.

2.2. 주요 평가 지표 (Metrics)

카테고리지표명 (Metric)질문 (Question)대표 도구/구현
RAG - 검색 품질Contextual Recall"답변에 필요한 모든 정보를 검색했는가?"RAGAS, DeepEval
Contextual Precision"검색된 정보가 모두 질문과 관련 있는가?"RAGAS, DeepEval
RAG - 생성 품질Faithfulness"답변이 제공된 컨텍스트에만 기반하는가? (할루시네이션은 없는가?)"RAGAS, DeepEval
Answer Relevancy"답변이 사용자의 질문에 직접적으로 답하는가?"RAGAS, DeepEval
일반 품질Coherence"답변의 논리적 흐름이 자연스러운가?"G-Eval, DeepEval
Hallucination"답변에 사실이 아닌 내용이 포함되어 있는가?"DeepEval
안전 및 책임Bias / Toxicity"답변이 편견을 담고 있거나 유해하지 않은가?"DeepEval, LangTest
PII Leakage"답변에 개인 식별 정보가 포함되어 있는가?"Custom Regex, LangTest
성능Latency / TTFT"사용자가 답변을 받기까지 얼마나 기다려야 하는가?"k6, Locust
Throughput (Tokens/s)"시스템이 얼마나 빠르게 답변을 생성하는가?"LLM Locust, GenAI-Perf

3. 평가 시점 및 데이터 전략

3.1. 드리프트(Drift) 유형별 테스트 전략

  • Data Drift: 입력 데이터의 분포가 변하는 현상.
    • 전략: 새로운 데이터 유형으로 구성된 **테스트 슬라이스(Test Slice)**를 이용, 현재 모델의 취약점 집중 평가.
  • Concept Drift: 문제와 정답 사이의 관계 자체가 변하는 현상. (ex. 새로운 기능 추가)
    • 전략: 평가 지표(Metric) 자체를 수정/추가하고, 새로운 개념을 검증하는 테스트 케이스 재구축.
  • Model Drift: 사용 중인 외부 LLM API가 업데이트되는 현상.
    • 전략: 사전에 구축된 골든 데이터셋으로 변경된 모델의 성능을 먼저 검증하고, 안전성 확인 후 프로덕션에 도입.

3.2. 테스트 데이터셋 구축 전략

  • Golden Dataset Strategy (골든 데이터셋)
    • 정의: 전문가가 직접 검증한 소수의 고품질 입/출력 쌍 모음. 시스템의 핵심 기능을 대표.
    • 역할: CI/CD 파이프라인에서 품질 게이트(Quality Gate) 역할을 수행하여 성능 저하를 자동으로 차단.
    • 관리: **살아있는 실체(Living Entity)**로 관리. 프로덕션에서 발견된 중요 실패 사례나 새로운 엣지 케이스를 지속 추가하고 DVC 등으로 버전 관리 필수.
  • Synthetic Data Generation (합성 데이터 생성)
    • 정의: LLM을 활용하여 테스트 데이터를 대규모로 자동 생성하는 기법.
    • 역할: 테스트의 을 넓혀 모델의 강건성을 검증하고 테스트 커버리지 확대.
  • Data Slicing (데이터 슬라이싱)
    • 정의: 전체 테스트셋을 비즈니스적으로 중요한 하위 집합으로 나누어 개별 성능 평가.
    • 역할: 단일 종합 점수 뒤에 가려진 모델의 특정 약점 발견 및 구체적인 개선 방향 도출.
  • Automated Red Teaming (자동화된 레드팀 테스트)
    • 정의: LLM을 해커 역할로 지정하여 시스템의 보안 및 안전 취약점을 찾는 적대적 입력을 대규모로 생성 및 테스트.
    • 역할: Responsible AI 테스트의 핵심. 예측 불가능한 공격에 대한 시스템의 방어 능력 검증.

4. LLM 테스트를 위한 도구 (Toolkits)

구분목적대표 도구특징
Evaluation Framework맞춤형 평가 파이프라인 구축 (코드 기반)DeepEval"LLM을 위한 Pytest" 컨셉, CI/CD 통합 용이, 최신 지표 내장
(오픈소스)LangTestResponsible AI 테스트에 특화, 100+개 이상의 사전 정의 테스트 제공
Platform Solution개발-배포-모니터링 통합 환경 제공Azure Prompt Flow시각적 그래프 기반 워크플로우 설계, Azure 생태계 최적화
(상용/클라우드)AWS BedrockLLM-as-a-Judge를 관리형 서비스로 제공, 간편한 모델 벤치마킹
Performance & Load Testing대규모 요청 처리 안정성 검증Locust / k6Python/JS 기반 스크립팅, 분산 테스트로 동시 사용자 시뮬레이션

핵심 요약

LLM 애플리케이션의 품질 관리를 위한 6단계 로드맵. 본 가이드는 각 단계 수행에 필요한 상세 지식과 도구를 설명.

  1. 1단계: 골든 데이터셋(Golden Dataset) 구축
    • Action: 핵심 사용자 시나리오 10~20개 선정, 전문가가 검수한 입/출력 쌍 생성.
    • 역할: 품질 관리의 첫 안전망. 기본 회귀 테스트의 기반. CI 파이프라인에 통합 및 자동화.
  2. 2단계: 기본적인 LLM-as-a-Judge 도입
    • Action: DeepEval 등 오픈소스를 활용, 골든 데이터셋의 참조 답변과 모델 출력을 비교하여 의미적 일치도 평가.
    • 역할: 수동 평가 부담 감소. 개발 초기 단계에서 빠른 피드백 루프 확보.
  3. 3단계: 합성 데이터(Synthetic Data)로 커버리지 확장
    • Action: LLM을 사용하여 기존 질문을 다양하게 변형한 합성 데이터 생성.
    • 역할: 다양한 표현에 대한 모델의 강건성(Robustness) 테스트 및 테스트 커버리지 확대.
  4. 4단계: 책임 테스트(Responsible AI) 계층화
    • Action: LangTest 등 도구를 활용, 편향성, 유해성, 개인정보보호 등 안전 관련 항목 자동 검사.
    • 역할: 브랜드 이미지와 직결되는 윤리적, 법적 리스크 사전 예방.
  5. 5단계: 성능 및 부하 테스트 통합
    • Action: k6, Locust 등 도구를 사용하여 API 지연 시간(Latency) 및 처리량(Throughput) 벤치마킹.
    • 역할: 운영 환경의 잠재적 성능 문제 사전 파악 및 안정적인 사용자 경험 보장.
  6. 6단계: 피드백 루프 완성
    • Action: 프로덕션 사용자 피드백 및 모니터링 데이터 분석. 발견된 실패 사례나 중요 엣지 케이스를 골든 데이터셋에 지속 업데이트.
    • 역할: 테스트 체계가 스스로 학습하고 발전하는 자가 개선 시스템 구현.

관련 노트