Sobre o projeto

O LLM gateway é um proxy/roteador leve e autocontido, projetado para uso pessoal de usuário único com hardware local. Ele gerencia dinamicamente múltiplos engines compatíveis com Llama.cpp, selecionando e iniciando automaticamente a variante de modelo apropriada com base nos parâmetros da requisição recebida — especialmente nos requisitos de tamanho de contexto. O sistema estima o uso de tokens via tokenizer independente ou endpoints do engine em execução, reinicia engines com configurações otimizadas quando necessário e encerra instâncias ociosas para conservar memória. Ele suporta configuração através de scripts Lua (ex: example.cfg.lua), definindo configurações do servidor e variantes de modelos com diferentes tamanhos de contexto, caminhos de binários e argumentos de inicialização. Os usuários podem configurar múltiplas variantes por modelo (ex: baixo VRAM vs alta performance) para alternância dinâmica. O gateway escuta em endereços IPv4/IPv6 configuráveis e expõe endpoints compatíveis com a API da OpenAI, como /v1/chat/completions e /v1/models. Apenas uma requisição é processada por vez devido ao travamento interno. Atualmente, implementa apenas o endpoint de chat completions e suporta apenas engines llama.cpp, embora a arquitetura permita extensões. A configuração envolve a instalação de dependências Python via init.bat/sh, a edição de arquivos de configuração e a execução com run.bat/sh ou uv run main.py. AVISO: Configurações inadequadas podem causar exaustão de memória ou travamento do sistema. A configuração é validada no carregamento usando scripts Lua incorporados. Este é um software experimental destinado a pesquisa/testes; não é recomendado para uso em produção.