Como esta prova de conceito funciona.
Esta é uma versão funcional reduzida da plataforma. Parte do processo já roda de verdade; parte é simulada de propósito. Aqui está exatamente onde essa fronteira passa — sem maquiagem.
A fronteira: real vs. simulado
O ponto da prova de conceito é demonstrar a capacidade técnica central — ler um cardápio qualquer e confrontá-lo com o mercado — sem investir ainda na parte mais cara e frágil (a coleta de concorrentes).
Leitura do seu cardápio
- Extração estruturada do cardápio enviado (foto, PDF ou texto) por um modelo de visão.
- Reconhecimento semântico: "Bruschetta Pomodoro", "Bruschetta de Tomate" e "Bruschetta Clássica" viram o mesmo item comparável.
- Cálculo da posição de cada prato contra a distribuição de preço da região (mediana, quartis, variação).
- Estimativa de custo de insumos por prato sob demanda: o modelo sugere um ponto de partida em R$ (com faixa) para destravar a margem sem você calcular do zero. É estimativa de mercado, não o custo do seu fornecedor — vem marcada como estimativa, com faixa visível, e você ajusta com o seu número real.
O mercado da região
- coleta real Delivery — preço de verdade. A base traz 1.883 estabelecimentos de SP, a quase totalidade com preço real coletado de apps de entrega (base de junho/2026). É coleta verdadeira; só não roda ao vivo a cada análise.
- referência calibrada Salão — régua de faixa, ainda não coleta. Para mesa/à la carte, a coleta ainda não cobre o mercado. No lugar usamos uma referência calibrada sobre as faixas públicas de preço de salão de SP — uma régua de mercado, não o preço cravado de uma casa. Vem marcada como referência, nunca apresentada como coleta.
- coleta real Âncoras premium — reais, e por isso o calibrado é conservador. No topo, ancoramos com preço real de cardápio público de steakhouses de referência de SP (PDF datado de 2026). Elas marcam o teto de mercado e mostram que a régua de salão fica abaixo do topo real — calibrada para baixo, não inflada.
- A comparação é por canal: você diz se o seu cardápio é de salão ou delivery e confrontamos contra o mesmo canal. Onde a referência de salão se aplica, salão contra salão. Onde ainda não há, um cardápio de salão cai para delivery como proxy explícito — marcado, nunca disfarçado, e nunca estimamos um preço de salão a partir do delivery.
- Em produção, essa camada é alimentada por coleta contínua de cardápios — substituindo a régua calibrada por coleta real de salão em todas as categorias — o ponto caro e sujeito a bloqueio que fica fora do escopo da demonstração.
O pipeline, passo a passo
O que acontece entre enviar o cardápio e ver o comparativo.
Entrada
Você cola o texto ou envia a foto do cardápio em /app.
Extração
O modelo de visão lê a imagem/texto e devolve item, descrição e preço estruturados.
Normalização
Cada item é casado semanticamente com o catálogo de itens comparáveis da região. Quando o cardápio declara peso ou volume, o preço também é lido por unidade — R$/100g para pratos, R$/100ml para bebidas — para comparar porções diferentes na mesma régua.
Mercado
Os preços vêm de uma base pré-carregada (1.883 casas de SP — delivery com preço real coletado, mais uma régua de salão calibrada sobre faixas públicas, ancorada por casas premium reais), filtrada pelo canal que você escolheu (em produção: coleta contínua de salão e delivery).
Comparativo
Mediana, quartis e variação por item, com leitura por linha. Os preços também são lidos como conjunto ordenado — uma escada de preços que aponta vãos grandes demais entre faixas e degraus que cobram mais sem entregar mais (R$/100g ou R$/100ml), além do item-âncora que ancora a percepção do resto. Em bebida, o cardápio raramente repete o volume; quando ele não está escrito, o R$/100ml usa o volume de referência da categoria — marcado como estimado (régua de comparação, não o volume cravado da casa). Renderizado no relatório.
Estimativa de custo
Sob demanda, o modelo estima o custo de insumos por prato (em R$, com faixa) para você não preencher a margem do zero — por prato no modal ou em lote pela grade. É estimativa de mercado, não o custo do seu fornecedor: vem marcada como estimativa e você ajusta com o seu número. Há também um atalho offline por % do preço, para quando a IA não está disponível.
Descrição que vende
Sob demanda, o modelo escreve frases de cardápio a partir só do nome, da porção e da descrição existente — sem inventar ingrediente. A chamada é ao vivo: por prato na tabela, ou para os heróis da matriz (estrelas e oportunidades) de uma vez, com as duas variações por prato.
O servidor mínimo
Um único serviço Node + Express, com Postgres para persistência de sessão e login social Google (Logto),
ambos já em produção. Serve as páginas estáticas e expõe um endpoint de análise. Roda em container Docker na
infraestrutura did.lu, atrás de HTTPS automático, em gastro.did.lu.
Endpoint central: POST /api/analyze recebe { text } ou { image },
chama o modelo, cruza com a base e devolve o comparativo. GET /api/market expõe a distribuição
da região; GET /api/health é o healthcheck.
O que a versão de produção acrescenta
Nada do que está acima muda. O que entra é o que ficou de fora por escolha:
Coleta real e contínua de cardápios de concorrentes — inclusive de salão para todas as categorias — substituindo a base simulada · histórico de relatórios por conta · cota e cobrança · e, com massa de dados suficiente, o mapa público de preços por região.