Retrievers
A retriever is an interface that returns documents given an unstructured query. It is more general than a vector store. A retriever does not need to be able to store documents, only to return (or retrieve) them.
Retrievers accept a string query as input and return a list of Documents.
For specifics on how to use retrievers, see the relevant how-to guides here.
Note that all vector stores can be cast to retrievers. Refer to the vector store integration docs for available vector store retrievers.
info
If you'd like to write your own retriever, see this how-to. If you'd like to contribute an integration, see Contributing integrations.
All retrieversβ
Name | Description |
---|---|
Knowledge Bases for Amazon Bedrock | Overview |
BM25 | BM25, also known as [Okapi |
Chaindesk Retriever | This example shows how to use the Chaindesk Retriever in a retrieval ... |
Dria Retriever | The Dria retriever allows an agent to perform a text-based search acr... |
Exa | Overview |
HyDE Retriever | This example shows how to use the HyDE Retriever, which implements Hy... |
Amazon Kendra Retriever | Overview |
Metal Retriever | This example shows how to use the Metal Retriever in a retrieval chai... |
Self-querying retrievers | |
Supabase Hybrid Search | Langchain supports hybrid search with a Supabase Postgres database. T... |
Tavily Search API | Tavilyβs Search API is a search engine built |
Time-Weighted Retriever | A Time-Weighted Retriever is a retriever that takes into account rece... |
Vespa Retriever | This shows how to use Vespa.ai as a LangChain retriever. |
Zep Cloud Retriever | Zep is a long-term memory service for AI Assistant apps. |
Zep Open Source Retriever | Zep is a long-term memory service for AI Assistant apps. |