29차시. Conditional Edge 실습
8. 개선 효과 측정
출처: 원본 PDF 29차시_ConditionalEdge실습.pdf 17~18쪽 · 쪽 그림 17쪽 18쪽
라우팅 도입 전후를 실제 질문 분포로 비교합니다.
📝 혼합 질문 세트로 측정
MIXED = (
["안녕하세요", "감사합니다", "수고하세요"] + # 인사 3
["오늘 날씨는?", "주가 알려줘"] + # 범위 밖 2
[t["q"] for t in TESTS_20][:15] # 문서 15
)
import time
LLM_KEYWORDS = ("생성", "검증(LLM)", "분류(LLM)")
def measure(mod, name):
t0 = time.time()
calls = 0
for q in MIXED:
r = mod.ask(q)
# 로그 한 줄이라도 LLM 관련 키워드가 있으면 호출로 센다
for l in r["log"]:
for k in LLM_KEYWORDS:
if k in l:
calls += 1
break
print(f"[{name}] 총 {time.time()-t0:.1f}초 | "
f"LLM 호출 {calls}회 | 질문 {len(MIXED)}개")
measure(graph_v27, "27차시")
measure(graph, "29차시")
실행 결과 예시
─────────────────────────────────────────────
─────
[27차시] 총 78.4초 | LLM 호출 46회 | 질문 20개
[29차시] 총 61.2초 | LLM 호출 33회 | 질문 20개| 지표 | 27차시 | 29차시 | 개선 |
|---|---|---|---|
| 총 소요 시간 | 78.4초 | 61.2초 | -22% |
| LLM 호출 | 46회 | 33회 | -28% |
| 인사 응답 시간 | 3.8초 | 0.01초 | -99% |
| 문서 질의 정확도 | 95% | 95% | 동일 |
💡 문서 질의 정확도는 그대로여야 정상입니다
라우팅은 RAG 경로를 개선한 것이 아니라
RAG가 필요 없는 질문을 걸러낸 것입니다.
문서 질의 정확도가 떨어졌다면
분류가 문서 질문을 다른 유형으로 잘못 보낸 것입니다.
→ 오분류 검사가 필요합니다.