A implementação em cluster do GPT-Load requer a configuração concentrada dos seguintes componentes:
- Banco de dados compartilhadoSQLite: O SQLite padrão deve ser alterado para MySQL/PostgreSQL, e todos os nós precisam ser configurados com a mesma string de conexão DATABASE_DSN, por exemplo:
mysql://user:password@host:port/dbname
- O Redis é indispensávelComo um componente central da coordenação do cluster, a REDIS_DSN deve ser definida para:
- Sincronização de estado entre nós
- Compartilhamento da fila de solicitações
- Aceleração do cache
- Consistência ambientalNecessidade de ser mantido no arquivo .env para todos os nós:
- Mesma chave de autenticação AUTH_KEY
- Parâmetros consistentes da política de balanceamento de carga
- Configurações unificadas de fuso horário (variáveis de ambiente TZ)
Os pontos de verificação para verificar se o cluster está funcionando corretamente incluem:
- aprovar (um projeto de lei ou inspeção etc.)
docker compose logs
Visualizar a comunicação de heartbeat entre nós - Confirme se todos os nós estão on-line na interface da Web.
- Teste se as solicitações de API são roteadas corretamente entre diferentes nós
Recomenda-se que o ambiente de produção use o Nginx para obter o balanceamento de carga e configure a transmissão criptografada por HTTPS.
Essa resposta foi extraída do artigoGPT-Load: ferramenta de gerenciamento de chaves e pool de agentes de modelo de alto desempenhoO