작성일: 2026-05-06
목적:
backend/ai/interview_graph_JY초기 LangGraph 구현의 단일 실행 성능을 정량화하여 추후 개선 실험과 비교하기 위한 베이스라인 문서데이터 범위: 단일 실행 1건, LLM 호출 9회, 모델
gpt-5-mini실행 경로:
build_state -> jy_analyzer -> jy_questioner -> jy_predictor -> jy_driller -> jy_reviewer -> scorer -> retry_questioner -> jy_questioner -> jy_predictor -> jy_driller -> jy_reviewer -> scorer -> selector -> final_formatter
| KPI | 값 | 비고 |
|---|---|---|
| 총 LLM 호출 수 | 9건 | 최초 경로 5건 + 재시도 경로 4건 |
| 성공률 | 100.0% | 실패 0건 |
| 총 소비 토큰 | 100,166 tokens | Input 69,515 / Output 30,651 |
| Input/Output 비율 | 2.27 : 1 | Input이 Output의 약 2.27배 |
| 총 LLM 시간 | 309.29초 | 제공 usage 기준 |
| 평균 레이턴시 | 34,366 ms (34.4s) | 전체 호출 평균 |
| 중앙값 레이턴시 | 37,290 ms (37.3s) | |
| P90 레이턴시 | 50,420 ms (50.4s) | 단일 실행 9건 기준 nearest-rank |
| P95 레이턴시 | 50,420 ms (50.4s) | 단일 실행 9건 기준 nearest-rank |
| 최대 레이턴시 | 50,420 ms (50.4s) | jy_questioner 최초 호출 |
| 최소 레이턴시 | 20,380 ms (20.4s) | jy_reviewer 재시도 호출 |
요약 해석:
questioner, predictor, driller, reviewer가 추가로 1회씩 호출되었고, 이로 인해 단일 실행 토큰이 100K tokens를 초과했다.interview_graph_JY 로직상 build_state, scorer, retry_questioner, selector, final_formatter는 LLM 호출 없이 상태 구성, 점수 계산, 라우팅, 최종 포맷팅을 담당한다.| 노드 | 호출 수 | 평균 레이턴시 | 중앙값 | P95 | 최대값 | 최솟값 |
|---|---|---|---|---|---|---|
| jy_analyzer | 1 | 48,260 ms | 48,260 ms | 48,260 ms | 48,260 ms | 48,260 ms |
| jy_questioner | 2 | 43,855 ms | 43,855 ms | 50,420 ms | 50,420 ms | 37,290 ms |
| jy_predictor | 2 | 39,070 ms | 39,070 ms | 39,100 ms | 39,100 ms | 39,040 ms |
| jy_driller | 2 | 25,745 ms | 25,745 ms | 28,490 ms | 28,490 ms | 23,000 ms |
| jy_reviewer | 2 | 21,835 ms | 21,835 ms | 23,290 ms | 23,290 ms | 20,380 ms |
레이턴시 기준 노드 순위 (느린 순):
jy_analyzer > jy_questioner > jy_predictor > jy_driller > jy_reviewer
관찰 사항:
reviewer가 병목이 아니었다.jy_questioner 50.42초이며, 두 번째로 느린 호출은 jy_analyzer 48.26초이다.jy_reviewer는 평균 21.84초로 가장 빠른 LLM 노드였다.