sgkstudio.
엔지니어링

LLM as a judge 평균이 노이즈 폭만큼 오른 날, 결정론 지표로 다시 잰 기록

LLM as a judge로 잰 평균 점수가 1.93점에서 2.13점으로 올랐지만, 같은 조건 재실행이 0.07점 흔들리고 채점 노이즈가 0.2점이라 이 상승은 개선이라 부를 수 없었다. 대신 채점 AI와 독립된 결정론 지표로 다시 재자 정답 요소 재현율이 6.1%에서 14.3%로 올라 있었다.

2026-10-042026년 8월 28일 지식 질문 15건 평가 — 채점 AI 평균 1.93 → 2.13, 같은 조건 재실행 흔들림 0.07, 채점 노이즈 0.2, 4점은 15건 중 1건같은 날 결정론 지표 재측정 — 정답 요소 재현율 6.1% → 14.3%, 초안 평균 길이 61자 → 218자, 정답 250자 이상 7건 69자 → 330자직전 회차 과거 답변 검색(BM25) 단독 — 1.93 → 2.00, 개선 1건·하락 0건·동일 14건스타일 평가 6건 회귀 검사 — 평균 3.83 유지, 케이스별 점수 동일

LLM as a judge 점수가 올랐는데 왜 개선이라고 쓰지 않았나

LLM as a judge로 잰 평균 점수가 1.93점에서 2.13점으로 올랐지만, 우리는 이 결과를 개선으로 기록하지 않았다. 같은 조건으로 다시 돌리면 점수가 0.07점씩 흔들리고 채점 AI 자체의 노이즈가 0.2점이라, 오른 폭이 노이즈 폭과 같았기 때문이다. 숫자만 보면 올랐고, 판정으로 보면 아무 말도 할 수 없는 상태였다.

실험의 구조는 이렇다. 대표가 슬랙에서 받는 질문 가운데 자료를 읽어야 답할 수 있는 지식 질문 15건을 골라 고정했다. AI가 각 질문에 답장 초안을 쓰면, 채점 AI가 대표의 실제 답변과 비교해 점수를 매기고, 15건 평균을 보고한다. 초안이 얕은 이유가 자료를 못 봐서라고 보고, 자료를 공급하는 정보 층을 하나씩 늘려 가며 같은 15건으로 다시 쟀다.

이번 회차에서 붙인 층은 넷이다. 이 층들을 붙이려고 수집·색인·주입·측정 스크립트 5종을 새로 썼고, 기존 검색과 평가 스크립트도 확장했다. 들인 품이 컸던 만큼 「점수가 올랐으니 효과가 있다」고 읽고 싶은 유혹도 컸다. 이 글은 그 유혹을 어떻게 피했는지, 그리고 피하고 나서 무엇이 보였는지에 관한 기록이다.

  • 받은 메시지까지 포함한 슬랙 전량 색인
  • 사내 위키(Confluence) 문서 본문
  • 질문에 딸린 첨부 파일 본문
  • 법령 조문

코딩 얘기만은 아니다. AI 상담봇이나 문서 자동 작성을 도입한 회사라면 품질을 사람이 일일이 볼 수 없어 결국 다른 AI에게 채점을 맡기게 되고, 그 순간 같은 함정 앞에 선다. 채점 AI의 점수가 조금 올랐을 때 그게 진짜 개선인지, 채점이 흔들린 결과인지 가를 방법이 없으면 개선 작업 전체가 근거 없이 굴러간다.

처음 잰 숫자는 얼마였고, 어떻게 쟀나

측정 방법은 단순했다. 정답이 있는 15건을 고정하고, 초안 생성 조건만 바꿔 가며 채점 AI 평균을 비교했다. 점수 척도에서 4점은 정답에 가까운 초안을 뜻하는데, 정보 층을 붙이기 전 15건의 평균은 1.93점이었다. 대부분의 초안이 정답과 거리가 먼 상태에서 출발했다.

