vector retrieval

Vectoretrieval er processen med at finde de mest relevante elementer i en vektordatabase ved at sammenligne en forespørgselsvektor med en samling af indlejrede vektorer.

Kort fortalt

Vector retrieval er en teknik til at søge efter information ved at bruge vektorer (tallister) i stedet for nøjagtige ordmatch, så man kan finde indhold med samme betydning.

Kategori
teknik
Niveau
øvet

Betydninger

1
  1. 1

    Metode til at finde dataobjekter, hvis vektorrepræsentationer ligger tæt på en forespørgselsvektor i et flerdimensionelt rum, typisk ved brug af approksimeret nærmeste-nabo-søgning.

    • I RAG-pipelinen anvendes vector retrieval til at hente de mest relevante tekstuddrag fra en vektordatabase.

Hvornår bruges det

Vector retrieval anvendes ofte i RAG-systemer (Retrieval-Augmented Generation), hvor en stor sprogmodel henter relevante dokumenter fra en vektordatabase for at forbedre svar. Det bruges også i semantisk søgning, anbefalingssystemer og billedsøgning.

Kodeeksempel

import faiss
import numpy as np

dimension = 128
index = faiss.IndexFlatL2(dimension)
index.add(np.random.random((1000, dimension)).astype('float32'))

query = np.random.random((1, dimension)).astype('float32')
distances, indices = index.search(query, k=5)
print(indices)

Simpelt eksempel på vector retrieval med FAISS: en flad L2-indeks oprettes, og der søges efter de 5 nærmeste naboer til en forespørgselsvektor.

Oprindelse

Termen er sammensat af 'vector' (vektor, i matematisk forstand) og 'retrieval' (genfinding), og stammer fra informationssøgning og maskinlæring.