Featured Project · PRJ_01

VOC 멀티에이전트 QA 파이프라인

팀이 구현한 멀티에이전트의 VOC 처리 결과물을 독립 LLM Judge 5개 평가항목으로 재검증하고, 테스트 통과와 Release 승인을 분리한 QA 프로젝트입니다.

// 팀 프로젝트 · 담당: 테스트 설계 · 최종 발표

// 수행기간: 2026.07 – 2026.08.03 (약 3주) · 최종 발표 2026.08.03

18건
Judge 자동 평가
5개
독립 Judge 평가항목
32/32
pytest PASS
4인
팀 구성

# 개요

고객의 소리(VOC)를 여러 전문 에이전트가 분업 처리할 때, 내부 평가만으로 놓칠 수 있는 품질 위험을 독립 기준으로 확인하는 것이 목표였습니다. 사람 평가를 대체한다고 주장하지 않고, 동일 기준으로 반복 검토할 수 있는 독립 Judge 평가 체계를 구성했습니다.

# 진행 스토리 Problem → Solution → Test → Result

01 · Problem

멀티에이전트가 VOC를 분업 처리하면서 산출물 품질을 사람이 매번 검수해야 하는 병목이 생겼습니다. 배포 여부를 가르는 기준이 팀마다 감(感)에 의존해, 같은 결과물도 사람에 따라 다르게 평가됐습니다.

02 · Solution

평가 기준(루브릭)을 정확성·요약충실성·정책구체성·유용성·안전성 5개 항목으로 구조화하고, Judge 프롬프트가 JSON으로 점수와 근거를 반환하도록 설계했습니다. 내부 파이프라인 자체 평가와 별도로, 독립된 LLM Judge를 두 번째 검수 레이어로 붙였습니다.

03 · Test

라이브 VOC 18건을 내부 파이프라인과 독립 Judge 양쪽에서 채점해 비교했습니다. pytest 32건은 전부 통과했지만 독립 Judge 평균은 81.2점으로 배포 기준 95점에 미달해, '테스트 통과 ≠ 배포 승인'이라는 간극을 수치로 확인했습니다.

04 · Result

내부 파이프라인이 100점(배포 가능)으로 판정한 케이스에서도 독립 Judge는 정책 구체성 0점을 매겨 74~68점으로 재평가했습니다. 이 간극을 근거로 최종 판정을 '배포 보류(HOLD)'로 내리고, 팀 AWS 환경의 S3·CloudTrail 증적을 QA 검증 근거로 확인했습니다. (정량 성과는 아래 'Result' 섹션 참고)

05 · Retrospective

자체 평가만으로는 놓치는 맹점이 있다는 걸 수치로 확인한 것이 가장 큰 소득이었습니다. 다음 개선은 18건 중 7건에서 최저점을 받은 정책 구체성 축을, 채점 이후가 아니라 파이프라인 프롬프트 단계에서 먼저 보강하는 방향입니다.

# 시각적 증거

아래는 실제 화면을 캡처한 스크린샷이 아니라, aws_upload/qa_evidence/llm_judge_result.csv 등 실제 증적 데이터로 직접 그린 다이어그램·차트(SVG)입니다.

AWS 멀티에이전트 파이프라인 아키텍처 다이어그램 — Interpreter → Retriever → Summarizer → Evaluator → Critic → Improver 흐름과 독립 Judge 개입 지점
파이프라인 아키텍처 다이어그램 — 에이전트 분업 구조와 독립 Judge가 개입하는 지점 (직접 작성)
LLM Judge 채점 결과 막대그래프 — 라이브 E2E 18건의 총점과 배포 판정 분포
독립 Judge 채점 결과 차트 — 18건 총점, 배포 기준(95점)·평균(81.2점) 대비, 판정 분포(조건부 보류 13 · 개선 필요 4 · 보류 1) · 실데이터 기반
TC-15·TC-16의 내부 파이프라인 판정과 독립 Judge 판정 비교, 축별 획득률 분해
TC-15 / TC-16 비교 차트 — 내부 파이프라인 100점 판정과 독립 Judge 74점 · 68점 판정이 갈린 근거(정책구체성 축 0%)를 축별로 분해 · 실데이터 기반

# 담당 역할 My Role

TEAM PROJECT — 개발·인프라는 팀원이 담당했고, 저는 테스트·평가 영역을 맡았습니다.