채점을 AI에게 맡긴 이유는 반복 때문이다. 층 하나를 붙일 때마다 15건을 사람이 정답과 나란히 놓고 다시 읽기는 어렵고, 층을 하나씩 따로 재려면 그 반복이 층 수만큼 늘어난다. 채점 AI는 그 일을 대신해 주지만, 대신 사람에게는 없던 문제를 하나 들고 온다. 같은 초안에 매번 같은 점수를 주지 않는다는 문제다.

첫 시도는 대표의 과거 답변을 검색해 붙이는 방식이었다. 의존성 없이 직접 구현한 BM25 검색으로 비슷한 과거 답변을 찾아 초안 작성 모델에게 넘겼다. 결과는 1.93점에서 2.00점, 차이는 0.07점이었다. 15건을 하나씩 보면 개선 1건, 하락 0건, 동일 14건이었다.

이 0.07점을 읽으려면 먼저 채점이 얼마나 흔들리는지 알아야 했다. 같은 조건을 2회 반복했을 때 평균이 0.2점까지 달라졌다. 채점 AI는 같은 초안을 받아도 매번 똑같이 채점하지 않는다. 노이즈가 0.2점인 저울로 0.07점의 차이를 재면, 그 차이는 측정이 아니라 우연이다.

표본 크기도 한 번 결론을 뒤집었다. 처음에 5건으로 쟀을 때는 평균이 0.30점 올라 효과가 뚜렷해 보였다. 15건으로 늘리고 더 엄격한 조건으로 다시 재니 상승은 0.10점이었다. 5건에서 본 0.30점은 표본이 우연히 유리하게 뽑힌 결과였다. 표본이 작을 때 결론이 뒤집히는 과정은 표본 크기 10 미만 결론이 뒤집힌 기록에 따로 정리해 두었다.

채점 AI 평균 점수 막대그래프 — 정보 층 없음 1.93점, 과거 답변 검색 추가 2.00점, 정보 층 4개 추가 2.13점. 같은 조건 재실행 흔들림 0.07점, 채점 노이즈 0.2점
세 단계 모두 올랐지만 오른 폭이 전부 노이즈 0.2점 안에 있다

이 구간에서 규칙 하나를 정했다. 평균의 변화가 노이즈 폭보다 작으면 개선이라고 쓰지 않는다. 이 규칙이 뒤에서 정보 층 4개를 붙인 결과를 읽는 기준이 됐다. 규칙이 없었다면 1.93점에서 2.13점이라는 숫자는 충분히 성과 보고로 올라갔을 수 있다.

처음 세운 가설은 무엇이었나

첫 가설은 「초안이 얕은 이유는 모르기 때문이다」였다. 과거 답변 검색만 붙인 상태에서 점수가 낮은 케이스를 열어 보니, 정답이 하나같이 첨부 자료를 읽은 결과였다. 한 건은 슬라이드 번호까지 짚은 7개 지적이었고, 다른 한 건은 기획안 특정 페이지의 문구를 그대로 인용한 답이었다. 과거 답변을 아무리 잘 찾아도 이번에 받은 자료 안에 무엇이 적혀 있는지는 알 수 없다.

그래서 지식의 빈틈을 두 갈래로 나눴다. 하나는 판단 기준, 곧 규정을 어떻게 해석하고 과거에 어떻게 결정했는지다. 이쪽은 과거 답변 검색이 메운다. 다른 하나는 이번 자료의 내용이고, 이쪽은 문서 자체에 접근해야 메워진다. 8월 27일까지는 「지식 문제는 검색으로 푼다」고 정리해 두었는데, 절반만 맞은 결론이었다.

이 정리로 예전 실험 하나도 다시 읽혔다. 앞서 자료를 근거로 붙여 질문을 분류하던 실험이 낮은 등급으로 끝난 적이 있다. 그때는 자료를 붙여도 소용없다고 판단했는데, 다시 보니 자료가 무용해서가 아니라 실제 첨부에 닿지 못했기 때문이었다. 같은 숫자를 보고도 원인을 반대로 읽고 있었다.

