Biblioteca C++ e Python que executa modelos Transformer, como Whisper, Llama e NLLB, com mais rapidez e menos memória usando quantização e kernels otimizados.
FareedKhan-dev/kimi-k3-in-c
Um mecanismo de inferência em C99 que executa o modelo Kimi K3, com 2,78 trilhões de parâmetros, em uma única CPU, carregando especialistas do disco sem GPU nem BLAS.
- Estrelas
- 10,896
- Forks
- 1,702
- Issues abertas
- 4
- Último commit
- mês passado
O que é?
kimi-k3-in-c é um mecanismo de inferência para o modelo mixture-of-experts Kimi K3, da Moonshot, escrito em C99 portável e sem dependência de BLAS, frameworks ou GPU. O checkpoint ocupa 1,56 TB em disco, mas apenas 16 dos 896 especialistas roteados são ativados por camada para cada token. Por isso, o mecanismo mantém o tronco denso na memória e carrega o restante do disco conforme necessário. O projeto informa um pico de memória residente de 8,24 GB em uma configuração da classe de 8 GB, com saída idêntica byte a byte em diferentes limites de memória; mais RAM apenas acelera a geração.
O mecanismo cobre todo o pipeline: leitor de safetensors, leitor de configuração, tokenizer compatível com o oficial, kernels MXFP4 para especialistas, atenção KDA e MLA, cache LRU de especialistas e modo de chat por texto usando o formato oficial XTML. A configuração envolve baixar o checkpoint, empacotar o tronco em um único arquivo e escolher um perfil de memória. Uma suíte de testes compara o mecanismo a uma implementação de referência em PyTorch usando um modelo pequeno, sem precisar dos pesos completos.
O projeto é voltado a desenvolvedores que querem estudar ou executar modelos MoE muito grandes em hardware comum e também serve como referência para o projeto de sistemas de inferência de baixo nível. A velocidade de geração é limitada pela taxa de transferência do disco, então um drive NVMe local faz bastante diferença.
Recursos principais
- 01Executa o Kimi K3, com 2,78 trilhões de parâmetros, em uma única CPU e com cerca de 8 GB de RAM no pico.
- 02Carrega especialistas roteados do disco e mantém os mais usados em um cache LRU.
- 03Usa kernels MXFP4 e caminhos SIMD com AVX2 ou NEON, sem dependência de BLAS.
- 04Produz saídas idênticas byte a byte em qualquer limite de memória.
- 05Inclui um modo de chat por texto que usa o formato XTML e o tokenizer oficiais.
- 06Inclui uma suíte de testes que compara as saídas a uma implementação de referência em PyTorch.
Casos de uso
- Executar um modelo MoE muito grande em um laptop ou desktop sem GPU.
- Estudar como funcionam, em C, a inferência de mixture-of-experts com carregamento sob demanda e o estado KV ou recorrente.
- Usá-lo como referência ao criar um mecanismo de inferência em CPU para outros modelos grandes.
- Avaliar como a taxa de transferência do armazenamento limita a geração de LLMs em CPU.
Início rápido
- 1
Clone o repositório
git clone https://github.com/FareedKhan-dev/kimi-k3-in-c.git - 2
Acesse o diretório do projeto
cd kimi-k3-in-c - 3
Compile o mecanismo
make -j - 4
Execute a suíte de testes (não é necessário checkpoint)
make test
Antes de usar
- Para executar o modelo completo, é necessário ter um checkpoint de 1,56 TB no disco e cerca de 1,7 TB de espaço livre no total.
- A geração é muito lenta em máquinas modestas: cerca de 26 segundos por token com 8 GB de RAM.
- O modo de chat e o modelo completo exigem o download separado do checkpoint oficial de grande porte.
Em coleções
Tópicos
Perguntas frequentes
- O que é kimi-k3-in-c?
- Um mecanismo de inferência em C99 que executa o modelo Kimi K3, com 2,78 trilhões de parâmetros, em uma única CPU, carregando especialistas do disco sem GPU nem BLAS. kimi-k3-in-c é um mecanismo de inferência para o modelo mixture-of-experts Kimi K3, da Moonshot, escrito em C99 portável e sem dependência de BLAS, frameworks ou GPU. O checkpoint ocupa 1,56 TB em disco, mas apenas 16 dos 896 especialistas roteados são ativados por camada para cada token. Por isso, o mecanismo mantém o tronco denso na memória e carrega o restante do disco conforme necessário. O projeto informa um pico de memória residente de 8,24 GB em uma configuração da classe de 8 GB, com saída idêntica byte a byte em diferentes limites de memória; mais RAM apenas acelera a geração.
- kimi-k3-in-c é gratuito? Qual é a licença?
- kimi-k3-in-c é open source sob a licença Apache-2.0. Confira os termos da licença antes de usá-lo em produtos comerciais.
- kimi-k3-in-c ainda é mantido?
- Atualizado nos últimos 6 meses. O último commit de kimi-k3-in-c foi em 2 de out. de 2026.
- Para que posso usar kimi-k3-in-c?
- Executar um modelo MoE muito grande em um laptop ou desktop sem GPU. Estudar como funcionam, em C, a inferência de mixture-of-experts com carregamento sob demanda e o estado KV ou recorrente. Usá-lo como referência ao criar um mecanismo de inferência em CPU para outros modelos grandes. Avaliar como a taxa de transferência do armazenamento limita a geração de LLMs em CPU.
- Como instalar kimi-k3-in-c?
- Clone o repositório: git clone https://github.com/FareedKhan-dev/kimi-k3-in-c.git Acesse o diretório do projeto: cd kimi-k3-in-c Compile o mecanismo: make -j Execute a suíte de testes (não é necessário checkpoint): make test
- Onde consigo kimi-k3-in-c?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/FareedKhan-dev/kimi-k3-in-c
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
Um mecanismo de inferência C++ leve e independente para executar modelos Gemma do Google na CPU.
Inferência de transformers no estilo Llama 2, escrita em Mojo puro em um único arquivo, com vetorização SIMD e multithreading.
Framework de pesquisa para inferência de LLMs com CPU e GPU heterogêneas e fine-tuning LoRA/completo de grandes modelos MoE com memória de GPU limitada.
Um mecanismo de inferência local que executa o modelo mixture-of-experts Qwen3.8-Flash-Next em GPUs NVIDIA Blackwell, com APIs compatíveis com OpenAI e Anthropic.
Toolkit baseado em PyTorch com implementações de LLMs open-weight do zero para pré-treinamento, fine-tuning, avaliação e serving de mais de 20 modelos.