LLM Judge

LLM Judge는 하나의 대형 모델을 심판으로 세워 다른 모델의 출력 품질을 평가하는 방식이다. 평가 기준을 프롬프트로 넘겨 주면 모델이 그 기준에 따라 점수를 매긴다. 정확한가, 빠진 내용은 없는가, 요구사항을 지켰는가 같은 항목을 판정한다.

장점

  • 확장성
    • 사람이 직접 채점하면 비용도 크고 시간도 오래 걸린다. 모델을 심판으로 쓰면 비용을 크게 낮추면서 처리량을 늘릴 수 있다.
  • 일관성
    • 사람의 판단은 컨디션이나 주관에 흔들리지만, 모델은 같은 기준을 반복적으로 동일하게 적용한다.
  • 저비용
    • 다수의 평가 인력을 두는 것보다 모델을 심판으로 쓰는 쪽이 훨씬 저렴하다.
  • 설명 가능성
    • 대부분의 모델은 점수와 함께 판단 근거를 제시할 수 있어, 왜 그 점수가 나왔는지 추적할 수 있다.

편향

  • 위치 편향(Position Bias)

    • 앞쪽에 놓인 답변이 더 좋다고 판정되는 경향이 있다.
    • 해결: 채점할 때 답변 순서를 무작위로 섞고, 여러 번 평가해 평균을 낸다. 회차별 결과 편차가 크면 사람이 다시 확인한다.
  • 길이 편향(Length Bias)

    • 답변이 길수록 더 충실하다고 판정되는 경향이 있다.
    • 해결: 평가 프롬프트에 채점 기준을 명시한다.
    # 채점 기준 설명
    
    답변의 품질은 길이와 무관하다
    
    채점 원칙
    간결하고 정확한 답변 -> 높은 점수
    장황하고 늘어지는 답변 -> 낮은 점수
  • 자기 선호(Self-preference Bias)

    • 모델은 자신이 생성한 것과 비슷한 문체의 답변을 더 높게 평가하는 경향이 있다.
    • 해결: 서로 다른 모델로 교차 평가한다.
  • 문체 편향(Style Bias)

    • 특정 표현 방식을 선호하는 경향이다. 예를 들어 항목을 나눠 구조화한 답변이 자연스러운 산문형 답변보다 높은 점수를 받는다.
    • 해결: 채점 기준에 무엇을 볼 것인지 명확히 적는다.
      • 평가 기준 명시
        • 내용의 정확성에 집중할 것
        • 완결성이 핵심 채점 차원임을 명시할 것
        • 표현 형식은 점수에 반영하지 않을 것
      • 기준 예시 제공
        • 서로 다른 문체로 작성된 고품질 답변을 함께 보여 준다
        • 모델이 품질과 형식은 별개임을 이해하도록 돕는다
  • 지식 경계(Knowledge Boundary)

    • 모델은 자기 지식 범위를 벗어난 답변을 정확히 평가하지 못한다. 문제는 그런 경우에도 확신에 찬 어조로 점수를 내놓기 때문에 오히려 판단을 오도한다는 점이다.
    • 해결: 도메인 지식을 주입한다. 프롬프트에 관련 배경 자료를 함께 넣거나, 해당 도메인으로 파인튜닝된 모델로 평가한다. 그마저 어려우면 사람이 직접 평가하는 수밖에 없다.