Pular para o conteúdo
OmniRoute source

Free Provider Rankings (Arena ELO) (Português (Brasil))

O OmniRoute registra 329 provedores, incluindo 155 entradas de catálogo marcadas como gratuitas/sem autenticação (sem autenticação, OAuth de nível gratuito ou chave de API de nível gratuito — consulte o Guia de Níveis Gratuitos e o Diretório de Níveis Gratuitos completo). O problema: os provedores gratuitos variam muito em termos de qualidade dos modelos. Um provedor sem autenticação que disponibiliza um modelo de última geração é muito mais útil do que um que disponibiliza um pequeno modelo legado.

A Classificação de Provedores Gratuitos responde à pergunta “qual provedor gratuito oferece o melhor modelo?” ao combinar o catálogo de cada provedor gratuito com pontuações de qualidade obtidas por colaboração coletiva do ranking do Arena AI (ELO baseado em preferências humanas, a mesma ideia por trás da arena de chatbots LMArena). Em seguida, os provedores são classificados pela qualidade de seu melhor modelo gratuito.

A classificação é calculada com base em três fontes reais:

  1. As listas de provedores gratuitos — NOAUTH_PROVIDERS, além das entradas de OAUTH_PROVIDERS / APIKEY_PROVIDERS sinalizadas com hasFree (src/shared/constants/providers.ts).
  2. O catálogo de modelos de cada provedor no registro de provedores (open-sse/config/providerRegistry.ts).
  3. Pontuações de adequação à tarefa derivadas do ELO, armazenadas na tabela model_intelligence do banco de dados pelo mecanismo de sincronização do ELO do Arena (src/lib/arenaEloSync.ts).

A lógica de combinação está em src/lib/freeProviderRankings.ts.


Abra o painel e acesse Custos → Classificação de Provedores Gratuitos ou navegue diretamente para:

/dashboard/free-provider-rankings

A página (src/app/(dashboard)/dashboard/free-provider-rankings/page.tsx) exibe:

  • Um pódio com os 3 primeiros colocados (🥇 🥈 🥉) entre os provedores gratuitos mais bem classificados.
  • Uma tabela de classificação completa com as colunas: Posição, Provedor, Melhor Modelo, Pontuação, Pontuação Média, Modelos, Tipo.
  • Botões de filtro por categoria: Todas as Categorias, Padrão, Programação, Revisão, Documentação, Depuração.

O selo de Tipo de cada provedor informa como ele é gratuito:

Selo Significado
NOAUTH Sempre gratuito, sem necessidade de credenciais
OAUTH Provedor OAuth com um nível gratuito (hasFree)
APIKEY Provedor com chave de API e um nível gratuito (hasFree)

As pontuações são exibidas como rótulos de fácil compreensão (por exemplo, Elite, Excelente, Muito Bom, Bom, Mediano), em vez de números brutos, porque o valor subjacente representa uma qualidade relativa na classificação, não uma porcentagem.

A página é alimentada por um endpoint público de leitura (src/app/api/free-provider-rankings/route.ts):

GET /api/free-provider-rankings
GET /api/free-provider-rankings?category=coding
GET /api/free-provider-rankings?category=coding&limit=20

Parâmetros de consulta (validados com Zod):

Parâmetro Tipo Padrão Observações
category string (nenhum) Um de default, coding, review, documentation, debugging. Omita para obter a classificação combinada.
limit number 50 Limitado ao intervalo 1–100.

Formato da resposta:

{
"rankings": [
{
"id": "<provider-id>",
"name": "<provider name>",
"icon": "<icon>",
"color": "<hex color>",
"textIcon": "<short label>",
"category": "noauth | oauth | apikey",
"topModel": {
"modelId": "<registry model id>",
"modelName": "<model display name>",
"score": 0.0,
"eloRaw": 0,
"confidence": "high | medium | low",
"category": "&lt;task category&gt;"
},
"averageScore": 0.0,
"modelCount": 0
}
]
}

eloRaw é o valor ELO original do Arena; score é o valor normalizado de adequação à tarefa (consulte abaixo). Os provedores sem modelos pontuados são omitidos da resposta.


