LLM 엔지니어링20장 · LLM 평가와 모니터링3 / 22← 이전목차다음 →MetaContents

20장. LLM 평가와 모니터링

LLM 평가가 어려운 까닭

수학 시험은 답이 "42"인지만 보면 됩니다. 글짓기는 다릅니다. 같은 내용을 다르게 쓴 글이 모두 맞을 수 있고, 매끄럽지만 내용이 틀린 글도 있습니다. LLM 의 답은 글짓기에 가깝습니다.

정답이 여러 꼴, 그럴듯한 오답, 실행마다 다른 답의 세 가지를 나란히 놓은 비교 그림

그림의 세 카드가 LLM 평가를 어렵게 하는 까닭입니다. 왼쪽은 "14일입니다"와 "2주 동안 빌릴 수 있어요"가 모두 맞는다는 것입니다. 가운데는 길고 매끄러운데 숫자 하나가 틀린 답입니다. 오른쪽은 같은 질문에도 실행마다 답이 조금씩 다르다는 것입니다. 수학 채점이 글자 비교, 글짓기 채점이 뜻과 사실을 보는 채점입니다.

무엇을 재나

대상묻는 것이 장에서
검색맞는 자료를 찾았나hit@3 (실습 4)
답의 사실숫자, 날짜, 이름이 맞나규칙, 뜻, LLM 채점자 (실습 1~4)
모름 처리자료에 없으면 모른다고 하나평가 묶음의 '모름' 질문
형식길이, 말씨, 엉뚱한 글자규칙 (실습 1)
운영지연, 오류, 사용자 반응운영 기록 (실습 6)

글자 비교의 한계

Python
reference = "대출 기간은 14일입니다."
answers = ["대출 기간은 14일입니다.", "14일 동안 빌릴 수 있어요.", "대출 기간은 21일입니다."]
for a in answers:
    # 글자가 똑같은지, 열쇠 낱말 '14일' 이 들었는지
    print(f"{a:20s} 똑같다={a == reference} · 열쇠 포함={'14일' in a}")

코드에 나오는 함수

코드쉬운 뜻
a == reference두 글이 한 글자도 빠짐없이 같으면 True 다. 띄어쓰기나 마침표 하나만 달라도 False 다
'14일' in a글 a 안에 '14일' 이라는 글자 조각이 들어 있으면 True 다. 앞뒤에 무엇이 붙었는지는 보지 않는다
f"{a:20s}"글을 20칸 폭에 맞춰 왼쪽에 붙여 찍는다. s 는 string(문자열)이다. 한글은 화면에서 두 칸을 차지해 줄이 조금 어긋나 보인다

이 코드가 뜻하는 것

선생님이 답안지를 채점하는데 도구가 둘뿐이라고 생각해 봅니다. 하나는 정답지를 겹쳐 대 보는 투명 필름이고, 다른 하나는 '14일' 이라는 글자만 찾는 형광펜입니다. 여기서 투명 필름이 ==, 형광펜이 in 입니다.

줄하는 일쉽게 말하면
reference = ...참조 답을 정한다정답지
answers = [...]견줄 답 셋을 담는다학생 답안 세 장
a == reference글자가 통째로 같은지 본다투명 필름을 겹쳐 보기
'14일' in a열쇠 낱말이 들었는지 본다형광펜으로 '14일' 찾기

결과의 둘째 줄 "14일 동안 빌릴 수 있어요." 는 맞는 답인데 똑같다=False 입니다. 투명 필름은 표현만 달라도 틀렸다고 합니다. 형광펜은 둘째 답을 살려 주지만, 같은 뜻을 "2주"라고 쓴 답은 '14일' 이라는 글자가 없으니 놓칩니다.

주의할 점

  • 점수 하나로 모든 것을 말할 수 없습니다. 사실, 모름 처리, 형식, 속도를 나눠 잽니다.
  • 평가 결과도 실행마다 조금씩 달라집니다. 두 판의 차이가 한두 문항이면 다시 재어 봅니다.
← 이전 절20장 · 용어 짚고 가기다음 절 →20장 · 평가 묶음 만들기