retrieval-pipeline
En struktureret sekvens af trin til at finde og hente relevante dokumenter eller information fra en videnbase, typisk brugt i RAG-systemer.
Kort fortalt
En retrieval-pipeline er en metode til at finde de mest relevante oplysninger i en stor database ved at kombinere søgning, scoring og sortering.
- Kategori
- teknik
- Niveau
- øvet
- Udtale
- /rɪˈtriːvəl ˈpaɪpˌlaɪn/
Betydninger
1- 1
Den overordnede proces med at søge, hente og præsentere relevante data fra en videnbase i et bestemt workflow, ofte til brug i generative AI-systemer.
- Den nye retrieval-pipeline kombinerer semantisk og nøgleordsbaseret søgning for at forbedre nøjagtigheden. — RAG-praksis, 2024
- En effektiv retrieval-pipeline er afgørende for at reducere hallucinationer i RAG-systemer. — RAG-praksis, 2024
Hvornår bruges det
Retrieval-pipelines anvendes i RAG-systemer til at indhente kontekst til en sprogmodel. De kan omfatte trin som forespørgselsforbedring, semantisk søgning, re-ranking og filtrering for at sikre høj kvalitet af de hentede data.
Kodeeksempel
from langchain.embeddings import OpenAIEmbeddings
from langchain.vectorstores import Chroma
from langchain.retrievers import ContextualCompressionRetriever
from langchain.retrievers.document_compressors import LLMChainExtractor
# Create vector store
embeddings = OpenAIEmbeddings()
vectorstore = Chroma.from_documents(documents, embeddings)
# Basic retrieval
retriever = vectorstore.as_retriever()
# Advanced retrieval with compression
llm = OpenAI()
compressor = LLMChainExtractor.from_llm(llm)
compression_retriever = ContextualCompressionRetriever(base_compressor=compressor, base_retriever=retriever)
# Query
result = compression_retriever.get_relevant_documents("Hvad er RAG?")
print(result[0].page_content)En simpel retrieval-pipeline ved hjælp af LangChain, der kombinerer embeddings, vektorlagring og dokumentkompression.
Oprindelse
Sammensat af 'retrieval' (genfinding) og 'pipeline' (rørledning), fra informationssøgning og softwareudvikling.
Afledte ord
1Kilder
2- Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks (Lewis et al., 2020)
- LangChain Documentation on Retrieval Pipelines