가설을 검증하는 방식도 미리 정했다. 층을 한꺼번에 붙이면 무엇이 효과를 냈는지 영영 모른다. 그래서 슬랙 코퍼스를 대표가 보낸 메시지, 받은 메시지까지 포함한 전량, 법령 조문의 세 색인으로 나누고, 평가 옵션도 층마다 따로 두어 한 번에 하나씩 켜고 끌 수 있게 했다.

모든 층을 검색으로 처리하지도 않았다. 봇 알림 14,135건과 법령 조문이 같은 검색 공간에 들어가면 서로를 밀어낸다. 33건짜리 법령 조문만 따로 검색해 봐도, 길이가 긴 벌칙·과태료 조항이 상위를 차지하고 실무에 필요한 금융소비자보호법 제22조와 시행령 조항은 아래로 밀렸다. 작고 긴 문서 묶음에서는 BM25가 변별력을 잃었고, 그래서 위키 문서와 첨부는 검색 대신 케이스별로 직접 넣었다.

정보 층 구조 다이어그램 — 슬랙 코퍼스를 발신·전량·법령 3개 색인으로 나눠 검색하고, 위키 문서와 첨부 파일은 검색 없이 케이스별로 직접 주입해 초안 작성 모델에 전달한다
검색에 맡길 층과 직접 넣을 층을 갈라, 한 번에 하나씩 켜고 끌 수 있게 했다
합쳐 붙였으면 「수신 인덱싱은 효과 없다」로 잘못 결론 냈을 자리다.

마지막으로 판정선을 실험 전에 그었다. 층을 3개 다 붙여도 평균이 3.0점에 못 미치면, 결과를 데이터로 보고하고 정보 확보 작업을 멈춘다. 결과를 보고 나서 기준을 정하면 2.13점이 나왔을 때 「하나만 더 붙여 보자」가 끝없이 이어지기 때문이다.

가설은 어디서 틀렸나

층 4개를 모두 붙인 결과는 2.13점이었다. 4점을 받은 초안은 15건 중 1건뿐이었다. 판정선 3.0점에 한참 못 미쳤고, 직전 2.00점과의 차이도 노이즈 0.2점 안이었다. 미리 정한 규칙대로라면 정보 확보 작업은 여기서 끝난다.

문제는 이 숫자 하나로는 두 가지 해석을 가를 수 없다는 점이었다. 가설이 통째로 틀려서 정보를 넣어도 초안이 안 나아졌을 수도 있고, 초안은 나아졌는데 채점 AI의 저울이 그 변화를 못 잡았을 수도 있다. 평균 점수는 둘 다 같은 값을 보여 준다.

그래서 채점 AI와 무관한 결정론 지표를 따로 만들었다. 정답 답변에 들어 있는 슬라이드 번호, 인용 문구, 법령 조문, 날짜처럼 기계로 대조할 수 있는 사실을 뽑아 두고, 초안에 그 사실이 들어갔는지를 센다. 같은 초안이면 언제 재도 같은 값이 나오므로 노이즈가 없다.

지표에 넣을 사실을 이 네 종류로 고른 이유도 단순하다. 번호·인용·조문·날짜는 문자열로 맞았는지 틀렸는지가 갈린다. 「톤이 적절한가」처럼 해석이 필요한 항목을 넣는 순간 다시 채점 AI가 필요해지고, 노이즈도 함께 돌아온다. 좁게 재는 대신 흔들리지 않게 재는 쪽을 골랐다.

이 지표로 다시 재자 그림이 달라졌다. 정답 요소 재현율은 6.1%에서 14.3%로 두 배 넘게 올랐다. 초안 평균 길이는 61자에서 218자로 늘었고, 정답이 250자 이상인 7건만 보면 69자에서 330자로 늘었다. 정보를 붙이자 초안이 실제로 더 많은 사실을 담고, 더 길게 말하기 시작했다.

채점 AI 평균과 결정론 지표 비교 표 — 채점 평균 1.93점에서 2.13점, 정답 요소 재현율 6.1%에서 14.3%, 초안 평균 길이 61자에서 218자, 정답 250자 이상 7건의 초안 길이 69자에서 330자
채점 평균은 노이즈 안인데, 결정론 지표 셋은 같은 방향으로 움직였다

