모델 아레나
하나의 프롬프트를 N개 모델에 동시에 보내 응답을 비교하고 가장 나은 것을 골라 승률 리더보드를 만듭니다. 제공자에 구애받지 않으므로 OpenAI, Anthropic, Ollama, vLLM, Gemini를 한 화면에서 비교할 수 있고, 무료로 직접 호스팅합니다.
모델 아레나는 하나의 프롬프트를 여러 모델에 나란히 보내고, 응답을 비교해 가장 나은 것을 고르게 하며, 승률 리더보드를 만듭니다. 제공자에 구애받지 않습니다. 모든 모델은 Potato의 엔드포인트 팩토리를 통해 생성되므로 OpenAI, Anthropic, Ollama, vLLM, Gemini, OpenRouter를 같은 화면에서 비교할 수 있습니다.
활성화
yaml
arena:
enabled: true
models:
- {label: "GPT-4o", endpoint_type: openai, model: gpt-4o}
- {label: "Claude", endpoint_type: anthropic, model: claude-sonnet-4-6}
- {label: "Llama", endpoint_type: ollama, model: llama3.2, base_url: http://localhost:11434}각 항목은 엔드포인트 구성(endpoint_type, model, base_url, temperature, 키와 파라미터를 위한 선택적 ai_config)에 대응합니다. 활성화하면 관리자 대시보드에 Arena 링크가 나타납니다.
작동 방식
- 프롬프트를 입력하면 모든 모델에 동시에 전달됩니다. 한 모델이 실패해도(잘못된 키, 제공자 장애) 다른 모델을 막지 않으며, 해당 카드에 오류가 표시됩니다.
- 응답은 모델별 지연 시간과 함께 나란히 렌더링됩니다.
- Pick as best를 클릭하면 선호가 기록되고 리더보드(모델별 승리 수, 비교 횟수, 승률)가 갱신됩니다.
API
| 메서드 | 경로 | 용도 |
|---|---|---|
| POST | /admin/arena/api/run | {prompt} → 모델별 응답 |
| POST | /admin/arena/api/preference | {prompt, winner, ranking?} → 선택 기록 |
| GET | /admin/arena/api/leaderboard | 모델별 승률 |
bash
curl -X POST localhost:8000/admin/arena/api/run -H "X-API-Key: <key>" \
-H "Content-Type: application/json" -d '{"prompt": "Explain RLHF in one sentence."}'관련 항목
- Read the Docs의 전체 레퍼런스 — 전체 구성과 API, 버전별 일치
- 데이터셋과 실험 — 오프라인에서 데이터셋 규모로 비교하기
- 쌍대 비교 — 주 작업 흐름에서 A/B 선호를 주석하기