O GPT-Load é uma ferramenta de proxy de IA de alto desempenho e código aberto, focada em fornecer gerenciamento de interface unificado e balanceamento de carga para uma ampla variedade de serviços de modelos grandes. Ele simplifica o acesso do desenvolvedor a modelos como OpenAI, Gemini, Claude etc. por meio de um mecanismo inteligente de sondagem de chaves. Os usuários podem implementar e gerenciar rapidamente as configurações em tempo real por meio da interface da Web. O projeto é compatível com a implantação em contêineres do Docker e usa o banco de dados SQLite por padrão, que é adequado para aplicativos leves, bem como MySQL, PostgreSQL e Redis para atender aos requisitos de clustering. O GPT-Load foi desenvolvido pela tbphp, hospedado no GitHub, e é adequado para desenvolvedores corporativos e individuais.
Lista de funções
- Polling inteligente de teclasGerencie automaticamente várias chaves de API, distribua dinamicamente as solicitações e aumente a eficiência das chamadas de interface.
- Suporte a vários modelosA seguir, uma lista dos principais modelos: OpenAI, Gemini, Claude etc., que fornecem uma entrada de API unificada.
- balanceamento de cargaOtimização da alocação de solicitações para garantir a estabilidade em cenários de alta simultaneidade.
- Interface de gerenciamento da WebSuporte a alterações de configuração em tempo real que entram em vigor sem reiniciar o serviço.
- Flexibilidade do banco de dadosSQLite padrão, com suporte para MySQL, PostgreSQL e Redis.
- Implementação do DockerFornecimento de soluções em contêineres para simplificar a instalação e a expansão.
- Suporte de clusterPermite a colaboração entre vários nós por meio de bancos de dados compartilhados e Redis.
- Encaminhamento de proxy de APISuporte a vários modelos de formatos de solicitação de API para simplificar o desenvolvimento.
Usando a Ajuda
Processo de instalação
O GPT-Load é compatível com a instalação do Docker e da compilação de código-fonte. Aqui estão as etapas detalhadas:
Método 1: implantação do Docker (recomendado)
- Instalação do Docker e do Docker Compose
Certifique-se de que o Docker e o Docker Compose estejam instalados em seu sistema, o que pode ser verificado com o seguinte comando:docker --version docker compose version
- Criação de um diretório de projeto
Crie um diretório local e entre nele:mkdir -p gpt-load && cd gpt-load
- Download do arquivo de configuração
Obtenha o arquivo de configuração padrão do repositório do GitHub:wget https://raw.githubusercontent.com/tbphp/gpt-load/main/docker-compose.yml wget -O .env https://raw.githubusercontent.com/tbphp/gpt-load/main/.env.example
- Configuração de variáveis de ambiente
compilador.env
para definir a chave de autenticação e outros parâmetros. Exemplo:AUTH_KEY=sk-123456
A chave de autenticação padrão é
sk-123456
O número dos dois primeiros itens da lista pode ser modificado conforme necessário. - Início dos serviços
Inicie o serviço usando o Docker Compose:docker compose up -d
O serviço estará disponível em
http://localhost:3001
Em execução. - Interface de gerenciamento de acesso
Abra seu navegador e acessehttp://localhost:3001
Uso.env
definido emAUTH_KEY
Faça o login. - Serviços de gerenciamento
- Verifique o status do serviço:
docker compose ps
- Exibir registro:
docker compose logs -f
- Reinicie o serviço:
docker compose down && docker compose up -d
- Versão atualizada:
docker compose pull && docker compose down && docker compose up -d
- Verifique o status do serviço:
Método 2: construção do código-fonte
- armazém de clones
Clone o código do projeto do GitHub:git clone https://github.com/tbphp/gpt-load.git cd gpt-load
- Instalando o ambiente Go
Certifique-se de que o Go 1.18 ou posterior esteja instalado em seu sistema. Verifique a versão:go version
- Instalação de dependências
Puxe as dependências do projeto:go mod tidy
- Configuração de variáveis de ambiente
Copie o arquivo de configuração de amostra e edite-o:cp .env.example .env
modificações
.env
acertou em cheioDATABASE_DSN
(string de conexão do banco de dados) eREDIS_DSN
(string de conexão do Redis, opcional). Exemplo:AUTH_KEY=sk-123456 DATABASE_DSN=mysql://user:password@host:port/dbname
- Serviços operacionais
Inicie o serviço:make run
O serviço é executado por padrão no
http://localhost:3001
.
Configuração do banco de dados
- SQLiteBanco de dados padrão, adequado para aplicativos leves autônomos sem configuração adicional.
- MySQL/PostgreSQL:: Editorial
docker-compose.yml
Descomente os serviços relevantes, configure as variáveis de ambiente e reinicie. - RedisDeve ser configurado quando o cluster for implantado para armazenamento em cache e sincronização de nós.
Funções principais
1. gerenciamento de chaves
- Depois de fazer login na interface da Web, vá para a página "Key Management" (Gerenciamento de chaves).
- Adicione várias chaves de API (por exemplo, para OpenAI, Gemini).
- O sistema pesquisa automaticamente as chaves disponíveis, dando prioridade ao envio de solicitações usando chaves que não estejam sobrecarregadas.
2. solicitações de proxy de API
- O GPT-Load fornece uma interface de proxy unificada. Por exemplo, chamar a interface de bate-papo do OpenAI:
curl -X POST http://localhost:3001/proxy/openai/v1/chat/completions \ -H "Authorization: Bearer sk-123456" \ -H "Content-Type: application/json" \ -d '{"model": "gpt-4.1-mini", "messages": [{"role": "user", "content": "Hello"}]}'
- As solicitações de proxy para modelos como Gemini, Claude, etc. são suportadas em um formato semelhante.
3. configuração em tempo real
- Modifique os parâmetros do modelo, as prioridades principais ou as políticas de balanceamento de carga na interface da Web.
- A configuração entra em vigor imediatamente após ser salva, e não há necessidade de reiniciar o serviço.
4. implantação do cluster
- Certifique-se de que todos os nós tenham as mesmas conexões MySQL/PostgreSQL e Redis.
- existir
.env
Configure o banco de dados unificado e as conexões Redis no - Implante vários nós usando o Docker Compose ou o Kubernetes.
advertência
- Certifique-se de que o firewall tenha a porta 3001 aberta.
- O Redis deve ser configurado quando o cluster for implantado ou o armazenamento na memória será ativado.
- Verifique regularmente o uso das chaves para evitar interrupções de serviço devido a excessos.
cenário do aplicativo
- Integração de IA empresarial
Ao desenvolver aplicativos de IA, as empresas precisam chamar as interfaces do OpenAI, Gemini e Claude ao mesmo tempo. O GPT-Load oferece um ponto de entrada unificado para simplificar o processo de desenvolvimento e reduzir os custos de manutenção. - Serviços de IA altamente simultâneos
Em cenários de chatbot ou atendimento inteligente ao cliente, o balanceamento de carga e a pesquisa de chaves do GPT-Load garantem a estabilidade de solicitações altamente simultâneas para acesso de usuários em grande escala. - Experimentos de desenvolvedores individuais
Os desenvolvedores podem implementar rapidamente o GPT-Load, testar o desempenho de diferentes modelos grandes, gerenciar várias chaves gratuitas ou pagas e reduzir os custos de tentativa e erro.
QA
- Quais modelos são compatíveis com o GPT-Load?
Compatível com OpenAI, Gemini, Claude e outros grandes modelos convencionais, a compatibilidade específica depende do formato da API. - Como faço para trocar de banco de dados?
compiladordocker-compose.yml
Para descomentar o MySQL ou o PostgreSQL, configure o parâmetro.env
acertou em cheioDATABASE_DSN
e, em seguida, reinicie o serviço. - O que é necessário para a implementação do cluster?
Todos os nós devem ter as mesmas conexões MySQL/PostgreSQL e Redis; o Redis é obrigatório. - Como a interface da Web é protegida?
aprovar (um projeto de lei ou inspeção etc.).env
acertou em cheioAUTH_KEY
Para autenticação, é recomendável usar chaves fortes e alterá-las regularmente.