층을 갈라 잰 덕분에 하나 더 보였다. 정보를 넣는 일과 그 정보가 검색에 잡히는 일은 서로 다른 문제였다. 받은 메시지 색인을 붙였을 때, 필요한 메시지가 색인 안에 있어도 검색 상위에 오르지 못하면 초안에는 들어가지 않는다. 층을 한꺼번에 붙였다면 이 차이를 「받은 메시지 색인은 효과가 없다」로 뭉뚱그렸을 것이다.

케이스 하나에서는 두 지표가 함께 움직였다. 기획안 문구를 인용해야 했던 케이스는 사실 재현율이 0%에서 100%로 올랐고, 채점 AI 점수도 2점에서 4점으로 올랐다. 필요한 자료가 들어가자 초안이 정답의 핵심을 그대로 짚었다.

따라서 가설은 반만 틀렸다. 「정보가 없어서 초안이 얕다」는 맞았다. 정보를 넣자 초안 안의 사실이 늘었다. 틀린 쪽은 「정보를 넣으면 점수가 오른다」는 예측이었다. 정보가 늘어도 평균 점수가 거의 그대로였다면, 점수를 누르는 원인이 정보 말고 따로 있다는 뜻이다.

진짜 원인은 무엇이었나 — 모르는 게 아니라 말을 아꼈다

원인은 슬라이드 7개 지적 케이스에서 드러났다. 이 케이스의 초안은 자료에서 뽑은 사실을 정확히 짚었다. 게재기간이 서로 맞지 않는 곳을 찾았고, 슬라이드 9·15·21·27번을 번호까지 지목했다. 대표가 실제 답변에서 놓친 상품명 불일치까지 찾아냈다.

그런데 초안은 7개 지적 중 2개만 말하고 나머지는 「확인해 보시라」며 미뤘다. 초안 길이는 387자, 대표의 실제 답변은 1,609자였다. 내용을 몰라서 짧은 게 아니라, 알면서도 말하지 않았다. 채점 AI는 7개를 다 짚은 정답과 2개만 말한 초안을 비교했으니 점수가 낮을 수밖에 없었다.

답변 길이 막대그래프 — 슬라이드 지적 케이스에서 AI 초안 387자, 대표의 실제 답변 1,609자. 정답의 7개 지적 중 초안은 2개만 말했다
자료에서 뽑은 사실은 맞았는데, 말한 분량이 정답의 4분의 1에 못 미친다

말을 아끼게 만든 원인은 초안 작성 모델에게 주는 시스템 프롬프트에 있었다. 두 문장이 걸렸다. 「한 문장으로 끝낼 수 있으면 한 문장으로」와 「초안이 결정을 대신하지 않는다」였다. 둘 다 정보가 없던 시절에 넣은 문장이다. 근거 없이 길게 쓰거나 대신 결정해 버리는 초안을 막으려는 장치였고, 그 조건에서는 옳았다.

정보가 붙자 같은 문장이 상한으로 작동했다. 근거를 7개나 쥐고 있어도 「한 문장으로 끝낼 수 있으면」이 분량을 누르고, 「결정을 대신하지 않는다」가 결론을 미루게 했다. 남은 격차는 「모른다」가 아니라 「얼마나 말하느냐」였다.

여기서 얻은 교훈은 프롬프트 문장에도 전제 조건이 있다는 점이다. 「짧게 써라」와 「대신 결정하지 마라」는 정보가 없을 때 초안의 실수를 막아 주는 안전장치였다. 같은 문장이 정보가 붙은 뒤에는 초안이 아는 만큼 말하지 못하게 막는 천장이 됐다. 정보 층을 붙이는 작업과 프롬프트를 점검하는 작업은 따로 떼어 생각하기 쉽지만, 한쪽 조건이 바뀌면 다른 쪽 문장의 효과도 바뀐다. 그래서 프롬프트의 각 문장 옆에 「어떤 조건에서 넣었는지」를 함께 적어 두기로 했다.

