Featured Project · PRJ_05

RaiT 평가 시스템

AI 응답 품질을 8개 축으로 분해해 채점하는 자체 설계 RaiT 평가체계를 구현했습니다. 본 프로젝트에서 지표·루브릭·Judge 프롬프트·JSON 출력 스키마를 직접 정의했고, Mock LLM Judge로 전체 파이프라인을 검증했습니다(실서비스 대량 채점은 수행하지 않음).

// RaiT 8-axis · LLM-as-a-Judge · Rubric Design · 단독 수행

#

8개 품질 지표

RE
Relevance
질문·맥락 적합성
EX
Exactness
사실·수치 정확성
UP
Uprightness
윤리·안전 준수
ST
Style
어조·형식 일관
TR
Truthfulness
근거·진실성
AT
Attainment
요구 달성도
CO
Consistency
응답 일관성
PR
Progression
맥락 전개 흐름

# 문제 정의 Problem

사람 평가를 완전히 대체하기보다, 동일한 루브릭과 출력 구조를 적용해 반복 가능한 1차 품질평가 기준을 만드는 것을 목표로 했습니다.

# 담당 역할 My Role

개인 프로젝트로 지표 체계부터 계산 로직까지 단독 설계·구현했습니다.

지표 체계 설계
RE·EX·UP·ST·TR·AT·CO·PR 8축 정의 및 축별 판정 기준(루브릭) 수립
Judge 프롬프트 설계
src/runner/llm_judge.py — 축별 점수+근거를 JSON으로 반환하는 프롬프트
계산 엔진 구현
src/engine/calculator.py(단순/가중 평균), src/engine/filter.py(과락 판정)
정책 설계
config/policy_config.json — 도메인별(고위험 금융/일반 등) 기준점·가중치·과락 조건
대시보드 구현
app/app.py — Streamlit 기반 8축 슬라이더 실시간 판정 화면

# 솔루션 설계 Solution

지표 체계
8축 정의 및 축별 판정 기준(루브릭)
Judge 프롬프트
축별 점수 + 근거를 담는 JSON 출력 스키마
집계
축별 스코어 → 종합 품질 지표로 환산(simple/weight/cutoff/hybrid 4가지 계산 방식)

# 기술 스택 Tech

RaiT 8-axisLLM-as-a-JudgeRubric JSON SchemaPythonStreamlit

# 테스트 Test

지표·계산 로직 설계 중심 프로젝트라 별도의 pytest 자동화 스위트는 없습니다. 대신 API 키 없이도 동작하는 mock LLM Judge(use_mock=True)로 파이프라인 전체 흐름을 직접 실행 검증했고, data/test_cases.json 샘플 데이터로 4가지 계산 방식(simple/weight/cutoff/hybrid)과 도메인별 정책(default_pilot/high_risk_finance/low_risk_entertainment)이 각각 다른 PASS/FAIL 판정을 내는지 확인했습니다.

# 결과 Result

아직 실서비스에 붙여 대량 채점을 돌린 실측 스코어는 없습니다. 이 프로젝트에서 정리한 평가축과 루브릭 설계 관점을 PRJ_01의 독립 Judge 평가항목과 연결해 비교·적용했습니다.

  • PRJ_01의 독립 Judge 5개 평가항목을 RaiT 8축 중 관련 5축과 매핑해 비교
  • 회귀 감지: 배포 전후 축별 점수 비교로 품질 저하 조기 탐지 가능하도록 설계

# 증거 Evidence

아래는 실제 화면 캡처가 아니라, src/engine·config/policy_config.json 등 코드·설정 데이터로 직접 그린 다이어그램·차트(SVG)입니다.

RaiT 계산 파이프라인 다이어그램 — Judge 프롬프트의 8축 JSON 채점이 Calculator(simple·weight·cutoff·hybrid)를 거쳐 Filter의 과락 판정을 받고, 도메인별 Policy Config가 Filter에 기준을 공급해 최종 PASS/FAIL을 출력
RaiT 계산 파이프라인 — Judge 채점부터 4가지 집계 방식, 도메인 정책 기반 과락 판정까지의 흐름 (직접 작성)
도메인별 정책 설정 비교 막대그래프 — high_risk_finance(목표점수 4.0·안전성 최소기준 3.5), default_pilot(3.5·3.0), low_risk_entertainment(3.0·2.0)로 도메인마다 다른 배포 판정 기준
도메인별 정책 설정 비교 — 고위험 금융이 가장 엄격, 저위험 엔터테인먼트가 가장 관대한 기준 · config/policy_config.json 실제 값
GitHub에서 이 프로젝트 코드 보기 → QA 포트폴리오로 돌아가기