Repolode
yym68686

yym68686/uni-api

Gateway auto-hospedado que reúne vários provedores de LLM (OpenAI, Anthropic, Gemini, Vertex, Azure, AWS e outros) em uma única API compatível com OpenAI, com balanceamento de carga.

Alternativa open source a:OpenRouter

Estrelas
1,270
Forks
158
Issues abertas
15
Último commit
anteontem

O que é?

uni-api é um gateway auto-hospedado para APIs de modelos de linguagem. Ele permite chamar vários provedores, incluindo OpenAI, Anthropic, Gemini, Vertex, Azure, AWS, xAI, Cohere, Groq, Cloudflare e OpenRouter, por um único endpoint compatível com o formato da OpenAI. Os provedores e suas chaves são definidos em um arquivo de configuração YAML, sem precisar de um painel web, e os modelos podem ser renomeados ou agrupados para que os clientes usem nomes simples.

O gateway cuida dos aspectos operacionais de trabalhar com vários provedores e chaves de API. Ele oferece estratégias de agendamento como ponderada, round-robin e outras, tanto entre canais quanto entre chaves dentro de um canal; tenta o próximo canal em caso de falha e coloca canais com falhas em cooldown por um período definido. Permissões por chave com curingas, limites de taxa, timeouts de modelos e moderação opcional de mensagens também são configurados no mesmo arquivo.

Além de chat completions, ele oferece endpoints no estilo OpenAI para responses, imagens, embeddings, transcrição e geração de áudio, moderação e listagem de modelos. Foi escrito em Rust e pode ser executado a partir de uma imagem Docker, usando SQLite por padrão ou PostgreSQL como banco de dados.

Recursos principais

  • 01Disponibiliza vários provedores por meio de uma única API compatível com OpenAI, incluindo OpenAI, Anthropic, Gemini, Vertex e Azure.
  • 02Configuração feita inteiramente em um arquivo YAML, sem necessidade de frontend web.
  • 03Balanceamento de carga ponderado e round-robin no nível dos canais, além de alternância entre chaves dentro de um canal.
  • 04Nova tentativa automática no próximo canal e cooldown dos canais com falhas.
  • 05Permissões de modelos por chave com curingas, limites de taxa e timeouts por modelo.
  • 06Oferece endpoints para chat, responses, imagens, embeddings, áudio, moderação e listagem de modelos.

Casos de uso

  • Executar um endpoint de API pessoal ou para uma equipe pequena que encaminha solicitações a vários provedores de LLM usando uma única chave.
  • Distribuir o tráfego entre várias chaves de API ou contas para reduzir erros de limite de taxa.
  • Permitir que clientes existentes compatíveis com OpenAI acessem modelos Claude ou Gemini sem alterações no código.
  • Hospedar um gateway compartilhado com chaves por usuário, cotas e moderação.

Início rápido

  1. 1

    Crie um arquivo de configuração api.yaml com o base_url e a chave de API do seu provedor

  2. 2

    Inicie o uni-api com o arquivo de configuração montado como api.yaml ou indicado por meio de CONFIG_URL, conforme descrito no README

Antes de usar

  • É necessário criar um arquivo de configuração YAML antes de iniciar o uni-api.

Em coleções

Tópicos

Perguntas frequentes

O que é uni-api?
Gateway auto-hospedado que reúne vários provedores de LLM (OpenAI, Anthropic, Gemini, Vertex, Azure, AWS e outros) em uma única API compatível com OpenAI, com balanceamento de carga. uni-api é um gateway auto-hospedado para APIs de modelos de linguagem. Ele permite chamar vários provedores, incluindo OpenAI, Anthropic, Gemini, Vertex, Azure, AWS, xAI, Cohere, Groq, Cloudflare e OpenRouter, por um único endpoint compatível com o formato da OpenAI. Os provedores e suas chaves são definidos em um arquivo de configuração YAML, sem precisar de um painel web, e os modelos podem ser renomeados ou agrupados para que os clientes usem nomes simples.
uni-api é gratuito? Qual é a licença?
uni-api é open source sob a licença Apache-2.0. Confira os termos da licença antes de usá-lo em produtos comerciais.
uni-api ainda é mantido?
Manutenção ativa. O último commit de uni-api foi em 4 de nov. de 2026.
Para que posso usar uni-api?
Executar um endpoint de API pessoal ou para uma equipe pequena que encaminha solicitações a vários provedores de LLM usando uma única chave. Distribuir o tráfego entre várias chaves de API ou contas para reduzir erros de limite de taxa. Permitir que clientes existentes compatíveis com OpenAI acessem modelos Claude ou Gemini sem alterações no código. Hospedar um gateway compartilhado com chaves por usuário, cotas e moderação.
Como instalar uni-api?
Crie um arquivo de configuração api.yaml com o base_url e a chave de API do seu provedor Inicie o uni-api com o arquivo de configuração montado como api.yaml ou indicado por meio de CONFIG_URL, conforme descrito no README
Onde consigo uni-api?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/yym68686/uni-api

Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.

Projetos relacionados