Conteúdo

O .NET 10 está oficialmente lançado e, com ele, o EF Core 10 entrega o recurso mais transformador do ano: busca vetorial nativa e production-ready diretamente no ORM, com suporte GA no SQL Server 2025, Azure SQL Database e Azure Cosmos DB for NoSQL.

Em 11 de novembro de 2025, o Entity Framework Core 10 alcançou a disponibilidade geral com um dos avanços mais significativos de toda a sua história: o suporte nativo completo a operações de busca vetorial diretamente no ORM, sem dependência de bibliotecas externas ou provedores especializados.

Esse recurso marca o momento em que o EF Core deixa de ser apenas um mapeador objeto-relacional tradicional e passa a oferecer, de forma integrada e totalmente suportada, as primitivas necessárias para implementar Retrieval-Augmented Generation (RAG) e outras técnicas de pesquisa semântica em aplicações corporativas.

O suporte abrange dois provedores estratégicos para o ecossistema Microsoft: o SQL Server 2025 (incluindo Azure SQL Database) e o Azure Cosmos DB for NoSQL. Em ambos os casos, o recurso encontra-se em General Availability desde o lançamento do .NET 10, com documentação oficial completa, telemetria no Application Insights, suporte da Microsoft e garantia de compatibilidade com futuras atualizações.

Suporte no SQL Server 2025 e Azure SQL Database

O SQL Server 2025 introduz o tipo de dado vector(n) como cidadão de primeira classe, com limite máximo de 16.384 dimensões por vetor. O EF Core 10 oferece mapeamento direto através do tipo SqlVector, permitindo que propriedades de entidade sejam declaradas exatamente como qualquer outro tipo escalar ou complexo.

A função VECTOR_DISTANCE() está disponível nativamente no motor do SQL Server e suporta as três métricas mais utilizadas em aplicações de embeddings: similaridade cosseno, distância euclidiana (L2) e produto interno (dot product). A execução dessas operações é altamente otimizada, aproveitando instruções SIMD (AVX-512 em ambientes on-premises e AMX em instâncias Hyperscale do Azure SQL).

Embora os índices HNSW (Hierarchical Navigable Small World) ainda não estejam disponíveis no lançamento inicial do SQL Server 2025, a Microsoft já confirmou que o comando CREATE VECTOR INDEX entrará em preview público em janeiro de 2026, com disponibilidade geral prevista para o segundo trimestre do mesmo ano.

Suporte no Azure Cosmos DB for NoSQL

No Azure Cosmos DB, o suporte a vetores sai definitivamente da fase de preview e torna-se totalmente estável. Os vetores são armazenados como arrays JSON nativos dentro dos documentos, beneficiando-se da indexação DiskANN — algoritmo desenvolvido pelo Microsoft Research que oferece excelente equilíbrio entre precisão de recall e desempenho em grandes volumes de dados.

Um diferencial importante do Cosmos DB é o suporte nativo a busca híbrida por meio da função Reciprocal Rank Fusion (RRF), que permite combinar, em uma única consulta, pontuação de busca textual (full-text) com pontuação vetorial. Essa capacidade elimina a necessidade de mesclar resultados em nível de aplicação, reduzindo significativamente a complexidade do código e melhorando a latência final percebida pelo usuário.

Exemplo prático

Considere uma base de conhecimento corporativa composta por documentos técnicos, políticas internas e respostas validadas por áreas especializadas:

A consulta semântica para recuperar os documentos mais relevantes torna-se extremamente simples e expressiva:

No Azure Cosmos DB, a mesma operação pode ser enriquecida com busca híbrida:

Vantagens arquiteturais de manter vetores e dados no mesmo lugar

A decisão de integrar busca vetorial diretamente nos provedores existentes traz benefícios profundos em múltiplas dimensões:

  • Consistência transacional absoluta: o vetor e o documento fonte estão na mesma unidade de armazenamento, eliminando completamente problemas de sincronização assíncrona ou eventual consistency.
  • Simplicidade operacional: não há mais necessidade de pipelines paralelos de ingestão, workers dedicados para atualização de embeddings ou mecanismos de reconciliação entre bases distintas.
  • Segurança e conformidade: os embeddings nunca deixam o perímetro do banco de dados corporativo, facilitando o atendimento a requisitos de LGPD, GDPR e normas setoriais brasileiras.
  • Redução do Total Cost of Ownership: elimina a camada de custo associada a serviços especializados de banco vetorial, aproveitando a infraestrutura já provisionada e licenciada.
  • Manutenibilidade: atualizações no conteúdo do documento podem recalcular o embedding dentro da mesma transação ou trigger, mantendo a base sempre consistente.

Conclusão

O suporte nativo à busca vetorial no Entity Framework Core 10 representa uma evolução profunda na forma como aplicações .NET corporativas podem incorporar inteligência artificial generativa. Pela primeira vez, é possível construir pipelines completos de RAG com consistência forte, complexidade mínima e desempenho adequado à grande maioria dos cenários reais, utilizando exclusivamente componentes já presentes na stack tecnológica da organização.

A integração direta com SQL Server 2025 e Azure Cosmos DB transforma o que antes exigia múltiplas camadas especializadas em uma funcionalidade natural do ORM, alinhando-se perfeitamente aos princípios de simplicidade, robustez e manutenibilidade que sempre caracterizaram as melhores práticas do ecossistema .NET.

FAQ: Perguntas Frequentes

1. O suporte está realmente em General Availability desde 11/11/2025?

Sim. Disponível em GA para SQL Server 2025, Azure SQL Database e Azure Cosmos DB for NoSQL.

2. Qual o limite máximo de dimensões suportado?

16.384 no SQL Server 2025; 4.096 no Azure Cosmos DB for NoSQL no lançamento atual.

3. É necessário criar índices vetoriais manualmente no SQL Server?

Sim, no lançamento inicial. O comando CREATE VECTOR INDEX estará disponível em preview público a partir de janeiro de 2026.

4. Há suporte a tipos quantizados (int8, float16)?

Não na versão 10.0 GA. O suporte está planejado para o EF Core 10.1.

5. O recurso funciona com embeddings gerados por modelos locais ou de outros provedores?

Sim. Qualquer coleção de valores float (array, List, ReadOnlySpan) é aceita diretamente como SqlVector.

Compartilhe:

Tiago Tartari

Tiago Tartari

Eu ajudo e capacito pessoas e organizações a transformar problemas complexos em soluções práticas usando a tecnologia para atingir resultados extraordinários.

Qual é o desafio
que você tem hoje?