O mecanismo de sincronização de ELO do Arena (src/lib/arenaEloSync.ts) busca duas classificações — text e code — na API de classificação do Arena AI (https://api.wulong.dev/arena-ai-leaderboards/v1/leaderboard). Cada entrada da classificação contém o nome do modelo, fornecedor, score ELO, intervalo de confiança e número de votos.

As categorias da classificação são mapeadas para as categorias de tarefas do OmniRoute:

Classificação do Arena Categorias de tarefas do OmniRoute
text default, review, documentation, debugging
code coding

Normalização (pontuação de adequação à tarefa)

Seção intitulada “Normalização (pontuação de adequação à tarefa)”

As pontuações ELO brutas são normalizadas por classificação em um valor de adequação à tarefa no intervalo [0.4, 0.98]:

taskFit = 0.4 + 0.58 * ((elo - minElo) / (maxElo - minElo))

A pontuação nunca chega a 0 ou 1, deixando margem para substituições definidas pelo usuário. Esse é o campo score exibido na resposta da API e o rótulo mostrado no painel.

Cada entrada recebe um nível de confiança com base no número de votos do Arena:

Confiança Votos
high ≥ 5.000
medium ≥ 1.000
low < 1.000

As entradas normalizadas são gravadas na tabela model_intelligence do banco de dados com source = "arena_elo" (src/lib/db/modelIntelligence.ts). As entradas expiram após 7 dias, portanto, um fornecedor que deixa de sincronizar acaba sendo removido em vez de fornecer dados obsoletos.

A sincronização é executada por padrão:

  • Ela é executada uma vez na inicialização do servidor e, depois, em um temporizador periódico (src/lib/arenaEloSync.ts, conectado a partir de src/instrumentation-node.ts).
  • Ela é não bloqueante e nunca fatal — se a busca na fonte externa falhar, o OmniRoute continua em execução, e as classificações simplesmente exibem os últimos dados válidos (ou um estado vazio).

Duas variáveis de ambiente a controlam (documentadas em docs/reference/ENVIRONMENT.md):

Variável Padrão Finalidade
ARENA_ELO_SYNC_ENABLED true Defina como false para desativar a sincronização de saída.
ARENA_ELO_SYNC_INTERVAL 86400 (24h) Intervalo de sincronização, em segundos.

Para operadores, um endpoint de gerenciamento autenticado oferece controle manual (src/app/api/intelligence/sync/route.ts — requer autenticação de gerenciamento):

GET /api/intelligence/sync # status atual da sincronização (enabled, lastSync, nextSync, intervalMs)
POST /api/intelligence/sync # aciona uma sincronização manual; corpo: { "dryRun": true } para visualizar sem gravar
DELETE /api/intelligence/sync # limpa todas as entradas de inteligência arena_elo sincronizadas

Se a página de classificações estiver vazia, um POST /api/intelligence/sync manual (ou simplesmente reiniciar o servidor) a preenche novamente.

Correspondência entre modelos e a classificação

Seção intitulada “Correspondência entre modelos e a classificação”

Os IDs dos modelos no registro e os nomes dos modelos no Arena nem sempre correspondem exatamente. A classificação usa correspondência flexível (findMatchingIntelligence em src/lib/freeProviderRankings.ts):

  1. Correspondência exata com o ID normalizado do modelo.
  2. Correspondência após remover um sufixo de versão no final (por exemplo, kimi-k2.6 → kimi-k2).
  3. Correspondência por prefixo (o nome de um modelo na classificação é um prefixo do ID no registro).

No lado da sincronização, prefixos conhecidos de fornecedores (anthropic/, openai/, google/, …) são removidos, e um pequeno mapa de aliases expande os nomes canônicos para as variantes usadas pelo OmniRoute internamente, mantendo os modelos localizáveis por qualquer nome.

Para cada fornecedor gratuito, o mecanismo pontua todos os modelos do catálogo e, depois:

  • Melhor modelo = o modelo com a maior pontuação do fornecedor.
  • Pontuação média = a média das pontuações de todos os modelos avaliados desse fornecedor.
  • Modelos = quantos modelos do fornecedor tinham uma pontuação do Arena.

Os fornecedores são ordenados primeiro pela pontuação do melhor modelo e, depois, pela pontuação média. Isso beneficia um fornecedor que disponibiliza pelo menos um modelo gratuito de alto desempenho.


  1. Escolha a categoria certa. Use o filtro Coding para cargas de trabalho de agentes/código ou mantenha All Categories / Default para conversas gerais. O mesmo provedor pode ter classificações diferentes entre as categorias porque seu melhor modelo varia conforme o ranking.
  2. Prefira o pódio para configurações únicas. Se você quiser conectar apenas um ou dois provedores gratuitos, comece pelos mais bem classificados em sua categoria.
  3. Verifique o selo Type. Provedores NOAUTH são os mais rápidos de conectar (sem credenciais). Os níveis gratuitos OAUTH / APIKEY exigem um cadastro rápido, mas geralmente oferecem modelos mais avançados. Consulte o Guia de Níveis Gratuitos para ver as etapas de conexão.
  4. Conecte vários e deixe o Auto-Combo decidir. Os mesmos dados de Arena ELO que alimentam esta página também são usados pelo fator de adequação à tarefa do mecanismo de pontuação Auto-Combo (open-sse/services/autoCombo/taskFitness.ts, ordem de resolução: user_override → arena_elo → models_dev_tier → static table). Assim, depois que você conectar os principais provedores gratuitos, o roteamento com model: "auto" (por exemplo, auto/coding) irá preferir automaticamente os modelos gratuitos de maior qualidade para cada solicitação. Consulte Auto-Combo para conhecer a pontuação completa de 16 fatores.


Código-fonte do OmniRoute (a58000c7685f)

HagiCode

HagiCode é um ambiente de programação com agentes, fluxos estruturados, execução multiagente e visualizações Hero Dungeon.

Transforme ideias em software útil com um fluxo de trabalho com agentes mais inteligente, rápido e agradável.

Interface principal do HagiCode no tema claro
  • SmartFluxos estruturados transformam intenções em um caminho executável da ideia à entrega.
  • EfficientFluxos multiagente mantêm pesquisa, implementação e revisão em andamento simultaneamente.
  • FunO Hero Dungeon torna longas sessões de programação mais visuais e colaborativas.
Acessar HagiCode