hybrid søgningsalgoritme
En hybrid søgningsalgoritme kombinerer to eller flere forskellige søgemetoder, typisk leksikalsk (f.eks. BM25) og semantisk (vektor-søgning), for at opnå bedre resultater end hver metode alene.
Kort fortalt
Kort fortalt: en teknik der blander traditionel tekst-matchning med betydningsbaseret søgning for at finde de mest relevante resultater.
- Kategori
- teknik
- Niveau
- øvet
Betydninger
1- 1
En hybrid søgningsalgoritme kombinerer to eller flere forskellige søgemetoder for at udnytte styrkerne fra hver enkelt. Den mest almindelige form forener leksikalsk søgning (baseret på nøgleordsoverlap, f.eks. BM25) med semantisk søgning (baseret på vektorrepræsentationer, f.eks. cosine similarity af embeddings). Resultaterne fusioneres ofte via en vægtet sum eller en omrangering.
- I et RAG-system anvender vi en hybrid søgningsalgoritme for at sikre både præcise match og kontekstuel relevans.
- Hybride søgningsalgoritmer har vist sig overlegne i benchmarks som BEIR, især når data indeholder både nøjagtige termer og semantisk variation.
Hvornår bruges det
Bruges i informationssøgning, især i RAG-systemer og søgemaskiner, hvor man ønsker at fange både præcise nøgleordssammenfald og semantisk lighed. Implementeres ofte ved at kombinere BM25-score og cosine similarity med en vægtning eller en to-faset tilgang.
Kodeeksempel
import weaviate
client = weaviate.Client("http://localhost:8080")
result = client.query.get("Document", ["title", "text"])\
.with_hybrid(query="AI ordforklaring", alpha=0.5)\
.do()Eksempel på hybrid søgning med Weaviate. Parameteren alpha styrer vægtningen mellem leksikalsk (alpha=0) og semantisk (alpha=1) søgning.
Oprindelse
Termen 'hybrid' kommer fra latin 'hybrida' (blanding) og 'søgningsalgoritme' er en algoritme til at finde information i en samling. Begrebet opstod i takt med udviklingen af neurale søgemetoder (ca. 2010'erne) og behovet for at kombinere dem med klassiske metoder.
Afledte ord
2Se også
- RAG
- søgningsalgoritme(mangler)
- vektor-søgning(mangler)