O Capítulo 4 detalha a estrutura técnica do projeto, explicando desde a matemática dos modelos de linguagem até os dispositivos físicos de baixo custo que viabilizam a soberania tecnológica.
4.1 LLMs e a Arquitetura Transformer
4.1.1 Grandes Modelos de Linguagem (LLMs)
Sistemas projetados para compreender e produzir texto em escala massiva. Sua inteligência deriva de um treinamento com vastos conjuntos de dados para prever com precisão o próximo token.
Capacidades Principais:
4.1.2 Arquitetura Transformer
Arquitetura baseada em paralelismo, processando sequências simultaneamente para evitar a perda de contexto.
Pondera a relevância de cada palavra via vetores Query, Key e Value, resolvendo ambiguidades semânticas.
Injeta vetores matemáticos para restaurar a ordem temporal, distinguindo o sentido através da estrutura da frase.
4.2 Ecossistema de Modelos de Linguagem
4.2.1 Modelos Open-Source (Código Aberto)
Sistemas onde o código-fonte e parâmetros são públicos. A filosofia baseia-se na colaboração global e inovação da comunidade.
Permite que qualquer indivíduo estude e compreenda profundamente o funcionamento interno do sistema.
Elimina obstáculos financeiros de licenciamento, democratizando o acesso à tecnologia de ponta.
Os modelos comerciais não serão trabalhados no desenvolvimento do projeto AInclude.
4.2.2 Plataformas de Desenvolvimento
Plataforma consolidada como a infraestrutura central para o ecossistema de Inteligência Artificial de código aberto.
Hospeda e versiona modelos e conjuntos de dados gigantescos via Git LFS. Os Model Cards garantem transparência científica.
Mantém as bibliotecas transformers (API de alto nível) e datasets, otimizada para processamento textual.
Ambiente SaaS baseado na interface do Jupyter Notebook, eliminando a necessidade de infraestrutura local de alto custo.
Oferece acesso a hardware especializado como NVIDIA T4 e A100, essenciais para o ajuste fino de modelos massivos.
Suporta nativamente bibliotecas de aceleração e quantização para validação experimental de modelos de 7B.
4.2.3 A Solução: Unsloth (Otimização Vital)
Biblioteca focada exclusivamente em otimizar o Fine-Tuning de modelos Llama e Mistral, resolvendo gargalos através da linguagem Triton.
Redução de VRAM
Reduz o uso de memória em até 70%.
Aceleração
Aumenta drasticamente o throughput.
Integração QLoRA
Suporte nativo para modelos 4-bits.
4.3 Estratégias de Otimização e Adaptação de LLMs
4.3.1.1 Engenharia de Prompts: Fundamentos
Habilidade essencial para explorar capacidades da IA através de áreas-chave para instruções sistemáticas.
Entendimento da arquitetura e das restrições do modelo para criar instruções claras.
Uso de Few-shot e Chain of Thought para processamento passo a passo.
4.3.1.2 Engenharia de Prompts: Boas Práticas
Instruções no início com separadores (ex: ###) para distinguir comando de contexto.
Especificação exata do formato de saída (XML/JSON) com exemplos visuais.
4.3.2 RAG: Arquitetura e Processo
A incorporação eficiente do RAG é dividida em dois componentes principais organizados por fase:
Importação de dados brutos e fragmentação em chunks coesos para respeitar a janela de contexto finita.
Conversão em vetores matemáticos para armazenamento semântico num VectorStore.
Pesquisa semântica para resgatar os chunks que possuem a maior similaridade com a consulta.
Anexação do contexto recuperado à pergunta original para que o LLM gere uma resposta fundamentada.
4.3.3.1 Fine-Tuning: Recomendações Prévias
Especializa a IA numa tarefa particular aproveitando o conhecimento prévio. Recomenda-se esgotar prompts antes:
Prompts bem estruturados podem atingir resultados satisfatórios sem alterar pesos.
Iterações imediatas com prompts aceleram o ciclo de desenvolvimento experimental.
Prompts servem para gerar e limpar as bases de dados para o treino futuro.
4.3.3.2 Fine-Tuning: Casos de Uso e Vantagens
Técnica indispensável para cenários onde o prompt não atinge a precisão normativa necessária:
Adoção de tom específico e saídas estruturadas (JSON/XML/Markdown).
Especialização técnica e redução de latência ao usar modelos 7B eficientes.
Exige muito menos poder computacional por utilizar base pré-treinada.
Aplicação de padrões complexos memorizados para resolver novas tarefas.
4.3.4 Taxonomia dos Métodos de Fine-Tuning
Esta seção esclarece que o ajuste fino não é uma técnica única (monolítica), mas sim um espectro de metodologias que variam de acordo com o número de parâmetros atualizados e o objetivo final do treinamento.
4.3.4.1 Fine-Tuning Completo (Full SFT)
Atualização integral de todos os parâmetros da rede neural pré-treinada utilizando o algoritmo de retropropagação.
Oferece máxima plasticidade neural, permitindo que o modelo aprenda novos conhecimentos profundos e altere comportamentos base.
Custo massivo (100GB+ VRAM) e alto risco de esquecimento catastrófico das tarefas aprendidas originalmente.
4.3.4.2 Adaptação Eficiente (PEFT)
Estratégia adotada no projeto AInclude. Desenvolvida para mitigar custos ao congelar os pesos originais e treinar apenas pequenos adaptadores.
Injeta matrizes de posto baixo nas camadas de atenção, reduzindo parâmetros treináveis em até 10.000 vezes.
Introduz quantização 4-bit NormalFloat (NF4) e paging de otimizadores, viabilizando o ajuste em hardware acessível.
4.3.4.3 Alinhamento de Preferências
Categoria focada em ajustar o tom, estilo e segurança das respostas para convergir com as expectativas e valores humanos.
Guia a IA via sistema de recompensas baseado em avaliações humanas, embora instável e complexo de implementar.
Abordagem estável que otimiza o modelo diretamente sobre dados de preferência (pares de respostas "vencedora vs. perdedora").
4.3.5.1 Abordagens Híbridas: Fine-Tuning e RAG
A dicotomia entre as técnicas é mal interpretada como excludente. Ambas podem e devem ser complementares em casos complexos. A escolha arquitetural baseia-se em seis dimensões críticas:
O RAG é obrigatório se a aplicação exige acesso a dados dinâmicos em tempo real.
O Fine-Tuning é significativamente superior para forçar o modelo a assumir uma persona.
O RAG oferece mecanismos de verificação de fatos que reduzem a propensão a invenções.
Sem datasets de alta qualidade (necessários para Fine-Tuning), o RAG surge como a alternativa inicial.
Se o corpus muda com frequência, o RAG evita o custo de re-treinar continuamente o modelo.
Diferente do Fine-Tuning, o RAG oferece explicabilidade ao permitir citar a fonte da resposta.
4.3.5.2 A Decisão Metodológica (Framework AInclude)
A correção normativa do ENEM exige adesão rigorosa a regras e formatos. O desafio não era ensinar gramática à IA, mas forçá-la a adotar a persona de um avaliador do INEP, cumprindo três requisitos obrigatórios:
Aplicar regras exclusivas da banca.
Respeitar estritamente saltos de 40 pontos.
Gerar dados estritamente em formato XML.
O Motor Central do Framework
Devido à necessidade de emular um padrão de raciocínio especialista e formatar saídas complexas, a injeção de contexto via RAG seria insuficiente. Por isso, o Fine-Tuning Supervisionado (SFT via PEFT LoRA/QLoRA) foi escolhido como o motor central, mantendo o RAG apenas como mecanismo auxiliar para consultar os textos motivadores.
4.4 Ferramentas de Integração e Orquestração
Esta seção detalha a camada de software (middleware) necessária para transformar os modelos de linguagem numa aplicação funcional de correção de redações capaz de rodar localmente. A prioridade foi adotar ferramentas de código aberto com alta eficiência no gerenciamento de hardware restrito.
4.4.1 Llama.cpp e a Padronização GGUF
Estratégia para superar as limitações de peso e processamento de frameworks tradicionais (como PyTorch) durante a fase de inferência em hardware de borda.
Biblioteca em C/C++ puro. Possui otimizações nativas para processadores ARM de 64 bits, sendo ideal para executar modelos no Raspberry Pi 5.
Guarda toda a topologia, pesos e metadados. Permite Mapeamento de Memória (mmap), lendo o modelo diretamente no espaço virtual em milissegundos.
O algoritmo Q4_K_M reduz o modelo de 14GB para 4.2GB (perda < 1%), garantindo estabilidade dentro dos 8GB de RAM disponíveis.
4.4.2 Ollama: Orquestração de Inferência Local
Funciona como o servidor que gerencia e executa a Inteligência Artificial, permitindo que ela rode de forma autónoma no dispositivo sem depender de serviços em nuvem.
Baixa e guarda os modelos localmente. Garante que todo o processamento ocorra 100% desconectado, mantendo a privacidade e segurança.
Ficheiros de texto que definem o modelo base, fixam parâmetros e injetam a instrução pedagógica da Persona (SYSTEM) na memória da IA.
Cria uma API local (porta 11434) em JSON, permitindo que o software principal (Python) envie redações e receba correções de forma padronizada.
4.5 Dispositivos de Baixo Custo
Esta seção foca na viabilização do projeto em ambientes com recursos financeiros limitados, explorando o uso de hardwares acessíveis para promover uma educação mais inclusiva. Detalha como essas tecnologias podem ser usadas para laboratórios de computação, servidores locais offline e projetos criativos.
4.5.1 Computadores de Placa Única (SBCs)
Os SBCs (Single Board Computers) são módulos que integram todos os componentes de um computador (processador, memória e entradas/saídas) numa única placa compacta. O grande foco é a análise do Raspberry Pi 5 (lançado no final de 2023), escolhido como o hardware central do projeto por ser 2 a 3 vezes mais rápido que a sua geração anterior e ter produção garantida até pelo menos 2036.
Utiliza um processador de 64 bits (Quad-core Arm Cortex-A76 a 2.4GHz), proporcionando fluidez para cargas de trabalho intensas.
Um chip dedicado que gere as entradas e saídas, dobrando a largura de banda para unidades USB.
Inovação crucial que permite conectar SSDs NVMe de altíssima velocidade, além de acelerar a leitura de cartões microSD.
Permitem a conexão simultânea de duas câmaras ou duas telas de alta resolução, sendo essencial para projetos de visão computacional.
Versões com até 16GB de RAM, fator determinante para executar modelos gigantes de IA diretamente na memória física, com suporte a duas telas 4K.
Inclui botão de energia físico, relógio de tempo real (RTC) e conector dedicado para depuração.