Pular para o conteúdo
NovidadesIA

Repositórios em Alta

Execução de modelos Qwen ganha motor em C++ focado na placa RTX 5090

Com foco em máxima performance em uma única placa de vídeo, o projeto implementa APIs compatíveis com OpenAI e Anthropic.

Edição: Anderson Gomes
· 5 min de leitura

O projeto NInfer foi desenvolvido pelo autor Neroued como um mecanismo de inferência escrito do zero em C++ e CUDA. O software ganhou tração recente com o registro de 1.380 novas estrelas em um curto intervalo, acumulando 2.992 marcações na plataforma. A ferramenta resolve a sobrecarga de sistemas genéricos de execução ao direcionar todo o processamento de modelos da família Qwen para uma única placa gráfica com parâmetros rígidos de execução.

Dados rápidos

  • Repositório: Neroued/ninfer
  • Licença: Apache-2.0
  • Linguagem: C++
  • Estrelas e forks: 2.992 estrelas e 586 forks
  • Posição no ranking: não informado no repositório
  • Data da consulta: 2026-10-14

Gargalos de inferência local e foco de projeto

A execução de modelos densos e com arquitetura de mistura de especialistas, conhecidos pela sigla MoE, frequentemente exige pilhas de software complexas que dividem a atenção entre múltiplos fabricantes e arquiteturas de placas. Essa generalização impõe perdas de eficiência pelo gerenciamento genérico de memória e pela falta de adaptação a recursos específicos de chips recentes.

O NInfer ataca esse problema estabelecendo limites intencionais na configuração do ambiente de tempo de execução. O sistema opera exclusivamente com uma GPU, mantém apenas um modelo residente na memória e fixa entre uma e oito vias de execução no momento da inicialização.

Essa abordagem elimina camadas intermediárias de abstração ao lidar com modelos como Qwen3.6 e Qwen3.8 de 27 bilhões de parâmetros, além de variantes MoE como o Qwen3.6-35B-A3B. O motor organiza os pesos em formatos quantizados específicos, como nvfp4 e groupwise-int, reduzindo o tráfego de dados e estabilizando a latência.

Arquitetura interna e fluxo de instalação

O funcionamento do motor baseia-se em artefatos no formato proprietário v3 com extensão ponto ninfer. Cada arquivo reúne configurações do modelo, pesos codificados, vínculos lógicos e recursos de interface, permitindo que o executável materialize tensores diretamente no dispositivo sem etapas adicionais de conversão em tempo de execução.

A compilação do software é realizada diretamente a partir do código-fonte, dispensando empacotadores externos ou alvos tradicionais de instalação no sistema operacional:

git clone https://github.com/Neroued/ninfer.git
cd ninfer

cmake -S . -B build -G Ninja -DCMAKE_BUILD_TYPE=Release
cmake --build build -j

Para o gerenciamento de contexto, o motor utiliza uma área compartilhada de chave e valor, conhecida como cache KV, mantida em precisão fp8 com teto lógico de até 240.000 tokens por requisição. Checkpoints reutilizáveis preservam estados de conversação terminados e fronteiras estáveis de entrada, permitindo pausar requisições ativas para memória auxiliar no computador e retomá-las conforme a liberação de recursos na placa gráfica.

Aplicações práticas suportadas

  • Servidores locais para agentes autônomos: a ferramenta permite manter um servidor contínuo com suporte a múltiplas vias de concorrência e prefix caching, atendendo múltiplos passos de raciocínio encadeados sem reprocessar instruções anteriores.
  • Substituição de serviços de nuvem via API: desenvolvedores podem integrar sistemas legados por meio de rotas HTTP locais compatíveis com os formatos estruturados das empresas OpenAI e Anthropic.
  • Processamento direto via linha de comando: a interface local viabiliza consultas únicas com diagnósticos completos de latência, vazão de tokens por segundo e relatório de decodificação especulativa emitidos no canal padrão de erros.
  • Entrada multimodal combinada: o suporte a formatos estruturados permite analisar dados visuais como imagens e vídeos diretamente na linha de comando por meio de rotinas integradas às bibliotecas FFmpeg.

Especificidades técnicas frente a soluções genéricas

Diferente de ambientes amplos de inferência que oferecem suporte a dezenas de placas e distribuições variadas, o NInfer rejeita qualquer arquitetura CUDA que não seja o alvo sm_120a. Isso significa que o software não tenta manter compatibilidade retroativa com gerações anteriores de semicondutores.

O projeto adota compilação nativa em C++20 com CUDA 13.1 homologado e dispensa dependências de tempo de execução baseadas em interpretadores para a execução principal. Enquanto outros sistemas gerenciam múltiplos modelos simultâneos com trocas dinâmicas, o NInfer mantém o modelo fixo na memória física, priorizando a previsibilidade de latência e a retenção do estado de contexto em memória pinning no sistema hospedeiro.

Restrições de operação e maturidade do código

O repositório apresenta exigências estritas de hardware e software que restringem o uso. O ambiente exige sistema Linux de 64 bits, uma placa de vídeo NVIDIA GeForce RTX 5090 e o conjunto de ferramentas CUDA compatível com sm_120a, além de bibliotecas de desenvolvimento FFmpeg e libcurl em versão igual ou superior a 7.85.

No aspecto de maturidade, o código foi criado em 26 de junho de 2026 e possui 155 problemas em aberto, sem nenhuma versão estável lançada até a última alteração registrada em 14 de outubro de 2026. Não há instalador binário pronto nem página oficial na web, exigindo conhecimento técnico de compilação por parte do usuário. Detalhes como classificação em índices públicos não constam no repositório.

Resumo rápido

  • Projeto: NInfer
  • Licença: Apache-2.0
  • Linguagem: C++
  • Estrelas: 2.992
  • Ranking: não informado no repositório
  • Risco principal: dependência estrita da placa RTX 5090 e ausência de versões compiladas estáveis

Fontes

  • Repositório no GitHub: https://github.com/Neroued/ninfer
  • Release: nenhuma release encontrada
  • Página oficial: sem site oficial
  • C++
  • Apache-2.0
  • Repositórios em Alta
  • GitHub Trending

Fonte: Repositório no GitHub · Como produzimos as matérias