# Banco vetorial ou banco de grafos? Por que agentes de IA precisam dos dois
> Entenda como vetores encontram significado e grafos validam relações, com um exemplo brasileiro e uma arquitetura SurrealDB para agentes mais confiáveis.
**Autores:** Mauro Mequelussi
**Publicado:** 2026-08-05T12:00:00.000Z
**Atualizado:** 2026-08-05T12:00:34.810677817Z
**Tags:** banco-de-grafos, rag, agentes-de-ia, surrealdb, banco-vetorial, busca-vetorial
---
Quem já usou um agente de inteligência artificial para pesquisar produtos provavelmente viveu uma situação parecida: a resposta parecia convincente, mas alguma informação importante estava errada.

O produto não estava mais disponível. A entrega não atendia ao CEP. O preço havia mudado. Ou a recomendação não respeitava todas as condições do pedido.

Isso acontece porque compreender uma pergunta e encontrar algo relacionado a ela são apenas partes do problema. Para responder corretamente, um agente também precisa entender relações entre clientes, produtos, vendedores, estoques, endereços, pagamentos e políticas comerciais.

É nesse ponto que a combinação entre **banco de dados vetorial** e **banco de grafos** se torna especialmente interessante. A busca vetorial ajuda a IA a entender o significado da pergunta. O grafo verifica como as informações estão conectadas no mundo real.

No SurrealDB, um registro pode guardar o vetor e participar do grafo. A aplicação consegue partir de uma busca por significado e percorrer relações na mesma consulta, sem costurar dois resultados em código.

::callout{type="info" title="A ideia central"}
Busca vetorial ajuda a encontrar o que parece relevante. Grafo ajuda a verificar o que está conectado e continua válido. Para agentes que participam de decisões reais, encontrar uma resposta provável é diferente de encontrar uma resposta válida.
::

## O problema de usar duas fontes separadas

Uma arquitetura comum usa:

- um banco vetorial para conteúdos semanticamente relacionados;
- um banco relacional ou de grafos para dados estruturados.

Em teoria, a divisão é organizada. Na prática, o agente consulta uma base para descobrir candidatos e outra para confirmar preço, disponibilidade, permissão ou relacionamento. Depois, uma função precisa combinar as listas.

Esse caminho pode gerar:

- mais tempo de resposta;
- duplicação;
- sincronização entre sistemas;
- divergência de identificadores;
- dados com momentos de atualização diferentes;
- lógica de combinação difícil de testar;
- contexto contraditório entregue ao modelo.

Imagine um produto transformado em vetor quando estava disponível. Mais tarde, o estoque acaba, mas a atualização ainda não chegou à base vetorial.

O agente encontra o produto porque ele combina perfeitamente com a intenção do cliente. Depois recomenda algo que já não pode ser comprado.

O modelo não falhou ao compreender. A arquitetura separou o sistema que encontra uma informação daquele que conhece seu estado atual.

## O que é um banco de dados vetorial?

Textos, imagens e outros conteúdos podem ser transformados em representações numéricas chamadas embeddings. Elementos com significados próximos tendem a ocupar regiões próximas nesse espaço.

Considere:

> Preciso de um notebook leve, com bateria para uma viagem e que rode ferramentas de design.

Uma busca tradicional procura palavras como “notebook”, “leve”, “bateria” e “design”.

A busca vetorial pode encontrar descrições como:

- equipamento portátil para profissionais criativos;
- computador com autonomia para uso fora do escritório;
- notebook adequado para edição de imagens;
- modelo compacto para trabalho em movimento.

As pessoas raramente descrevem necessidades com os mesmos termos usados em catálogos e documentos. Essa capacidade de aproximar significados é valiosa para agentes.

## O que um banco de grafos acrescenta?

Semelhança não garante validade. O agente ainda precisa verificar:

- disponibilidade;
- vendedor;
- região atendida;
- prazo para o CEP;
- compatibilidade;
- condição de pagamento;
- política aplicável;
- permissão do usuário.

Essas informações são relações.

Em um grafo:

- cliente está localizado em uma cidade;
- cidade pertence a um estado;
- vendedor atende uma região;
- vendedor oferece um produto;
- centro de distribuição mantém estoque;
- transportadora atende certos CEPs;
- acessório é compatível com um modelo.

O agente percorre conexões para descobrir não apenas o que parece relevante, mas o que atende às condições.

## Um exemplo hipotético para o mercado brasileiro

Imagine um marketplace brasileiro com um agente de compras. Um consumidor pergunta:

> Quero um notebook de até R$ 5 mil para trabalhar com AutoCAD. Preciso receber em Campinas até sexta-feira e prefiro uma loja bem avaliada.

O cenário é hipotético, mas as decisões são comuns em catálogos reais.

### O que a busca vetorial encontra

Ela analisa descrições, especificações, avaliações e conteúdos para localizar notebooks relacionados a:

- uso profissional;
- engenharia e arquitetura;
- processamento gráfico;
- software CAD;
- faixa de preço.

Pode compreender que “modelagem técnica” e “projetos de arquitetura” têm relação com o pedido mesmo sem repetir “AutoCAD”.

### O que o grafo confirma

Depois dos candidatos, o agente verifica:

- modelos abaixo do limite;
- vendedores com estoque;
- reputação;
- centros que atendem Campinas;
- entrega antes da data;
- configuração compatível;
- condições de pagamento.

A resposta depende das relações entre produto, vendedor, estoque, localidade e transporte.

## A diferença na resposta

Com somente busca semântica:

> O modelo X é uma boa opção para AutoCAD, pois tem processador de alto desempenho e placa dedicada.

Parece útil, mas não confirma compra.

Com busca vetorial e grafo:

> Encontrei dois modelos dentro do orçamento e compatíveis com os requisitos. O modelo X está disponível por R$ 4.799 em um vendedor com avaliação 4,8, possui estoque em um centro que atende Campinas e previsão até quinta. O modelo Y custa menos, mas ultrapassa o prazo.

A segunda resposta demonstra que condições foram verificadas.

## Como o SurrealDB reúne vetores e grafos

No SurrealDB, um documento ou produto é um registro comum. Ele pode conter seu embedding e, ao mesmo tempo, estar ligado a outros registros por relações.

Pense neste modelo:

```text
produto
  ├── embedding da descrição
  ├── preço
  └── oferecido_por → vendedor

vendedor
  ├── avaliação
  └── atende → região

estoque
  ├── quantidade
  └── localizado_em → centro_distribuição
```

A consulta pode começar pelos produtos mais próximos do significado do pedido e já trazer relações com vendedor, região e estoque.

Em termos conceituais:

> Encontre produtos semanticamente relacionados ao pedido e retorne somente aqueles dentro do orçamento, com estoque, vendedor bem avaliado e entrega possível para o CEP antes da data.

A busca encontra candidatos. O grafo aplica contexto operacional. O banco devolve um conjunto coerente para o modelo explicar.

Isso evita uma “fusão” manual entre rankings independentes. Também reduz o risco de consultar momentos diferentes dos dados.

::read-more{slug="rag-agentes-surrealdb" label="Veja como RAG, vetores e grafos entram em um agente" placement="mid_content"}

## Por que isso pode melhorar a precisão?

Modelos de linguagem produzem textos plausíveis. Plausibilidade não é garantia de correção.

Busca vetorial localiza contexto. Grafo restringe esse contexto com fatos e relações. Essa combinação ajuda a evitar:

- produto indisponível;
- serviço fora da região;
- plano incompatível;
- fornecedor sem autorização;
- documento sem permissão;
- material substituído por versão mais nova;
- recomendação que viola uma regra.

Em vez de pedir ao modelo que decida tudo, a aplicação usa o banco para definir quais opções são válidas. O modelo interpreta a solicitação e apresenta o resultado.

## Outros cenários brasileiros

### Bancos e instituições financeiras

O agente encontra produtos relacionados ao objetivo e verifica perfil, elegibilidade, relacionamento, limites e restrições.

> Qual opção posso usar para financiar energia solar na minha empresa?

A busca encontra linhas relacionadas. O grafo verifica quais estão disponíveis para porte, localização e perfil. A decisão financeira continua submetida às regras e responsáveis adequados.

### Planos de saúde

O sistema pode aproximar a necessidade descrita das especialidades e depois verificar profissionais, unidades, convênios, cidade e horário.

Decisões médicas exigem controles e supervisão. A combinação pode melhorar a busca por serviço, não substituir diagnóstico.

### Educação

Uma plataforma recomenda cursos por interesse. O grafo considera conhecimentos prévios, cursos concluídos, pré-requisitos, turmas e trilhas.

O agente encontra o próximo curso adequado, não apenas uma descrição parecida.

### Agronegócio

Documentos técnicos, culturas, regiões, clima, insumos e fornecedores formam uma rede. Um agente pode localizar orientação relevante e filtrar por região, cultura, fase e disponibilidade, com validação profissional quando necessária.

