PesquisaCódigo Aberto 🇷🇺 27.07.2026 20:04

Escrevendo um Transformer Apenas com Decodificador para LLM do Zero em Python

Google/DeepMindGoogle/DeepMind OpenAIOpenAI MetaMeta
O autor de uma série de artigos descreve em detalhes a implementação de um bloco transformer para um pequeno LLM apenas com decodificador usando o framework PyTorch. Os componentes abordados incluem: atenção multicabeças mascarada, rede feed forward com GELU, camada de normalização e conexões residuais. O artigo explica a diferença em relação à arquitetura original: a pré-normalização (Pre-LN) é usada em vez da pós-normalização para estabilidade no treinamento.
O autor Vladimir, usando o exemplo de uma tarefa de marca d'água para texto licenciado, implementa um bloco transformer para um LLM decoder-only. Ele explica que o transformer é uma arquitetura do artigo do Google "Attention Is All You Need", onde uma sequência é processada em paralelo usando um mecanismo de atenção. A Atenção Multi-Cabeça baseia-se em três matrizes de projeção: Q, K, V. No primeiro passo, a similaridade entre tokens é calculada (matriz de atenção) e, no segundo passo, o conteúdo dos tokens é misturado de acordo com os pesos encontrados. Por eficiência, todas as cabeças de atenção são implementadas através de uma única projeção linear grande. Após a atenção, uma Rede Feed Forward com ativação GELU e dropout é aplicada. A construção do transformer inclui normalização (Pré-LN) e conexões residuais. Além disso, uma máscara causal é usada para o decoder. No geral, o bloco está pronto para uso na montagem de um LLM, treinamento e geração de texto.
Fonte: Habr — хаб NLP — original
Nossos posts anteriores sobre este tópico ↓
Notícias frescas