Memória Contextual (RAG Local)
Modelos locais como Llama 3 8B não podem receber todo o código-fonte de um repositório grande no seu prompt inicial. O limite de janela de tokens (Context Window) iria estourar e sua memória RAM local se esgotaria. Para resolver isso, o byCode possui um motor nativo de RAG (Retrieval-Augmented Generation).
Project Awareness e Indexação
Quando você abre um projeto no byCode, nós utilizamos um módulo Go chamado ProjectScanner para fazer uma varredura inicial da estrutura da pasta.
- Auto-Descoberta: Identificamos as tecnologias (se é um projeto Next.js, Go, Python, etc.) e extraímos dependências sem enviar nada à nuvem.
- Indexação Local (VectorStore): Quebramos os arquivos em pequenos chunks (pedaços) lógicos. O motor em Go cria vetores semânticos rápidos desses chunks e os salva localmente em um banco BBolt hiper-rápido no seu disco.
Por que o armazenamento em disco importa?
A indexação leva alguns segundos (ou minutos para repos gigantescos). Salvando os vetores no BBolt, na próxima vez que você abrir o projeto no byCode, o carregamento da inteligência artificial sobre a base de código é instantâneo.
Como a IA utiliza a Memória?
Durante o Chat, quando o Agente avalia sua pergunta, ele injeta silenciosamente um contexto relevante nos bastidores.
Se você solicitar:
"Ajuste o componente de botão secundário..."
O motor de IA usa o Semantic Recall para pescar exatamente os 2 ou 3 arquivos relevantes na sua pasta, mesmo se você não os tiver aberto na tela.
Boas Práticas
- Deixe-o Indexar: Quando importar repositórios enormes na primeira vez, espere a barra de Project Awareness concluir.
- Seja Específico: Mencionar nomes de classes ou bibliotecas no prompt aumenta drasticamente a taxa de acerto do Recall Semântico local.