Ultralytics YOLO27: Entre na lista de espera.
Licenciar o YOLO
Voltar ao glossário da Ultralytics

Semantic Search

A pesquisa semântica ordena documentos e imagens de acordo com o significado de uma consulta, em vez de pelas palavras exatas, utilizando embeddings, pesquisa dos vizinhos mais próximos e rerankers.

A busca semântica classifica documentos, imagens e outros itens de acordo com a semelhança entre seus significados e o de uma consulta, em vez de se basear nas palavras que têm em comum. Uma busca por "meu gato está com fome" pode retornar uma página intitulada "Horário de alimentação de um gatinho novo", embora as duas não compartilhem nenhuma palavra. Os sistemas modernos fazem isso com embeddings: um codificador neural converte consultas e itens em vetores próximos uns dos outros quando seus significados são semelhantes, e a busca vetorial encontra os itens mais próximos. A busca na Web avançou nessa direção em 2019, quando o Google começou a usar BERT para entender consultas de busca, uma mudança que, segundo a empresa, afetou uma em cada dez pesquisas em inglês nos EUA.

Como funciona a busca semântica#

A maioria dos sistemas de busca semântica recupera resultados com um bi-encoder e os refina com um reranqueador. O bi-encoder converte cada documento em embedding uma única vez, antecipadamente, e os vetores são armazenados em um banco de dados vetorial. No momento da consulta, somente ela é convertida em embedding, e um índice aproximado de vizinhos mais próximos retorna os principais candidatos por similaridade de cosseno. O Sentence-BERT (2019) tornou isso viável para frases: encontrar o par mais semelhante entre 10.000 frases levava cerca de 65 horas com um cross-encoder BERT e cerca de 5 segundos com seus embeddings de frases. Em seguida, o Dense Passage Retrieval (2020) mostrou que embeddings aprendidos superavam a classificação de palavras-chave BM25 em 9 a 19 pontos na precisão de recuperação de passagens entre as 20 principais em tarefas de resposta a perguntas de domínio aberto. Por fim, um reranqueador cross-encoder lê a consulta e cada candidato em conjunto para reordenar a lista curta com mais precisão.

Este exemplo compara a sobreposição de palavras com a similaridade de embeddings usando a biblioteca Sentence Transformers:

from sentence_transformers import SentenceTransformer

model = SentenceTransformer("sentence-transformers/all-MiniLM-L6-v2")

documents = [
    "How to reset a forgotten account password",
    "Feeding schedule for a new kitten",
    "Quarterly sales report for the retail division",
    "Best hiking trails near Denver",
]
query = "my cat is hungry"

# Keyword search: documents sharing at least one word with the query
query_words = set(query.lower().split())
print("Keyword matches:", [d for d in documents if query_words & set(d.lower().split())])

# Semantic search: rank documents by cosine similarity of their embeddings
doc_embeddings = model.encode(documents)
query_embedding = model.encode(query)
scores = model.similarity(query_embedding, doc_embeddings)[0]
best = int(scores.argmax())
print(f"Semantic match: {documents[best]!r} (cosine {scores[best]:.2f})")

A correspondência de palavras-chave retorna uma lista vazia, pois nenhum documento contém "meu", "gato", "está" ou "fome". A busca semântica retorna o horário de alimentação do gatinho, com similaridade de cosseno de 0,56, o documento cujo significado é mais próximo.

  • Busca por palavras-chave: Classifica documentos por correspondências exatas de termos usando fórmulas como BM25. Lida bem com nomes, números de peças e palavras raras que os embeddings podem confundir, mas não identifica sinônimos nem paráfrases.
  • Busca híbrida: Combina a recuperação por palavras-chave e a recuperação semântica e mescla os resultados; é uma configuração comum em sistemas de busca e RAG de produção.
  • Segmentação semântica: Uma tarefa de visão computacional sem relação com a busca semântica, que atribui uma classe a cada pixel de uma imagem e tem em comum apenas a palavra "semântica".
  • Cache semântico: Aplica a mesma correspondência baseada no significado às solicitações de LLM, reutilizando uma resposta armazenada quando um novo prompt tem o mesmo significado de um anterior.

