Fase 2: Embeddings e Ricerca Semantica

La ricerca per parole chiave fallisce quando le parole non corrispondono esattamente.

Se un curriculum riporta "team management" e una descrizione del lavoro richiede "leadership", una ricerca di base restituirà zero risultati. Le parole sono diverse, ma il significato è lo stesso.

La Fase 2 risolve questo problema utilizzando gli embedding e la ricerca semantica.

Come funziona:

• Tokenizzazione: I computer non leggono parole. Leggono numeri. Un tokenizer suddivide il testo in piccoli pezzi chiamati token e li converte in Token ID. Le parole comuni diventano un singolo token. Le parole rare vengono suddivise in più token.

• Embeddings: Un Token ID è solo un'etichetta. Lo strato di embedding trasforma quell'ID in un vettore. Un vettore è una lunga lista di numeri che rappresenta il significato. Invece di un singolo numero, un modello utilizza molte dimensioni per descrivere un concetto.

• Dimensioni: Pensa a questi numeri come a delle coordinate. Una dimensione potrebbe rappresentare "frontend vs backend". Un'altra potrebbe rappresentare "web vs systems". I vettori ad alta dimensionalità consentono al modello di posizionare "React" e "JavaScript" vicini tra loro in uno spazio matematico.

• Ricerca Semantica: Quando poni una domanda, il sistema converte la tua domanda in un vettore. Successivamente, confronta il tuo vettore con i vettori dei documenti archiviati.

• Similarità del coseno: Questa misura l'angolo tra due vettori. Se i vettori puntano nella stessa direzione, sono simili. Ciò consente al sistema di trovare "requisiti di dimissioni" anche se hai cercato solo "periodo di preavviso".

Lezioni chiave per la produzione:

  • Database vettoriali: Cercare tra milioni di vettori è lento. Database come Pinecone o Qdrant utilizzano l'indicizzazione per trovare i vicini più prossimi in millisecondi.
  • Migrazione dei modelli: Ogni modello di embedding utilizza uno spazio matematico differente. Non è possibile confrontare un vettore OpenAI con un vettore Cohere. Se cambi modello, devi eseguire nuovamente l'embedding di tutti i tuoi dati.
  • Costo vs ROI: Eseguire nuovamente l'embedding di milioni di chunk è costoso. Le aziende spesso rimangono con modelli più vecchi, a meno che il miglioramento dell'accuratezza non giustifichi il costo della migrazione.
  • Archivia sempre i tuoi chunk di testo grezzo. Se in seguito aggiornerai il modello, potrai utilizzare il testo originale per creare nuovi vettori.

La Fase 2 è dove avviene l'intelligenza.

Fonte: https://dev.to/surajrkhonde/phase-2-embeddings-semantic-search-3lco

Community di apprendimento opzionale: https://t.me/GyaanSetuAi