🧠 SL5 Aura: Integração LLM offline avançada¶
Status: Produção pronta Motor: Ollama (Lhama 3.2 3B) Latência: Instantâneo (<0,1s no acerto do cache) / ~20s (geração na CPU)
1. A Filosofia do “Arquiteto e Estagiário”¶
Aura opera em um modelo híbrido para equilibrar precisão e flexibilidade:
The Architect (RegEx/Python): Execução determinística e instantânea para comandos do sistema (por exemplo, “Abrir navegador”, “Aumentar volume”).
O Estagiário (LLM Local): Lida com consultas difusas, resumos e conhecimento geral. Ele só é acionado se nenhuma correspondência de regra estrita ou palavras-chave específicas forem usadas.
2. Arquitetura de desempenho¶
Para tornar um LLM local utilizável em CPUs padrão sem aceleração de GPU, implementamos uma Estratégia de desempenho de 3 camadas:
Camada 1: O “Modo Instantâneo” (palavras-chave)¶
Gatilho: Palavras como “Instant”, “Schnell”, “Sofort”.
Lógica: Ignora totalmente o LLM. Ele compara palavras-chave de entrada do usuário com o banco de dados SQLite local usando interseção definida.
Latência: < 0,05s
Camada 2: O Cache Inteligente (SQLite)¶
Lógica: Cada prompt tem hash (SHA256). Antes de perguntar ao Ollama, verificamos
llm_cache.db.Recurso “Variação Ativa”: Mesmo que exista um acerto no cache, o sistema às vezes (20% de chance) gera uma nova variante para aprender frases diferentes para a mesma pergunta. Idealmente, armazenamos cerca de 5 variantes por pergunta.
Recurso “Hashing Semântico”: Para perguntas longas (>50 caracteres), usamos o LLM para extrair palavras-chave primeiro (por exemplo, “guia de instalação”) e fazer o hash delas em vez da frase completa. Isso corresponde a “Como faço para instalar?” com “Instruções de instalação, por favor”.
Latência: ~0,1s
Camada 3: A geração da API (fallback)¶
Lógica: Se não existir cache, chamamos a API Ollama (
http://localhost:11434/api/generate).Otimização:
Limites rígidos:
num_predict=60força o modelo a parar após aproximadamente 40 palavras.Ping de entrada: Textos grandes (README) são passados via STDIN para evitar limites de argumentos do sistema operacional.
Latência: ~15-25s (depende da CPU)
3. Aterramento do Sistema (Anti-Alucinação)¶
LLMs genéricos tendem a inventar elementos GUI (botões, menus). Injetamos um AURA_TECH_PROFILE estrito em cada prompt do sistema:
Sem GUI: Aura é um serviço CLI headless.
Sem arquivos de configuração: Lógica é código Python, não
.json/.xml.Gatilhos: O controle externo funciona por meio da criação de arquivo (
touch /tmp/sl5_record.trigger), não de APIs.Instalação: Leva de 10 a 20 minutos devido aos downloads do modelo de 4 GB (evita mentiras do tipo “Ele é instalado em 3 segundos”).
4. A ponte da área de transferência (segurança Linux)¶
Os serviços em segundo plano (systemd) não podem acessar a área de transferência do X11/Wayland diretamente devido ao isolamento de segurança.
Solução: Um script de sessão do usuário (
clipboard_bridge.sh) espelha o conteúdo da área de transferência em um arquivo de disco RAM (/tmp/aura_clipboard.txt).Aura: Lê este arquivo, ignorando todos os problemas de permissão.
5. Autoaprendizagem (aquecimento de cache)¶
Fornecemos um script warm_up_cache.py.
Lê o projeto
README.md.Pede ao LLM que invente prováveis perguntas dos usuários sobre o projeto.
Simula essas questões no Aura para pré-preencher o banco de dados.