langchain/templates/docs/INDEX.md
2023-11-10 11:56:44 -08:00

5.9 KiB

Templates

Highlighting a few different categories of templates

These are some of the more popular templates to get started with.

📥 Advanced Retrieval

These templates cover advanced retrieval techniques, which can be used for chat and QA over databases or documents.

  • Reranking: This retrieval technique uses Cohere's reranking endpoint to rerank documents from an initial retrieval step.
  • Anthropic Iterative Search: This retrieval technique uses iterative prompting to determine what to retrieve and whether the retriever documents are good enough.
  • Parent Document Retrieval using Neo4j or MongoDB: This retrieval technique stores embeddings for smaller chunks, but then returns larger chunks to pass to the model for generation.
  • Semi-Structured RAG: The template shows how to do retrieval over semi-structured data (e.g. data that involves both text and tables).
  • Temporal RAG: The template shows how to do hybrid search over data with a time-based component using Timescale Vector.

🔍Advanced Retrieval - Query Transformation

A selection of advanced retrieval methods that involve transforming the original user query, which can improve retrieval quality.

  • Hypothetical Document Embeddings: A retrieval technique that generates a hypothetical document for a given query, and then uses the embedding of that document to do semantic search. Paper.
  • Rewrite-Retrieve-Read: A retrieval technique that rewrites a given query before passing it to a search engine. Paper.
  • Step-back QA Prompting: A retrieval technique that generates a "step-back" question and then retrieves documents relevant to both that question and the original question. Paper.
  • RAG-Fusion: A retrieval technique that generates multiple queries and then reranks the retrieved documents using reciprocal rank fusion. Article.
  • Multi-Query Retriever: This retrieval technique uses an LLM to generate multiple queries and then fetches documents for all queries.

🧠Advanced Retrieval - Query Construction

A selection of advanced retrieval methods that involve constructing a query in a separate DSL from natural language, which enable natural languge chat over various structured databases.

🦙 OSS Models

These templates use OSS models, which enable privacy for sensitive data.

⛏️ Extraction

These templates extract data in a structured format based upon a user-specified schema.

⛏️Summarization and tagging

These templates summarize or categorize documents and text.

🤖 Agents

These templates build chatbots that can take actions, helping to automate tasks.

  • OpenAI Functions Agent: Build a chatbot that can take actions. Uses OpenAI function calling and Tavily.
  • XML Agent: Build a chatbot that can take actions. Uses Anthropic and You.com.

🚨 Safety and evaluation

These templates enable moderation or evaluation of LLM outputs.