📖

Cos'è Ricerca semantica?

La ricerca semantica trova i risultati in base al significato, non alle parole chiave esatte. Scopri come funziona, perché è importante e dove viene utilizzata.

La ricerca semantica è un modo di trovare informazioni che si concentra sul significato dietro una query anziché sulle parole esatte digitate dall'utente. Invece di richiedere una corrispondenza esatta delle parole chiave, interpreta l'intento, i sinonimi e il contesto per restituire risultati concettualmente pertinenti. È ciò che consente a un motore di ricerca di riconoscere che chi digita "come riparare un rubinetto che perde" sta davvero chiedendo informazioni sulle riparazioni idrauliche, anche quando nessun documento contiene letteralmente entrambe le frasi.

Come funziona la ricerca semantica

Al cuore della ricerca semantica ci sono gli embedding — rappresentazioni numeriche del testo prodotte da un modello linguistico. Ogni porzione di testo, che sia una query o un documento, viene convertita in un vettore ad alta dimensionalità che ne cattura il contenuto semantico. Quando un utente effettua una ricerca, la sua query viene incorporata nello stesso spazio vettoriale e il sistema recupera i documenti i cui vettori si trovano più vicini al vettore della query, tipicamente misurati tramite similarità del coseno o distanza euclidea.

Ad esempio, una query come "consigli per lavorare da casa" può corrispondere a un documento intitolato "suggerimenti per la produttività del lavoro da remoto" perché le due frasi producono vettori simili, anche se condividono quasi nessuna parola. I sistemi moderni spesso combinano vettori semantici con segnali tradizionali basati su parole chiave (un approccio ibrido) per bilanciare precisione e copertura.

Perché è importante

La ricerca semantica migliora notevolmente l'esperienza utente nelle applicazioni in cui gli utenti non conoscono il vocabolario giusto, in cui i contenuti pertinenti sono formulati in molti modi diversi, o in cui l'intento conta più della formulazione. Alimenta basi di conoscenza aziendali, portali di assistenza clienti, sistemi di recupero di documenti legali e medici, scoperta di prodotti nell'e-commerce e la fase di recupero nei sistemi di generazione aumentata tramite recupero (RAG). Facendo emergere contenuti concettualmente correlati, riduce il divario tra il modo naturale in cui le persone pongono le domande e il modo in cui le informazioni sono archiviate.

Componenti chiave

  • Modello di embedding: una rete neurale (spesso un transformer) che mappa il testo in vettori densi, come sentence-transformers, gli embedding di OpenAI o i modelli di embedding di Cohere.
  • Database vettoriale: un archivio specializzato per la ricerca rapida dei vicini più prossimi su larga scala — esempi includono Pinecone, Weaviate, Milvus e pgvector.
  • Metrica di similarità: una misura di distanza (coseno, prodotto scalare o euclidea) utilizzata per classificare i candidati.
  • Reranker: un modello cross-encoder opzionale che riassegna un punteggio ai candidati migliori per una maggiore precisione.
  • Recupero ibrido: combinazione della ricerca vettoriale con BM25 o filtri per parole chiave per gestire termini rari, nomi propri e identificatori esatti.

La ricerca semantica è diventata un elemento fondamentale delle moderne applicazioni di intelligenza artificiale, soprattutto perché i grandi modelli linguistici si affidano ad essa per ancorare le proprie risposte a informazioni aggiornate o proprietarie.

Domande frequenti

What is the difference between semantic search and keyword search?
Keyword search matches the literal words in a query against documents, while semantic search matches meaning using vector embeddings. As a result, semantic search can return relevant documents that use different wording, synonyms, or paraphrases from the query, which keyword search would miss.
What are embeddings in semantic search?
Embeddings are numerical vector representations of text produced by a language model. Semantically similar sentences end up close together in the vector space, which is what allows a system to measure relevance through distance rather than word overlap.
Is semantic search the same as vector search?
Vector search is the technical mechanism that powers most semantic search systems, but the two are not identical. Semantic search is the goal of retrieving by meaning, while vector search is one common implementation of it using nearest-neighbor lookup over embeddings.
How does semantic search relate to RAG?
Retrieval-augmented generation (RAG) uses semantic search as its retrieval step. When a user asks a question, the RAG pipeline semantically searches a knowledge base, retrieves the most relevant passages, and feeds them to a language model so its answer is grounded in that context.