Aplicações no mundo real#

  • Geração aumentada por recuperação (RAG): Encontra as passagens de que um modelo de linguagem precisa, mesmo quando a forma como o usuário escreve é diferente da documentação.
  • Busca de patentes: Encontra anterioridades que descrevem a mesma invenção usando terminologia diferente.
  • Busca de produtos no varejo: Associa uma consulta como "sapatos para ir ao trabalho num dia chuvoso" a tênis impermeáveis cujos anúncios nunca usam essas palavras.
  • Sistemas de recomendação: Sugerem artigos ou produtos cujos embeddings ficam próximos dos itens que o usuário já escolheu.

Pesquisar imagens pelo significado#

Modelos treinados com aprendizado contrastivo em pares de imagens e legendas, como o CLIP, convertem texto e imagens em embeddings no mesmo espaço, permitindo que uma consulta textual classifique fotos sem tags nem legendas. A solução de busca semântica de imagens da Ultralytics funciona assim: sua classe VisualAISearch converte uma vez em embeddings todas as imagens de uma pasta usando CLIP, converte cada consulta textual em embedding no mesmo espaço e retorna até 30 imagens cuja similaridade de cosseno com a consulta supera um limite, ordenadas da mais à menos semelhante. Assim, uma consulta como "um cachorro sentado em um banco" encontra fotos correspondentes em uma coleção sem rótulos.

Explore as soluções

Visão computacional no desporto

Visão computacional no desporto

Descubra como o Ultralytics YOLO impulsiona a visão computacional no esporte com rastreamento de jogadores e bolas, análise de desempenho, insights para treinadores e reabilitação de atletas.
Saiba mais
Visão computacional para imagens aéreas

Visão computacional para imagens aéreas

Transforma imagens de drones e aéreas em informações em tempo real para a agricultura, a aquacultura, a conservação e a análise geoespacial com Ultralytics YOLO.
Saiba mais
Visão computacional no setor aeroespacial

Visão computacional no setor aeroespacial

Aplica visão computacional na indústria aeroespacial com Ultralytics YOLO para inspecionar aeronaves, detetar objetos estranhos na pista (FOD), apoiar operações aeroportuárias em terra e detetar defeitos em materiais compósitos.
Saiba mais
Visão computacional na segurança

Visão computacional na segurança

Protege todas as instalações com os modelos Ultralytics YOLO. A IA visual permite monitorizar perímetros, detetar ameaças, reconhecer matrículas e melhorar a segurança no local de trabalho.
Saiba mais
Visão computacional na robótica

Visão computacional na robótica

Potencia máquinas mais inteligentes com os modelos Ultralytics YOLO. A IA visual na robótica permite navegação autónoma, perceção, rastreamento de objetos e controlo em tempo real.
Saiba mais
Visão computacional na logística

Visão computacional na logística

Otimize a logística com os modelos Ultralytics YOLO. A IA de visão permite inspecionar pacotes, fazer triagem, rastrear veículos e monitorar a segurança em tempo real nos armazéns.
Saiba mais
Visão computacional no varejo

Visão computacional no varejo

Reinvente o varejo com os modelos Ultralytics YOLO. A IA de visão permite rastrear o estoque, monitorar prateleiras, gerenciar filas e obter insights mais inteligentes sobre clientes.
Saiba mais
Visão computacional na área da saúde

Visão computacional na área da saúde

Desenvolva soluções de saúde com os modelos Ultralytics YOLO. A IA de visão na área da saúde permite obter imagens médicas mais rapidamente, diagnósticos mais inteligentes e monitoramento de pacientes.
Saiba mais
Visão computacional na manufatura

Visão computacional na manufatura

Otimize a manufatura com modelos Ultralytics YOLO. A IA visual impulsiona o controle de qualidade, a detecção de defeitos, a conformidade com o uso de EPI e a automação da linha de montagem.
Saiba mais
Visão computacional no setor automotivo

Visão computacional no setor automotivo

Aplique visão computacional no setor automotivo com modelos Ultralytics YOLO. A IA visual aumenta a segurança viária, aprimora a assistência ao condutor e viabiliza a automação de veículos para estradas mais inteligentes.
Saiba mais
Visão computacional na agricultura

Visão computacional na agricultura

Leve a IA de visão à agricultura inteligente com os modelos Ultralytics YOLO. Aprimore o monitoramento de plantações, o rastreamento de animais e a agricultura de precisão para obter safras maiores e mais inteligentes.
Saiba mais

Vamos construir juntos o futuro da IA!

Comece sua jornada rumo ao futuro do aprendizado de máquina