RAG2026-5일33차시 · Modular RAG 최적화6 / 19← 이전목차다음 →MetaContents

33차시. Modular RAG 최적화

3. 최적화 ① — 모델 티어링

출처: 원본 PDF 33차시_ModularRAG최적화.pdf 7~8쪽 · 쪽 그림 7쪽 8쪽

모든 작업에 같은 모델을 쓸 필요가 없습니다. 난이도에 맞게 나눕니다.

3-1) 작업별 난이도

작업난이도필요한 능력
분류낮음4개 중 하나 고르기. 작은 모델로 충분
검증중간대조와 판정. 중간 모델 가능
재작성중간표현 변환. 중간 모델 가능
생성높음자연스러운 문장 작성. 좋은 모델 필요

📝 config.py 수정

Python
# ── 모델 티어링 ──
LLM_MODEL       = "gpt-4o-mini"    # 생성 — 품질 우선
VERIFY_MODEL    = "gpt-4o-mini"    # 검증 — 필요시 더 작은 것으로
CLASSIFY_MODEL  = "gpt-4o-mini"    # 분류 — 가장 작은 것으로
REWRITE_MODEL   = "gpt-4o-mini"    # 재작성

# 각 노드에서
_llm = ChatOpenAI(model=config.CLASSIFY_MODEL,
                  temperature=0, max_tokens=10,
                  timeout=config.CLASSIFY_TIMEOUT)

💡 max_tokens 제한도 중요합니다
분류는 단어 하나만 나오면 됩니다.
max_tokens=10
이걸 안 걸면 모델이 설명을 덧붙이려다
불필요한 토큰을 씁니다.
· 분류 → 10
· 재작성 → 60
· 검증 → 150 (JSON + reason)
· 생성 → 500 이상

3-2) 티어링 효과 측정

출처: 원본 PDF 8쪽

출력
■ 변경 전 (전부 같은 모델, max_tokens 무제한)
합계    160회   120.2s

■ 변경 후 (티어링 + max_tokens 제한)
합계    160회    94.7s      ← 21% 단축
← 이전 절33차시 · 2. 프로파일링 결과 읽기다음 절 →33차시 · 4. 최적화 ② — 검증 호출 줄이기