앞서 같은 실험에서 검색 천장을 잰 기록이 있다. 정답에 필요한 정보가 공급한 자료 안에 애초에 얼마나 있는지를 따로 쟀는데, RAG 성능 평가에서 프롬프트보다 검색 천장을 먼저 잰 글이 그 내용이다. 이번 글은 그 다음 질문, 곧 자료가 들어간 뒤에도 점수가 안 오르는 이유를 다룬다.

어떻게 조치했나 — 프롬프트를 고치지 않고 멈췄다

원인을 찾았으니 프롬프트의 두 문장을 고치면 될 것처럼 보인다. 그러지 않았다. 이번 회차는 시작할 때부터 「정보 확보만 다룬다, 프롬프트 재조정은 하지 않는다」를 금지 조항으로 적어 두었다. 원인을 찾았다고 같은 회차에서 프롬프트까지 손대면, 다음 측정에서 정보 층의 효과와 프롬프트의 효과가 다시 섞인다.

이유가 하나 더 있었다. 2차 시도에서 이미 「근거가 있으면 결론을 내라」는 문장을 넣어 본 적이 있다. 초안이 근거를 넘어서는 단정을 하기 시작하면서 점수가 내려갔고, 그래서 되돌렸다. 분량을 늘리는 쪽이 늘 안전하지는 않다는 증거가 이미 있었다.

결국 이번 회차의 조치는 셋이다. 정보 확보 작업을 여기서 끝낸다. 결정론 지표를 상시 평가에 넣어 채점 AI 평균과 나란히 본다. 프롬프트 분량 문제는 다음 회차의 단독 주제로 넘긴다.

다음 회차에서 잴 대상도 이 자리에서 정했다. 정보 층은 지금 상태로 고정하고, 프롬프트의 분량 관련 문장만 바꿔 같은 15건을 다시 잰다. 판정은 이번과 같은 두 축, 곧 채점 AI 평균과 결정론 재현율로 한다. 2차에서 점수를 떨어뜨렸던 「근거가 있으면 결론을 내라」도 정보가 붙은 조건에서 다시 시험한다.

기각한 대안도 둘 남겨 둔다. 첫째, 채점 AI의 기준을 느슨하게 고쳐 짧은 답에 주는 감점을 없애는 안이다. 지표를 목표에 맞추는 일이라 측정 자체가 무의미해진다. 둘째, 구글 드라이브·피그마·이메일 같은 층을 계속 더 붙이는 안이다. 첨부 자료 15건 중 9건에서 막힌 이유는 출처가 모자라서가 아니라 이미지 속 글자 인식과 캔버스로 그린 화면 때문이었다. 같은 방식으로 층을 더 붙여도 판정이 움직이지 않는다.

이번 회차에서 고른 조치와 기각한 대안
안판정이유
정보 확보 작업 종료채택4개 층을 붙여도 평균 2.13점, 판정선 3.0점 미달
결정론 지표 상시 병행채택채점 노이즈 0.2점과 무관하게 변화를 잰다
프롬프트 분량 조정다음 회차로같은 회차에서 손대면 효과가 섞인다
채점 기준 완화기각지표를 목표에 맞추면 측정이 무의미해진다
층 계속 추가기각막힌 원인이 출처 부족이 아니라 글자 인식·캔버스

재측정 결과는 어땠나

조치를 마친 뒤 두 축으로 다시 쟀다. 첫째는 회귀 검사다. 지식 질문과 별도로 말투와 형식만 보는 스타일 평가 6건이 있는데, 층을 붙이고도 평균 3.83점이 그대로였고 케이스별 점수도 하나도 달라지지 않았다. 정보를 넣느라 원래 잘하던 일이 망가지지는 않았다.