### Atendimento corporativo

O agente pesquisa políticas por significado. O grafo verifica área, cargo, projeto, nível de acesso e versão atual. Isso reduz a chance de apresentar documento antigo ou indevido.

## Quando ainda faz sentido usar dois sistemas?

Unificar não é uma regra absoluta.

Dois sistemas podem ser adequados quando:

- a organização já opera uma plataforma vetorial em grande escala;
- o volume exige especialização;
- equipes e ciclos de dados são independentes;
- a migração custaria mais do que a complexidade atual;
- o workload precisa de recursos muito específicos.

O artigo original da SurrealDB reconhece que uma solução dedicada pode superar um único nó em throughput vetorial para volumes extremos. A decisão relevante é: seu produto realmente tem esse problema ou está pagando a complexidade antes da necessidade?

Para muitos agentes corporativos, o corpus cabe confortavelmente em uma base unificada. Nesse caso, menos infraestrutura e contexto coerente podem ter mais valor que um benchmark isolado.

## Menos infraestrutura não elimina arquitetura

Ainda é preciso definir:

- como embeddings são criados e atualizados;
- quais entidades entram no grafo;
- quais filtros são obrigatórios;
- versionamento;
- autorização;
- auditoria;
- comportamento sem informação suficiente;
- avaliação da recuperação;
- custo e latência.

Separe responsabilidades:

- modelo interpreta e comunica;
- banco recupera e valida;
- aplicação controla ações.

Um agente não deveria transformar recomendação em ação crítica sem validações adicionais.

## Segurança e LGPD

Grafos sobre clientes, colaboradores ou pacientes podem revelar relações que não seriam evidentes em registros isolados. Por isso:

- colete o necessário;
- defina finalidade;
- limite acesso por identidade e contexto;
- registre consultas sensíveis;
- estabeleça retenção e exclusão;
- evite dados pessoais em embeddings sem necessidade;
- proteja relações;
- permita auditar fontes.

Precisão não significa usar mais dados. Significa usar dados corretos, autorizados e atuais.

## O que muda para quem cria agentes?

Além de escolher o modelo, pergunte:

- de onde veio a informação?
- ela está atualizada?
- o usuário pode acessá-la?
- as condições foram verificadas?
- uma relação invalida a recomendação?
- o agente consegue explicar a fonte?

Essas perguntas levam a qualidade para a camada de dados, onde fatos e regras podem ser testados.

## Perguntas frequentes

### Banco vetorial e banco de grafos são concorrentes?

Não. Eles resolvem perguntas diferentes. Vetores aproximam significados; grafos representam relações e caminhos.

### SurrealDB substitui qualquer banco vetorial?

Não em todos os volumes e requisitos. Ele é especialmente interessante quando a mesma aplicação precisa de documentos, vetores e relações consistentes.

### Isso elimina alucinação?

Não. Melhora o contexto e permite filtros, mas o modelo ainda pode interpretar ou redigir incorretamente. Use fontes, avaliações e limites de ação.

### Preciso começar com um grafo complexo?

Não. Modele as relações que alteram a validade da resposta: permissão, versão, estoque, região, dependência. Expanda quando uma pergunta real exigir.

## Conclusão

Busca vetorial permite compreender uma solicitação mesmo quando o usuário não usa os termos do catálogo. Grafo permite entender como produtos, pessoas, localidades, permissões e regras estão conectados.

Separadamente, resolvem problemas importantes. Juntos, entregam um contexto mais completo.

No marketplace hipotético, não basta encontrar o notebook parecido com a necessidade. É preciso confirmar preço, estoque, reputação, compatibilidade e prazo.

Quanto mais o agente participa de processos comerciais, financeiros ou operacionais, maior é a necessidade de combinar compreensão semântica com dados estruturados, relações verificáveis e regras de negócio.

### Referência e leitura recomendada

Este conteúdo foi baseado em [“One query, not two stores: how vector + graph in SurrealDB makes agents more accurate”](https://surrealdb.com/blog/one-query-not-two-stores-how-vector-graph-in-surrealdb-makes-agents-more-accurate), publicado no blog da SurrealDB, e adaptado com exemplos para o mercado brasileiro.

- [SurrealDB: busca vetorial](https://surrealdb.com/docs/surrealdb/reference-guide/vector-search)
- [SurrealDB: relações e grafos](https://surrealdb.com/docs/surrealql/statements/relate)
- [SurrealDB: RAG](https://surrealdb.com/docs/surrealdb/ai/rag)