THE NUMBERS
결과를 먼저 보면 이렇다.
25개 문항으로 검색, 생성, 거절, 의역, 요약을 함께 시험했다. 모델은 Q4_K_M 양자화 상태로 M3 통합 GPU에 100% 오프로드했고, 실제 프로덕션과 동일한 RAG 파이프라인에서 측정했다. 이번 측정은 Claude Code 를 이용해서 테스트를 한 결과입니다.
01 / QUALITY
검색은 정확했고, 대부분의 답변은 근거를 지켰다.
정답 문서가 있어야 하는 20문항에서 올바른 도메인 문서는 모두 top-4 안에 들어왔다. 특히 원문과 표현이 거의 겹치지 않는 의역 질문도 3/3으로 통과했다. “회사를 그만두려면 언제까지 알려야 하나요?”처럼 규정 원문과 다른 어휘로 묻는 경우에도 의미 검색이 잘 작동했다는 뜻이다.
핵심 품질 지표
THE IMPORTANT CAVEAT
가장 큰 문제는 일관성이었다.
검색은 정답 청크를 1순위로 가져왔는데도, 모델은 일부 질문에서 “제공된 자료에서 확인되지 않습니다”라는 안전한 거절 문구를 선택했다. 같은 질문과 같은 컨텍스트를 다섯 번 반복했을 때, 문항별 정답률은 40%까지 떨어졌다.
02 / PERFORMANCE
대화형 경험으로는 충분히 빠르다.
검색과 생성을 모두 합친 중앙 응답 시간은 2,283ms였다. 첫 로딩만 감수하면 이후에는 한국어 답변 하나가 약 1.2~1.3초 안에 생성된다. 모델을 작게 가져가면서도 대화 흐름이 끊기지 않는 수준이다.
컨텍스트를 약 4배(156→607 토큰) 늘려도 디코딩 속도는 52.2 tok/s에서 49.6 tok/s로 약 5%만 낮아졌다. 테스트 범위에서는 문서 근거를 더 붙이는 일이 응답성을 크게 해치지 않았다. 다만 현재 활성 컨텍스트가 4,096으로 제한돼 있어, 향후 top-k를 키운다면 여유를 먼저 확보해야 한다.
03 / NEXT MOVES
다음 단계는 모델 교체보다 작은 제어 장치다.
현재 관측된 문제는 대형 모델로 단번에 바꾸기보다, RAG의 목적에 맞게 생성 규칙을 좁히는 편이 훨씬 실용적이다.
- 01
생성 온도를 0.1~0.2로 낮춘다
근거 기반 질의응답은 창의성이 필요 없다. 낮은 온도로 “안전한 거절 문구”의 과다 선택을 줄이는 것이 최우선이다.
- 02
높은 검색 점수의 거절은 1회 재시도한다
충분한 근거가 검색됐는데도 거절하면 한 번 더 확인해, 관측된 40~60% 오류를 실사용에서 크게 낮출 수 있다.
- 03
num_ctx 여유를 확보한다
문서량과 top-k가 커지기 전에 컨텍스트 창을 모델 지원 한도에 맞춰 명시적으로 확장한다.
- 04
요약 프롬프트를 더 엄격하게 만든다
문서 밖 지식을 보태지 말고 원문의 문장을 최대한 활용하도록 지시해 자유형 요약의 일반 지식 혼입을 줄인다.
재현 가능한 벤치마크
평가 하네스, 7개 도메인 샘플 코퍼스, 25개 질문셋과 결과는 GitHub에서 확인할 수 있습니다.
github.com/charlychoi/kanana2-benchmark ↗
댓글
댓글 쓰기