Retriever Stages
Build powerful search pipelines by composing modular stages. Each stage transforms, filters, ranks, or enriches your documents.
Learn more in docsApi Call
Enrich documents with external API calls
api_callJson Transform
Transform documents using Jinja2 templates
json_transformExternal Web Search
Search the web using Exa AI-native search
external_web_searchDocument Enrich
Join and enrich documents with data from another collection
document_enrichWeb Scrape
Scrape and extract content from web pages
web_scrapeFeature Search
Search collections using multimodal embeddings
feature_searchKeyword Search
Full-text keyword search with BM25 ranking
keyword_searchAttribute Filter
Filter documents by metadata attributes
attribute_filterLlm Filter
Filter documents using LLM-based evaluation
llm_filterScore Filter
Filter documents by relevance score threshold
score_filterLlm Rerank
Rerank documents using LLM-based relevance scoring
llm_rerankCross Encoder Rerank
Rerank documents using cross-encoder models
cross_encoder_rerankHow Retriever Pipelines Work
Combine stages to build sophisticated search and retrieval pipelines. Each stage type serves a specific purpose in the data flow.
1. Search
Retrieve documents from collections using semantic search, keyword search, or hybrid approaches.
2. Filter
Remove documents that don't match criteria using attribute filters, score thresholds, or LLM evaluation.
3. Rank
Reorder documents by relevance using sorting, cross-encoders, or LLM-based reranking.
4. Generate
Create responses from retrieved documents using RAG, summarization, or custom LLM generation.
