Självfrågande sökning och källhänvisningar
Ta RAG längre med självfrågande retrievers som omvandlar naturligt språk till metadatafilter och med svar som anger sina källor, så att användarna kan lita på och verifiera dem.
Självfrågande sökning och källhänvisningar är en gratis lektion i LLM-applikationer i produktion (RAG + vektordatabaser + cachning) på CoddyKit. Detta är lektion 4 av 4. Ni kan läsa hela lektionen gratis nedan och sedan öva praktiskt i webbläsaren med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt. Den ingår i lärvägen för LLM-applikationer i produktion (RAG + vektordatabaser + cachning), och Era framsteg synkroniseras mellan webben och CoddyKit-appen. Kursen i LLM-applikationer i produktion (RAG + vektordatabaser + cachning) innehåller totalt 4 lektioner.
När frågor innehåller filter
Användare kan ställa frågor som ge mig rapporter från 2023 om prissättning. Meningen innehåller ett filter (år 2023) och en semantisk fråga (prissättning).
En self-querying retriever separerar automatiskt de två.
Så fungerar self-querying
En LLM läser frågan och genererar en strukturerad fråga: söksträngen för den semantiska sökningen samt ett metadatafilter. Retriever-komponenten tillämpar sedan båda på vektorlagret.
Beskriv Era metadata
Ni anger vilka fält som finns, så att retrievern vet vad den kan filtrera på.
from langchain.chains.query_constructor.schema import AttributeInfo
fields = [
AttributeInfo(name='year', description='Publication year', type='integer'),
AttributeInfo(name='topic', description='Document topic', type='string')
]Bygg retrievern
Kombinera LLM:en, lagret, en innehållsbeskrivning och informationen om fälten till en self-query retriever.
from langchain.retrievers.self_query.base import SelfQueryRetriever
retriever = SelfQueryRetriever.from_llm(
llm, vectorstore,
'Company reports', fields
)Se den i praktiken
Nu delas en fråga på naturligt språk automatiskt upp i ett filter och en sökning – ingen manuell filterkod behövs.
docs = retriever.invoke(
'pricing reports from 2023'
)Varför citeringar är viktiga
I produktion måste användare kunna verifiera svar. Svar utan källor är svåra att lita på och kan dölja hallucinationer. Citeringar länkar varje påstående tillbaka till dess dokument.
Bevara källmetadata
Citeringar förutsätter att varje textdel lagrar var den kommer ifrån – filnamn, sida eller URL – i sina metadata. Ange detta när data läses in.
doc.metadata['source'] = 'policy.pdf#p3'Be modellen om citeringar
Numrera kontextdelarna och be modellen citera de nummer som den använde. Det är enkelt och tillförlitligt.
ctx = '\n'.join(
f'[{i}] {d.page_content}'
for i, d in enumerate(docs)
)
# 'Cite sources like [1] after each claim.'Koppla nummer till källor
Efter genereringen kopplar Ni de citerade numren till riktig källmetadata, så att användargränssnittet kan visa klickbara referenser.
sources = {i: d.metadata['source']
for i, d in enumerate(docs)}Verifiera citeringar
Modeller citerar ibland felaktiga eller icke-existerande källor. En säkerhetskontroll bekräftar att varje citerad textdel faktiskt stöder påståendet och markerar påståenden utan stöd.
Sätt ihop delarna
Self-querying hittar rätt dokument med hjälp av filter i frågan, medan citeringar gör det resulterande svaret transparent. Tillsammans ökar de både precisionen och tilliten i avancerad RAG.
Snabbtest
Testa Era kunskaper om avancerad RAG.
Sammanfattning
Ni har lärt Er två avancerade RAG-tekniker:
- Self-querying omvandlar naturligt språk till metadatafilter och en semantisk fråga
- Beskriv Era fält så att LLM:en vet vad den ska filtrera
- Citations kopplar påståenden till källor och skapar tillit
- Bevara källmetadata, be modellen om citeringar och verifiera dem
Filtrering och citering tillsammans gör RAG både precist och tillförlitligt.
Lär dig LLM-applikationer i produktion (RAG + vektordatabaser + cachning) med en AI-lärare – gratis
Skriv och kör riktig kod i webbläsaren, få omedelbar hjälp av en AI-lärare dygnet runt och fortsätt där du slutade – på webben eller i appen.
- Kurser
- 12
- Lektioner
- 48
Vanliga frågor
Är lektionen ”Självfrågande sökning och källhänvisningar” gratis?
Ja – hela texten till ”Självfrågande sökning och källhänvisningar” kan läsas gratis här på webben. Om Ni vill öva interaktivt med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt och låsa upp resten av kursen i LLM-applikationer i produktion (RAG + vektordatabaser + cachning), kan Ni uppgradera till CoddyKit PRO. Kursen i LLM-applikationer i produktion (RAG + vektordatabaser + cachning) innehåller totalt 4 lektioner.
Vad lär jag mig i ”Självfrågande sökning och källhänvisningar”?
Ta RAG längre med självfrågande retrievers som omvandlar naturligt språk till metadatafilter och med svar som anger sina källor, så att användarna kan lita på och verifiera dem. Ni övar på LLM-applikationer i produktion (RAG + vektordatabaser + cachning) med praktisk kod som körs direkt i webbläsaren, medan en AI-handledare som är tillgänglig dygnet runt svarar på Era frågor under lektionen.
Behöver jag någon erfarenhet för att börja lära mig LLM-applikationer i produktion (RAG + vektordatabaser + cachning)?
Du behöver inga förkunskaper. Utbildningen i LLM-applikationer i produktion (RAG + vektordatabaser + cachning) på CoddyKit är upplagd för allt från nybörjare till avancerade elever, så att du kan börja här eller från början och gå fram i din egen takt. Detta är lektion 4 av 4.
Hur lång tid tar lektionen ”Självfrågande sökning och källhänvisningar”?
De flesta CoddyKit-lektioner tar cirka 5–10 minuter. Varje lektion är kort och interaktiv, så att du gör stadiga framsteg och kan fortsätta precis där du slutade – på webben eller i appen.
Kan jag skriva och köra kod i den här LLM-applikationer i produktion (RAG + vektordatabaser + cachning)-lektionen?
Ja. Varje LLM-applikationer i produktion (RAG + vektordatabaser + cachning)-lektion innehåller en inbyggd kodredigerare, så att du kan skriva och köra riktig kod direkt i webbläsaren och få omedelbar AI-feedback – utan lokal installation.
Alla lektioner i den här kursen
- Frågeomskrivning och omrankning
- Flerstegs- och agentiska RAG-mönster
- Hantera komplexa dokumentstrukturer
- Självfrågande sökning och källhänvisningar