OpenJudge

LLM FrameworksCLIPython

★ 829주당 +11조회 5

무엇인가

OpenJudge는 LLM 애플리케이션의 출력과 실행 과정을 채점하는 Python 기반 평가 프레임워크다. 에이전트, 챗봇, 코드, 수학, 멀티모달 작업을 대상으로 하며, 채점 결과를 학습 보상 신호로 되돌려 애플리케이션 개선 순환에 놓는다. 관측 도구가 수집한 트레이스를 채점 가능한 단위로 바꾸는 자리를 차지한다.

어떻게 동작하나

중심 구성 요소는 grader다. General(Relevance, Similarity, Syntax Check, JSON Match), Agent(Tool Selection, Memory, Plan, Trajectory), Multimodal(Image Coherence, Text-to-Image, Image Helpfulness) 세 분류로 나뉘고, 각 grader는 LLM 프롬프트 기반이거나 Python 인터페이스로 정의된다. GraderGenerator는 작업 설명만으로 zero-shot 루브릭을 만들거나 라벨링된 예시에서 루브릭을 요약해 LLM grader를 생성한다. 채점 결과는 reward signal로 변환되어 fine-tune에 쓰인다.

무엇과 다른가

LangSmith와 Langfuse는 트레이스 수집과 모니터링을 담당하고, OpenJudge는 그 위에 evaluator를 얹는 통합을 제공한다. VERL 같은 RL 학습 프레임워크와도 연결된다. 즉흥적으로 작성한 LLM-as-judge 스크립트와 달리 grader마다 벤치마크 데이터셋과 pytest 검증이 붙어 있다.

어떻게 쓰나

Streamlit 기반 UI가 ui/app.py에 있고 `streamlit run ui/app.py`로 로컬에서 실행한다. 설치 없이 openjudge.me/app에서 내장 grader를 시험하고 zero-shot 루브릭을 만들 수 있으며, 리더보드는 openjudge.me/leaderboard에서 본다. 설치 방법은 Quickstart Guide로 위임되어 있다.

전제와 한계

LLM 기반 grader는 외부 모델 호출을 전제로 한다. Judge Model 학습 파이프라인은 대량의 라벨링된 데이터가 있어야 성능이 나온다. 온라인 플레이그라운드는 설치 없이 브라우저에서 동작한다.

관련 논문 2

유사 도구