대화 완성도
대화 완성도 (Conversation Completeness)
대화형 챗봇이 사용자의 요구를 각 턴에서 충족했는지 확인하고 싶을 때가 있죠. Conversation Completeness는 바로 그런 multi-turn 메트릭으로, LLM-as-a-judge를 사용해 대화 전체에서 사용자 요건이 만족됐는지 평가해요. 이 글에서 동작 원리와 계산 방식을 살펴볼게요.
출처: 문서
본문
개요
conversational completeness 메트릭은 LLM-as-a-judge를 사용해, 챗봇이 대화의 각 턴에서 사용자의 요구를 충족했는지 평가하는 multi-turn 메트릭이에요.
필수 파라미터
conversation completeness 메트릭을 평가하려면 테스트 케이스에 다음 파라미터를 제공해야 해요.
turns (list of Turn, required)
사용자와 어시스턴트의 교환으로 이루어진 Turn 목록.
Turn의 파라미터:
role (user | assistant, required)
말하는 사람의 역할. user 또는 assistant 중 하나예요.
content (string, required)
해당 턴에서 role이 제공한 내용.
어떻게 계산되나요?
conversation completeness 메트릭은 먼저 LLM으로 모든 턴에서 서로 다른 사용자 의도를 추출하고, 같은 LLM으로 대응하는 어시스턴트 턴이 그 의도를 충족했는지 확인해요.
$$ \text{Conversation Completeness} = \frac{\text{Number of Satisfied User Intentions in Conversation}}{\text{Total Number of User Intentions in Conversation}} $$
최종 점수는 대화에서 충족된 사용자 의도의 비율이에요.
사용 방법
Confident AI에서 conversation completeness 메트릭을 실행하려면 multi-turn metric collection에 추가하세요. 그러면 다음에 사용할 수 있어요.
- Multi-turn E2E 테스트
- trace와 span의 온라인 및 오프라인 eval
더 알아보기
- Metric Collections — 원격 평가를 위한 메트릭 묶기
- Metrics Introduction — Confident AI 메트릭 개요