Repolode
FareedKhan-dev

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. 1

    Clone o repositório

    git clone https://github.com/FareedKhan-dev/kimi-k3-in-c.git
  2. 2

    Acesse o diretório do projeto

    cd kimi-k3-in-c
  3. 3

    Compile o mecanismo

    make -j
  4. 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