LLM-as-a-judge 온라인 평가자 설정하기
LLM-as-a-judge 온라인 평가자 설정하기
온라인 평가는 프로덕션 트레이스에 실시간 피드백을 제공해요. 이를 통해 문제를 식별하고, 개선을 측정하며, 시간이 지나도 일관된 품질을 보장하는 방식으로 애플리케이션 성능을 지속적으로 모니터링할 수 있어요.
LLM-as-a-judge 평가자는 LLM을 사용해 트레이스를 평가해 사람과 유사한 판단을 확장 가능한 방식으로 대체해요. 이 가이드는 단일 런을 평가하는 런 레벨 평가자를 다뤄요. 전체 대화 스레드를 평가하려면 멀티턴 온라인 평가자를 참조하세요.
참고: 온라인 평가자가 트레이스 내의 어떤 런에서 실행되면, 해당 트레이스는 자동으로 확장 데이터 보존으로 업그레이드돼요. 이 업그레이드는 트레이스 요금에 영향을 주지만, 평가 기준을 충족하는 트레이스(일반적으로 분석에 가장 가치 있는 것들)를 조사용으로 보존해 줘요.
출처: 문서
본문
온라인 평가자 보기
LangSmith UI에서 Tracing Projects 탭으로 이동해 트레이싱 프로젝트를 선택하세요. 해당 프로젝트의 기존 온라인 평가자를 보려면 Evaluators 탭을 클릭하세요.
온라인 평가자 추가
- LangSmith UI에서 Tracing 페이지로 이동해 트레이싱 프로젝트를 선택하세요.
- Evaluators 탭을 클릭하세요.
- + Evaluator를 클릭해 Add Evaluator 패널을 여세요.
- 다음 중 하나를 선택하세요:
- Create from scratch: LLM-as-a-Judge Evaluator를 선택하세요.
- Attach an existing evaluator: 워크스페이스에 이미 있는 평가자를 선택해 재사용하세요.
- Create from a template: 준비된 평가자에서 시작하세요.
- 평가자 이름을 지정하세요.
평가자를 트리거하는 런에 필터 적용
평가자를 트리거하는 런에 필터를 적용할 수 있어요. 다음 기준에 따라 평가자를 적용하고 싶을 수 있어요:
- 사용자가 피드백을 남겨 응답이 만족스럽지 않다고 표시한 런
- 특정 도구 호출을 실행하는 런. 도구 호출 필터링을 참조하세요.
- 특정 메타데이터와 일치하는 런(예:
plan_type으로 트레이스를 기록하고 엔터프라이즈 고객의 트레이스에만 평가를 실행하고 싶은 경우). 트레이스에 메타데이터 추가를 참조하세요.
평가자는 트레이스 필터링(ClickHouse)에 설명된 것과 동일한 필드와 연산자를 사용하는 필터 빌더를 사용해요.
팁: 평가자용 필터를 만들 때 런을 검사하는 것이 도움이 되는 경우가 많아요. 평가자 구성 패널을 연 상태에서 런을 검사하고 필터를 적용할 수 있어요. 런 테이블에 적용한 필터는 평가자의 필터에 자동으로 반영돼요.
팁: 이 프로젝트에 웹훅 자동화 규칙도 있고 웹훅 페이로드에 이 평가자의 점수를 포함하고 싶다면, 규칙 순서에 의존하지 말고 웹훅 규칙에 피드백 필터를 추가하세요. 예를 들어
has(feedback_key, "answer_usefulness")로 필터링하면 점수가 존재한 후에만 웹훅이 실행돼요. 자세한 내용은 웹훅이 실행되기 전에 평가가 완료되도록 보장하기를 참조하세요.
샘플링 비율 구성
샘플링 비율을 구성해 필터링된 런 중 자동화 작업을 트리거하는 비율을 조절하세요. 예를 들어 비용을 통제하기 위해 평가자를 전체 트레이스의 10%에만 적용하고 싶다면 샘플링 비율을 0.1로 설정하면 돼요.
과거 런 또는 스레드에 규칙 적용
과거 런이나 스레드에 규칙을 적용하려면 Configure Evaluator 패널에서:
- Source에서 Runs 또는 Threads를 선택하세요.
- Advanced를 펼치세요.
- Apply to past runs from date 또는 Apply to past threads from date를 켜고 날짜를 입력하세요.
백필은 규칙을 만들 때만 가능해요.
스레드 레벨 평가 규칙을 백필하면, LangSmith는 선택한 시작 날짜와 규칙 생성 시점 사이에 일치하는 트레이스 활동이 있는 스레드를 찾은 다음 규칙의 필터를 적용해요. 선택된 각 스레드가 유휴 상태가 되면 LangSmith는 그 루트 런 기록을 평가하고 스레드의 대표 트레이스에 피드백을 연결해요. 백필이 끝난 후에도 규칙은 활성 상태로 유지되며 일반적인 실시간 흐름을 통해 일치하는 새 스레드를 계속 평가해요.
참고: 백필은 백그라운드 작업으로 처리되므로 결과가 즉시 보이지 않아요.
백필 진행 상황을 추적하려면 트레이싱 프로젝트 안의 Evaluators 탭으로 이동해 만든 평가자의 Logs 버튼을 클릭해 로그를 볼 수 있어요. 온라인 평가자 로그는 자동화 규칙 로그와 유사해요.
- 평가자 이름을 추가하세요.
- 선택적으로 평가자를 적용할 런을 필터링하거나 샘플링 비율을 구성하세요.
- Apply Evaluator를 선택하세요.
지출 한도 설정
이 평가자가 연결된 프로젝트와 데이터셋에서 주당 LLM 비용을 제한할 수 있어요. 기본적으로 조직 전체 평가자 한도가 적용돼요. 조직 관리자는 Advanced 아래의 Spend limit 필드에 커스텀 값을 설정해 특정 평가자에 대한 한도를 재정의할 수 있어요. 재정의를 제거하고 조직 기본값을 다시 상속하려면 Reset to organization default를 클릭하세요. 주 지출이 유효 한도에 도달하면 LangSmith는 매주 월요일 오전 12시 UTC에 한도가 재설정되거나 한도가 수동으로 증가할 때까지 해당 프로젝트나 데이터셋에서 평가자를 일시 중지해요.
자세한 내용은 평가자 지출 추적 및 제한을 참조하세요.
LLM-as-a-judge 평가자 구성
자세한 내용은 LLM-as-a-judge 평가자를 참조하세요.
멀티모달 콘텐츠를 평가자에 매핑
트레이스에 이미지, 오디오, 문서 같은 멀티모달 콘텐츠가 포함되어 있다면 이 콘텐츠를 평가자 프롬프트에 포함할 수 있어요. 두 가지 방법이 있어요:
-
트레이스의 base64 인코딩 콘텐츠 사용: 애플리케이션이 트레이스에 멀티모달 콘텐츠를 base64 인코딩 데이터로 기록하는 경우(예: 런의 입력 또는 출력에), 템플릿 변수를 사용해 평가자 프롬프트에서 이 콘텐츠를 직접 참조할 수 있어요. 평가자가 트레이스에서 base64 데이터를 추출해 LLM에 전달해요.
-
트레이스의 첨부 파일 사용: 첨부 파일이 있는 오프라인 평가와 유사하게, 온라인 평가에서 트레이스의 첨부 파일을 사용할 수 있어요. SDK로 기록된 첨부 파일이 트레이스에 이미 포함되어 있으므로 평가자에서 직접 참조할 수 있어요.
- 데이터셋 페이지에서 + Evaluator를 선택하세요.
- Template variables 편집기에서 포함할 첨부 파일용 변수를 추가하세요:
- 특정 첨부 파일을 포함하려면
{{attachment.file_name}}같은 제안된 변수 이름을 사용하세요. 이는 첨부 파일 목록에서file_name을 가진 파일을 매핑해 평가자에게 전달해요. - 모든 첨부 파일을 포함하려면
{{attachments}}변수를 사용하세요.
- 특정 첨부 파일을 포함하려면
이미지: 입력에 이미지 첨부 파일이 선택된 평가자 편집 모달
그러면 평가자는 트레이스를 평가할 때 이 첨부 파일에 접근할 수 있어요. 다음을 수행해야 하는 평가자에게 유용해요:
- 이미지 설명이 트레이스의 실제 이미지와 일치하는지 확인
- 전사(transcription)가 오디오 입력을 정확히 반영하는지 확인
- 문서에서 추출된 텍스트가 올바른지 검증