f81b866e3468e057f641319c5ff05700663c9342
Arena.ai Leaderboard Parser & OmniRoute Benchmark
Парсер лидерборда arena.ai (LMSYS Chatbot Arena) с 24-часовым кешированием и обходом Cloudflare WAF, а также инструмент бенчмаркинга и матчинга моделей со шлюзом OmniRoute.
🚀 Возможности
-
Обход Cloudflare WAF / Anti-Bot:
- Автоматически использует stealth-экстрактор (Firecrawl / keyless failover-кольцо) для гарантированного получения актуальных данных таблицы арены без блокировок HTTP 403.
- Fallback на сырой HTML при отсутствии WAF.
-
Поддержка бордов:
text(416 моделей): Rank, Arena Score (ELO ±CI), Spread, Votes, Price, Context.agent(54 модели): Tool-calling метрики (Net Improvement, Confirmed Success, Steerability, Bash Recovery, Tool Hallucination, Sessions, Cost/Task).
-
Интеграция с OmniRoute (
omniroute_arena_report.py):- Авторизация через Bearer
OMNIROUTE_API_KEY. - Liveness-проверка всех моделей провайдера коротким вызовом («2+2»).
- Интеллектуальный матчинг моделей гейтвея с мировым рейтингом LMSYS Arena (учёт reasoning-суффиксов
-high,-medium,-low,-thinking). - Формирование наглядного отчёта в Markdown.
- Авторизация через Bearer
📦 Структура репозитория
arena_leaderboard.py— основной CLI и Python API парсера лидерборда.omniroute_arena_report.py— прогон моделей OmniRoute и генерация арена-отчёта.arena_cache_refresh.py— легковесный скрипт для запуска через cron (обновление кеша раз в сутки).
🛠 Использование
CLI
# Топ-10 моделей текстового лидерборда
python3 arena_leaderboard.py
# Рейтинг конкретной модели
python3 arena_leaderboard.py glm-5.3-max
# Поиск моделей по подстроке
python3 arena_leaderboard.py --search gemini
# Принудительное обновление кеша мимо TTL
python3 arena_leaderboard.py --refresh
# Агентный лидерборд (tool-calling)
python3 arena_leaderboard.py --board agent
python3 arena_leaderboard.py --board agent "Claude Opus 5.5 (Max)"
OmniRoute Liveness & Arena Match Report
# Проверить всех провайдеров / конкретного провайдера (например, agy, openrouter, zai)
python3 omniroute_arena_report.py --provider agy
python3 omniroute_arena_report.py --provider zai
Python API
from arena_leaderboard import get_leaderboard, get_model_rating, search_models
# Получить рейтинг модели
rating = get_model_rating("glm-5.3-max")
print(rating)
# Поиск
gemini_models = search_models("gemini-3.8")
Description
Languages
Python
100%