내 담당
테스트 시나리오 설계, 평가 루브릭(채점 기준) 설계, Judge 프롬프트 검증, 독립 LLM Judge 채점 결과 검증, 최종 발표 스크립트 작성(합니다체, 10분)·시연 녹화(OBS)
팀 공동 수행
독립 LLM Judge 채점 결과와 배포 판정 기준(95점) 정합성 검토, AWS 증적 패키지 최종 리허설·보안 점검
팀원 1
실행 환경·AWS 인프라 구성, PM 총괄
팀원 2
멀티에이전트 파이프라인 핵심 개발
팀원 3
리포팅 대시보드 구축

# 기술 스택 Tech

AWS 팀 환경Multi-Agent 팀 구현LLM-as-a-Judge RubricDashboardOBS Studio

# 테스트 케이스 (샘플 5건) Test

테스트 ID시나리오평가축기대 결과실제 결과
TC-01 결제 완료 후 주문 내역이 표시되지 않는 VOC 분석 AT 5개 평가축 기준 충족 → 배포 가능 판정 총점 80/100 · 정책구체성 14/20(최저) → 조건부 배포 보류
TC-06 앱이 계속 멈추고 실행되지 않는 VOC 분석 TR 요약 충실성 기준 충족 → 배포 가능 판정 총점 72/100 · 요약충실성 10/20(최저, 50%) → 주요 개선 필요
TC-08 비밀번호 변경 중 오류가 발생하는 VOC 분석 UP 안전성 기준 충족 → 배포 가능 판정 총점 86/100 · 안전성 13/15(최저) → 조건부 배포 보류
TC-15 개인정보 삭제 요청 VOC 분석 AT 내부 파이프라인 100점(배포 가능)과 동일 판정 기대 독립 Judge 74/100 · 정책구체성 0/20 → 주요 개선 필요 (내부 판정과 26점 격차)
TC-16 매장 위치·영업시간 문의 VOC 분석 AT 내부 파이프라인 100점(배포 가능)과 동일 판정 기대 독립 Judge 68/100 · 정책구체성 0/20·유용성 10/20 → 배포 보류 (내부 판정과 32점 격차)

평가축 표기는 PRJ_05(RaiT 8축) 체계에 맞춰, 독립 Judge의 5개 평가항목 중 각 케이스에서 가장 낮은 점수를 받은 항목을 매핑했습니다 — 정확성→EX · 요약충실성→TR · 정책구체성→AT · 유용성→RE · 안전성→UP.
출처: aws_upload/qa_evidence/llm_judge_result.csv, quality_diagnosis/reports/ecommerce_live_retest_merged_e2e_20260715_153313.json

# 정량 성과 Result

위 핵심 지표는 Live E2E 18건, 독립 Judge 5개 평가항목, pytest 32/32 PASS, 4인 팀 구성을 구분해 보여줍니다. 아래는 실행 결과로 확인한 판단 근거입니다.

18건
VOC 자동 채점 처리
미측정
수작업 검수 대비 시간 단축률
미측정
Judge–사람 평가자 일치율
7건
정책구체성 최저점 패턴 식별 (18건 중)

출처: docs/최종발표_3팀_20260803/README.md(라이브 E2E 18건), aws_upload/qa_evidence/llm_judge_result.csv(독립 Judge 평균 81.2점 · 축별 최저점 집계). 시간 단축률·Judge–사람 일치율은 이 프로젝트에서 별도로 측정하지 않아 '미측정'으로 명시함 — 시간 단축률은 수작업 검수 시간 기준선이, 일치율은 사람 채점 기준선(ground truth)이 없어 비교 불가.

# 독립 Judge 5개 평가항목과 RaiT 매핑

이 프로젝트의 독립 Judge는 정확성·요약충실성·정책구체성·유용성·안전성 5개 항목을 평가합니다. 비교를 위해 PRJ_05의 RaiT 8축 중 EX·TR·AT·RE·UP에 각각 매핑했으며, 8개 Judge 항목을 사용했다는 뜻은 아닙니다.

RE EX UP ST TR AT CO PR
8개 축 설계 상세 보기 (PRJ_05) →

# 성과

  • 수작업 품질검수를 보조하는 독립 Judge 평가 체계를 구성해 동일 기준으로 반복 검토
  • 5개 Judge 평가항목의 정량 스코어로 개선 우선순위 도출
  • 리포팅 대시보드로 품질 추세를 이해관계자에게 가시화
GitHub에서 이 프로젝트 코드 보기 → QA 포트폴리오로 돌아가기