둘째는 지식 질문 15건이다. 채점 AI 평균은 1.93점에서 2.13점, 결정론 재현율은 6.1%에서 14.3%, 초안 평균 길이는 61자에서 218자다. 같은 실험을 두 저울로 재니 하나는 「판정 불가」를, 다른 하나는 「사실이 늘었다」를 말했다. 둘 다 맞는 말이고, 둘을 함께 놓아야 다음에 손댈 곳이 보였다.

  • 채점 AI 평균: 1.93점 → 2.13점 (노이즈 0.2점 안, 판정 불가)
  • 정답 요소 재현율: 6.1% → 14.3%
  • 초안 평균 길이: 61자 → 218자
  • 정답 250자 이상 7건의 초안 길이: 69자 → 330자
  • 4점 초안: 15건 중 1건
  • 스타일 평가 6건: 3.83점 유지, 회귀 0건

두 저울을 함께 쓰는 규칙도 이번에 적어 두었다. 채점 평균이 노이즈 폭 안에서 움직이고 결정론 지표가 오르면, 초안 안의 사실은 늘었는데 채점이 그 변화를 못 잡는다는 뜻으로 읽는다. 둘 다 그대로면 실제로 변화가 없다는 뜻이다. 채점 평균만 오르고 결정론 지표가 그대로면 노이즈를 의심한다.

결정론 지표가 없었다면 이번 회차의 결론은 「정보 층은 효과가 없다」였을 것이고, 다음 행동은 층을 다 걷어내는 쪽이었을 수 있다. 반대로 채점 평균만 믿고 2.13점을 성과로 적었다면 다음 회차에도 층을 계속 붙였을 것이다. 두 방향 모두 이번에 찾은 원인, 곧 프롬프트가 분량을 묶고 있다는 사실에 닿지 못한다.

남는 한계는 무엇인가

첫째, 분량 문제의 해법은 아직 모른다. 2차에서 「근거가 있으면 결론을 내라」가 점수를 떨어뜨린 기록은 정보가 없던 조건에서 잰 결과다. 정보가 붙은 지금은 같은 문장이 다르게 작동할 수 있어, 다시 재 보기 전까지는 그 기록도 이 판단도 확정할 수 없다.

둘째, 표본이 작다. 15건 중 4점은 1건이고, 길이 비교에 쓴 정답 250자 이상 케이스는 7건이다. 5건에서 본 상승이 15건에서 줄어든 전례가 있으니, 이번 숫자도 표본을 늘리면 달라질 수 있다.

셋째, 결정론 지표가 보는 범위가 좁다. 이 지표는 슬라이드 번호·인용 문구·조문·날짜가 초안에 들어갔는지만 센다. 그 사실을 엮어 내린 판단이 옳은지는 재지 못한다. 판단의 질은 여전히 노이즈 0.2점짜리 채점 AI와 사람의 눈에 기대야 한다.

넷째, 자료 접근이 15건 중 9건에서 멈춰 있다. 이미지로 된 슬라이드의 글자를 읽어 내거나 캔버스로 그린 화면을 텍스트로 옮기는 방법이 없으면, 나머지 케이스는 정보 층을 어떻게 붙여도 초안이 자료 내용을 모르는 채로 남는다. 이 문제는 자료를 어디서 가져오느냐가 아니라 가져온 자료를 어떻게 읽느냐에 걸려 있어서, 다음에 붙일 층을 고르는 기준도 출처의 수가 아니라 읽기 방식으로 바뀐다.

LLM as a judge는 편하지만, 그 점수 하나로 개선 여부를 판정하면 노이즈를 성과로 읽기 쉽다. 채점 AI의 흔들림 폭을 먼저 재고, 같은 실험을 결정론 지표로 한 번 더 재는 습관이 이번 회차에서 가장 쓸모 있었다. 사내 AI 자동화의 품질을 어떻게 잴지 고민하고 있다면 상담에서 평가 설계부터 함께 볼 수 있다.

글: SGK 스튜디오

같은 방식으로 우리 업무를 재보고 싶다면

이 글에 쓴 계측·판정·자동화는 저희가 실제로 매일 돌리는 방식 그대로입니다. 어떤 작업을 자동화할 수 있고 어디를 사람이 잡아야 하는지, 현재 업무 흐름을 놓고 같이 짚어 드립니다.

새 글이 올라오면 알려 드립니다

이런 계측 기록을 새로 쓰면 메일로 한 통 보냅니다. 광고나 판촉은 보내지 않습니다.