← Catálogo

Engenharia00

Como a isanna funciona.

Uma arquitetura sob os produtos hospedados, e o desenho de recuperação por trás do substrato de memória.

cliente
   │
   ▼
Cloudflare      DNS · CDN / proxy
   │
   ▼
Fly.io          contêineres de aplicação por produto
   │
   ▼
Postgres        schema isolado por produto

Um caminho a aprender em vez de um por produto: um serviço cresce sem ser reconstruído, e um produto novo herda a rota em vez de inventá-la. O builder é a exceção — é um fluxo de linha de comando, sem nada hospedado.

Cada produto é dono do próprio schema e se conecta com um papel de login próprio, que não consegue contornar a segurança em nível de linha. Onde uma tabela pertence a um usuário, a checagem de propriedade é uma política no banco de dados, e não uma condição que alguém precise lembrar de escrever.

Nem toda tabela pertence a um usuário, e essas são delimitadas pela aplicação — uma escolha que cada migração registra por escrito, de modo que qual mecanismo protege qual tabela seja uma pergunta respondível, e não presumida.

Memória para agentes de código é um problema de recuperação antes de ser um problema de armazenamento. Busca vetorial sozinha, sobre um repositório que só cresce, devolve o que é semelhante em vez do que é relevante — e não sabe distinguir uma decisão vigente daquela que a substituiu. O desenho decorre disso, e é construído em estágios.

Em uso
Busca híbrida — lexical e vetorial juntas — com o mxbai-embed-large produzindo os embeddings, e depois um reranker sobre os candidatos combinados. A recuperação de primeiro estágio tem permissão de ser generosa, e o reranker decide o que de fato aparece.
Em uso
O modelo de embedding e sua dimensão são desacoplados do schema de armazenamento, de modo que o modelo possa ser trocado sem migração.
A seguir
Reescrita de consulta, e recuperação contextual — embutir um trecho junto com o contexto que o torna legível por si só.
Mais adiante
Árvores hierárquicas de resumo, recuperação em grafo e modelos de interação tardia como o ColBERT. São fortes onde um corpus tem estrutura pesada ou exige raciocínio entre documentos; este ainda não é nenhum dos dois, então ficam atrás do trabalho acima, e não à frente dele.

A sequência é a decisão que vale explicar: cada estágio precisa merecer o índice que acrescenta e a latência que gasta, de modo que os ganhos baratos cheguem antes dos elaborados.