vitacodex
Roadmap do modelo · versão leiga

Como o Vitacodex sai de um bom protótipo para um motor mais confiável.

Hoje o Vitacodex já mostra grupos genéticos de forma bonita e compreensível. O próximo passo não é "jogar mais genética" na tela. É organizar melhor o raciocínio do motor: corrigir as falhas de recuperação, criar camadas de léxicos dedicadas, montar clusters descritivos e só então expandir a base de SNPs — nessa ordem, com critério.

Fase 0fix estrutural primeiro
Léxicoscampos separados, não concatenados
Clustersbridge para o DNA Explorer
+SNPsexpansão após infraestrutura sólida

O novo motor em linguagem simples

Em vez de só buscar SNPs por similaridade, o Vitacodex passa a combinar lookup estruturado, léxico dedicado, clusters por tema e narrativa final mais coerente.

Lookup estruturado rsID, gene e categoria respondem direto, sem passar por busca semântica.
Léxico dedicado Sinônimos enriquecem o BM25, sem degradar o embedding do texto clínico.
Camada de clusters SNPs agrupados em blocos biológicos. Score composto por tema, não por marcador isolado.
Confiança em dois tiers Primary (sólido) e Exploratory (hipótese). Sem misturar os dois na saída.
Narrativa humana Saída final por cluster, não por rsID. Menos relatório, mais orientação útil.

O que muda no motor

explicado sem jargão pesado

0. Fix estrutural antes de tudo

Antes de qualquer expansão, o motor precisa de um índice de lookup dedicado. Consultas por rsID, gene e categoria hoje retornam 0% de precisão porque o intent router detecta o tipo mas não tem caminho de resposta. É uma tarde de código com impacto imediato.

1. Léxicos como campo separado, não texto embutido

O léxico funciona como dicionário inteligente — mas precisa enriquecer o BM25, não contaminar o embedding. Texto limpo para semântica, texto rico para busca por palavra. Dois campos, não um.

embed_text → narrativa clínica limpa bm25_text → embed_text + sinônimos + aliases + tags

2. Clusters descritivos com score real

Em vez de responder SNP por SNP, o modelo agrupa sinais em blocos biológicos legíveis. Cada cluster tem um score calculado a partir dos genótipos do usuário, pesado por confidence_weight. É isso que alimenta o DNA Explorer.

metabolismo energético cardiometabólico neuro e foco micronutrientes performance envelhecimento

3. Expansão de SNPs com infraestrutura pronta

Só depois que lookup, léxico e clusters funcionam faz sentido adicionar mais marcadores. Antes disso, cada SNP novo entra sem garantia de ser encontrado quando precisar. Quantidade sem estrutura é ruído.

4. Confiança e narrativa final

Nem todo sinal genético deve virar recomendação forte. O modelo separa primary (confidence ≥ 0.6) de exploratory (hipótese). Isso protege a credibilidade do Vitacodex e melhora o alinhamento com o Clinical Sync.

Como isso aparece para o usuário

saída mais clara

Antes

"Você tem um SNP com associação moderada a X."

Depois

"Seu perfil mostra um padrão no cluster de metabolismo energético. Isso sugere atenção maior à resposta a carboidratos e à estabilidade glicêmica."

O ganho real

Menos sensação de relatório técnico fragmentado. Mais sensação de sistema que realmente entende o conjunto e traduz o resultado para uma pessoa normal.

Impacto no produto

O DNA Explorer passa a mostrar scores reais por cluster. O Clinical Sync cruza exames com clusters ativos, não com rsIDs isolados. O Target recebe sinais por tema, não por marcador.

Roadmap de melhorias do modelo

ordem revisada após análise técnica
Fase 0 · urgente

Fix estrutural

Corrigir o que está quebrado antes de construir sobre ele. Impacto imediato, baixo custo.

  • lookup index rsID/gene/categoria
  • category alias map (consumer lang)
  • split texto embed vs BM25
  • two-tier confidence return
Não estava no roadmap original. Análise de avaliação revelou RSID = 0% precisão.
Fase 1 · revisada

Léxicos corretos

Dicionário inteligente como campo separado — enriquece BM25 sem degradar semântica.

  • embed_text limpo por SNP
  • bm25_text com sinônimos e aliases
  • aliases de genes e rsIDs
  • ligações sintoma–mecanismo
Fase 2

Clusters descritivos

Grupos legíveis com score real. Bridge entre o backend e o DNA Explorer do Vitacodex.

  • cluster_definitions.json
  • SNP → cluster membership
  • cluster scorer por genótipo
  • output numérico para UI
Fase 3

Modelo descritivo + expansão

Narrativa por cluster, prioridade semanal e — agora sim — expansão organizada de SNPs.

  • plain-language renderer (LLM)
  • priority ranker semanal
  • expansão guiada por tema
  • alinhamento com Clinical Sync

Análises de suporte

documentação técnica e de mercado

Bases públicas que sustentam a evolução

fontes de referência
NCBI / NIH (EUA)
Âncora técnica para localizar variantes, genes e contexto de variação genética. Base para manter o índice organizado e rastreável.
base estrutural e validação
GWAS Catalog (NHGRI-EBI)
Reúne associações SNP-traço replicadas. Fonte para enriquecer o lexicon, calibrar confidence_weight e decidir quais sinais entram nos clusters.
associação SNP-traço
Curadoria interna do Vitacodex
A camada que transforma dados públicos em produto. Prioridade clínica, linguagem humana, agrupamento por tema e decisão do que merece destaque.
diferencial do produto

O que não vamos fazer

para manter foco e credibilidade

Não expandir SNPs antes de fixar a recuperação

Adicionar marcadores sobre um sistema de busca com 0% de precisão por rsID só aumenta ruído. A expansão entra na Fase 3, depois da infraestrutura sólida.

Não tratar toda associação como verdade forte

Alguns sinais são sólidos (confidence ≥ 0.6), outros são hipóteses exploratórias. O modelo deixa isso visível em dois tiers distintos.

Não depender só de busca semântica

Busca por similaridade é útil para queries livres, mas falha em consultas exatas. Por isso entram lookup index, léxicos dedicados e category alias map.

Não falar como paper

O pitch do produto é explicar bem. A ciência fica por trás. A interface continua simples, elegante e acessível.