Sobre o projeto
## Visão Geral do Projeto
Este repositório é a implementação oficial do artigo "Conditional Memory via Scalable Lookup: A New Axis of Sparsity for Large Language Models", publicado pela DeepSeek. Ele investiga a "memória condicional" (conditional memory), uma dimensão de esparsidade complementar ao Mixture of Experts (MoE), e a instancia como módulos Engram — uma modernização dos embeddings N-gram clássicos com busca em O(1).
## Conteúdo Principal
- **Alocação de Esparsidade**: O artigo formaliza o trade-off entre computação neural (MoE) e memória estática (Engram), propondo uma lei de escala em formato de U para orientar a alocação de capacidade.
- **Validação Empírica**: Sob restrições de parâmetros e FLOPs equivalentes, o modelo Engram-27B demonstra melhorias consistentes em relação à linha de base MoE nos domínios de conhecimento, raciocínio, código e matemática.
- **Análise Mecanística**: A análise sugere que o Engram alivia a carga das camadas iniciais na reconstrução de padrões estáticos, potencialmente preservando profundidade efetiva para raciocínio complexo.
- **Eficiência do Sistema**: O módulo usa endereçamento determinístico, permitindo descarregar tabelas de embeddings massivas para a memória do host com sobrecarga mínima de inferência.
## Arquitetura e Avaliação
O módulo Engram aprimora a rede principal recuperando memórias N-gram estáticas e fundindo-as com estados ocultos dinâmicos. O repositório fornece diagramas de arquitetura e arquivos-fonte drawio. A seção de avaliação inclui gráficos sobre leis de escala, pré-treinamento em larga escala, treinamento de contexto longo e estudos de caso.
## Início Rápido
Recomenda-se Python 3.8+ e PyTorch. Após instalar as dependências, execute o script de demonstração para visualizar a lógica central do módulo Engram. Observe que este código é uma versão de demonstração, simulando componentes padrão como Attention/MoE/mHC, com foco em exibir o fluxo de dados do módulo Engram.
## Licença e Contato
O uso do modelo está sujeito à licença contida no repositório. Dúvidas podem ser enviadas via issues ou e-mail.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.