diff --git a/docs/docs/expression_language/get_started.ipynb b/docs/docs/expression_language/get_started.ipynb index d6db4200383..f3f55a36fe5 100644 --- a/docs/docs/expression_language/get_started.ipynb +++ b/docs/docs/expression_language/get_started.ipynb @@ -17,12 +17,6 @@ "id": "befa7fd1", "metadata": {}, "source": [ - "```{=mdx}\n", - "
\n", - " \n", - "\n", - "```\n", - "\n", "LCEL makes it easy to build complex chains from basic components, and supports out of the box functionality such as streaming, parallelism, and logging." ] }, diff --git a/docs/docs/expression_language/index.mdx b/docs/docs/expression_language/index.mdx index 4aff0314d3f..8bc1b52ff86 100644 --- a/docs/docs/expression_language/index.mdx +++ b/docs/docs/expression_language/index.mdx @@ -4,9 +4,6 @@ sidebar_class_name: hidden # LangChain Expression Language (LCEL) - - - LangChain Expression Language, or LCEL, is a declarative way to easily compose chains together. LCEL was designed from day 1 to **support putting prototypes in production, with no code changes**, from the simplest “prompt + LLM” chain to the most complex chains (we’ve seen folks successfully run LCEL chains with 100s of steps in production). To highlight a few of the reasons you might want to use LCEL: diff --git a/docs/docs/expression_language/interface.ipynb b/docs/docs/expression_language/interface.ipynb index 91197e28d25..e5798575158 100644 --- a/docs/docs/expression_language/interface.ipynb +++ b/docs/docs/expression_language/interface.ipynb @@ -16,12 +16,7 @@ "id": "9a9acd2e", "metadata": {}, "source": [ - "```{=mdx}\n", - "\n", - " \n", - "\n", - "```\n", - "\n", + "To make it as easy as possible to create custom chains, we've implemented a [\"Runnable\"](https://api.python.langchain.com/en/stable/runnables/langchain_core.runnables.base.Runnable.html#langchain_core.runnables.base.Runnable) protocol. Many LangChain components implement the `Runnable` protocol, including chat models, LLMs, output parsers, retrievers, prompt templates, and more. There are also several useful primitives for working with runnables, which you can read about [in this section](/docs/expression_language/primitives).\n", "\n", "This is a standard interface, which makes it easy to define custom chains as well as invoke them in a standard way. \n", diff --git a/docs/docs/get_started/installation.mdx b/docs/docs/get_started/installation.mdx index 41e9b399f8f..b1d712e21a5 100644 --- a/docs/docs/get_started/installation.mdx +++ b/docs/docs/get_started/installation.mdx @@ -4,9 +4,6 @@ sidebar_position: 2 # Installation - - - ## Official release diff --git a/docs/docs/get_started/introduction.mdx b/docs/docs/get_started/introduction.mdx index 0dbd2b27d3a..f26214cd6c5 100644 --- a/docs/docs/get_started/introduction.mdx +++ b/docs/docs/get_started/introduction.mdx @@ -5,9 +5,6 @@ sidebar_class_name: hidden # Introduction - - - **LangChain** is a framework for developing applications powered by large language models (LLMs). diff --git a/docs/docs/get_started/quickstart.mdx b/docs/docs/get_started/quickstart.mdx index 9ba099db689..2af16e54ae0 100644 --- a/docs/docs/get_started/quickstart.mdx +++ b/docs/docs/get_started/quickstart.mdx @@ -4,9 +4,6 @@ sidebar_position: 1 # Quickstart - - - In this quickstart we'll show you how to: - Get setup with LangChain, LangSmith and LangServe diff --git a/docs/docs/integrations/chat/openai.ipynb b/docs/docs/integrations/chat/openai.ipynb index a68ea4a2f0d..75bc039bf0d 100644 --- a/docs/docs/integrations/chat/openai.ipynb +++ b/docs/docs/integrations/chat/openai.ipynb @@ -17,12 +17,7 @@ "source": [ "# ChatOpenAI\n", "\n", - "```{=mdx}\n", - "\n", - " \n", - "\n", - "```\n", - "\n", + "This notebook covers how to get started with OpenAI chat models." ] }, diff --git a/docs/docs/integrations/llms/llamacpp.ipynb b/docs/docs/integrations/llms/llamacpp.ipynb index e9bd62e7e4f..f63ceb735ab 100644 --- a/docs/docs/integrations/llms/llamacpp.ipynb +++ b/docs/docs/integrations/llms/llamacpp.ipynb @@ -6,12 +6,7 @@ "source": [ "# Llama.cpp\n", "\n", - "```{=mdx}\n", - "\n", - " \n", - "\n", - "```\n", - "\n", + "[llama-cpp-python](https://github.com/abetlen/llama-cpp-python) is a Python binding for [llama.cpp](https://github.com/ggerganov/llama.cpp).\n", "\n", "It supports inference for [many LLMs](https://github.com/ggerganov/llama.cpp#description) models, which can be accessed on [Hugging Face](https://huggingface.co/TheBloke).\n", diff --git a/docs/docs/integrations/llms/ollama.ipynb b/docs/docs/integrations/llms/ollama.ipynb index f6cebb31fe9..797e1e4e418 100644 --- a/docs/docs/integrations/llms/ollama.ipynb +++ b/docs/docs/integrations/llms/ollama.ipynb @@ -6,12 +6,7 @@ "source": [ "# Ollama\n", "\n", - "```{=mdx}\n", - "\n", - " \n", - "\n", - "```\n", - "\n", + "[Ollama](https://ollama.ai/) allows you to run open-source large language models, such as Llama 2, locally.\n", "\n", "Ollama bundles model weights, configuration, and data into a single package, defined by a Modelfile. \n", diff --git a/docs/docs/integrations/llms/openai.ipynb b/docs/docs/integrations/llms/openai.ipynb index 6af90fb1401..4b7cab19633 100644 --- a/docs/docs/integrations/llms/openai.ipynb +++ b/docs/docs/integrations/llms/openai.ipynb @@ -7,12 +7,7 @@ "source": [ "# OpenAI\n", "\n", - "```{=mdx}\n", - "\n", - " \n", - "\n", - "```\n", - "\n", + "[OpenAI](https://platform.openai.com/docs/introduction) offers a spectrum of models with different levels of power suitable for different tasks.\n", "\n", "This example goes over how to use LangChain to interact with `OpenAI` [models](https://platform.openai.com/docs/models)" diff --git a/docs/docs/integrations/platforms/index.mdx b/docs/docs/integrations/platforms/index.mdx index 9ad7a0c5008..c10ab942cff 100644 --- a/docs/docs/integrations/platforms/index.mdx +++ b/docs/docs/integrations/platforms/index.mdx @@ -5,9 +5,6 @@ sidebar_class_name: hidden # Providers - - - :::info diff --git a/docs/docs/integrations/vectorstores/chroma.ipynb b/docs/docs/integrations/vectorstores/chroma.ipynb index 33f5707dcf5..e427788da3f 100644 --- a/docs/docs/integrations/vectorstores/chroma.ipynb +++ b/docs/docs/integrations/vectorstores/chroma.ipynb @@ -7,12 +7,7 @@ "source": [ "# Chroma\n", "\n", - "```{=mdx}\n", - "\n", - " \n", - "\n", - "```\n", - "\n", + ">[Chroma](https://docs.trychroma.com/getting-started) is a AI-native open-source vector database focused on developer productivity and happiness. Chroma is licensed under Apache 2.0.\n", "\n", "\n", diff --git a/docs/docs/integrations/vectorstores/faiss.ipynb b/docs/docs/integrations/vectorstores/faiss.ipynb index f4a3fb2e8aa..b8193477b49 100644 --- a/docs/docs/integrations/vectorstores/faiss.ipynb +++ b/docs/docs/integrations/vectorstores/faiss.ipynb @@ -7,12 +7,7 @@ "source": [ "# Faiss\n", "\n", - "```{=mdx}\n", - "\n", - " \n", - "\n", - "```\n", - "\n", + ">[Facebook AI Similarity Search (Faiss)](https://engineering.fb.com/2017/03/29/data-infrastructure/faiss-a-library-for-efficient-similarity-search/) is a library for efficient similarity search and clustering of dense vectors. It contains algorithms that search in sets of vectors of any size, up to ones that possibly do not fit in RAM. It also contains supporting code for evaluation and parameter tuning.\n", "\n", "[Faiss documentation](https://faiss.ai/).\n", diff --git a/docs/docs/modules/agents/agent_types/index.mdx b/docs/docs/modules/agents/agent_types/index.mdx index 7f9a28e463b..0b8bb3c5310 100644 --- a/docs/docs/modules/agents/agent_types/index.mdx +++ b/docs/docs/modules/agents/agent_types/index.mdx @@ -5,9 +5,6 @@ title: Types # Agent Types - - - This categorizes all the available agents along a few dimensions. diff --git a/docs/docs/modules/agents/agent_types/react.ipynb b/docs/docs/modules/agents/agent_types/react.ipynb index d94cde17412..a793e962165 100644 --- a/docs/docs/modules/agents/agent_types/react.ipynb +++ b/docs/docs/modules/agents/agent_types/react.ipynb @@ -17,12 +17,7 @@ "source": [ "# ReAct\n", "\n", - "```{=mdx}\n", - "\n", - " \n", - "\n", - "```\n", - "\n", + "This walkthrough showcases using an agent to implement the [ReAct](https://react-lm.github.io/) logic." ] }, diff --git a/docs/docs/modules/agents/agent_types/tool_calling.ipynb b/docs/docs/modules/agents/agent_types/tool_calling.ipynb index a250a03adbf..3332544d5c7 100644 --- a/docs/docs/modules/agents/agent_types/tool_calling.ipynb +++ b/docs/docs/modules/agents/agent_types/tool_calling.ipynb @@ -16,12 +16,7 @@ "source": [ "# Tool calling agent\n", "\n", - "```{=mdx}\n", - "\n", - " \n", - "\n", - "```\n", - "\n", + "[Tool calling](/docs/modules/model_io/chat/function_calling) allows a model to detect when one or more tools should be called and respond with the inputs that should be passed to those tools. In an API call, you can describe tools and have the model intelligently choose to output a structured object like JSON containing arguments to call these tools. The goal of tools APIs is to more reliably return valid and useful tool calls than what can be done using a generic text completion or chat API.\n", "\n", "We can take advantage of this structured output, combined with the fact that you can bind multiple tools to a [tool calling chat model](/docs/integrations/chat/) and\n", diff --git a/docs/docs/modules/agents/how_to/custom_agent.ipynb b/docs/docs/modules/agents/how_to/custom_agent.ipynb index 5ec9a77ec66..a08ccbcd161 100644 --- a/docs/docs/modules/agents/how_to/custom_agent.ipynb +++ b/docs/docs/modules/agents/how_to/custom_agent.ipynb @@ -17,12 +17,7 @@ "source": [ "# Custom agent\n", "\n", - "```{=mdx}\n", - "\n", - " \n", - "\n", - "```\n", - "\n", + "This notebook goes through how to create your own custom agent.\n", "\n", "In this example, we will use OpenAI Tool Calling to create this agent.\n", diff --git a/docs/docs/modules/agents/index.ipynb b/docs/docs/modules/agents/index.ipynb index 9552a51f62d..9ef505927d5 100644 --- a/docs/docs/modules/agents/index.ipynb +++ b/docs/docs/modules/agents/index.ipynb @@ -17,12 +17,7 @@ "id": "f4c03f40-1328-412d-8a48-1db0cd481b77", "metadata": {}, "source": [ - "```{=mdx}\n", - "\n", - " \n", - "\n", - "```\n", - "\n", + "The core idea of agents is to use a language model to choose a sequence of actions to take.\n", "In chains, a sequence of actions is hardcoded (in code).\n", "In agents, a language model is used as a reasoning engine to determine which actions to take and in which order.\n", diff --git a/docs/docs/modules/agents/quick_start.ipynb b/docs/docs/modules/agents/quick_start.ipynb index 93db0ab765b..0cd22f85205 100644 --- a/docs/docs/modules/agents/quick_start.ipynb +++ b/docs/docs/modules/agents/quick_start.ipynb @@ -18,12 +18,7 @@ "source": [ "# Quickstart\n", "\n", - "```{=mdx}\n", - "\n", - " \n", - "\n", - "```\n", - "\n", + "To best understand the agent framework, let's build an agent that has two tools: one to look things up online, and one to look up specific data that we've loaded into a index.\n", "\n", "This will assume knowledge of [LLMs](/docs/modules/model_io/) and [retrieval](/docs/modules/data_connection/) so if you haven't already explored those sections, it is recommended you do so.\n", diff --git a/docs/docs/modules/chains.ipynb b/docs/docs/modules/chains.ipynb index 78949e56e1e..85554fd1d13 100644 --- a/docs/docs/modules/chains.ipynb +++ b/docs/docs/modules/chains.ipynb @@ -18,12 +18,7 @@ "id": "b872d874-ad6e-49b5-9435-66063a64d1a8", "metadata": {}, "source": [ - "```{=mdx}\n", - "\n", - " \n", - "\n", - "```\n", - "\n", + "Chains refer to sequences of calls - whether to an LLM, a tool, or a data preprocessing step. The primary supported way to do this is with [LCEL](/docs/expression_language). \n", "\n", "LCEL is great for constructing your chains, but it's also nice to have chains used off the shelf. There are two types of off-the-shelf chains that LangChain supports:\n", diff --git a/docs/docs/modules/data_connection/document_loaders/index.mdx b/docs/docs/modules/data_connection/document_loaders/index.mdx index 56e88570dd1..6920a0a1c04 100644 --- a/docs/docs/modules/data_connection/document_loaders/index.mdx +++ b/docs/docs/modules/data_connection/document_loaders/index.mdx @@ -4,9 +4,6 @@ sidebar_class_name: hidden --- # Document loaders - - - :::info Head to [Integrations](/docs/integrations/document_loaders/) for documentation on built-in document loader integrations with 3rd-party tools. diff --git a/docs/docs/modules/data_connection/document_loaders/pdf.mdx b/docs/docs/modules/data_connection/document_loaders/pdf.mdx index 695a6d3761b..e674265cbd1 100644 --- a/docs/docs/modules/data_connection/document_loaders/pdf.mdx +++ b/docs/docs/modules/data_connection/document_loaders/pdf.mdx @@ -4,9 +4,6 @@ keywords: [PyPDFDirectoryLoader, PyMuPDFLoader] # PDF - - - >[Portable Document Format (PDF)](https://en.wikipedia.org/wiki/PDF), standardized as ISO 32000, is a file format developed by Adobe in 1992 to present documents, including text formatting and images, in a manner independent of application software, hardware, and operating systems. diff --git a/docs/docs/modules/data_connection/document_transformers/index.mdx b/docs/docs/modules/data_connection/document_transformers/index.mdx index 899da93de33..566ec7982b7 100644 --- a/docs/docs/modules/data_connection/document_transformers/index.mdx +++ b/docs/docs/modules/data_connection/document_transformers/index.mdx @@ -4,9 +4,6 @@ sidebar_class_name: hidden --- # Text Splitters - - - Once you've loaded documents, you'll often want to transform them to better suit your application. The simplest example is you may want to split a long document into smaller chunks that can fit into your model's context window. LangChain diff --git a/docs/docs/modules/data_connection/document_transformers/recursive_text_splitter.ipynb b/docs/docs/modules/data_connection/document_transformers/recursive_text_splitter.ipynb index b6c840e17e9..c36e0f323a3 100644 --- a/docs/docs/modules/data_connection/document_transformers/recursive_text_splitter.ipynb +++ b/docs/docs/modules/data_connection/document_transformers/recursive_text_splitter.ipynb @@ -7,12 +7,7 @@ "source": [ "# Recursively split by character\n", "\n", - "```{=mdx}\n", - "\n", - " \n", - "\n", - "```\n", - "\n", + "This text splitter is the recommended one for generic text. It is parameterized by a list of characters. It tries to split on them in order until the chunks are small enough. The default list is `[\"\\n\\n\", \"\\n\", \" \", \"\"]`. This has the effect of trying to keep all paragraphs (and then sentences, and then words) together as long as possible, as those would generically seem to be the strongest semantically related pieces of text.\n", "\n", "1. How the text is split: by list of characters.\n", diff --git a/docs/docs/modules/data_connection/document_transformers/semantic-chunker.ipynb b/docs/docs/modules/data_connection/document_transformers/semantic-chunker.ipynb index ed0b5a33152..8c005c93321 100644 --- a/docs/docs/modules/data_connection/document_transformers/semantic-chunker.ipynb +++ b/docs/docs/modules/data_connection/document_transformers/semantic-chunker.ipynb @@ -7,12 +7,7 @@ "source": [ "# Semantic Chunking\n", "\n", - "```{=mdx}\n", - "\n", - " \n", - "\n", - "```\n", - "\n", + "Splits the text based on semantic similarity.\n", "\n", "Taken from Greg Kamradt's wonderful notebook:\n", diff --git a/docs/docs/modules/data_connection/index.mdx b/docs/docs/modules/data_connection/index.mdx index 138121b9e7b..d0c7d402a69 100644 --- a/docs/docs/modules/data_connection/index.mdx +++ b/docs/docs/modules/data_connection/index.mdx @@ -5,9 +5,6 @@ sidebar_class_name: hidden # Retrieval - - - Many LLM applications require user-specific data that is not part of the model's training set. The primary way of accomplishing this is through Retrieval Augmented Generation (RAG). diff --git a/docs/docs/modules/data_connection/retrievers/index.mdx b/docs/docs/modules/data_connection/retrievers/index.mdx index 413ce68e7fd..ff95f5b7f72 100644 --- a/docs/docs/modules/data_connection/retrievers/index.mdx +++ b/docs/docs/modules/data_connection/retrievers/index.mdx @@ -6,9 +6,6 @@ sidebar_class_name: hidden # 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. Vector stores can be used diff --git a/docs/docs/modules/data_connection/retrievers/vectorstore.ipynb b/docs/docs/modules/data_connection/retrievers/vectorstore.ipynb index 6442a6b5bd6..ef49f412972 100644 --- a/docs/docs/modules/data_connection/retrievers/vectorstore.ipynb +++ b/docs/docs/modules/data_connection/retrievers/vectorstore.ipynb @@ -17,12 +17,7 @@ "source": [ "# Vector store-backed retriever\n", "\n", - "```{=mdx}\n", - "\n", - " \n", - "\n", - "```\n", - "\n", + "A vector store retriever is a retriever that uses a vector store to retrieve documents. It is a lightweight wrapper around the vector store class to make it conform to the retriever interface.\n", "It uses the search methods implemented by a vector store, like similarity search and MMR, to query the texts in the vector store.\n", "\n", diff --git a/docs/docs/modules/data_connection/text_embedding/index.mdx b/docs/docs/modules/data_connection/text_embedding/index.mdx index cd77a9b4322..c51d0e87872 100644 --- a/docs/docs/modules/data_connection/text_embedding/index.mdx +++ b/docs/docs/modules/data_connection/text_embedding/index.mdx @@ -4,9 +4,6 @@ sidebar_class_name: hidden --- # Text embedding models - - - :::info Head to [Integrations](/docs/integrations/text_embedding/) for documentation on built-in integrations with text embedding model providers. diff --git a/docs/docs/modules/data_connection/vectorstores/index.mdx b/docs/docs/modules/data_connection/vectorstores/index.mdx index 16ef9b146c3..f5acd28fcc1 100644 --- a/docs/docs/modules/data_connection/vectorstores/index.mdx +++ b/docs/docs/modules/data_connection/vectorstores/index.mdx @@ -4,9 +4,6 @@ sidebar_class_name: hidden --- # Vector stores - - - :::info Head to [Integrations](/docs/integrations/vectorstores/) for documentation on built-in integrations with 3rd-party vector stores. diff --git a/docs/docs/modules/index.mdx b/docs/docs/modules/index.mdx index baeb3dddebb..897279473d7 100644 --- a/docs/docs/modules/index.mdx +++ b/docs/docs/modules/index.mdx @@ -4,9 +4,6 @@ sidebar_class_name: hidden # Components - - - LangChain provides standard, extendable interfaces and external integrations for the following main components: diff --git a/docs/docs/modules/model_io/chat/function_calling.ipynb b/docs/docs/modules/model_io/chat/function_calling.ipynb index 252b4a8010a..4ccd01af3f6 100644 --- a/docs/docs/modules/model_io/chat/function_calling.ipynb +++ b/docs/docs/modules/model_io/chat/function_calling.ipynb @@ -18,12 +18,7 @@ "source": [ "# Tool calling\n", "\n", - "```{=mdx}\n", - "\n", - " \n", - "\n", - "```\n", - "\n", + "```{=mdx}\n", ":::info\n", "We use the term \"tool calling\" interchangeably with \"function calling\". Although\n", diff --git a/docs/docs/modules/model_io/chat/index.mdx b/docs/docs/modules/model_io/chat/index.mdx index 84ed334e518..2f12a5dd307 100644 --- a/docs/docs/modules/model_io/chat/index.mdx +++ b/docs/docs/modules/model_io/chat/index.mdx @@ -5,9 +5,6 @@ sidebar_class_name: hidden # Chat Models - - - Chat Models are a core component of LangChain. diff --git a/docs/docs/modules/model_io/llms/index.mdx b/docs/docs/modules/model_io/llms/index.mdx index 8d1fa4cb817..9d94ea4ac34 100644 --- a/docs/docs/modules/model_io/llms/index.mdx +++ b/docs/docs/modules/model_io/llms/index.mdx @@ -5,9 +5,6 @@ sidebar_class_name: hidden # LLMs - - - Large Language Models (LLMs) are a core component of LangChain. LangChain does not serve its own LLMs, but rather provides a standard interface for interacting with many different LLMs. To be specific, this interface is one that takes as input a string and returns a string. diff --git a/docs/docs/modules/model_io/output_parsers/index.mdx b/docs/docs/modules/model_io/output_parsers/index.mdx index ce2a7377223..ec377f16979 100644 --- a/docs/docs/modules/model_io/output_parsers/index.mdx +++ b/docs/docs/modules/model_io/output_parsers/index.mdx @@ -5,9 +5,6 @@ sidebar_class_name: hidden --- # Output Parsers - - - Output parsers are responsible for taking the output of an LLM and transforming it to a more suitable format. This is very useful when you are using LLMs to generate any form of structured data. diff --git a/docs/docs/modules/model_io/prompts/index.mdx b/docs/docs/modules/model_io/prompts/index.mdx index bf4298a86d8..4e98d465c88 100644 --- a/docs/docs/modules/model_io/prompts/index.mdx +++ b/docs/docs/modules/model_io/prompts/index.mdx @@ -4,9 +4,6 @@ sidebar_class_name: hidden --- # Prompts - - - A prompt for a language model is a set of instructions or input provided by a user to guide the model's response, helping it understand the context and generate relevant diff --git a/docs/docs/modules/model_io/prompts/quick_start.ipynb b/docs/docs/modules/model_io/prompts/quick_start.ipynb index 57af391a80c..3b31c700f0c 100644 --- a/docs/docs/modules/model_io/prompts/quick_start.ipynb +++ b/docs/docs/modules/model_io/prompts/quick_start.ipynb @@ -18,12 +18,7 @@ "source": [ "# Quick reference\n", "\n", - "```{=mdx}\n", - "\n", - " \n", - "\n", - "```\n", - "\n", + "Prompt templates are predefined recipes for generating prompts for language models.\n", "\n", "A template may include instructions, few-shot examples, and specific context and\n", diff --git a/docs/docs/modules/tools/custom_tools.ipynb b/docs/docs/modules/tools/custom_tools.ipynb index 9a02d7aafd6..a5cf94a0e97 100644 --- a/docs/docs/modules/tools/custom_tools.ipynb +++ b/docs/docs/modules/tools/custom_tools.ipynb @@ -7,12 +7,7 @@ "source": [ "# Defining Custom Tools\n", "\n", - "```{=mdx}\n", - "\n", - " \n", - "\n", - "```\n", - "\n", + "When constructing your own agent, you will need to provide it with a list of Tools that it can use. Besides the actual function that is called, the Tool consists of several components:\n", "\n", "- `name` (str), is required and must be unique within a set of tools provided to an agent\n", diff --git a/docs/docs/modules/tools/index.ipynb b/docs/docs/modules/tools/index.ipynb index 35c6ab3b2e3..c275a543a68 100644 --- a/docs/docs/modules/tools/index.ipynb +++ b/docs/docs/modules/tools/index.ipynb @@ -18,12 +18,7 @@ "source": [ "# Tools\n", "\n", - "```{=mdx}\n", - "\n", - " \n", - "\n", - "```\n", - "\n", + "Tools are interfaces that an agent, chain, or LLM can use to interact with the world.\n", "They combine a few things:\n", "\n", diff --git a/docs/docs/use_cases/chatbots/index.ipynb b/docs/docs/use_cases/chatbots/index.ipynb index 1832938e780..7afbfe872e8 100644 --- a/docs/docs/use_cases/chatbots/index.ipynb +++ b/docs/docs/use_cases/chatbots/index.ipynb @@ -15,12 +15,7 @@ "source": [ "# Chatbots\n", "\n", - "```{=mdx}\n", - "\n", - " \n", - "\n", - "```\n", - "\n", + "## Overview\n", "\n", "Chatbots are one of the most popular use-cases for LLMs. The core features of chatbots are that they can have long-running, stateful conversations and can answer user questions using relevant information.\n", diff --git a/docs/docs/use_cases/chatbots/quickstart.ipynb b/docs/docs/use_cases/chatbots/quickstart.ipynb index c6a0b9e17fd..a82d4feb820 100644 --- a/docs/docs/use_cases/chatbots/quickstart.ipynb +++ b/docs/docs/use_cases/chatbots/quickstart.ipynb @@ -15,12 +15,7 @@ "source": [ "# Quickstart\n", "\n", - "```{=mdx}\n", - "\n", - " \n", - "\n", - "```\n", - "\n", + "[](https://colab.research.google.com/github/langchain-ai/langchain/blob/master/docs/docs/use_cases/chatbots.ipynb)" ] }, diff --git a/docs/docs/use_cases/chatbots/tool_usage.ipynb b/docs/docs/use_cases/chatbots/tool_usage.ipynb index 2e8c12cd492..08f7283f07e 100644 --- a/docs/docs/use_cases/chatbots/tool_usage.ipynb +++ b/docs/docs/use_cases/chatbots/tool_usage.ipynb @@ -15,12 +15,7 @@ "source": [ "# Tool usage\n", "\n", - "```{=mdx}\n", - "\n", - " \n", - "\n", - "```\n", - "\n", + "This section will cover how to create conversational agents: chatbots that can interact with other systems and APIs using tools.\n", "\n", "Before reading this guide, we recommend you read both [the chatbot quickstart](/docs/use_cases/chatbots/quickstart) in this section and be familiar with [the documentation on agents](/docs/modules/agents/).\n", diff --git a/docs/docs/use_cases/extraction/index.ipynb b/docs/docs/use_cases/extraction/index.ipynb index 75ef2926737..353feeeee5b 100644 --- a/docs/docs/use_cases/extraction/index.ipynb +++ b/docs/docs/use_cases/extraction/index.ipynb @@ -18,12 +18,7 @@ "source": [ "## Overview\n", "\n", - "```{=mdx}\n", - "\n", - " \n", - "\n", - "```\n", - "\n", + "Large Language Models (LLMs) are emerging as an extremely capable technology for powering information extraction applications.\n", "\n", "Classical solutions to information extraction rely on a combination of people, (many) hand-crafted rules (e.g., regular expressions), and custom fine-tuned ML models.\n", diff --git a/docs/docs/use_cases/question_answering/chat_history.ipynb b/docs/docs/use_cases/question_answering/chat_history.ipynb index 1a039224541..878eda4e979 100644 --- a/docs/docs/use_cases/question_answering/chat_history.ipynb +++ b/docs/docs/use_cases/question_answering/chat_history.ipynb @@ -17,12 +17,7 @@ "source": [ "# Add chat history\n", "\n", - "```{=mdx}\n", - "\n", - " \n", - "\n", - "```\n", - "\n", + "In many Q&A applications we want to allow the user to have a back-and-forth conversation, meaning the application needs some sort of \"memory\" of past questions and answers, and some logic for incorporating those into its current thinking.\n", "\n", "In this guide we focus on **adding logic for incorporating historical messages.** Further details on chat history management is [covered here](/docs/expression_language/how_to/message_history).\n", diff --git a/docs/docs/use_cases/question_answering/index.ipynb b/docs/docs/use_cases/question_answering/index.ipynb index b3b8fad7ece..0bcca9487a9 100644 --- a/docs/docs/use_cases/question_answering/index.ipynb +++ b/docs/docs/use_cases/question_answering/index.ipynb @@ -15,13 +15,7 @@ "id": "86fc5bb2-017f-434e-8cd6-53ab214a5604", "metadata": {}, "source": [ - "# Q&A with RAG\n", - "\n", - "```{=mdx}\n", - "\n", - " \n", - "\n", - "```" + "# Q&A with RAG" ] }, { diff --git a/docs/docs/use_cases/question_answering/quickstart.mdx b/docs/docs/use_cases/question_answering/quickstart.mdx index 12319bd724b..bad553926fd 100644 --- a/docs/docs/use_cases/question_answering/quickstart.mdx +++ b/docs/docs/use_cases/question_answering/quickstart.mdx @@ -5,9 +5,6 @@ title: Quickstart # Quickstart - - - LangChain has a number of components designed to help build question-answering applications, and RAG applications more generally. To diff --git a/docs/docs/use_cases/sql/agents.ipynb b/docs/docs/use_cases/sql/agents.ipynb index b3b73dafa10..77bbcdfcb54 100644 --- a/docs/docs/use_cases/sql/agents.ipynb +++ b/docs/docs/use_cases/sql/agents.ipynb @@ -15,12 +15,7 @@ "source": [ "# Agents\n", "\n", - "```{=mdx}\n", - "\n", - " \n", - "\n", - "```\n", - "\n", + "LangChain has a SQL Agent which provides a more flexible way of interacting with SQL Databases than a chain. The main advantages of using the SQL Agent are:\n", "\n", "- It can answer questions based on the databases' schema as well as on the databases' content (like describing a specific table).\n", diff --git a/docs/docs/use_cases/sql/index.ipynb b/docs/docs/use_cases/sql/index.ipynb index 355ba95d43a..9f50cf6b8a2 100644 --- a/docs/docs/use_cases/sql/index.ipynb +++ b/docs/docs/use_cases/sql/index.ipynb @@ -15,12 +15,7 @@ "source": [ "# SQL\n", "\n", - "```{=mdx}\n", - "\n", - " \n", - "\n", - "```\n", - "\n", + "One of the most common types of databases that we can build Q&A systems for are SQL databases. LangChain comes with a number of built-in chains and agents that are compatible with any SQL dialect supported by SQLAlchemy (e.g., MySQL, PostgreSQL, Oracle SQL, Databricks, SQLite). They enable use cases such as:\n", "\n", "* Generating queries that will be run based on natural language questions,\n", diff --git a/docs/docs/use_cases/sql/quickstart.ipynb b/docs/docs/use_cases/sql/quickstart.ipynb index 1794b6c1d4d..7006f935a85 100644 --- a/docs/docs/use_cases/sql/quickstart.ipynb +++ b/docs/docs/use_cases/sql/quickstart.ipynb @@ -15,12 +15,7 @@ "source": [ "# Quickstart\n", "\n", - "```{=mdx}\n", - "\n", - " \n", - "\n", - "```\n", - "\n", + "In this guide we'll go over the basic ways to create a Q&A chain and agent over a SQL database. These systems will allow us to ask a question about the data in a SQL database and get back a natural language answer. The main difference between the two is that our agent can query the database in a loop as many time as it needs to answer the question.\n", "\n", "## ⚠️ Security note ⚠️\n", diff --git a/docs/docs/use_cases/summarization.ipynb b/docs/docs/use_cases/summarization.ipynb index f975108261b..386e56fc36e 100644 --- a/docs/docs/use_cases/summarization.ipynb +++ b/docs/docs/use_cases/summarization.ipynb @@ -16,12 +16,7 @@ "id": "cf13f702", "metadata": {}, "source": [ - "```{=mdx}\n", - "\n", - " \n", - "\n", - "```\n", - "\n", + "[](https://colab.research.google.com/github/langchain-ai/langchain/blob/v0.1/docs/docs/use_cases/summarization.ipynb)\n", "\n", "## Use case\n", diff --git a/docs/src/theme/SiteMetadata/index.js b/docs/src/theme/SiteMetadata/index.js new file mode 100644 index 00000000000..38e7d8b2670 --- /dev/null +++ b/docs/src/theme/SiteMetadata/index.js @@ -0,0 +1,2981 @@ +import React from 'react'; +import Head from '@docusaurus/Head'; +import useDocusaurusContext from '@docusaurus/useDocusaurusContext'; +import useBaseUrl from '@docusaurus/useBaseUrl'; +import {PageMetadata, useThemeConfig} from '@docusaurus/theme-common'; +import { + DEFAULT_SEARCH_TAG, + useAlternatePageUtils, + keyboardFocusedClassName, +} from '@docusaurus/theme-common/internal'; +import {useLocation} from '@docusaurus/router'; +import {applyTrailingSlash} from '@docusaurus/utils-common'; +import SearchMetadata from '@theme/SearchMetadata'; +// TODO move to SiteMetadataDefaults or theme-common ? +// Useful for i18n/SEO +// See https://developers.google.com/search/docs/advanced/crawling/localized-versions +// See https://github.com/facebook/docusaurus/issues/3317 +function AlternateLangHeaders() { + const { + i18n: {defaultLocale, localeConfigs}, + } = useDocusaurusContext(); + const alternatePageUtils = useAlternatePageUtils(); + // Note: it is fine to use both "x-default" and "en" to target the same url + // See https://www.searchviu.com/en/multiple-hreflang-tags-one-url/ + return ( + + {Object.entries(localeConfigs).map(([locale, {htmlLang}]) => ( + + ))} + + + ); +} +// Default canonical url inferred from current page location pathname +function useDefaultCanonicalUrl() { + const { + siteConfig: {url: siteUrl, baseUrl, trailingSlash}, + } = useDocusaurusContext(); + // TODO using useLocation().pathname is not a super idea + // See https://github.com/facebook/docusaurus/issues/9170 + const {pathname} = useLocation(); + const baseUrlPathname = useBaseUrl(pathname); + const canonicalPathname = applyTrailingSlash(baseUrlPathname, { + trailingSlash, + baseUrl, + }); + const canonicalPathnameNoVersion = canonicalPathname.startsWith('/v0.') ? "/"+canonicalPathname.split('/').slice(2).join('/') : canonicalPathname; + const suggestedLookup = suggestedLinks[canonicalPathnameNoVersion]; + const finalPathname = suggestedLookup?.canonical || canonicalPathname; + return siteUrl + finalPathname; +} + +// TODO move to SiteMetadataDefaults or theme-common ? +function CanonicalUrlHeaders({permalink}) { + const { + siteConfig: {url: siteUrl}, + } = useDocusaurusContext(); + const defaultCanonicalUrl = useDefaultCanonicalUrl(); + const canonicalUrl = permalink + ? `${siteUrl}${permalink}` + : defaultCanonicalUrl; + return ( + + + + + ); +} +export default function SiteMetadata() { + const { + i18n: {currentLocale}, + } = useDocusaurusContext(); + // TODO maybe move these 2 themeConfig to siteConfig? + // These seems useful for other themes as well + const {metadata, image: defaultImage} = useThemeConfig(); + return ( + <> + + + {/* The keyboard focus class name need to be applied when SSR so links + are outlined when JS is disabled */} +
+
+
+ {defaultImage &&
element here, as it allows + react-helmet to override default metadata values set in previous
+ like "twitter:card". In same Head, the same meta would appear twice + instead of overriding. + */} +
+ {/* Yes, "metadatum" is the grammatically correct term */} + {metadata.map((metadatum, i) => ( + + ))} + + > + ); +} + +const suggestedLinks = { + "/docs/changelog/core/": { + "canonical": "https://github.com/langchain-ai/langchain/releases?q=tag:%22langchain-core%3D%3D0%22&expanded=true", + "alternative": [ + "/v0.1/docs/changelog/core/" + ] + }, + "/docs/changelog/langchain/": { + "canonical": "https://github.com/langchain-ai/langchain/releases?q=tag:%22langchain%3D%3D0%22&expanded=true", + "alternative": [ + "/v0.1/docs/changelog/langchain/" + ] + }, + "/docs/contributing/documentation/technical_logistics/": { + "canonical": "/docs/contributing/documentation/", + "alternative": [ + "/v0.1/docs/contributing/documentation/technical_logistics/" + ] + }, + "/docs/cookbook/": { + "canonical": "/docs/tutorials/", + "alternative": [ + "/v0.1/docs/cookbook/" + ] + }, + "/docs/expression_language/": { + "canonical": "/docs/how_to/#langchain-expression-language-lcel", + "alternative": [ + "/v0.1/docs/expression_language/" + ] + }, + "/docs/expression_language/cookbook/code_writing/": { + "canonical": "https://langchain-ai.github.io/langgraph/tutorials/code_assistant/langgraph_code_assistant/", + "alternative": [ + "/v0.1/docs/expression_language/cookbook/code_writing/" + ] + }, + "/docs/expression_language/cookbook/multiple_chains/": { + "canonical": "/docs/how_to/parallel/", + "alternative": [ + "/v0.1/docs/expression_language/cookbook/multiple_chains/" + ] + }, + "/docs/expression_language/cookbook/prompt_llm_parser/": { + "canonical": "/docs/tutorials/llm_chain/", + "alternative": [ + "/v0.1/docs/expression_language/cookbook/prompt_llm_parser/" + ] + }, + "/docs/expression_language/cookbook/prompt_size/": { + "canonical": "/docs/how_to/trim_messages/", + "alternative": [ + "/v0.1/docs/expression_language/cookbook/prompt_size/" + ] + }, + "/docs/expression_language/get_started/": { + "canonical": "/docs/how_to/sequence/", + "alternative": [ + "/v0.1/docs/expression_language/get_started/" + ] + }, + "/docs/expression_language/how_to/decorator/": { + "canonical": "/docs/how_to/functions/#the-convenience-chain-decorator", + "alternative": [ + "/v0.1/docs/expression_language/how_to/decorator/" + ] + }, + "/docs/expression_language/how_to/inspect/": { + "canonical": "/docs/how_to/inspect/", + "alternative": [ + "/v0.1/docs/expression_language/how_to/inspect/" + ] + }, + "/docs/expression_language/how_to/message_history/": { + "canonical": "/docs/how_to/message_history/", + "alternative": [ + "/v0.1/docs/expression_language/how_to/message_history/" + ] + }, + "/docs/expression_language/how_to/routing/": { + "canonical": "/docs/how_to/routing/", + "alternative": [ + "/v0.1/docs/expression_language/how_to/routing/" + ] + }, + "/docs/expression_language/interface/": { + "canonical": "/docs/how_to/lcel_cheatsheet/", + "alternative": [ + "/v0.1/docs/expression_language/interface/" + ] + }, + "/docs/expression_language/primitives/": { + "canonical": "/docs/how_to/#langchain-expression-language-lcel", + "alternative": [ + "/v0.1/docs/expression_language/primitives/" + ] + }, + "/docs/expression_language/primitives/assign/": { + "canonical": "/docs/how_to/assign/", + "alternative": [ + "/v0.1/docs/expression_language/primitives/assign/" + ] + }, + "/docs/expression_language/primitives/binding/": { + "canonical": "/docs/how_to/binding/", + "alternative": [ + "/v0.1/docs/expression_language/primitives/binding/" + ] + }, + "/docs/expression_language/primitives/configure/": { + "canonical": "/docs/how_to/configure/", + "alternative": [ + "/v0.1/docs/expression_language/primitives/configure/" + ] + }, + "/docs/expression_language/primitives/functions/": { + "canonical": "/docs/how_to/functions/", + "alternative": [ + "/v0.1/docs/expression_language/primitives/functions/" + ] + }, + "/docs/expression_language/primitives/parallel/": { + "canonical": "/docs/how_to/parallel/", + "alternative": [ + "/v0.1/docs/expression_language/primitives/parallel/" + ] + }, + "/docs/expression_language/primitives/passthrough/": { + "canonical": "/docs/how_to/passthrough/", + "alternative": [ + "/v0.1/docs/expression_language/primitives/passthrough/" + ] + }, + "/docs/expression_language/primitives/sequence/": { + "canonical": "/docs/how_to/sequence/", + "alternative": [ + "/v0.1/docs/expression_language/primitives/sequence/" + ] + }, + "/docs/expression_language/streaming/": { + "canonical": "/docs/how_to/streaming/", + "alternative": [ + "/v0.1/docs/expression_language/streaming/" + ] + }, + "/docs/expression_language/why/": { + "canonical": "/docs/concepts/#langchain-expression-language-lcel", + "alternative": [ + "/v0.1/docs/expression_language/why/" + ] + }, + "/docs/get_started/installation/": { + "canonical": "/docs/tutorials/", + "alternative": [ + "/v0.1/docs/get_started/installation/" + ] + }, + "/docs/get_started/introduction/": { + "canonical": "/docs/tutorials/", + "alternative": [ + "/v0.1/docs/get_started/introduction/" + ] + }, + "/docs/get_started/quickstart/": { + "canonical": "/docs/tutorials/", + "alternative": [ + "/v0.1/docs/get_started/quickstart/" + ] + }, + "/docs/guides/": { + "canonical": "/docs/how_to/", + "alternative": [ + "/v0.1/docs/guides/" + ] + }, + "/docs/guides/development/": { + "canonical": "/docs/how_to/debugging/", + "alternative": [ + "/v0.1/docs/guides/development/" + ] + }, + "/docs/guides/development/debugging/": { + "canonical": "/docs/how_to/debugging/", + "alternative": [ + "/v0.1/docs/guides/development/debugging/" + ] + }, + "/docs/guides/development/extending_langchain/": { + "canonical": "/docs/how_to/#custom", + "alternative": [ + "/v0.1/docs/guides/development/extending_langchain/" + ] + }, + "/docs/guides/development/local_llms/": { + "canonical": "/docs/how_to/local_llms/", + "alternative": [ + "/v0.1/docs/guides/development/local_llms/" + ] + }, + "/docs/guides/development/pydantic_compatibility/": { + "canonical": "/docs/how_to/pydantic_compatibility/", + "alternative": [ + "/v0.1/docs/guides/development/pydantic_compatibility/" + ] + }, + "/docs/guides/productionization/": { + "canonical": "https://docs.smith.langchain.com/", + "alternative": [ + "/v0.1/docs/guides/productionization/" + ] + }, + "/docs/guides/productionization/deployments/": { + "canonical": "https://docs.smith.langchain.com/", + "alternative": [ + "/v0.1/docs/guides/productionization/deployments/" + ] + }, + "/docs/guides/productionization/deployments/template_repos/": { + "canonical": "https://docs.smith.langchain.com/", + "alternative": [ + "/v0.1/docs/guides/productionization/deployments/template_repos/" + ] + }, + "/docs/guides/productionization/evaluation/": { + "canonical": "https://docs.smith.langchain.com/", + "alternative": [ + "/v0.1/docs/guides/productionization/evaluation/" + ] + }, + "/docs/guides/productionization/evaluation/comparison/": { + "canonical": "https://docs.smith.langchain.com/", + "alternative": [ + "/v0.1/docs/guides/productionization/evaluation/comparison/" + ] + }, + "/docs/guides/productionization/evaluation/comparison/custom/": { + "canonical": "https://docs.smith.langchain.com/", + "alternative": [ + "/v0.1/docs/guides/productionization/evaluation/comparison/custom/" + ] + }, + "/docs/guides/productionization/evaluation/comparison/pairwise_embedding_distance/": { + "canonical": "https://docs.smith.langchain.com/", + "alternative": [ + "/v0.1/docs/guides/productionization/evaluation/comparison/pairwise_embedding_distance/" + ] + }, + "/docs/guides/productionization/evaluation/comparison/pairwise_string/": { + "canonical": "https://docs.smith.langchain.com/", + "alternative": [ + "/v0.1/docs/guides/productionization/evaluation/comparison/pairwise_string/" + ] + }, + "/docs/guides/productionization/evaluation/examples/": { + "canonical": "https://docs.smith.langchain.com/", + "alternative": [ + "/v0.1/docs/guides/productionization/evaluation/examples/" + ] + }, + "/docs/guides/productionization/evaluation/examples/comparisons/": { + "canonical": "https://docs.smith.langchain.com/", + "alternative": [ + "/v0.1/docs/guides/productionization/evaluation/examples/comparisons/" + ] + }, + "/docs/guides/productionization/evaluation/string/": { + "canonical": "https://docs.smith.langchain.com/", + "alternative": [ + "/v0.1/docs/guides/productionization/evaluation/string/" + ] + }, + "/docs/guides/productionization/evaluation/string/criteria_eval_chain/": { + "canonical": "https://docs.smith.langchain.com/", + "alternative": [ + "/v0.1/docs/guides/productionization/evaluation/string/criteria_eval_chain/" + ] + }, + "/docs/guides/productionization/evaluation/string/custom/": { + "canonical": "https://docs.smith.langchain.com/", + "alternative": [ + "/v0.1/docs/guides/productionization/evaluation/string/custom/" + ] + }, + "/docs/guides/productionization/evaluation/string/embedding_distance/": { + "canonical": "https://docs.smith.langchain.com/", + "alternative": [ + "/v0.1/docs/guides/productionization/evaluation/string/embedding_distance/" + ] + }, + "/docs/guides/productionization/evaluation/string/exact_match/": { + "canonical": "https://docs.smith.langchain.com/", + "alternative": [ + "/v0.1/docs/guides/productionization/evaluation/string/exact_match/" + ] + }, + "/docs/guides/productionization/evaluation/string/json/": { + "canonical": "https://docs.smith.langchain.com/", + "alternative": [ + "/v0.1/docs/guides/productionization/evaluation/string/json/" + ] + }, + "/docs/guides/productionization/evaluation/string/regex_match/": { + "canonical": "https://docs.smith.langchain.com/", + "alternative": [ + "/v0.1/docs/guides/productionization/evaluation/string/regex_match/" + ] + }, + "/docs/guides/productionization/evaluation/string/scoring_eval_chain/": { + "canonical": "https://docs.smith.langchain.com/", + "alternative": [ + "/v0.1/docs/guides/productionization/evaluation/string/scoring_eval_chain/" + ] + }, + "/docs/guides/productionization/evaluation/string/string_distance/": { + "canonical": "https://docs.smith.langchain.com/", + "alternative": [ + "/v0.1/docs/guides/productionization/evaluation/string/string_distance/" + ] + }, + "/docs/guides/productionization/evaluation/trajectory/": { + "canonical": "https://docs.smith.langchain.com/", + "alternative": [ + "/v0.1/docs/guides/productionization/evaluation/trajectory/" + ] + }, + "/docs/guides/productionization/evaluation/trajectory/custom/": { + "canonical": "https://docs.smith.langchain.com/", + "alternative": [ + "/v0.1/docs/guides/productionization/evaluation/trajectory/custom/" + ] + }, + "/docs/guides/productionization/evaluation/trajectory/trajectory_eval/": { + "canonical": "https://docs.smith.langchain.com/", + "alternative": [ + "/v0.1/docs/guides/productionization/evaluation/trajectory/trajectory_eval/" + ] + }, + "/docs/guides/productionization/fallbacks/": { + "canonical": "https://docs.smith.langchain.com/", + "alternative": [ + "/v0.1/docs/guides/productionization/fallbacks/" + ] + }, + "/docs/guides/productionization/safety/": { + "canonical": "https://docs.smith.langchain.com/", + "alternative": [ + "/v0.1/docs/guides/productionization/safety/" + ] + }, + "/docs/guides/productionization/safety/amazon_comprehend_chain/": { + "canonical": "https://docs.smith.langchain.com/", + "alternative": [ + "/v0.1/docs/guides/productionization/safety/amazon_comprehend_chain/" + ] + }, + "/docs/guides/productionization/safety/constitutional_chain/": { + "canonical": "https://docs.smith.langchain.com/", + "alternative": [ + "/v0.1/docs/guides/productionization/safety/constitutional_chain/" + ] + }, + "/docs/guides/productionization/safety/hugging_face_prompt_injection/": { + "canonical": "https://docs.smith.langchain.com/", + "alternative": [ + "/v0.1/docs/guides/productionization/safety/hugging_face_prompt_injection/" + ] + }, + "/docs/guides/productionization/safety/layerup_security/": { + "canonical": "https://docs.smith.langchain.com/", + "alternative": [ + "/v0.1/docs/guides/productionization/safety/layerup_security/" + ] + }, + "/docs/guides/productionization/safety/logical_fallacy_chain/": { + "canonical": "https://docs.smith.langchain.com/", + "alternative": [ + "/v0.1/docs/guides/productionization/safety/logical_fallacy_chain/" + ] + }, + "/docs/guides/productionization/safety/moderation/": { + "canonical": "https://docs.smith.langchain.com/", + "alternative": [ + "/v0.1/docs/guides/productionization/safety/moderation/" + ] + }, + "/docs/guides/productionization/safety/presidio_data_anonymization/": { + "canonical": "https://docs.smith.langchain.com/", + "alternative": [ + "/v0.1/docs/guides/productionization/safety/presidio_data_anonymization/" + ] + }, + "/docs/guides/productionization/safety/presidio_data_anonymization/multi_language/": { + "canonical": "https://docs.smith.langchain.com/", + "alternative": [ + "/v0.1/docs/guides/productionization/safety/presidio_data_anonymization/multi_language/" + ] + }, + "/docs/guides/productionization/safety/presidio_data_anonymization/qa_privacy_protection/": { + "canonical": "https://docs.smith.langchain.com/", + "alternative": [ + "/v0.1/docs/guides/productionization/safety/presidio_data_anonymization/qa_privacy_protection/" + ] + }, + "/docs/guides/productionization/safety/presidio_data_anonymization/reversible/": { + "canonical": "https://docs.smith.langchain.com/", + "alternative": [ + "/v0.1/docs/guides/productionization/safety/presidio_data_anonymization/reversible/" + ] + }, + "/docs/integrations/chat/ollama_functions/": { + "canonical": "/docs/integrations/chat/ollama/", + "alternative": [ + "/v0.1/docs/integrations/chat/ollama_functions/" + ] + }, + "/docs/integrations/document_loaders/notiondb/": { + "canonical": "/docs/integrations/document_loaders/notion/", + "alternative": [ + "/v0.1/docs/integrations/document_loaders/notiondb/" + ] + }, + "/docs/integrations/llms/llm_caching/": { + "canonical": "/docs/how_to/llm_caching/", + "alternative": [ + "/v0.1/docs/integrations/llms/llm_caching/" + ] + }, + "/docs/integrations/providers/vectara/vectara_summary/": { + "canonical": "/docs/integrations/providers/vectara/", + "alternative": [ + "/v0.1/docs/integrations/providers/vectara/vectara_summary/" + ] + }, + "/docs/integrations/text_embedding/nemo/": { + "canonical": "/docs/integrations/text_embedding/nvidia_ai_endpoints/", + "alternative": [ + "/v0.1/docs/integrations/text_embedding/nemo/" + ] + }, + "/docs/integrations/toolkits/": { + "canonical": "/docs/integrations/tools/", + "alternative": [ + "/v0.1/docs/integrations/toolkits/" + ] + }, + "/docs/integrations/toolkits/ainetwork/": { + "canonical": "/docs/integrations/tools/ainetwork/", + "alternative": [ + "/v0.1/docs/integrations/toolkits/ainetwork/" + ] + }, + "/docs/integrations/toolkits/airbyte_structured_qa/": { + "canonical": "/docs/integrations/document_loaders/airbyte/", + "alternative": [ + "/v0.1/docs/integrations/toolkits/airbyte_structured_qa/" + ] + }, + "/docs/integrations/toolkits/amadeus/": { + "canonical": "/docs/integrations/tools/amadeus/", + "alternative": [ + "/v0.1/docs/integrations/toolkits/amadeus/" + ] + }, + "/docs/integrations/toolkits/azure_ai_services/": { + "canonical": "/docs/integrations/tools/azure_ai_services/", + "alternative": [ + "/v0.1/docs/integrations/toolkits/azure_ai_services/" + ] + }, + "/docs/integrations/toolkits/azure_cognitive_services/": { + "canonical": "/docs/integrations/tools/azure_cognitive_services/", + "alternative": [ + "/v0.1/docs/integrations/toolkits/azure_cognitive_services/" + ] + }, + "/docs/integrations/toolkits/cassandra_database/": { + "canonical": "/docs/integrations/tools/cassandra_database/", + "alternative": [ + "/v0.1/docs/integrations/toolkits/cassandra_database/" + ] + }, + "/docs/integrations/toolkits/clickup/": { + "canonical": "/docs/integrations/tools/clickup/", + "alternative": [ + "/v0.1/docs/integrations/toolkits/clickup/" + ] + }, + "/docs/integrations/toolkits/cogniswitch/": { + "canonical": "/docs/integrations/tools/cogniswitch/", + "alternative": [ + "/v0.1/docs/integrations/toolkits/cogniswitch/" + ] + }, + "/docs/integrations/toolkits/connery/": { + "canonical": "/docs/integrations/tools/connery/", + "alternative": [ + "/v0.1/docs/integrations/toolkits/connery/" + ] + }, + "/docs/integrations/toolkits/csv/": { + "canonical": "/docs/integrations/document_loaders/csv/", + "alternative": [ + "/v0.1/docs/integrations/toolkits/csv/" + ] + }, + "/docs/integrations/toolkits/document_comparison_toolkit/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/integrations/toolkits/document_comparison_toolkit/" + ] + }, + "/docs/integrations/toolkits/github/": { + "canonical": "/docs/integrations/tools/github/", + "alternative": [ + "/v0.1/docs/integrations/toolkits/github/" + ] + }, + "/docs/integrations/toolkits/gitlab/": { + "canonical": "/docs/integrations/tools/gitlab/", + "alternative": [ + "/v0.1/docs/integrations/toolkits/gitlab/" + ] + }, + "/docs/integrations/toolkits/gmail/": { + "canonical": "/docs/integrations/tools/gmail/", + "alternative": [ + "/v0.1/docs/integrations/toolkits/gmail/" + ] + }, + "/docs/integrations/toolkits/jira/": { + "canonical": "/docs/integrations/tools/jira/", + "alternative": [ + "/v0.1/docs/integrations/toolkits/jira/" + ] + }, + "/docs/integrations/toolkits/json/": { + "canonical": "/docs/integrations/tools/json/", + "alternative": [ + "/v0.1/docs/integrations/toolkits/json/" + ] + }, + "/docs/integrations/toolkits/multion/": { + "canonical": "/docs/integrations/tools/multion/", + "alternative": [ + "/v0.1/docs/integrations/toolkits/multion/" + ] + }, + "/docs/integrations/toolkits/nasa/": { + "canonical": "/docs/integrations/tools/nasa/", + "alternative": [ + "/v0.1/docs/integrations/toolkits/nasa/" + ] + }, + "/docs/integrations/toolkits/office365/": { + "canonical": "/docs/integrations/tools/office365/", + "alternative": [ + "/v0.1/docs/integrations/toolkits/office365/" + ] + }, + "/docs/integrations/toolkits/openapi_nla/": { + "canonical": "/docs/integrations/tools/openapi_nla/", + "alternative": [ + "/v0.1/docs/integrations/toolkits/openapi_nla/" + ] + }, + "/docs/integrations/toolkits/openapi/": { + "canonical": "/docs/integrations/tools/openapi/", + "alternative": [ + "/v0.1/docs/integrations/toolkits/openapi/" + ] + }, + "/docs/integrations/toolkits/pandas/": { + "canonical": "/docs/integrations/tools/pandas/", + "alternative": [ + "/v0.1/docs/integrations/toolkits/pandas/" + ] + }, + "/docs/integrations/toolkits/playwright/": { + "canonical": "/docs/integrations/tools/playwright/", + "alternative": [ + "/v0.1/docs/integrations/toolkits/playwright/" + ] + }, + "/docs/integrations/toolkits/polygon/": { + "canonical": "/docs/integrations/tools/polygon/", + "alternative": [ + "/v0.1/docs/integrations/toolkits/polygon/" + ] + }, + "/docs/integrations/toolkits/powerbi/": { + "canonical": "/docs/integrations/tools/powerbi/", + "alternative": [ + "/v0.1/docs/integrations/toolkits/powerbi/" + ] + }, + "/docs/integrations/toolkits/python/": { + "canonical": "/docs/integrations/tools/python/", + "alternative": [ + "/v0.1/docs/integrations/toolkits/python/" + ] + }, + "/docs/integrations/toolkits/robocorp/": { + "canonical": "/docs/integrations/tools/robocorp/", + "alternative": [ + "/v0.1/docs/integrations/toolkits/robocorp/" + ] + }, + "/docs/integrations/toolkits/slack/": { + "canonical": "/docs/integrations/tools/slack/", + "alternative": [ + "/v0.1/docs/integrations/toolkits/slack/" + ] + }, + "/docs/integrations/toolkits/spark_sql/": { + "canonical": "/docs/integrations/tools/spark_sql/", + "alternative": [ + "/v0.1/docs/integrations/toolkits/spark_sql/" + ] + }, + "/docs/integrations/toolkits/spark/": { + "canonical": "/docs/integrations/tools/spark_sql/", + "alternative": [ + "/v0.1/docs/integrations/toolkits/spark/" + ] + }, + "/docs/integrations/toolkits/sql_database/": { + "canonical": "/docs/integrations/tools/sql_database/", + "alternative": [ + "/v0.1/docs/integrations/toolkits/sql_database/" + ] + }, + "/docs/integrations/toolkits/steam/": { + "canonical": "/docs/integrations/tools/steam/", + "alternative": [ + "/v0.1/docs/integrations/toolkits/steam/" + ] + }, + "/docs/integrations/toolkits/xorbits/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/integrations/toolkits/xorbits/" + ] + }, + "/docs/integrations/tools/apify/": { + "canonical": "/docs/integrations/providers/apify/#utility", + "alternative": [ + "/v0.1/docs/integrations/tools/apify/" + ] + }, + "/docs/integrations/tools/search_tools/": { + "canonical": "/docs/integrations/tools/#search", + "alternative": [ + "/v0.1/docs/integrations/tools/search_tools/" + ] + }, + "/docs/langsmith/": { + "canonical": "https://docs.smith.langchain.com/", + "alternative": [ + "/v0.1/docs/langsmith/" + ] + }, + "/docs/langsmith/walkthrough/": { + "canonical": "https://docs.smith.langchain.com/", + "alternative": [ + "/v0.1/docs/langsmith/walkthrough/" + ] + }, + "/docs/modules/": { + "canonical": "/docs/how_to/#components", + "alternative": [ + "/v0.1/docs/modules/" + ] + }, + "/docs/modules/agents/": { + "canonical": "/docs/how_to/#agents", + "alternative": [ + "/v0.1/docs/modules/agents/" + ] + }, + "/docs/modules/agents/agent_types/": { + "canonical": "/docs/how_to/migrate_agent/", + "alternative": [ + "/v0.1/docs/modules/agents/agent_types/" + ] + }, + "/docs/modules/agents/agent_types/json_agent/": { + "canonical": "/docs/how_to/migrate_agent/", + "alternative": [ + "/v0.1/docs/modules/agents/agent_types/json_agent/" + ] + }, + "/docs/modules/agents/agent_types/openai_assistants/": { + "canonical": "/docs/how_to/migrate_agent/", + "alternative": [ + "/v0.1/docs/modules/agents/agent_types/openai_assistants/" + ] + }, + "/docs/modules/agents/agent_types/openai_functions_agent/": { + "canonical": "/docs/how_to/migrate_agent/", + "alternative": [ + "/v0.1/docs/modules/agents/agent_types/openai_functions_agent/" + ] + }, + "/docs/modules/agents/agent_types/openai_tools/": { + "canonical": "/docs/how_to/migrate_agent/", + "alternative": [ + "/v0.1/docs/modules/agents/agent_types/openai_tools/" + ] + }, + "/docs/modules/agents/agent_types/react/": { + "canonical": "/docs/how_to/migrate_agent/", + "alternative": [ + "/v0.1/docs/modules/agents/agent_types/react/" + ] + }, + "/docs/modules/agents/agent_types/self_ask_with_search/": { + "canonical": "/docs/how_to/migrate_agent/", + "alternative": [ + "/v0.1/docs/modules/agents/agent_types/self_ask_with_search/" + ] + }, + "/docs/modules/agents/agent_types/structured_chat/": { + "canonical": "/docs/how_to/migrate_agent/", + "alternative": [ + "/v0.1/docs/modules/agents/agent_types/structured_chat/" + ] + }, + "/docs/modules/agents/agent_types/tool_calling/": { + "canonical": "/docs/how_to/migrate_agent/", + "alternative": [ + "/v0.1/docs/modules/agents/agent_types/tool_calling/" + ] + }, + "/docs/modules/agents/agent_types/xml_agent/": { + "canonical": "/docs/how_to/migrate_agent/", + "alternative": [ + "/v0.1/docs/modules/agents/agent_types/xml_agent/" + ] + }, + "/docs/modules/agents/concepts/": { + "canonical": "https://langchain-ai.github.io/langgraph/concepts/", + "alternative": [ + "/v0.1/docs/modules/agents/concepts/" + ] + }, + "/docs/modules/agents/how_to/agent_iter/": { + "canonical": "/docs/how_to/migrate_agent/", + "alternative": [ + "/v0.1/docs/modules/agents/how_to/agent_iter/" + ] + }, + "/docs/modules/agents/how_to/agent_structured/": { + "canonical": "/docs/how_to/migrate_agent/", + "alternative": [ + "/v0.1/docs/modules/agents/how_to/agent_structured/" + ] + }, + "/docs/modules/agents/how_to/custom_agent/": { + "canonical": "/docs/how_to/migrate_agent/", + "alternative": [ + "/v0.1/docs/modules/agents/how_to/custom_agent/" + ] + }, + "/docs/modules/agents/how_to/handle_parsing_errors/": { + "canonical": "/docs/how_to/migrate_agent/", + "alternative": [ + "/v0.1/docs/modules/agents/how_to/handle_parsing_errors/" + ] + }, + "/docs/modules/agents/how_to/intermediate_steps/": { + "canonical": "/docs/how_to/migrate_agent/", + "alternative": [ + "/v0.1/docs/modules/agents/how_to/intermediate_steps/" + ] + }, + "/docs/modules/agents/how_to/max_iterations/": { + "canonical": "/docs/how_to/migrate_agent/", + "alternative": [ + "/v0.1/docs/modules/agents/how_to/max_iterations/" + ] + }, + "/docs/modules/agents/how_to/max_time_limit/": { + "canonical": "/docs/how_to/migrate_agent/", + "alternative": [ + "/v0.1/docs/modules/agents/how_to/max_time_limit/" + ] + }, + "/docs/modules/agents/how_to/streaming/": { + "canonical": "/docs/how_to/migrate_agent/", + "alternative": [ + "/v0.1/docs/modules/agents/how_to/streaming/" + ] + }, + "/docs/modules/agents/quick_start/": { + "canonical": "https://langchain-ai.github.io/langgraph/", + "alternative": [ + "/v0.1/docs/modules/agents/quick_start/" + ] + }, + "/docs/modules/callbacks/": { + "canonical": "/docs/how_to/#callbacks", + "alternative": [ + "/v0.1/docs/modules/callbacks/" + ] + }, + "/docs/modules/callbacks/async_callbacks/": { + "canonical": "/docs/how_to/callbacks_async/", + "alternative": [ + "/v0.1/docs/modules/callbacks/async_callbacks/" + ] + }, + "/docs/modules/callbacks/custom_callbacks/": { + "canonical": "/docs/how_to/custom_callbacks/", + "alternative": [ + "/v0.1/docs/modules/callbacks/custom_callbacks/" + ] + }, + "/docs/modules/callbacks/filecallbackhandler/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/modules/callbacks/filecallbackhandler/" + ] + }, + "/docs/modules/callbacks/multiple_callbacks/": { + "canonical": "/docs/how_to/#callbacks", + "alternative": [ + "/v0.1/docs/modules/callbacks/multiple_callbacks/" + ] + }, + "/docs/modules/callbacks/tags/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/modules/callbacks/tags/" + ] + }, + "/docs/modules/callbacks/token_counting/": { + "canonical": "/docs/how_to/chat_token_usage_tracking/", + "alternative": [ + "/v0.1/docs/modules/callbacks/token_counting/" + ] + }, + "/docs/modules/chains/": { + "canonical": "/docs/versions/migrating_chains/", + "alternative": [ + "/v0.1/docs/modules/chains/" + ] + }, + "/docs/modules/composition/": { + "canonical": "https://langchain-ai.github.io/langgraph/concepts/", + "alternative": [ + "/v0.1/docs/modules/composition/" + ] + }, + "/docs/modules/data_connection/": { + "canonical": "/docs/tutorials/rag/", + "alternative": [ + "/v0.1/docs/modules/data_connection/" + ] + }, + "/docs/modules/data_connection/document_loaders/": { + "canonical": "/docs/how_to/#document-loaders", + "alternative": [ + "/v0.1/docs/modules/data_connection/document_loaders/" + ] + }, + "/docs/modules/data_connection/document_loaders/csv/": { + "canonical": "/docs/integrations/document_loaders/csv/", + "alternative": [ + "/v0.1/docs/modules/data_connection/document_loaders/csv/" + ] + }, + "/docs/modules/data_connection/document_loaders/custom/": { + "canonical": "/docs/how_to/document_loader_custom/", + "alternative": [ + "/v0.1/docs/modules/data_connection/document_loaders/custom/" + ] + }, + "/docs/modules/data_connection/document_loaders/file_directory/": { + "canonical": "/docs/how_to/document_loader_directory/", + "alternative": [ + "/v0.1/docs/modules/data_connection/document_loaders/file_directory/" + ] + }, + "/docs/modules/data_connection/document_loaders/html/": { + "canonical": "/docs/how_to/document_loader_html/", + "alternative": [ + "/v0.1/docs/modules/data_connection/document_loaders/html/" + ] + }, + "/docs/modules/data_connection/document_loaders/json/": { + "canonical": "/docs/how_to/document_loader_json/", + "alternative": [ + "/v0.1/docs/modules/data_connection/document_loaders/json/" + ] + }, + "/docs/modules/data_connection/document_loaders/markdown/": { + "canonical": "/docs/how_to/document_loader_markdown/", + "alternative": [ + "/v0.1/docs/modules/data_connection/document_loaders/markdown/" + ] + }, + "/docs/modules/data_connection/document_loaders/office_file/": { + "canonical": "/docs/how_to/document_loader_office_file/", + "alternative": [ + "/v0.1/docs/modules/data_connection/document_loaders/office_file/" + ] + }, + "/docs/modules/data_connection/document_loaders/pdf/": { + "canonical": "/docs/how_to/document_loader_pdf/", + "alternative": [ + "/v0.1/docs/modules/data_connection/document_loaders/pdf/" + ] + }, + "/docs/modules/data_connection/document_transformers/": { + "canonical": "/docs/how_to/#text-splitters", + "alternative": [ + "/v0.1/docs/modules/data_connection/document_transformers/" + ] + }, + "/docs/modules/data_connection/document_transformers/character_text_splitter/": { + "canonical": "/docs/how_to/character_text_splitter/", + "alternative": [ + "/v0.1/docs/modules/data_connection/document_transformers/character_text_splitter/" + ] + }, + "/docs/modules/data_connection/document_transformers/code_splitter/": { + "canonical": "/docs/how_to/code_splitter/", + "alternative": [ + "/v0.1/docs/modules/data_connection/document_transformers/code_splitter/" + ] + }, + "/docs/modules/data_connection/document_transformers/HTML_header_metadata/": { + "canonical": "/docs/how_to/HTML_header_metadata_splitter/", + "alternative": [ + "/v0.1/docs/modules/data_connection/document_transformers/HTML_header_metadata/" + ] + }, + "/docs/modules/data_connection/document_transformers/HTML_section_aware_splitter/": { + "canonical": "/docs/how_to/HTML_section_aware_splitter/", + "alternative": [ + "/v0.1/docs/modules/data_connection/document_transformers/HTML_section_aware_splitter/" + ] + }, + "/docs/modules/data_connection/document_transformers/markdown_header_metadata/": { + "canonical": "/docs/how_to/markdown_header_metadata_splitter/", + "alternative": [ + "/v0.1/docs/modules/data_connection/document_transformers/markdown_header_metadata/" + ] + }, + "/docs/modules/data_connection/document_transformers/recursive_json_splitter/": { + "canonical": "/docs/how_to/recursive_json_splitter/", + "alternative": [ + "/v0.1/docs/modules/data_connection/document_transformers/recursive_json_splitter/" + ] + }, + "/docs/modules/data_connection/document_transformers/recursive_text_splitter/": { + "canonical": "/docs/how_to/recursive_text_splitter/", + "alternative": [ + "/v0.1/docs/modules/data_connection/document_transformers/recursive_text_splitter/" + ] + }, + "/docs/modules/data_connection/document_transformers/semantic-chunker/": { + "canonical": "/docs/how_to/semantic-chunker/", + "alternative": [ + "/v0.1/docs/modules/data_connection/document_transformers/semantic-chunker/" + ] + }, + "/docs/modules/data_connection/document_transformers/split_by_token/": { + "canonical": "/docs/how_to/split_by_token/", + "alternative": [ + "/v0.1/docs/modules/data_connection/document_transformers/split_by_token/" + ] + }, + "/docs/modules/data_connection/indexing/": { + "canonical": "/docs/how_to/indexing/", + "alternative": [ + "/v0.1/docs/modules/data_connection/indexing/" + ] + }, + "/docs/modules/data_connection/retrievers/": { + "canonical": "/docs/how_to/#retrievers", + "alternative": [ + "/v0.1/docs/modules/data_connection/retrievers/" + ] + }, + "/docs/modules/data_connection/retrievers/contextual_compression/": { + "canonical": "/docs/how_to/contextual_compression/", + "alternative": [ + "/v0.1/docs/modules/data_connection/retrievers/contextual_compression/" + ] + }, + "/docs/modules/data_connection/retrievers/custom_retriever/": { + "canonical": "/docs/how_to/custom_retriever/", + "alternative": [ + "/v0.1/docs/modules/data_connection/retrievers/custom_retriever/" + ] + }, + "/docs/modules/data_connection/retrievers/ensemble/": { + "canonical": "/docs/how_to/ensemble_retriever/", + "alternative": [ + "/v0.1/docs/modules/data_connection/retrievers/ensemble/" + ] + }, + "/docs/modules/data_connection/retrievers/long_context_reorder/": { + "canonical": "/docs/how_to/long_context_reorder/", + "alternative": [ + "/v0.1/docs/modules/data_connection/retrievers/long_context_reorder/" + ] + }, + "/docs/modules/data_connection/retrievers/multi_vector/": { + "canonical": "/docs/how_to/multi_vector/", + "alternative": [ + "/v0.1/docs/modules/data_connection/retrievers/multi_vector/" + ] + }, + "/docs/modules/data_connection/retrievers/MultiQueryRetriever/": { + "canonical": "/docs/how_to/MultiQueryRetriever/", + "alternative": [ + "/v0.1/docs/modules/data_connection/retrievers/MultiQueryRetriever/" + ] + }, + "/docs/modules/data_connection/retrievers/parent_document_retriever/": { + "canonical": "/docs/how_to/parent_document_retriever/", + "alternative": [ + "/v0.1/docs/modules/data_connection/retrievers/parent_document_retriever/" + ] + }, + "/docs/modules/data_connection/retrievers/self_query/": { + "canonical": "/docs/how_to/self_query/", + "alternative": [ + "/v0.1/docs/modules/data_connection/retrievers/self_query/" + ] + }, + "/docs/modules/data_connection/retrievers/time_weighted_vectorstore/": { + "canonical": "/docs/how_to/time_weighted_vectorstore/", + "alternative": [ + "/v0.1/docs/modules/data_connection/retrievers/time_weighted_vectorstore/" + ] + }, + "/docs/modules/data_connection/retrievers/vectorstore/": { + "canonical": "/docs/how_to/vectorstore_retriever/", + "alternative": [ + "/v0.1/docs/modules/data_connection/retrievers/vectorstore/" + ] + }, + "/docs/modules/data_connection/text_embedding/": { + "canonical": "/docs/how_to/embed_text/", + "alternative": [ + "/v0.1/docs/modules/data_connection/text_embedding/" + ] + }, + "/docs/modules/data_connection/text_embedding/caching_embeddings/": { + "canonical": "/docs/how_to/caching_embeddings/", + "alternative": [ + "/v0.1/docs/modules/data_connection/text_embedding/caching_embeddings/" + ] + }, + "/docs/modules/data_connection/vectorstores/": { + "canonical": "/docs/how_to/#vector-stores", + "alternative": [ + "/v0.1/docs/modules/data_connection/vectorstores/" + ] + }, + "/docs/modules/memory/": { + "canonical": "/docs/how_to/chatbots_memory/", + "alternative": [ + "/v0.1/docs/modules/memory/" + ] + }, + "/docs/modules/memory/adding_memory_chain_multiple_inputs/": { + "canonical": "/docs/how_to/chatbots_memory/", + "alternative": [ + "/v0.1/docs/modules/memory/adding_memory_chain_multiple_inputs/" + ] + }, + "/docs/modules/memory/adding_memory/": { + "canonical": "/docs/how_to/chatbots_memory/", + "alternative": [ + "/v0.1/docs/modules/memory/adding_memory/" + ] + }, + "/docs/modules/memory/agent_with_memory_in_db/": { + "canonical": "/docs/how_to/chatbots_memory/", + "alternative": [ + "/v0.1/docs/modules/memory/agent_with_memory_in_db/" + ] + }, + "/docs/modules/memory/agent_with_memory/": { + "canonical": "/docs/how_to/chatbots_memory/", + "alternative": [ + "/v0.1/docs/modules/memory/agent_with_memory/" + ] + }, + "/docs/modules/memory/chat_messages/": { + "canonical": "/docs/how_to/chatbots_memory/", + "alternative": [ + "/v0.1/docs/modules/memory/chat_messages/" + ] + }, + "/docs/modules/memory/conversational_customization/": { + "canonical": "/docs/how_to/chatbots_memory/", + "alternative": [ + "/v0.1/docs/modules/memory/conversational_customization/" + ] + }, + "/docs/modules/memory/custom_memory/": { + "canonical": "/docs/how_to/chatbots_memory/", + "alternative": [ + "/v0.1/docs/modules/memory/custom_memory/" + ] + }, + "/docs/modules/memory/multiple_memory/": { + "canonical": "/docs/how_to/chatbots_memory/", + "alternative": [ + "/v0.1/docs/modules/memory/multiple_memory/" + ] + }, + "/docs/modules/memory/types/": { + "canonical": "/docs/how_to/chatbots_memory/", + "alternative": [ + "/v0.1/docs/modules/memory/types/" + ] + }, + "/docs/modules/memory/types/buffer_window/": { + "canonical": "/docs/how_to/chatbots_memory/", + "alternative": [ + "/v0.1/docs/modules/memory/types/buffer_window/" + ] + }, + "/docs/modules/memory/types/buffer/": { + "canonical": "/docs/how_to/chatbots_memory/", + "alternative": [ + "/v0.1/docs/modules/memory/types/buffer/" + ] + }, + "/docs/modules/memory/types/entity_summary_memory/": { + "canonical": "/docs/how_to/chatbots_memory/", + "alternative": [ + "/v0.1/docs/modules/memory/types/entity_summary_memory/" + ] + }, + "/docs/modules/memory/types/kg/": { + "canonical": "/docs/how_to/chatbots_memory/", + "alternative": [ + "/v0.1/docs/modules/memory/types/kg/" + ] + }, + "/docs/modules/memory/types/summary_buffer/": { + "canonical": "/docs/how_to/chatbots_memory/", + "alternative": [ + "/v0.1/docs/modules/memory/types/summary_buffer/" + ] + }, + "/docs/modules/memory/types/summary/": { + "canonical": "/docs/how_to/chatbots_memory/", + "alternative": [ + "/v0.1/docs/modules/memory/types/summary/" + ] + }, + "/docs/modules/memory/types/token_buffer/": { + "canonical": "/docs/how_to/chatbots_memory/", + "alternative": [ + "/v0.1/docs/modules/memory/types/token_buffer/" + ] + }, + "/docs/modules/memory/types/vectorstore_retriever_memory/": { + "canonical": "/docs/how_to/chatbots_memory/", + "alternative": [ + "/v0.1/docs/modules/memory/types/vectorstore_retriever_memory/" + ] + }, + "/docs/modules/model_io/": { + "canonical": "/docs/how_to/#chat-models", + "alternative": [ + "/v0.1/docs/modules/model_io/" + ] + }, + "/docs/modules/model_io/chat/": { + "canonical": "/docs/how_to/#chat-models", + "alternative": [ + "/v0.1/docs/modules/model_io/chat/" + ] + }, + "/docs/modules/model_io/chat/chat_model_caching/": { + "canonical": "/docs/how_to/chat_model_caching/", + "alternative": [ + "/v0.1/docs/modules/model_io/chat/chat_model_caching/" + ] + }, + "/docs/modules/model_io/chat/custom_chat_model/": { + "canonical": "/docs/how_to/custom_chat_model/", + "alternative": [ + "/v0.1/docs/modules/model_io/chat/custom_chat_model/" + ] + }, + "/docs/modules/model_io/chat/function_calling/": { + "canonical": "/docs/how_to/tool_calling/", + "alternative": [ + "/v0.1/docs/modules/model_io/chat/function_calling/" + ] + }, + "/docs/modules/model_io/chat/logprobs/": { + "canonical": "/docs/how_to/logprobs/", + "alternative": [ + "/v0.1/docs/modules/model_io/chat/logprobs/" + ] + }, + "/docs/modules/model_io/chat/message_types/": { + "canonical": "/docs/concepts/#messages", + "alternative": [ + "/v0.1/docs/modules/model_io/chat/message_types/" + ] + }, + "/docs/modules/model_io/chat/quick_start/": { + "canonical": "/docs/tutorials/llm_chain/", + "alternative": [ + "/v0.1/docs/modules/model_io/chat/quick_start/" + ] + }, + "/docs/modules/model_io/chat/response_metadata/": { + "canonical": "/docs/how_to/response_metadata/", + "alternative": [ + "/v0.1/docs/modules/model_io/chat/response_metadata/" + ] + }, + "/docs/modules/model_io/chat/streaming/": { + "canonical": "/docs/how_to/streaming/", + "alternative": [ + "/v0.1/docs/modules/model_io/chat/streaming/" + ] + }, + "/docs/modules/model_io/chat/structured_output/": { + "canonical": "/docs/how_to/structured_output/", + "alternative": [ + "/v0.1/docs/modules/model_io/chat/structured_output/" + ] + }, + "/docs/modules/model_io/chat/token_usage_tracking/": { + "canonical": "/docs/how_to/chat_token_usage_tracking/", + "alternative": [ + "/v0.1/docs/modules/model_io/chat/token_usage_tracking/" + ] + }, + "/docs/modules/model_io/concepts/": { + "canonical": "/docs/concepts/#chat-models", + "alternative": [ + "/v0.1/docs/modules/model_io/concepts/" + ] + }, + "/docs/modules/model_io/llms/": { + "canonical": "/docs/concepts/#llms", + "alternative": [ + "/v0.1/docs/modules/model_io/llms/" + ] + }, + "/docs/modules/model_io/llms/custom_llm/": { + "canonical": "/docs/how_to/custom_llm/", + "alternative": [ + "/v0.1/docs/modules/model_io/llms/custom_llm/" + ] + }, + "/docs/modules/model_io/llms/llm_caching/": { + "canonical": "/docs/how_to/llm_caching/", + "alternative": [ + "/v0.1/docs/modules/model_io/llms/llm_caching/" + ] + }, + "/docs/modules/model_io/llms/quick_start/": { + "canonical": "/docs/tutorials/llm_chain/", + "alternative": [ + "/v0.1/docs/modules/model_io/llms/quick_start/" + ] + }, + "/docs/modules/model_io/llms/streaming_llm/": { + "canonical": "/docs/how_to/streaming_llm/", + "alternative": [ + "/v0.1/docs/modules/model_io/llms/streaming_llm/" + ] + }, + "/docs/modules/model_io/llms/token_usage_tracking/": { + "canonical": "/docs/how_to/llm_token_usage_tracking/", + "alternative": [ + "/v0.1/docs/modules/model_io/llms/token_usage_tracking/" + ] + }, + "/docs/modules/model_io/output_parsers/": { + "canonical": "/docs/how_to/#output-parsers", + "alternative": [ + "/v0.1/docs/modules/model_io/output_parsers/" + ] + }, + "/docs/modules/model_io/output_parsers/custom/": { + "canonical": "/docs/how_to/output_parser_custom/", + "alternative": [ + "/v0.1/docs/modules/model_io/output_parsers/custom/" + ] + }, + "/docs/modules/model_io/output_parsers/quick_start/": { + "canonical": "/docs/how_to/output_parser_structured/", + "alternative": [ + "/v0.1/docs/modules/model_io/output_parsers/quick_start/" + ] + }, + "/docs/modules/model_io/output_parsers/types/csv/": { + "canonical": "/docs/how_to/output_parser_structured/", + "alternative": [ + "/v0.1/docs/modules/model_io/output_parsers/types/csv/" + ] + }, + "/docs/modules/model_io/output_parsers/types/datetime/": { + "canonical": "/docs/how_to/output_parser_structured/", + "alternative": [ + "/v0.1/docs/modules/model_io/output_parsers/types/datetime/" + ] + }, + "/docs/modules/model_io/output_parsers/types/enum/": { + "canonical": "/docs/how_to/output_parser_structured/", + "alternative": [ + "/v0.1/docs/modules/model_io/output_parsers/types/enum/" + ] + }, + "/docs/modules/model_io/output_parsers/types/json/": { + "canonical": "/docs/how_to/output_parser_json/", + "alternative": [ + "/v0.1/docs/modules/model_io/output_parsers/types/json/" + ] + }, + "/docs/modules/model_io/output_parsers/types/openai_functions/": { + "canonical": "/docs/how_to/structured_output/", + "alternative": [ + "/v0.1/docs/modules/model_io/output_parsers/types/openai_functions/" + ] + }, + "/docs/modules/model_io/output_parsers/types/openai_tools/": { + "canonical": "/docs/how_to/tool_calling/", + "alternative": [ + "/v0.1/docs/modules/model_io/output_parsers/types/openai_tools/" + ] + }, + "/docs/modules/model_io/output_parsers/types/output_fixing/": { + "canonical": "/docs/how_to/output_parser_fixing/", + "alternative": [ + "/v0.1/docs/modules/model_io/output_parsers/types/output_fixing/" + ] + }, + "/docs/modules/model_io/output_parsers/types/pandas_dataframe/": { + "canonical": "/docs/how_to/output_parser_structured/", + "alternative": [ + "/v0.1/docs/modules/model_io/output_parsers/types/pandas_dataframe/" + ] + }, + "/docs/modules/model_io/output_parsers/types/pydantic/": { + "canonical": "/docs/how_to/output_parser_structured/", + "alternative": [ + "/v0.1/docs/modules/model_io/output_parsers/types/pydantic/" + ] + }, + "/docs/modules/model_io/output_parsers/types/retry/": { + "canonical": "/docs/how_to/output_parser_retry/", + "alternative": [ + "/v0.1/docs/modules/model_io/output_parsers/types/retry/" + ] + }, + "/docs/modules/model_io/output_parsers/types/structured/": { + "canonical": "/docs/how_to/output_parser_structured/", + "alternative": [ + "/v0.1/docs/modules/model_io/output_parsers/types/structured/" + ] + }, + "/docs/modules/model_io/output_parsers/types/xml/": { + "canonical": "/docs/how_to/output_parser_xml/", + "alternative": [ + "/v0.1/docs/modules/model_io/output_parsers/types/xml/" + ] + }, + "/docs/modules/model_io/output_parsers/types/yaml/": { + "canonical": "/docs/how_to/output_parser_yaml/", + "alternative": [ + "/v0.1/docs/modules/model_io/output_parsers/types/yaml/" + ] + }, + "/docs/modules/model_io/prompts/": { + "canonical": "/docs/how_to/#prompt-templates", + "alternative": [ + "/v0.1/docs/modules/model_io/prompts/" + ] + }, + "/docs/modules/model_io/prompts/composition/": { + "canonical": "/docs/how_to/prompts_composition/", + "alternative": [ + "/v0.1/docs/modules/model_io/prompts/composition/" + ] + }, + "/docs/modules/model_io/prompts/example_selectors/": { + "canonical": "/docs/how_to/example_selectors/", + "alternative": [ + "/v0.1/docs/modules/model_io/prompts/example_selectors/" + ] + }, + "/docs/modules/model_io/prompts/example_selectors/length_based/": { + "canonical": "/docs/how_to/example_selectors_length_based/", + "alternative": [ + "/v0.1/docs/modules/model_io/prompts/example_selectors/length_based/" + ] + }, + "/docs/modules/model_io/prompts/example_selectors/mmr/": { + "canonical": "/docs/how_to/example_selectors_mmr/", + "alternative": [ + "/v0.1/docs/modules/model_io/prompts/example_selectors/mmr/" + ] + }, + "/docs/modules/model_io/prompts/example_selectors/ngram_overlap/": { + "canonical": "/docs/how_to/example_selectors_ngram/", + "alternative": [ + "/v0.1/docs/modules/model_io/prompts/example_selectors/ngram_overlap/" + ] + }, + "/docs/modules/model_io/prompts/example_selectors/similarity/": { + "canonical": "/docs/how_to/example_selectors_similarity/", + "alternative": [ + "/v0.1/docs/modules/model_io/prompts/example_selectors/similarity/" + ] + }, + "/docs/modules/model_io/prompts/few_shot_examples_chat/": { + "canonical": "/docs/how_to/few_shot_examples_chat/", + "alternative": [ + "/v0.1/docs/modules/model_io/prompts/few_shot_examples_chat/" + ] + }, + "/docs/modules/model_io/prompts/few_shot_examples/": { + "canonical": "/docs/how_to/few_shot_examples/", + "alternative": [ + "/v0.1/docs/modules/model_io/prompts/few_shot_examples/" + ] + }, + "/docs/modules/model_io/prompts/partial/": { + "canonical": "/docs/how_to/prompts_partial/", + "alternative": [ + "/v0.1/docs/modules/model_io/prompts/partial/" + ] + }, + "/docs/modules/model_io/prompts/quick_start/": { + "canonical": "/docs/how_to/#prompt-templates", + "alternative": [ + "/v0.1/docs/modules/model_io/prompts/quick_start/" + ] + }, + "/docs/modules/model_io/quick_start/": { + "canonical": "/docs/tutorials/llm_chain/", + "alternative": [ + "/v0.1/docs/modules/model_io/quick_start/" + ] + }, + "/docs/modules/tools/": { + "canonical": "/docs/how_to/#tools", + "alternative": [ + "/v0.1/docs/modules/tools/" + ] + }, + "/docs/modules/tools/custom_tools/": { + "canonical": "/docs/how_to/custom_tools/", + "alternative": [ + "/v0.1/docs/modules/tools/custom_tools/" + ] + }, + "/docs/modules/tools/toolkits/": { + "canonical": "/docs/how_to/#tools", + "alternative": [ + "/v0.1/docs/modules/tools/toolkits/" + ] + }, + "/docs/modules/tools/tools_as_openai_functions/": { + "canonical": "/docs/how_to/tool_calling/", + "alternative": [ + "/v0.1/docs/modules/tools/tools_as_openai_functions/" + ] + }, + "/docs/packages/": { + "canonical": "/docs/versions/release_policy/", + "alternative": [ + "/v0.1/docs/packages/" + ] + }, + "/docs/templates/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/" + ] + }, + "/docs/templates/anthropic-iterative-search/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/anthropic-iterative-search/" + ] + }, + "/docs/templates/basic-critique-revise/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/basic-critique-revise/" + ] + }, + "/docs/templates/bedrock-jcvd/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/bedrock-jcvd/" + ] + }, + "/docs/templates/cassandra-entomology-rag/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/cassandra-entomology-rag/" + ] + }, + "/docs/templates/cassandra-synonym-caching/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/cassandra-synonym-caching/" + ] + }, + "/docs/templates/chain-of-note-wiki/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/chain-of-note-wiki/" + ] + }, + "/docs/templates/chat-bot-feedback/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/chat-bot-feedback/" + ] + }, + "/docs/templates/cohere-librarian/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/cohere-librarian/" + ] + }, + "/docs/templates/csv-agent/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/csv-agent/" + ] + }, + "/docs/templates/elastic-query-generator/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/elastic-query-generator/" + ] + }, + "/docs/templates/extraction-anthropic-functions/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/extraction-anthropic-functions/" + ] + }, + "/docs/templates/extraction-openai-functions/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/extraction-openai-functions/" + ] + }, + "/docs/templates/gemini-functions-agent/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/gemini-functions-agent/" + ] + }, + "/docs/templates/guardrails-output-parser/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/guardrails-output-parser/" + ] + }, + "/docs/templates/hybrid-search-weaviate/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/hybrid-search-weaviate/" + ] + }, + "/docs/templates/hyde/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/hyde/" + ] + }, + "/docs/templates/intel-rag-xeon/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/intel-rag-xeon/" + ] + }, + "/docs/templates/llama2-functions/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/llama2-functions/" + ] + }, + "/docs/templates/mongo-parent-document-retrieval/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/mongo-parent-document-retrieval/" + ] + }, + "/docs/templates/neo4j-advanced-rag/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/neo4j-advanced-rag/" + ] + }, + "/docs/templates/neo4j-cypher-ft/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/neo4j-cypher-ft/" + ] + }, + "/docs/templates/neo4j-cypher-memory/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/neo4j-cypher-memory/" + ] + }, + "/docs/templates/neo4j-cypher/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/neo4j-cypher/" + ] + }, + "/docs/templates/neo4j-generation/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/neo4j-generation/" + ] + }, + "/docs/templates/neo4j-parent/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/neo4j-parent/" + ] + }, + "/docs/templates/neo4j-semantic-layer/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/neo4j-semantic-layer/" + ] + }, + "/docs/templates/neo4j-semantic-ollama/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/neo4j-semantic-ollama/" + ] + }, + "/docs/templates/neo4j-vector-memory/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/neo4j-vector-memory/" + ] + }, + "/docs/templates/nvidia-rag-canonical/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/nvidia-rag-canonical/" + ] + }, + "/docs/templates/openai-functions-agent-gmail/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/openai-functions-agent-gmail/" + ] + }, + "/docs/templates/openai-functions-agent/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/openai-functions-agent/" + ] + }, + "/docs/templates/openai-functions-tool-retrieval-agent/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/openai-functions-tool-retrieval-agent/" + ] + }, + "/docs/templates/pii-protected-chatbot/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/pii-protected-chatbot/" + ] + }, + "/docs/templates/pirate-speak-configurable/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/pirate-speak-configurable/" + ] + }, + "/docs/templates/pirate-speak/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/pirate-speak/" + ] + }, + "/docs/templates/plate-chain/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/plate-chain/" + ] + }, + "/docs/templates/propositional-retrieval/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/propositional-retrieval/" + ] + }, + "/docs/templates/python-lint/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/python-lint/" + ] + }, + "/docs/templates/rag-astradb/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/rag-astradb/" + ] + }, + "/docs/templates/rag-aws-bedrock/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/rag-aws-bedrock/" + ] + }, + "/docs/templates/rag-aws-kendra/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/rag-aws-kendra/" + ] + }, + "/docs/templates/rag-azure-search/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/rag-azure-search/" + ] + }, + "/docs/templates/rag-chroma-multi-modal-multi-vector/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/rag-chroma-multi-modal-multi-vector/" + ] + }, + "/docs/templates/rag-chroma-multi-modal/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/rag-chroma-multi-modal/" + ] + }, + "/docs/templates/rag-chroma-private/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/rag-chroma-private/" + ] + }, + "/docs/templates/rag-chroma/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/rag-chroma/" + ] + }, + "/docs/templates/rag-codellama-fireworks/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/rag-codellama-fireworks/" + ] + }, + "/docs/templates/rag-conversation-zep/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/rag-conversation-zep/" + ] + }, + "/docs/templates/rag-conversation/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/rag-conversation/" + ] + }, + "/docs/templates/rag-elasticsearch/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/rag-elasticsearch/" + ] + }, + "/docs/templates/rag-fusion/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/rag-fusion/" + ] + }, + "/docs/templates/rag-gemini-multi-modal/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/rag-gemini-multi-modal/" + ] + }, + "/docs/templates/rag-google-cloud-sensitive-data-protection/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/rag-google-cloud-sensitive-data-protection/" + ] + }, + "/docs/templates/rag-google-cloud-vertexai-search/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/rag-google-cloud-vertexai-search/" + ] + }, + "/docs/templates/rag-gpt-crawler/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/rag-gpt-crawler/" + ] + }, + "/docs/templates/rag-jaguardb/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/rag-jaguardb/" + ] + }, + "/docs/templates/rag-lancedb/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/rag-lancedb/" + ] + }, + "/docs/templates/rag-lantern/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/rag-lantern/" + ] + }, + "/docs/templates/rag-matching-engine/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/rag-matching-engine/" + ] + }, + "/docs/templates/rag-momento-vector-index/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/rag-momento-vector-index/" + ] + }, + "/docs/templates/rag-mongo/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/rag-mongo/" + ] + }, + "/docs/templates/rag-multi-index-fusion/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/rag-multi-index-fusion/" + ] + }, + "/docs/templates/rag-multi-index-router/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/rag-multi-index-router/" + ] + }, + "/docs/templates/rag-multi-modal-local/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/rag-multi-modal-local/" + ] + }, + "/docs/templates/rag-multi-modal-mv-local/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/rag-multi-modal-mv-local/" + ] + }, + "/docs/templates/rag-ollama-multi-query/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/rag-ollama-multi-query/" + ] + }, + "/docs/templates/rag-opensearch/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/rag-opensearch/" + ] + }, + "/docs/templates/rag-pinecone-multi-query/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/rag-pinecone-multi-query/" + ] + }, + "/docs/templates/rag-pinecone-rerank/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/rag-pinecone-rerank/" + ] + }, + "/docs/templates/rag-pinecone/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/rag-pinecone/" + ] + }, + "/docs/templates/rag-redis-multi-modal-multi-vector/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/rag-redis-multi-modal-multi-vector/" + ] + }, + "/docs/templates/rag-redis/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/rag-redis/" + ] + }, + "/docs/templates/rag-self-query/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/rag-self-query/" + ] + }, + "/docs/templates/rag-semi-structured/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/rag-semi-structured/" + ] + }, + "/docs/templates/rag-singlestoredb/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/rag-singlestoredb/" + ] + }, + "/docs/templates/rag-supabase/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/rag-supabase/" + ] + }, + "/docs/templates/rag-timescale-conversation/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/rag-timescale-conversation/" + ] + }, + "/docs/templates/rag-timescale-hybrid-search-time/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/rag-timescale-hybrid-search-time/" + ] + }, + "/docs/templates/rag-vectara-multiquery/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/rag-vectara-multiquery/" + ] + }, + "/docs/templates/rag-vectara/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/rag-vectara/" + ] + }, + "/docs/templates/rag-weaviate/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/rag-weaviate/" + ] + }, + "/docs/templates/research-assistant/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/research-assistant/" + ] + }, + "/docs/templates/retrieval-agent-fireworks/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/retrieval-agent-fireworks/" + ] + }, + "/docs/templates/retrieval-agent/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/retrieval-agent/" + ] + }, + "/docs/templates/rewrite-retrieve-read/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/rewrite-retrieve-read/" + ] + }, + "/docs/templates/robocorp-action-server/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/robocorp-action-server/" + ] + }, + "/docs/templates/self-query-qdrant/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/self-query-qdrant/" + ] + }, + "/docs/templates/self-query-supabase/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/self-query-supabase/" + ] + }, + "/docs/templates/shopping-assistant/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/shopping-assistant/" + ] + }, + "/docs/templates/skeleton-of-thought/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/skeleton-of-thought/" + ] + }, + "/docs/templates/solo-performance-prompting-agent/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/solo-performance-prompting-agent/" + ] + }, + "/docs/templates/sql-llama2/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/sql-llama2/" + ] + }, + "/docs/templates/sql-llamacpp/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/sql-llamacpp/" + ] + }, + "/docs/templates/sql-ollama/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/sql-ollama/" + ] + }, + "/docs/templates/sql-pgvector/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/sql-pgvector/" + ] + }, + "/docs/templates/sql-research-assistant/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/sql-research-assistant/" + ] + }, + "/docs/templates/stepback-qa-prompting/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/stepback-qa-prompting/" + ] + }, + "/docs/templates/summarize-anthropic/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/summarize-anthropic/" + ] + }, + "/docs/templates/vertexai-chuck-norris/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/vertexai-chuck-norris/" + ] + }, + "/docs/templates/xml-agent/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/templates/xml-agent/" + ] + }, + "/docs/use_cases/": { + "canonical": "/docs/tutorials/", + "alternative": [ + "/v0.1/docs/use_cases/" + ] + }, + "/docs/use_cases/apis/": { + "canonical": null, + "alternative": [ + "/v0.1/docs/use_cases/apis/" + ] + }, + "/docs/use_cases/chatbots/": { + "canonical": "/docs/tutorials/chatbot/", + "alternative": [ + "/v0.1/docs/use_cases/chatbots/" + ] + }, + "/docs/use_cases/chatbots/memory_management/": { + "canonical": "/docs/tutorials/chatbot/", + "alternative": [ + "/v0.1/docs/use_cases/chatbots/memory_management/" + ] + }, + "/docs/use_cases/chatbots/quickstart/": { + "canonical": "/docs/tutorials/chatbot/", + "alternative": [ + "/v0.1/docs/use_cases/chatbots/quickstart/" + ] + }, + "/docs/use_cases/chatbots/retrieval/": { + "canonical": "/docs/tutorials/chatbot/", + "alternative": [ + "/v0.1/docs/use_cases/chatbots/retrieval/" + ] + }, + "/docs/use_cases/chatbots/tool_usage/": { + "canonical": "/docs/tutorials/chatbot/", + "alternative": [ + "/v0.1/docs/use_cases/chatbots/tool_usage/" + ] + }, + "/docs/use_cases/code_understanding/": { + "canonical": "https://langchain-ai.github.io/langgraph/tutorials/code_assistant/langgraph_code_assistant/", + "alternative": [ + "/v0.1/docs/use_cases/code_understanding/" + ] + }, + "/docs/use_cases/data_generation/": { + "canonical": "/docs/tutorials/data_generation/", + "alternative": [ + "/v0.1/docs/use_cases/data_generation/" + ] + }, + "/docs/use_cases/extraction/": { + "canonical": "/docs/tutorials/extraction/", + "alternative": [ + "/v0.1/docs/use_cases/extraction/" + ] + }, + "/docs/use_cases/extraction/guidelines/": { + "canonical": "/docs/tutorials/extraction/", + "alternative": [ + "/v0.1/docs/use_cases/extraction/guidelines/" + ] + }, + "/docs/use_cases/extraction/how_to/examples/": { + "canonical": "/docs/tutorials/extraction/", + "alternative": [ + "/v0.1/docs/use_cases/extraction/how_to/examples/" + ] + }, + "/docs/use_cases/extraction/how_to/handle_files/": { + "canonical": "/docs/tutorials/extraction/", + "alternative": [ + "/v0.1/docs/use_cases/extraction/how_to/handle_files/" + ] + }, + "/docs/use_cases/extraction/how_to/handle_long_text/": { + "canonical": "/docs/tutorials/extraction/", + "alternative": [ + "/v0.1/docs/use_cases/extraction/how_to/handle_long_text/" + ] + }, + "/docs/use_cases/extraction/how_to/parse/": { + "canonical": "/docs/tutorials/extraction/", + "alternative": [ + "/v0.1/docs/use_cases/extraction/how_to/parse/" + ] + }, + "/docs/use_cases/extraction/quickstart/": { + "canonical": "/docs/tutorials/extraction/", + "alternative": [ + "/v0.1/docs/use_cases/extraction/quickstart/" + ] + }, + "/docs/use_cases/graph/": { + "canonical": "/docs/tutorials/graph/", + "alternative": [ + "/v0.1/docs/use_cases/graph/" + ] + }, + "/docs/use_cases/graph/constructing/": { + "canonical": "/docs/tutorials/graph/", + "alternative": [ + "/v0.1/docs/use_cases/graph/constructing/" + ] + }, + "/docs/use_cases/graph/mapping/": { + "canonical": "/docs/tutorials/graph/", + "alternative": [ + "/v0.1/docs/use_cases/graph/mapping/" + ] + }, + "/docs/use_cases/graph/prompting/": { + "canonical": "/docs/tutorials/graph/", + "alternative": [ + "/v0.1/docs/use_cases/graph/prompting/" + ] + }, + "/docs/use_cases/graph/quickstart/": { + "canonical": "/docs/tutorials/graph/", + "alternative": [ + "/v0.1/docs/use_cases/graph/quickstart/" + ] + }, + "/docs/use_cases/graph/semantic/": { + "canonical": "/docs/tutorials/graph/", + "alternative": [ + "/v0.1/docs/use_cases/graph/semantic/" + ] + }, + "/docs/use_cases/query_analysis/": { + "canonical": "/docs/tutorials/query_analysis/", + "alternative": [ + "/v0.1/docs/use_cases/query_analysis/" + ] + }, + "/docs/use_cases/query_analysis/how_to/constructing-filters/": { + "canonical": "/docs/tutorials/query_analysis/", + "alternative": [ + "/v0.1/docs/use_cases/query_analysis/how_to/constructing-filters/" + ] + }, + "/docs/use_cases/query_analysis/how_to/few_shot/": { + "canonical": "/docs/tutorials/query_analysis/", + "alternative": [ + "/v0.1/docs/use_cases/query_analysis/how_to/few_shot/" + ] + }, + "/docs/use_cases/query_analysis/how_to/high_cardinality/": { + "canonical": "/docs/tutorials/query_analysis/", + "alternative": [ + "/v0.1/docs/use_cases/query_analysis/how_to/high_cardinality/" + ] + }, + "/docs/use_cases/query_analysis/how_to/multiple_queries/": { + "canonical": "/docs/tutorials/query_analysis/", + "alternative": [ + "/v0.1/docs/use_cases/query_analysis/how_to/multiple_queries/" + ] + }, + "/docs/use_cases/query_analysis/how_to/multiple_retrievers/": { + "canonical": "/docs/tutorials/query_analysis/", + "alternative": [ + "/v0.1/docs/use_cases/query_analysis/how_to/multiple_retrievers/" + ] + }, + "/docs/use_cases/query_analysis/how_to/no_queries/": { + "canonical": "/docs/tutorials/query_analysis/", + "alternative": [ + "/v0.1/docs/use_cases/query_analysis/how_to/no_queries/" + ] + }, + "/docs/use_cases/query_analysis/quickstart/": { + "canonical": "/docs/tutorials/query_analysis/", + "alternative": [ + "/v0.1/docs/use_cases/query_analysis/quickstart/" + ] + }, + "/docs/use_cases/query_analysis/techniques/decomposition/": { + "canonical": "/docs/tutorials/query_analysis/", + "alternative": [ + "/v0.1/docs/use_cases/query_analysis/techniques/decomposition/" + ] + }, + "/docs/use_cases/query_analysis/techniques/expansion/": { + "canonical": "/docs/tutorials/query_analysis/", + "alternative": [ + "/v0.1/docs/use_cases/query_analysis/techniques/expansion/" + ] + }, + "/docs/use_cases/query_analysis/techniques/hyde/": { + "canonical": "/docs/tutorials/query_analysis/", + "alternative": [ + "/v0.1/docs/use_cases/query_analysis/techniques/hyde/" + ] + }, + "/docs/use_cases/query_analysis/techniques/routing/": { + "canonical": "/docs/tutorials/query_analysis/", + "alternative": [ + "/v0.1/docs/use_cases/query_analysis/techniques/routing/" + ] + }, + "/docs/use_cases/query_analysis/techniques/step_back/": { + "canonical": "/docs/tutorials/query_analysis/", + "alternative": [ + "/v0.1/docs/use_cases/query_analysis/techniques/step_back/" + ] + }, + "/docs/use_cases/query_analysis/techniques/structuring/": { + "canonical": "/docs/tutorials/query_analysis/", + "alternative": [ + "/v0.1/docs/use_cases/query_analysis/techniques/structuring/" + ] + }, + "/docs/use_cases/question_answering/": { + "canonical": "/docs/tutorials/rag/", + "alternative": [ + "/v0.1/docs/use_cases/question_answering/" + ] + }, + "/docs/use_cases/question_answering/chat_history/": { + "canonical": "/docs/tutorials/rag/", + "alternative": [ + "/v0.1/docs/use_cases/question_answering/chat_history/" + ] + }, + "/docs/use_cases/question_answering/citations/": { + "canonical": "/docs/tutorials/rag/", + "alternative": [ + "/v0.1/docs/use_cases/question_answering/citations/" + ] + }, + "/docs/use_cases/question_answering/conversational_retrieval_agents/": { + "canonical": "/docs/tutorials/qa_chat_history/", + "alternative": [ + "/v0.1/docs/use_cases/question_answering/conversational_retrieval_agents/" + ] + }, + "/docs/use_cases/question_answering/hybrid/": { + "canonical": "/docs/tutorials/rag/", + "alternative": [ + "/v0.1/docs/use_cases/question_answering/hybrid/" + ] + }, + "/docs/use_cases/question_answering/local_retrieval_qa/": { + "canonical": "/docs/tutorials/rag/", + "alternative": [ + "/v0.1/docs/use_cases/question_answering/local_retrieval_qa/" + ] + }, + "/docs/use_cases/question_answering/per_user/": { + "canonical": "/docs/tutorials/rag/", + "alternative": [ + "/v0.1/docs/use_cases/question_answering/per_user/" + ] + }, + "/docs/use_cases/question_answering/quickstart/": { + "canonical": "/docs/tutorials/rag/", + "alternative": [ + "/v0.1/docs/use_cases/question_answering/quickstart/" + ] + }, + "/docs/use_cases/question_answering/sources/": { + "canonical": "/docs/tutorials/rag/", + "alternative": [ + "/v0.1/docs/use_cases/question_answering/sources/" + ] + }, + "/docs/use_cases/question_answering/streaming/": { + "canonical": "/docs/tutorials/rag/", + "alternative": [ + "/v0.1/docs/use_cases/question_answering/streaming/" + ] + }, + "/docs/use_cases/sql/": { + "canonical": "/docs/tutorials/sql_qa/", + "alternative": [ + "/v0.1/docs/use_cases/sql/" + ] + }, + "/docs/use_cases/sql/agents/": { + "canonical": "/docs/tutorials/sql_qa/", + "alternative": [ + "/v0.1/docs/use_cases/sql/agents/" + ] + }, + "/docs/use_cases/sql/csv/": { + "canonical": "/docs/tutorials/sql_qa/", + "alternative": [ + "/v0.1/docs/use_cases/sql/csv/" + ] + }, + "/docs/use_cases/sql/large_db/": { + "canonical": "/docs/tutorials/sql_qa/", + "alternative": [ + "/v0.1/docs/use_cases/sql/large_db/" + ] + }, + "/docs/use_cases/sql/prompting/": { + "canonical": "/docs/tutorials/sql_qa/", + "alternative": [ + "/v0.1/docs/use_cases/sql/prompting/" + ] + }, + "/docs/use_cases/sql/query_checking/": { + "canonical": "/docs/tutorials/sql_qa/", + "alternative": [ + "/v0.1/docs/use_cases/sql/query_checking/" + ] + }, + "/docs/use_cases/sql/quickstart/": { + "canonical": "/docs/tutorials/sql_qa/", + "alternative": [ + "/v0.1/docs/use_cases/sql/quickstart/" + ] + }, + "/docs/use_cases/summarization/": { + "canonical": "/docs/tutorials/summarization/", + "alternative": [ + "/v0.1/docs/use_cases/summarization/" + ] + }, + "/docs/use_cases/tagging/": { + "canonical": "/docs/tutorials/classification/", + "alternative": [ + "/v0.1/docs/use_cases/tagging/" + ] + }, + "/docs/use_cases/tool_use/": { + "canonical": "/docs/tutorials/agents/", + "alternative": [ + "/v0.1/docs/use_cases/tool_use/" + ] + }, + "/docs/use_cases/tool_use/agents/": { + "canonical": "/docs/tutorials/agents/", + "alternative": [ + "/v0.1/docs/use_cases/tool_use/agents/" + ] + }, + "/docs/use_cases/tool_use/human_in_the_loop/": { + "canonical": "/docs/tutorials/agents/", + "alternative": [ + "/v0.1/docs/use_cases/tool_use/human_in_the_loop/" + ] + }, + "/docs/use_cases/tool_use/multiple_tools/": { + "canonical": "/docs/tutorials/agents/", + "alternative": [ + "/v0.1/docs/use_cases/tool_use/multiple_tools/" + ] + }, + "/docs/use_cases/tool_use/parallel/": { + "canonical": "/docs/tutorials/agents/", + "alternative": [ + "/v0.1/docs/use_cases/tool_use/parallel/" + ] + }, + "/docs/use_cases/tool_use/prompting/": { + "canonical": "/docs/tutorials/agents/", + "alternative": [ + "/v0.1/docs/use_cases/tool_use/prompting/" + ] + }, + "/docs/use_cases/tool_use/quickstart/": { + "canonical": "/docs/tutorials/agents/", + "alternative": [ + "/v0.1/docs/use_cases/tool_use/quickstart/" + ] + }, + "/docs/use_cases/tool_use/tool_error_handling/": { + "canonical": "/docs/tutorials/agents/", + "alternative": [ + "/v0.1/docs/use_cases/tool_use/tool_error_handling/" + ] + }, + "/docs/use_cases/web_scraping/": { + "canonical": "https://langchain-ai.github.io/langgraph/tutorials/web-navigation/web_voyager/", + "alternative": [ + "/v0.1/docs/use_cases/web_scraping/" + ] + }, + // below are new + "/docs/modules/data_connection/document_transformers/text_splitters/": {"canonical": "/docs/how_to/#text-splitters", "alternative": ["/v0.1/docs/modules/data_connection/document_transformers/"]}, + "/docs/modules/data_connection/document_transformers/text_splitters/character_text_splitter/": {"canonical": "/docs/how_to/character_text_splitter/", "alternative": ["/v0.1/docs/modules/data_connection/document_transformers/character_text_splitter/"]}, + "/docs/modules/data_connection/document_transformers/text_splitters/code_splitter/": {"canonical": "/docs/how_to/code_splitter/", "alternative": ["/v0.1/docs/modules/data_connection/document_transformers/code_splitter/"]}, + "/docs/modules/data_connection/document_transformers/text_splitters/HTML_header_metadata/": {"canonical": "/docs/how_to/HTML_header_metadata_splitter/", "alternative": ["/v0.1/docs/modules/data_connection/document_transformers/HTML_header_metadata/"]}, + "/docs/modules/data_connection/document_transformers/text_splitters/HTML_section_aware_splitter/": {"canonical": "/docs/how_to/HTML_section_aware_splitter/", "alternative": ["/v0.1/docs/modules/data_connection/document_transformers/HTML_section_aware_splitter/"]}, + "/docs/modules/data_connection/document_transformers/text_splitters/markdown_header_metadata/": {"canonical": "/docs/how_to/markdown_header_metadata_splitter/", "alternative": ["/v0.1/docs/modules/data_connection/document_transformers/markdown_header_metadata/"]}, + "/docs/modules/data_connection/document_transformers/text_splitters/recursive_json_splitter/": {"canonical": "/docs/how_to/recursive_json_splitter/", "alternative": ["/v0.1/docs/modules/data_connection/document_transformers/recursive_json_splitter/"]}, + "/docs/modules/data_connection/document_transformers/text_splitters/recursive_text_splitter/": {"canonical": "/docs/how_to/recursive_text_splitter/", "alternative": ["/v0.1/docs/modules/data_connection/document_transformers/recursive_text_splitter/"]}, + "/docs/modules/data_connection/document_transformers/text_splitters/semantic-chunker/": {"canonical": "/docs/how_to/semantic-chunker/", "alternative": ["/v0.1/docs/modules/data_connection/document_transformers/semantic-chunker/"]}, + "/docs/modules/data_connection/document_transformers/text_splitters/split_by_token/": {"canonical": "/docs/how_to/split_by_token/", "alternative": ["/v0.1/docs/modules/data_connection/document_transformers/split_by_token/"]}, + "/docs/modules/model_io/prompts/prompt_templates/": {"canonical": "/docs/how_to/#prompt-templates", "alternative": ["/v0.1/docs/modules/model_io/prompts/"]}, + "/docs/modules/model_io/prompts/prompt_templates/composition/": {"canonical": "/docs/how_to/prompts_composition/", "alternative": ["/v0.1/docs/modules/model_io/prompts/composition/"]}, + "/docs/modules/model_io/prompts/prompt_templates/example_selectors/": {"canonical": "/docs/how_to/example_selectors/", "alternative": ["/v0.1/docs/modules/model_io/prompts/example_selectors/"]}, + "/docs/modules/model_io/prompts/prompt_templates/example_selectors/length_based/": {"canonical": "/docs/how_to/example_selectors_length_based/", "alternative": ["/v0.1/docs/modules/model_io/prompts/example_selectors/length_based/"]}, + "/docs/modules/model_io/prompts/prompt_templates/example_selectors/mmr/": {"canonical": "/docs/how_to/example_selectors_mmr/", "alternative": ["/v0.1/docs/modules/model_io/prompts/example_selectors/mmr/"]}, + "/docs/modules/model_io/prompts/prompt_templates/example_selectors/ngram_overlap/": {"canonical": "/docs/how_to/example_selectors_ngram/", "alternative": ["/v0.1/docs/modules/model_io/prompts/example_selectors/ngram_overlap/"]}, + "/docs/modules/model_io/prompts/prompt_templates/example_selectors/similarity/": {"canonical": "/docs/how_to/example_selectors_similarity/", "alternative": ["/v0.1/docs/modules/model_io/prompts/example_selectors/similarity/"]}, + "/docs/modules/model_io/prompts/prompt_templates/few_shot_examples_chat/": {"canonical": "/docs/how_to/few_shot_examples_chat/", "alternative": ["/v0.1/docs/modules/model_io/prompts/few_shot_examples_chat/"]}, + "/docs/modules/model_io/prompts/prompt_templates/few_shot_examples/": {"canonical": "/docs/how_to/few_shot_examples/", "alternative": ["/v0.1/docs/modules/model_io/prompts/few_shot_examples/"]}, + "/docs/modules/model_io/prompts/prompt_templates/partial/": {"canonical": "/docs/how_to/prompts_partial/", "alternative": ["/v0.1/docs/modules/model_io/prompts/partial/"]}, + "/docs/modules/model_io/prompts/prompt_templates/quick_start/": {"canonical": "/docs/how_to/#prompt-templates", "alternative": ["/v0.1/docs/modules/model_io/prompts/quick_start/"]}, + "/docs/modules/model_io/models/": {"canonical": "/docs/how_to/#chat-models", "alternative": ["/v0.1/docs/modules/model_io/"]}, + "/docs/modules/model_io/models/chat/": {"canonical": "/docs/how_to/#chat-models", "alternative": ["/v0.1/docs/modules/model_io/chat/"]}, + "/docs/modules/model_io/models/chat/chat_model_caching/": {"canonical": "/docs/how_to/chat_model_caching/", "alternative": ["/v0.1/docs/modules/model_io/chat/chat_model_caching/"]}, + "/docs/modules/model_io/models/chat/custom_chat_model/": {"canonical": "/docs/how_to/custom_chat_model/", "alternative": ["/v0.1/docs/modules/model_io/chat/custom_chat_model/"]}, + "/docs/modules/model_io/models/chat/function_calling/": {"canonical": "/docs/how_to/tool_calling/", "alternative": ["/v0.1/docs/modules/model_io/chat/function_calling/"]}, + "/docs/modules/model_io/models/chat/logprobs/": {"canonical": "/docs/how_to/logprobs/", "alternative": ["/v0.1/docs/modules/model_io/chat/logprobs/"]}, + "/docs/modules/model_io/models/chat/message_types/": {"canonical": "/docs/concepts/#messages", "alternative": ["/v0.1/docs/modules/model_io/chat/message_types/"]}, + "/docs/modules/model_io/models/chat/quick_start/": {"canonical": "/docs/tutorials/llm_chain/", "alternative": ["/v0.1/docs/modules/model_io/chat/quick_start/"]}, + "/docs/modules/model_io/models/chat/response_metadata/": {"canonical": "/docs/how_to/response_metadata/", "alternative": ["/v0.1/docs/modules/model_io/chat/response_metadata/"]}, + "/docs/modules/model_io/models/chat/streaming/": {"canonical": "/docs/how_to/streaming/", "alternative": ["/v0.1/docs/modules/model_io/chat/streaming/"]}, + "/docs/modules/model_io/models/chat/structured_output/": {"canonical": "/docs/how_to/structured_output/", "alternative": ["/v0.1/docs/modules/model_io/chat/structured_output/"]}, + "/docs/modules/model_io/models/chat/token_usage_tracking/": {"canonical": "/docs/how_to/chat_token_usage_tracking/", "alternative": ["/v0.1/docs/modules/model_io/chat/token_usage_tracking/"]}, + "/docs/modules/model_io/models/concepts/": {"canonical": "/docs/concepts/#chat-models", "alternative": ["/v0.1/docs/modules/model_io/concepts/"]}, + "/docs/modules/model_io/models/llms/": {"canonical": "/docs/concepts/#llms", "alternative": ["/v0.1/docs/modules/model_io/llms/"]}, + "/docs/modules/model_io/models/llms/custom_llm/": {"canonical": "/docs/how_to/custom_llm/", "alternative": ["/v0.1/docs/modules/model_io/llms/custom_llm/"]}, + "/docs/modules/model_io/models/llms/llm_caching/": {"canonical": "/docs/how_to/llm_caching/", "alternative": ["/v0.1/docs/modules/model_io/llms/llm_caching/"]}, + "/docs/modules/model_io/models/llms/quick_start/": {"canonical": "/docs/tutorials/llm_chain/", "alternative": ["/v0.1/docs/modules/model_io/llms/quick_start/"]}, + "/docs/modules/model_io/models/llms/streaming_llm/": {"canonical": "/docs/how_to/streaming_llm/", "alternative": ["/v0.1/docs/modules/model_io/llms/streaming_llm/"]}, + "/docs/modules/model_io/models/llms/token_usage_tracking/": {"canonical": "/docs/how_to/llm_token_usage_tracking/", "alternative": ["/v0.1/docs/modules/model_io/llms/token_usage_tracking/"]}, + "/docs/modules/model_io/models/output_parsers/": {"canonical": "/docs/how_to/#output-parsers", "alternative": ["/v0.1/docs/modules/model_io/output_parsers/"]}, + "/docs/modules/model_io/models/output_parsers/custom/": {"canonical": "/docs/how_to/output_parser_custom/", "alternative": ["/v0.1/docs/modules/model_io/output_parsers/custom/"]}, + "/docs/modules/model_io/models/output_parsers/quick_start/": {"canonical": "/docs/how_to/output_parser_structured/", "alternative": ["/v0.1/docs/modules/model_io/output_parsers/quick_start/"]}, + "/docs/modules/model_io/models/output_parsers/types/csv/": {"canonical": "/docs/how_to/output_parser_structured/", "alternative": ["/v0.1/docs/modules/model_io/output_parsers/types/csv/"]}, + "/docs/modules/model_io/models/output_parsers/types/datetime/": {"canonical": "/docs/how_to/output_parser_structured/", "alternative": ["/v0.1/docs/modules/model_io/output_parsers/types/datetime/"]}, + "/docs/modules/model_io/models/output_parsers/types/enum/": {"canonical": "/docs/how_to/output_parser_structured/", "alternative": ["/v0.1/docs/modules/model_io/output_parsers/types/enum/"]}, + "/docs/modules/model_io/models/output_parsers/types/json/": {"canonical": "/docs/how_to/output_parser_json/", "alternative": ["/v0.1/docs/modules/model_io/output_parsers/types/json/"]}, + "/docs/modules/model_io/models/output_parsers/types/openai_functions/": {"canonical": "/docs/how_to/structured_output/", "alternative": ["/v0.1/docs/modules/model_io/output_parsers/types/openai_functions/"]}, + "/docs/modules/model_io/models/output_parsers/types/openai_tools/": {"canonical": "/docs/how_to/tool_calling/", "alternative": ["/v0.1/docs/modules/model_io/output_parsers/types/openai_tools/"]}, + "/docs/modules/model_io/models/output_parsers/types/output_fixing/": {"canonical": "/docs/how_to/output_parser_fixing/", "alternative": ["/v0.1/docs/modules/model_io/output_parsers/types/output_fixing/"]}, + "/docs/modules/model_io/models/output_parsers/types/pandas_dataframe/": {"canonical": "/docs/how_to/output_parser_structured/", "alternative": ["/v0.1/docs/modules/model_io/output_parsers/types/pandas_dataframe/"]}, + "/docs/modules/model_io/models/output_parsers/types/pydantic/": {"canonical": "/docs/how_to/output_parser_structured/", "alternative": ["/v0.1/docs/modules/model_io/output_parsers/types/pydantic/"]}, + "/docs/modules/model_io/models/output_parsers/types/retry/": {"canonical": "/docs/how_to/output_parser_retry/", "alternative": ["/v0.1/docs/modules/model_io/output_parsers/types/retry/"]}, + "/docs/modules/model_io/models/output_parsers/types/structured/": {"canonical": "/docs/how_to/output_parser_structured/", "alternative": ["/v0.1/docs/modules/model_io/output_parsers/types/structured/"]}, + "/docs/modules/model_io/models/output_parsers/types/xml/": {"canonical": "/docs/how_to/output_parser_xml/", "alternative": ["/v0.1/docs/modules/model_io/output_parsers/types/xml/"]}, + "/docs/modules/model_io/models/output_parsers/types/yaml/": {"canonical": "/docs/how_to/output_parser_yaml/", "alternative": ["/v0.1/docs/modules/model_io/output_parsers/types/yaml/"]}, + "/docs/modules/model_io/models/prompts/": {"canonical": "/docs/how_to/#prompt-templates", "alternative": ["/v0.1/docs/modules/model_io/prompts/"]}, + "/docs/modules/model_io/models/prompts/composition/": {"canonical": "/docs/how_to/prompts_composition/", "alternative": ["/v0.1/docs/modules/model_io/prompts/composition/"]}, + "/docs/modules/model_io/models/prompts/example_selectors/": {"canonical": "/docs/how_to/example_selectors/", "alternative": ["/v0.1/docs/modules/model_io/prompts/example_selectors/"]}, + "/docs/modules/model_io/models/prompts/example_selectors/length_based/": {"canonical": "/docs/how_to/example_selectors_length_based/", "alternative": ["/v0.1/docs/modules/model_io/prompts/example_selectors/length_based/"]}, + "/docs/modules/model_io/models/prompts/example_selectors/mmr/": {"canonical": "/docs/how_to/example_selectors_mmr/", "alternative": ["/v0.1/docs/modules/model_io/prompts/example_selectors/mmr/"]}, + "/docs/modules/model_io/models/prompts/example_selectors/ngram_overlap/": {"canonical": "/docs/how_to/example_selectors_ngram/", "alternative": ["/v0.1/docs/modules/model_io/prompts/example_selectors/ngram_overlap/"]}, + "/docs/modules/model_io/models/prompts/example_selectors/similarity/": {"canonical": "/docs/how_to/example_selectors_similarity/", "alternative": ["/v0.1/docs/modules/model_io/prompts/example_selectors/similarity/"]}, + "/docs/modules/model_io/models/prompts/few_shot_examples_chat/": {"canonical": "/docs/how_to/few_shot_examples_chat/", "alternative": ["/v0.1/docs/modules/model_io/prompts/few_shot_examples_chat/"]}, + "/docs/modules/model_io/models/prompts/few_shot_examples/": {"canonical": "/docs/how_to/few_shot_examples/", "alternative": ["/v0.1/docs/modules/model_io/prompts/few_shot_examples/"]}, + "/docs/modules/model_io/models/prompts/partial/": {"canonical": "/docs/how_to/prompts_partial/", "alternative": ["/v0.1/docs/modules/model_io/prompts/partial/"]}, + "/docs/modules/model_io/models/prompts/quick_start/": {"canonical": "/docs/how_to/#prompt-templates", "alternative": ["/v0.1/docs/modules/model_io/prompts/quick_start/"]}, + "/docs/modules/model_io/models/quick_start/": {"canonical": "/docs/tutorials/llm_chain/", "alternative": ["/v0.1/docs/modules/model_io/quick_start/"]}, + "/docs/use_cases/more/graph/": {"canonical": "/docs/tutorials/graph/", "alternative": ["/v0.1/docs/use_cases/graph/"]}, + "/docs/use_cases/more/graph/constructing/": {"canonical": "/docs/tutorials/graph/", "alternative": ["/v0.1/docs/use_cases/graph/constructing/"]}, + "/docs/use_cases/more/graph/mapping/": {"canonical": "/docs/tutorials/graph/", "alternative": ["/v0.1/docs/use_cases/graph/mapping/"]}, + "/docs/use_cases/more/graph/prompting/": {"canonical": "/docs/tutorials/graph/", "alternative": ["/v0.1/docs/use_cases/graph/prompting/"]}, + "/docs/use_cases/more/graph/quickstart/": {"canonical": "/docs/tutorials/graph/", "alternative": ["/v0.1/docs/use_cases/graph/quickstart/"]}, + "/docs/use_cases/more/graph/semantic/": {"canonical": "/docs/tutorials/graph/", "alternative": ["/v0.1/docs/use_cases/graph/semantic/"]}, + "/docs/modules/model_io/chat/how_to/": {"canonical": "/docs/how_to/#chat-models", "alternative": ["/v0.1/docs/modules/model_io/chat/"]}, + "/docs/modules/model_io/chat/how_to/chat_model_caching/": {"canonical": "/docs/how_to/chat_model_caching/", "alternative": ["/v0.1/docs/modules/model_io/chat/chat_model_caching/"]}, + "/docs/modules/model_io/chat/how_to/custom_chat_model/": {"canonical": "/docs/how_to/custom_chat_model/", "alternative": ["/v0.1/docs/modules/model_io/chat/custom_chat_model/"]}, + "/docs/modules/model_io/chat/how_to/function_calling/": {"canonical": "/docs/how_to/tool_calling/", "alternative": ["/v0.1/docs/modules/model_io/chat/function_calling/"]}, + "/docs/modules/model_io/chat/how_to/logprobs/": {"canonical": "/docs/how_to/logprobs/", "alternative": ["/v0.1/docs/modules/model_io/chat/logprobs/"]}, + "/docs/modules/model_io/chat/how_to/message_types/": {"canonical": "/docs/concepts/#messages", "alternative": ["/v0.1/docs/modules/model_io/chat/message_types/"]}, + "/docs/modules/model_io/chat/how_to/quick_start/": {"canonical": "/docs/tutorials/llm_chain/", "alternative": ["/v0.1/docs/modules/model_io/chat/quick_start/"]}, + "/docs/modules/model_io/chat/how_to/response_metadata/": {"canonical": "/docs/how_to/response_metadata/", "alternative": ["/v0.1/docs/modules/model_io/chat/response_metadata/"]}, + "/docs/modules/model_io/chat/how_to/streaming/": {"canonical": "/docs/how_to/streaming/", "alternative": ["/v0.1/docs/modules/model_io/chat/streaming/"]}, + "/docs/modules/model_io/chat/how_to/structured_output/": {"canonical": "/docs/how_to/structured_output/", "alternative": ["/v0.1/docs/modules/model_io/chat/structured_output/"]}, + "/docs/modules/model_io/chat/how_to/token_usage_tracking/": {"canonical": "/docs/how_to/chat_token_usage_tracking/", "alternative": ["/v0.1/docs/modules/model_io/chat/token_usage_tracking/"]}, + "/docs/modules/model_io/llms/how_to/": {"canonical": "/docs/concepts/#llms", "alternative": ["/v0.1/docs/modules/model_io/llms/"]}, + "/docs/modules/model_io/llms/how_to/custom_llm/": {"canonical": "/docs/how_to/custom_llm/", "alternative": ["/v0.1/docs/modules/model_io/llms/custom_llm/"]}, + "/docs/modules/model_io/llms/how_to/llm_caching/": {"canonical": "/docs/how_to/llm_caching/", "alternative": ["/v0.1/docs/modules/model_io/llms/llm_caching/"]}, + "/docs/modules/model_io/llms/how_to/quick_start/": {"canonical": "/docs/tutorials/llm_chain/", "alternative": ["/v0.1/docs/modules/model_io/llms/quick_start/"]}, + "/docs/modules/model_io/llms/how_to/streaming_llm/": {"canonical": "/docs/how_to/streaming_llm/", "alternative": ["/v0.1/docs/modules/model_io/llms/streaming_llm/"]}, + "/docs/modules/model_io/llms/how_to/token_usage_tracking/": {"canonical": "/docs/how_to/llm_token_usage_tracking/", "alternative": ["/v0.1/docs/modules/model_io/llms/token_usage_tracking/"]}, + "/docs/modules/model_io/llms/integrations/llm_caching/": {"canonical": "/docs/how_to/llm_caching/", "alternative": ["/v0.1/docs/integrations/llms/llm_caching/"]}, + "/docs/modules/model_io/chat/integrations/ollama_functions/": {"canonical": "/docs/integrations/chat/ollama/", "alternative": ["/v0.1/docs/integrations/chat/ollama_functions/"]}, + "/en/latest/modules/models/": {"canonical": "/docs/how_to/#chat-models", "alternative": ["/v0.1/docs/modules/model_io/"]}, + "/en/latest/modules/models/chat/": {"canonical": "/docs/how_to/#chat-models", "alternative": ["/v0.1/docs/modules/model_io/chat/"]}, + "/en/latest/modules/models/chat/chat_model_caching/": {"canonical": "/docs/how_to/chat_model_caching/", "alternative": ["/v0.1/docs/modules/model_io/chat/chat_model_caching/"]}, + "/en/latest/modules/models/chat/custom_chat_model/": {"canonical": "/docs/how_to/custom_chat_model/", "alternative": ["/v0.1/docs/modules/model_io/chat/custom_chat_model/"]}, + "/en/latest/modules/models/chat/function_calling/": {"canonical": "/docs/how_to/tool_calling/", "alternative": ["/v0.1/docs/modules/model_io/chat/function_calling/"]}, + "/en/latest/modules/models/chat/logprobs/": {"canonical": "/docs/how_to/logprobs/", "alternative": ["/v0.1/docs/modules/model_io/chat/logprobs/"]}, + "/en/latest/modules/models/chat/message_types/": {"canonical": "/docs/concepts/#messages", "alternative": ["/v0.1/docs/modules/model_io/chat/message_types/"]}, + "/en/latest/modules/models/chat/quick_start/": {"canonical": "/docs/tutorials/llm_chain/", "alternative": ["/v0.1/docs/modules/model_io/chat/quick_start/"]}, + "/en/latest/modules/models/chat/response_metadata/": {"canonical": "/docs/how_to/response_metadata/", "alternative": ["/v0.1/docs/modules/model_io/chat/response_metadata/"]}, + "/en/latest/modules/models/chat/streaming/": {"canonical": "/docs/how_to/streaming/", "alternative": ["/v0.1/docs/modules/model_io/chat/streaming/"]}, + "/en/latest/modules/models/chat/structured_output/": {"canonical": "/docs/how_to/structured_output/", "alternative": ["/v0.1/docs/modules/model_io/chat/structured_output/"]}, + "/en/latest/modules/models/chat/token_usage_tracking/": {"canonical": "/docs/how_to/chat_token_usage_tracking/", "alternative": ["/v0.1/docs/modules/model_io/chat/token_usage_tracking/"]}, + "/en/latest/modules/models/concepts/": {"canonical": "/docs/concepts/#chat-models", "alternative": ["/v0.1/docs/modules/model_io/concepts/"]}, + "/en/latest/modules/models/llms/": {"canonical": "/docs/concepts/#llms", "alternative": ["/v0.1/docs/modules/model_io/llms/"]}, + "/en/latest/modules/models/llms/custom_llm/": {"canonical": "/docs/how_to/custom_llm/", "alternative": ["/v0.1/docs/modules/model_io/llms/custom_llm/"]}, + "/en/latest/modules/models/llms/llm_caching/": {"canonical": "/docs/how_to/llm_caching/", "alternative": ["/v0.1/docs/modules/model_io/llms/llm_caching/"]}, + "/en/latest/modules/models/llms/quick_start/": {"canonical": "/docs/tutorials/llm_chain/", "alternative": ["/v0.1/docs/modules/model_io/llms/quick_start/"]}, + "/en/latest/modules/models/llms/streaming_llm/": {"canonical": "/docs/how_to/streaming_llm/", "alternative": ["/v0.1/docs/modules/model_io/llms/streaming_llm/"]}, + "/en/latest/modules/models/llms/token_usage_tracking/": {"canonical": "/docs/how_to/llm_token_usage_tracking/", "alternative": ["/v0.1/docs/modules/model_io/llms/token_usage_tracking/"]}, + "/en/latest/modules/models/output_parsers/": {"canonical": "/docs/how_to/#output-parsers", "alternative": ["/v0.1/docs/modules/model_io/output_parsers/"]}, + "/en/latest/modules/models/output_parsers/custom/": {"canonical": "/docs/how_to/output_parser_custom/", "alternative": ["/v0.1/docs/modules/model_io/output_parsers/custom/"]}, + "/en/latest/modules/models/output_parsers/quick_start/": {"canonical": "/docs/how_to/output_parser_structured/", "alternative": ["/v0.1/docs/modules/model_io/output_parsers/quick_start/"]}, + "/en/latest/modules/models/output_parsers/types/csv/": {"canonical": "/docs/how_to/output_parser_structured/", "alternative": ["/v0.1/docs/modules/model_io/output_parsers/types/csv/"]}, + "/en/latest/modules/models/output_parsers/types/datetime/": {"canonical": "/docs/how_to/output_parser_structured/", "alternative": ["/v0.1/docs/modules/model_io/output_parsers/types/datetime/"]}, + "/en/latest/modules/models/output_parsers/types/enum/": {"canonical": "/docs/how_to/output_parser_structured/", "alternative": ["/v0.1/docs/modules/model_io/output_parsers/types/enum/"]}, + "/en/latest/modules/models/output_parsers/types/json/": {"canonical": "/docs/how_to/output_parser_json/", "alternative": ["/v0.1/docs/modules/model_io/output_parsers/types/json/"]}, + "/en/latest/modules/models/output_parsers/types/openai_functions/": {"canonical": "/docs/how_to/structured_output/", "alternative": ["/v0.1/docs/modules/model_io/output_parsers/types/openai_functions/"]}, + "/en/latest/modules/models/output_parsers/types/openai_tools/": {"canonical": "/docs/how_to/tool_calling/", "alternative": ["/v0.1/docs/modules/model_io/output_parsers/types/openai_tools/"]}, + "/en/latest/modules/models/output_parsers/types/output_fixing/": {"canonical": "/docs/how_to/output_parser_fixing/", "alternative": ["/v0.1/docs/modules/model_io/output_parsers/types/output_fixing/"]}, + "/en/latest/modules/models/output_parsers/types/pandas_dataframe/": {"canonical": "/docs/how_to/output_parser_structured/", "alternative": ["/v0.1/docs/modules/model_io/output_parsers/types/pandas_dataframe/"]}, + "/en/latest/modules/models/output_parsers/types/pydantic/": {"canonical": "/docs/how_to/output_parser_structured/", "alternative": ["/v0.1/docs/modules/model_io/output_parsers/types/pydantic/"]}, + "/en/latest/modules/models/output_parsers/types/retry/": {"canonical": "/docs/how_to/output_parser_retry/", "alternative": ["/v0.1/docs/modules/model_io/output_parsers/types/retry/"]}, + "/en/latest/modules/models/output_parsers/types/structured/": {"canonical": "/docs/how_to/output_parser_structured/", "alternative": ["/v0.1/docs/modules/model_io/output_parsers/types/structured/"]}, + "/en/latest/modules/models/output_parsers/types/xml/": {"canonical": "/docs/how_to/output_parser_xml/", "alternative": ["/v0.1/docs/modules/model_io/output_parsers/types/xml/"]}, + "/en/latest/modules/models/output_parsers/types/yaml/": {"canonical": "/docs/how_to/output_parser_yaml/", "alternative": ["/v0.1/docs/modules/model_io/output_parsers/types/yaml/"]}, + "/en/latest/modules/models/prompts/": {"canonical": "/docs/how_to/#prompt-templates", "alternative": ["/v0.1/docs/modules/model_io/prompts/"]}, + "/en/latest/modules/models/prompts/composition/": {"canonical": "/docs/how_to/prompts_composition/", "alternative": ["/v0.1/docs/modules/model_io/prompts/composition/"]}, + "/en/latest/modules/models/prompts/example_selectors/": {"canonical": "/docs/how_to/example_selectors/", "alternative": ["/v0.1/docs/modules/model_io/prompts/example_selectors/"]}, + "/en/latest/modules/models/prompts/example_selectors/length_based/": {"canonical": "/docs/how_to/example_selectors_length_based/", "alternative": ["/v0.1/docs/modules/model_io/prompts/example_selectors/length_based/"]}, + "/en/latest/modules/models/prompts/example_selectors/mmr/": {"canonical": "/docs/how_to/example_selectors_mmr/", "alternative": ["/v0.1/docs/modules/model_io/prompts/example_selectors/mmr/"]}, + "/en/latest/modules/models/prompts/example_selectors/ngram_overlap/": {"canonical": "/docs/how_to/example_selectors_ngram/", "alternative": ["/v0.1/docs/modules/model_io/prompts/example_selectors/ngram_overlap/"]}, + "/en/latest/modules/models/prompts/example_selectors/similarity/": {"canonical": "/docs/how_to/example_selectors_similarity/", "alternative": ["/v0.1/docs/modules/model_io/prompts/example_selectors/similarity/"]}, + "/en/latest/modules/models/prompts/few_shot_examples_chat/": {"canonical": "/docs/how_to/few_shot_examples_chat/", "alternative": ["/v0.1/docs/modules/model_io/prompts/few_shot_examples_chat/"]}, + "/en/latest/modules/models/prompts/few_shot_examples/": {"canonical": "/docs/how_to/few_shot_examples/", "alternative": ["/v0.1/docs/modules/model_io/prompts/few_shot_examples/"]}, + "/en/latest/modules/models/prompts/partial/": {"canonical": "/docs/how_to/prompts_partial/", "alternative": ["/v0.1/docs/modules/model_io/prompts/partial/"]}, + "/en/latest/modules/models/prompts/quick_start/": {"canonical": "/docs/how_to/#prompt-templates", "alternative": ["/v0.1/docs/modules/model_io/prompts/quick_start/"]}, + "/en/latest/modules/models/quick_start/": {"canonical": "/docs/tutorials/llm_chain/", "alternative": ["/v0.1/docs/modules/model_io/quick_start/"]}, + "/docs/modules/model_io/prompts/example_selector_types/": {"canonical": "/docs/how_to/example_selectors/", "alternative": ["/v0.1/docs/modules/model_io/prompts/example_selectors/"]}, + "/docs/modules/model_io/prompts/example_selector_types/length_based/": {"canonical": "/docs/how_to/example_selectors_length_based/", "alternative": ["/v0.1/docs/modules/model_io/prompts/example_selectors/length_based/"]}, + "/docs/modules/model_io/prompts/example_selector_types/mmr/": {"canonical": "/docs/how_to/example_selectors_mmr/", "alternative": ["/v0.1/docs/modules/model_io/prompts/example_selectors/mmr/"]}, + "/docs/modules/model_io/prompts/example_selector_types/ngram_overlap/": {"canonical": "/docs/how_to/example_selectors_ngram/", "alternative": ["/v0.1/docs/modules/model_io/prompts/example_selectors/ngram_overlap/"]}, + "/docs/modules/model_io/prompts/example_selector_types/similarity/": {"canonical": "/docs/how_to/example_selectors_similarity/", "alternative": ["/v0.1/docs/modules/model_io/prompts/example_selectors/similarity/"]}, + "/docs/modules/agents/tools/": {"canonical": "/docs/how_to/#tools", "alternative": ["/v0.1/docs/modules/tools/"]}, + "/docs/modules/agents/tools/custom_tools/": {"canonical": "/docs/how_to/custom_tools/", "alternative": ["/v0.1/docs/modules/tools/custom_tools/"]}, + "/docs/modules/agents/tools/toolkits/": {"canonical": "/docs/how_to/#tools", "alternative": ["/v0.1/docs/modules/tools/toolkits/"]}, + "/docs/modules/agents/tools/tools_as_openai_functions/": {"canonical": "/docs/how_to/tool_calling/", "alternative": ["/v0.1/docs/modules/tools/tools_as_openai_functions/"]}, + "/docs/guides/deployments/": {"canonical": "https://docs.smith.langchain.com/", "alternative": ["/v0.1/docs/guides/productionization/deployments/"]}, + "/docs/guides/deployments/template_repos/": {"canonical": "https://docs.smith.langchain.com/", "alternative": ["/v0.1/docs/guides/productionization/deployments/template_repos/"]}, + "/docs/guides/evaluation/": {"canonical": "https://docs.smith.langchain.com/", "alternative": ["/v0.1/docs/guides/productionization/evaluation/"]}, + "/docs/guides/evaluation/comparison/": {"canonical": "https://docs.smith.langchain.com/", "alternative": ["/v0.1/docs/guides/productionization/evaluation/comparison/"]}, + "/docs/guides/evaluation/comparison/custom/": {"canonical": "https://docs.smith.langchain.com/", "alternative": ["/v0.1/docs/guides/productionization/evaluation/comparison/custom/"]}, + "/docs/guides/evaluation/comparison/pairwise_embedding_distance/": {"canonical": "https://docs.smith.langchain.com/", "alternative": ["/v0.1/docs/guides/productionization/evaluation/comparison/pairwise_embedding_distance/"]}, + "/docs/guides/evaluation/comparison/pairwise_string/": {"canonical": "https://docs.smith.langchain.com/", "alternative": ["/v0.1/docs/guides/productionization/evaluation/comparison/pairwise_string/"]}, + "/docs/guides/evaluation/examples/": {"canonical": "https://docs.smith.langchain.com/", "alternative": ["/v0.1/docs/guides/productionization/evaluation/examples/"]}, + "/docs/guides/evaluation/examples/comparisons/": {"canonical": "https://docs.smith.langchain.com/", "alternative": ["/v0.1/docs/guides/productionization/evaluation/examples/comparisons/"]}, + "/docs/guides/evaluation/string/": {"canonical": "https://docs.smith.langchain.com/", "alternative": ["/v0.1/docs/guides/productionization/evaluation/string/"]}, + "/docs/guides/evaluation/string/criteria_eval_chain/": {"canonical": "https://docs.smith.langchain.com/", "alternative": ["/v0.1/docs/guides/productionization/evaluation/string/criteria_eval_chain/"]}, + "/docs/guides/evaluation/string/custom/": {"canonical": "https://docs.smith.langchain.com/", "alternative": ["/v0.1/docs/guides/productionization/evaluation/string/custom/"]}, + "/docs/guides/evaluation/string/embedding_distance/": {"canonical": "https://docs.smith.langchain.com/", "alternative": ["/v0.1/docs/guides/productionization/evaluation/string/embedding_distance/"]}, + "/docs/guides/evaluation/string/exact_match/": {"canonical": "https://docs.smith.langchain.com/", "alternative": ["/v0.1/docs/guides/productionization/evaluation/string/exact_match/"]}, + "/docs/guides/evaluation/string/json/": {"canonical": "https://docs.smith.langchain.com/", "alternative": ["/v0.1/docs/guides/productionization/evaluation/string/json/"]}, + "/docs/guides/evaluation/string/regex_match/": {"canonical": "https://docs.smith.langchain.com/", "alternative": ["/v0.1/docs/guides/productionization/evaluation/string/regex_match/"]}, + "/docs/guides/evaluation/string/scoring_eval_chain/": {"canonical": "https://docs.smith.langchain.com/", "alternative": ["/v0.1/docs/guides/productionization/evaluation/string/scoring_eval_chain/"]}, + "/docs/guides/evaluation/string/string_distance/": {"canonical": "https://docs.smith.langchain.com/", "alternative": ["/v0.1/docs/guides/productionization/evaluation/string/string_distance/"]}, + "/docs/guides/evaluation/trajectory/": {"canonical": "https://docs.smith.langchain.com/", "alternative": ["/v0.1/docs/guides/productionization/evaluation/trajectory/"]}, + "/docs/guides/evaluation/trajectory/custom/": {"canonical": "https://docs.smith.langchain.com/", "alternative": ["/v0.1/docs/guides/productionization/evaluation/trajectory/custom/"]}, + "/docs/guides/evaluation/trajectory/trajectory_eval/": {"canonical": "https://docs.smith.langchain.com/", "alternative": ["/v0.1/docs/guides/productionization/evaluation/trajectory/trajectory_eval/"]}, + "/docs/guides/privacy/": {"canonical": "https://docs.smith.langchain.com/", "alternative": ["/v0.1/docs/guides/productionization/safety/"]}, + "/docs/guides/privacy/amazon_comprehend_chain/": {"canonical": "https://docs.smith.langchain.com/", "alternative": ["/v0.1/docs/guides/productionization/safety/amazon_comprehend_chain/"]}, + "/docs/guides/privacy/constitutional_chain/": {"canonical": "https://docs.smith.langchain.com/", "alternative": ["/v0.1/docs/guides/productionization/safety/constitutional_chain/"]}, + "/docs/guides/privacy/hugging_face_prompt_injection/": {"canonical": "https://docs.smith.langchain.com/", "alternative": ["/v0.1/docs/guides/productionization/safety/hugging_face_prompt_injection/"]}, + "/docs/guides/privacy/layerup_security/": {"canonical": "https://docs.smith.langchain.com/", "alternative": ["/v0.1/docs/guides/productionization/safety/layerup_security/"]}, + "/docs/guides/privacy/logical_fallacy_chain/": {"canonical": "https://docs.smith.langchain.com/", "alternative": ["/v0.1/docs/guides/productionization/safety/logical_fallacy_chain/"]}, + "/docs/guides/privacy/moderation/": {"canonical": "https://docs.smith.langchain.com/", "alternative": ["/v0.1/docs/guides/productionization/safety/moderation/"]}, + "/docs/guides/privacy/presidio_data_anonymization/": {"canonical": "https://docs.smith.langchain.com/", "alternative": ["/v0.1/docs/guides/productionization/safety/presidio_data_anonymization/"]}, + "/docs/guides/privacy/presidio_data_anonymization/multi_language/": {"canonical": "https://docs.smith.langchain.com/", "alternative": ["/v0.1/docs/guides/productionization/safety/presidio_data_anonymization/multi_language/"]}, + "/docs/guides/privacy/presidio_data_anonymization/qa_privacy_protection/": {"canonical": "https://docs.smith.langchain.com/", "alternative": ["/v0.1/docs/guides/productionization/safety/presidio_data_anonymization/qa_privacy_protection/"]}, + "/docs/guides/privacy/presidio_data_anonymization/reversible/": {"canonical": "https://docs.smith.langchain.com/", "alternative": ["/v0.1/docs/guides/productionization/safety/presidio_data_anonymization/reversible/"]}, + "/docs/guides/safety/": {"canonical": "https://docs.smith.langchain.com/", "alternative": ["/v0.1/docs/guides/productionization/safety/"]}, + "/docs/guides/safety/amazon_comprehend_chain/": {"canonical": "https://docs.smith.langchain.com/", "alternative": ["/v0.1/docs/guides/productionization/safety/amazon_comprehend_chain/"]}, + "/docs/guides/safety/constitutional_chain/": {"canonical": "https://docs.smith.langchain.com/", "alternative": ["/v0.1/docs/guides/productionization/safety/constitutional_chain/"]}, + "/docs/guides/safety/hugging_face_prompt_injection/": {"canonical": "https://docs.smith.langchain.com/", "alternative": ["/v0.1/docs/guides/productionization/safety/hugging_face_prompt_injection/"]}, + "/docs/guides/safety/layerup_security/": {"canonical": "https://docs.smith.langchain.com/", "alternative": ["/v0.1/docs/guides/productionization/safety/layerup_security/"]}, + "/docs/guides/safety/logical_fallacy_chain/": {"canonical": "https://docs.smith.langchain.com/", "alternative": ["/v0.1/docs/guides/productionization/safety/logical_fallacy_chain/"]}, + "/docs/guides/safety/moderation/": {"canonical": "https://docs.smith.langchain.com/", "alternative": ["/v0.1/docs/guides/productionization/safety/moderation/"]}, + "/docs/guides/safety/presidio_data_anonymization/": {"canonical": "https://docs.smith.langchain.com/", "alternative": ["/v0.1/docs/guides/productionization/safety/presidio_data_anonymization/"]}, + "/docs/guides/safety/presidio_data_anonymization/multi_language/": {"canonical": "https://docs.smith.langchain.com/", "alternative": ["/v0.1/docs/guides/productionization/safety/presidio_data_anonymization/multi_language/"]}, + "/docs/guides/safety/presidio_data_anonymization/qa_privacy_protection/": {"canonical": "https://docs.smith.langchain.com/", "alternative": ["/v0.1/docs/guides/productionization/safety/presidio_data_anonymization/qa_privacy_protection/"]}, + "/docs/guides/safety/presidio_data_anonymization/reversible/": {"canonical": "https://docs.smith.langchain.com/", "alternative": ["/v0.1/docs/guides/productionization/safety/presidio_data_anonymization/reversible/"]}, + "/docs/integrations/llms/titan_takeoff_pro/": {"canonical": "/docs/integrations/llms/titan_takeoff/"}, + "/docs/integrations/providers/optimum_intel/": {"canonical": "/docs/integrations/providers/intel/"}, + "/docs/use_cases/graph/integrations/diffbot_graphtransformer/": {"canonical": "/docs/integrations/graphs/diffbot/"}, + "/docs/use_cases/graph/integrations/graph_arangodb_qa/": {"canonical": "/docs/integrations/graphs/arangodb/"}, + "/docs/use_cases/graph/integrations/graph_cypher_qa/": {"canonical": "/docs/integrations/graphs/neo4j_cypher/"}, + "/docs/use_cases/graph/integrations/graph_falkordb_qa/": {"canonical": "/docs/integrations/graphs/falkordb/"}, + "/docs/use_cases/graph/integrations/graph_gremlin_cosmosdb_qa/": {"canonical": "/docs/integrations/graphs/azure_cosmosdb_gremlin/"}, + "/docs/use_cases/graph/integrations/graph_hugegraph_qa/": {"canonical": "/docs/integrations/graphs/hugegraph/"}, + "/docs/use_cases/graph/integrations/graph_kuzu_qa/": {"canonical": "/docs/integrations/graphs/kuzu_db/"}, + "/docs/use_cases/graph/integrations/graph_memgraph_qa/": {"canonical": "/docs/integrations/graphs/memgraph/"}, + "/docs/use_cases/graph/integrations/graph_nebula_qa/": {"canonical": "/docs/integrations/graphs/nebula_graph/"}, + "/docs/use_cases/graph/integrations/graph_networkx_qa/": {"canonical": "/docs/integrations/graphs/networkx/"}, + "/docs/use_cases/graph/integrations/graph_ontotext_graphdb_qa/": {"canonical": "/docs/integrations/graphs/ontotext/"}, + "/docs/use_cases/graph/integrations/graph_sparql_qa/": {"canonical": "/docs/integrations/graphs/rdflib_sparql/"}, + "/docs/use_cases/graph/integrations/neptune_cypher_qa/": {"canonical": "/docs/integrations/graphs/amazon_neptune_open_cypher/"}, + "/docs/use_cases/graph/integrations/neptune_sparql_qa/": {"canonical": "/docs/integrations/graphs/amazon_neptune_sparql/"}, + "/docs/integrations/providers/facebook_chat/": {"canonical": "/docs/integrations/providers/facebook/"}, + "/docs/integrations/providers/facebook_faiss/": {"canonical": "/docs/integrations/providers/facebook/"}, + "/docs/integrations/memory/google_cloud_sql_mssql/": {"canonical": "/docs/integrations/memory/google_sql_mssql/"}, + "/docs/integrations/memory/google_cloud_sql_mysql/": {"canonical": "/docs/integrations/memory/google_sql_mysql/"}, + "/docs/integrations/memory/google_cloud_sql_pg/": {"canonical": "/docs/integrations/memory/google_sql_pg/"}, + "/docs/integrations/memory/google_datastore/": {"canonical": "/docs/integrations/memory/google_firestore_datastore/"}, + "/docs/integrations/llms/huggingface_textgen_inference/": {"canonical": "/docs/integrations/llms/huggingface_endpoint/"}, + "/docs/integrations/llms/huggingface_hub/": {"canonical": "/docs/integrations/llms/huggingface_endpoint/"}, + "/docs/integrations/llms/bigdl/": {"canonical": "/docs/integrations/llms/ipex_llm/"}, + "/docs/integrations/llms/watsonxllm/": {"canonical": "/docs/integrations/llms/ibm_watsonx/"}, + "/docs/integrations/llms/pai_eas_endpoint/": {"canonical": "/docs/integrations/llms/alibabacloud_pai_eas_endpoint/"}, + "/docs/integrations/vectorstores/hanavector/": {"canonical": "/docs/integrations/vectorstores/sap_hanavector/"}, + "/docs/use_cases/qa_structured/sql/": {"canonical": "/docs/tutorials/sql_qa/", "alternative": ["/v0.1/docs/use_cases/sql/"]}, + "/docs/contributing/packages/": {"canonical": "/docs/versions/release_policy/", "alternative": ["/v0.1/docs/packages/"]}, + "/docs/community/": {"canonical": "/docs/contributing/"}, + "/docs/modules/chains/(.+)/": {"canonical": "/docs/versions/migrating_chains/", "alternative": ["/v0.1/docs/modules/chains/"]}, + "/docs/modules/agents/how_to/custom_llm_agent/": {"canonical": "/docs/how_to/migrate_agent/", "alternative": ["/v0.1/docs/modules/agents/how_to/custom_agent/"]}, + "/docs/modules/agents/how_to/custom-functions-with-openai-functions-agent/": {"canonical": "/docs/how_to/migrate_agent/", "alternative": ["/v0.1/docs/modules/agents/how_to/custom_agent/"]}, + "/docs/modules/agents/how_to/custom_llm_chat_agent/": {"canonical": "/docs/how_to/migrate_agent/", "alternative": ["/v0.1/docs/modules/agents/how_to/custom_agent/"]}, + "/docs/modules/agents/how_to/custom_mrkl_agent/": {"canonical": "/docs/how_to/migrate_agent/", "alternative": ["/v0.1/docs/modules/agents/how_to/custom_agent/"]}, + "/docs/modules/agents/how_to/streaming_stdout_final_only/": {"canonical": "/docs/how_to/migrate_agent/", "alternative": ["/v0.1/docs/modules/agents/how_to/streaming/"]}, + "/docs/modules/model_io/prompts/prompts_pipelining/": {"canonical": "/docs/how_to/prompts_composition/", "alternative": ["/v0.1/docs/modules/model_io/prompts/composition/"]}, + "/docs/modules/model_io/output_parsers/enum/": {"canonical": "/docs/how_to/output_parser_structured/", "alternative": ["/v0.1/docs/modules/model_io/output_parsers/types/enum/"]}, + "/docs/modules/model_io/output_parsers/pandas_dataframe/": {"canonical": "/docs/how_to/output_parser_structured/", "alternative": ["/v0.1/docs/modules/model_io/output_parsers/types/pandas_dataframe/"]}, + "/docs/modules/model_io/output_parsers/structured/": {"canonical": "/docs/how_to/output_parser_structured/", "alternative": ["/v0.1/docs/modules/model_io/output_parsers/types/structured/"]}, + "/docs/modules/model_io/output_parsers/xml/": {"canonical": "/docs/how_to/output_parser_xml/", "alternative": ["/v0.1/docs/modules/model_io/output_parsers/types/xml/"]}, + "/docs/use_cases/question_answering/code_understanding/": {"canonical": "https://langchain-ai.github.io/langgraph/tutorials/code_assistant/langgraph_code_assistant/", "alternative": ["/v0.1/docs/use_cases/code_understanding/"]}, + "/docs/use_cases/question_answering/document-context-aware-QA/": {"canonical": "/docs/how_to/#text-splitters", "alternative": ["/v0.1/docs/modules/data_connection/document_transformers/"]}, + "/docs/integrations/providers/alibabacloud_opensearch/": {"canonical": "/docs/integrations/providers/alibaba_cloud/"}, + "/docs/integrations/chat/pai_eas_chat_endpoint/": {"canonical": "/docs/integrations/chat/alibaba_cloud_pai_eas/"}, + "/docs/integrations/providers/tencentvectordb/": {"canonical": "/docs/integrations/providers/tencent/"}, + "/docs/integrations/chat/hunyuan/": {"canonical": "/docs/integrations/chat/tencent_hunyuan/"}, + "/docs/integrations/document_loaders/excel/": {"canonical": "/docs/integrations/document_loaders/microsoft_excel/"}, + "/docs/integrations/document_loaders/onenote/": {"canonical": "/docs/integrations/document_loaders/microsoft_onenote/"}, + "/docs/integrations/providers/aws_dynamodb/": {"canonical": "/docs/integrations/platforms/aws/"}, + "/docs/integrations/providers/scann/": {"canonical": "/docs/integrations/platforms/google/"}, + "/docs/integrations/toolkits/google_drive/": {"canonical": "/docs/integrations/tools/google_drive/"}, + "/docs/use_cases/question_answering/chat_vector_db/": {"canonical": "/docs/tutorials/rag/", "alternative": ["/v0.1/docs/use_cases/question_answering/"]}, + "/docs/use_cases/question_answering/in_memory_question_answering/": {"canonical": "/docs/tutorials/rag/", "alternative": ["/v0.1/docs/use_cases/question_answering/"]}, + "/docs/use_cases/question_answering/multi_retrieval_qa_router/": {"canonical": "/docs/tutorials/rag/", "alternative": ["/v0.1/docs/use_cases/question_answering/"]}, + "/docs/use_cases/question_answering/multiple_retrieval/": {"canonical": "/docs/tutorials/rag/", "alternative": ["/v0.1/docs/use_cases/question_answering/"]}, + "/docs/use_cases/question_answering/vector_db_qa/": {"canonical": "/docs/tutorials/rag/", "alternative": ["/v0.1/docs/use_cases/question_answering/"]}, + "/docs/use_cases/question_answering/vector_db_text_generation/": {"canonical": "/docs/tutorials/rag/", "alternative": ["/v0.1/docs/use_cases/question_answering/"]}, + "/docs/guides/langsmith/": {"canonical": "https://docs.smith.langchain.com/", "alternative": ["/v0.1/docs/langsmith/"]}, + "/docs/guides/langsmith/walkthrough/": {"canonical": "https://docs.smith.langchain.com/", "alternative": ["/v0.1/docs/langsmith/walkthrough/"]}, + "/docs/use_cases/qa_structured/integrations/sqlite/": {"canonical": "/docs/tutorials/sql_qa/", "alternative": ["/v0.1/docs/use_cases/sql/"]}, + "/docs/use_cases/more/data_generation/": {"canonical": "/docs/tutorials/data_generation/", "alternative": ["/v0.1/docs/use_cases/data_generation/"]}, + "/docs/use_cases/question_answering/how_to/chat_vector_db/": {"canonical": "/docs/tutorials/rag/", "alternative": ["/v0.1/docs/use_cases/question_answering/"]}, + "/docs/use_cases/question_answering/how_to/conversational_retrieval_agents/": {"canonical": "/docs/tutorials/qa_chat_history/", "alternative": ["/v0.1/docs/use_cases/question_answering/conversational_retrieval_agents/"]}, + "/docs/use_cases/question_answering/question_answering/": {"canonical": "/docs/tutorials/rag/", "alternative": ["/v0.1/docs/use_cases/question_answering/"]}, + "/docs/use_cases/question_answering/how_to/local_retrieval_qa/": {"canonical": "/docs/tutorials/rag/", "alternative": ["/v0.1/docs/use_cases/question_answering/local_retrieval_qa/"]}, + "/docs/use_cases/question_answering/how_to/question_answering/": {"canonical": "/docs/tutorials/rag/", "alternative": ["/v0.1/docs/use_cases/question_answering/"]}, + "/docs/modules/agents/agents/examples/mrkl_chat(.html?)/": {"canonical": "/docs/how_to/#agents", "alternative": ["/v0.1/docs/modules/agents/"]}, + "/docs/integrations/": {"canonical": "/docs/integrations/providers/"}, + "/docs/expression_language/cookbook/routing/": {"canonical": "/docs/how_to/routing/", "alternative": ["/v0.1/docs/expression_language/how_to/routing/"]}, + "/docs/guides/expression_language/": {"canonical": "/docs/how_to/#langchain-expression-language-lcel", "alternative": ["/v0.1/docs/expression_language/"]}, + "/docs/integrations/providers/amazon_api_gateway/": {"canonical": "/docs/integrations/platforms/aws/"}, + "/docs/integrations/providers/huggingface/": {"canonical": "/docs/integrations/platforms/huggingface/"}, + "/docs/integrations/providers/azure_blob_storage/": {"canonical": "/docs/integrations/platforms/microsoft/"}, + "/docs/integrations/providers/google_vertexai_matchingengine/": {"canonical": "/docs/integrations/platforms/google/"}, + "/docs/integrations/providers/aws_s3/": {"canonical": "/docs/integrations/platforms/aws/"}, + "/docs/integrations/providers/azure_openai/": {"canonical": "/docs/integrations/platforms/microsoft/"}, + "/docs/integrations/providers/azure_cognitive_search_/": {"canonical": "/docs/integrations/platforms/microsoft/"}, + "/docs/integrations/providers/bedrock/": {"canonical": "/docs/integrations/platforms/aws/"}, + "/docs/integrations/providers/google_bigquery/": {"canonical": "/docs/integrations/platforms/google/"}, + "/docs/integrations/providers/google_cloud_storage/": {"canonical": "/docs/integrations/platforms/google/"}, + "/docs/integrations/providers/google_drive/": {"canonical": "/docs/integrations/platforms/google/"}, + "/docs/integrations/providers/google_search/": {"canonical": "/docs/integrations/platforms/google/"}, + "/docs/integrations/providers/microsoft_onedrive/": {"canonical": "/docs/integrations/platforms/microsoft/"}, + "/docs/integrations/providers/microsoft_powerpoint/": {"canonical": "/docs/integrations/platforms/microsoft/"}, + "/docs/integrations/providers/microsoft_word/": {"canonical": "/docs/integrations/platforms/microsoft/"}, + "/docs/integrations/providers/sagemaker_endpoint/": {"canonical": "/docs/integrations/platforms/aws/"}, + "/docs/integrations/providers/sagemaker_tracking/": {"canonical": "/docs/integrations/callbacks/sagemaker_tracking/"}, + "/docs/integrations/providers/openai/": {"canonical": "/docs/integrations/platforms/openai/"}, + "/docs/integrations/cassandra/": {"canonical": "/docs/integrations/providers/cassandra/"}, + "/docs/integrations/providers/providers/semadb/": {"canonical": "/docs/integrations/providers/semadb/"}, + "/docs/integrations/vectorstores/vectorstores/semadb/": {"canonical": "/docs/integrations/vectorstores/semadb/"}, + "/docs/integrations/vectorstores/async_faiss/": {"canonical": "/docs/integrations/vectorstores/faiss_async/"}, + "/docs/integrations/vectorstores/matchingengine/": {"canonical": "/docs/integrations/vectorstores/google_vertex_ai_vector_search/"}, + "/docs/integrations/tools/sqlite/": {"canonical": "/docs/tutorials/sql_qa/", "alternative": ["/v0.1/docs/use_cases/sql/"]}, + "/docs/integrations/document_loaders/pdf-amazonTextractPDFLoader/": {"canonical": "/docs/integrations/document_loaders/amazon_textract/"}, + "/docs/integrations/document_loaders/Etherscan/": {"canonical": "/docs/integrations/document_loaders/etherscan/"}, + "/docs/integrations/document_loaders/merge_doc_loader/": {"canonical": "/docs/integrations/document_loaders/merge_doc/"}, + "/docs/integrations/document_loaders/recursive_url_loader/": {"canonical": "/docs/integrations/document_loaders/recursive_url/"}, + "/docs/integrations/providers/google_document_ai/": {"canonical": "/docs/integrations/platforms/google/"}, + "/docs/integrations/memory/motorhead_memory_managed/": {"canonical": "/docs/integrations/memory/motorhead_memory/"}, + "/docs/integrations/memory/dynamodb_chat_message_history/": {"canonical": "/docs/integrations/memory/aws_dynamodb/"}, + "/docs/integrations/memory/entity_memory_with_sqlite/": {"canonical": "/docs/integrations/memory/sqlite/"}, + "/docs/modules/model_io/chat/integrations/anthropic/": {"canonical": "/docs/integrations/chat/anthropic/"}, + "/docs/modules/model_io/chat/integrations/azure_chat_openai/": {"canonical": "/docs/integrations/chat/azure_chat_openai/"}, + "/docs/modules/model_io/chat/integrations/google_vertex_ai_palm/": {"canonical": "/docs/integrations/chat/google_vertex_ai_palm/"}, + "/docs/modules/model_io/chat/integrations/openai/": {"canonical": "/docs/integrations/chat/openai/"}, + "/docs/modules/model_io/chat/integrations/promptlayer_chatopenai/": {"canonical": "/docs/integrations/chat/promptlayer_chatopenai/"}, + "/docs/modules/model_io/llms/integrations/ai21/": {"canonical": "/docs/integrations/llms/ai21/"}, + "/docs/modules/model_io/llms/integrations/aleph_alpha/": {"canonical": "/docs/integrations/llms/aleph_alpha/"}, + "/docs/modules/model_io/llms/integrations/anyscale/": {"canonical": "/docs/integrations/llms/anyscale/"}, + "/docs/modules/model_io/llms/integrations/banana/": {"canonical": "/docs/integrations/llms/banana/"}, + "/docs/modules/model_io/llms/integrations/baseten/": {"canonical": "/docs/integrations/llms/baseten/"}, + "/docs/modules/model_io/llms/integrations/beam/": {"canonical": "/docs/integrations/llms/beam/"}, + "/docs/modules/model_io/llms/integrations/bedrock/": {"canonical": "/docs/integrations/llms/bedrock/"}, + "/docs/modules/model_io/llms/integrations/cohere/": {"canonical": "/docs/integrations/llms/cohere/"}, + "/docs/modules/model_io/llms/integrations/ctransformers/": {"canonical": "/docs/integrations/llms/ctransformers/"}, + "/docs/modules/model_io/llms/integrations/databricks/": {"canonical": "/docs/integrations/llms/databricks/"}, + "/docs/modules/model_io/llms/integrations/google_vertex_ai_palm/": {"canonical": "/docs/integrations/llms/google_vertex_ai_palm/"}, + "/docs/modules/model_io/llms/integrations/huggingface_pipelines/": {"canonical": "/docs/integrations/llms/huggingface_pipelines/"}, + "/docs/modules/model_io/llms/integrations/jsonformer_experimental/": {"canonical": "/docs/integrations/llms/jsonformer_experimental/"}, + "/docs/modules/model_io/llms/integrations/llamacpp/": {"canonical": "/docs/integrations/llms/llamacpp/"}, + "/docs/modules/model_io/llms/integrations/manifest/": {"canonical": "/docs/integrations/llms/manifest/"}, + "/docs/modules/model_io/llms/integrations/modal/": {"canonical": "/docs/integrations/llms/modal/"}, + "/docs/modules/model_io/llms/integrations/mosaicml/": {"canonical": "/docs/integrations/llms/mosaicml/"}, + "/docs/modules/model_io/llms/integrations/nlpcloud/": {"canonical": "/docs/integrations/llms/nlpcloud/"}, + "/docs/modules/model_io/llms/integrations/openai/": {"canonical": "/docs/integrations/llms/openai/"}, + "/docs/modules/model_io/llms/integrations/openlm/": {"canonical": "/docs/integrations/llms/openlm/"}, + "/docs/modules/model_io/llms/integrations/predictionguard/": {"canonical": "/docs/integrations/llms/predictionguard/"}, + "/docs/modules/model_io/llms/integrations/promptlayer_openai/": {"canonical": "/docs/integrations/llms/promptlayer_openai/"}, + "/docs/modules/model_io/llms/integrations/rellm_experimental/": {"canonical": "/docs/integrations/llms/rellm_experimental/"}, + "/docs/modules/model_io/llms/integrations/replicate/": {"canonical": "/docs/integrations/llms/replicate/"}, + "/docs/modules/model_io/llms/integrations/runhouse/": {"canonical": "/docs/integrations/llms/runhouse/"}, + "/docs/modules/model_io/llms/integrations/sagemaker/": {"canonical": "/docs/integrations/llms/sagemaker/"}, + "/docs/modules/model_io/llms/integrations/stochasticai/": {"canonical": "/docs/integrations/llms/stochasticai/"}, + "/docs/modules/model_io/llms/integrations/writer/": {"canonical": "/docs/integrations/llms/writer/"}, + "/en/latest/use_cases/apis.html/": {"canonical": null, "alternative": ["/v0.1/docs/use_cases/apis/"]}, + "/en/latest/use_cases/extraction.html/": {"canonical": "/docs/tutorials/extraction/", "alternative": ["/v0.1/docs/use_cases/extraction/"]}, + "/en/latest/use_cases/summarization.html/": {"canonical": "/docs/tutorials/summarization/", "alternative": ["/v0.1/docs/use_cases/summarization/"]}, + "/en/latest/use_cases/tabular.html/": {"canonical": "/docs/tutorials/sql_qa/", "alternative": ["/v0.1/docs/use_cases/sql/"]}, + "/en/latest/youtube.html/": {"canonical": "/docs/additional_resources/youtube/"}, + "/docs/": {"canonical": "/"}, + "/en/latest/": {"canonical": "/"}, + "/en/latest/index.html/": {"canonical": "/"}, + "/en/latest/modules/models.html/": {"canonical": "/docs/how_to/#chat-models", "alternative": ["/v0.1/docs/modules/model_io/"]}, + "/docs/integrations/retrievers/google_cloud_enterprise_search/": {"canonical": "/docs/integrations/retrievers/google_vertex_ai_search/"}, + "/docs/integrations/tools/metaphor_search/": {"canonical": "/docs/integrations/tools/exa_search/"}, + "/docs/expression_language/how_to/fallbacks/": {"canonical": "https://docs.smith.langchain.com/", "alternative": ["/v0.1/docs/guides/productionization/fallbacks/"]}, + "/docs/expression_language/cookbook/retrieval/": {"canonical": "/docs/tutorials/rag/", "alternative": ["/v0.1/docs/use_cases/question_answering/"]}, + "/docs/expression_language/cookbook/agent/": {"canonical": "/docs/how_to/migrate_agent/", "alternative": ["/v0.1/docs/modules/agents/agent_types/xml_agent/"]}, + "/docs/modules/model_io/prompts/message_prompts/": {"canonical": "/docs/how_to/#prompt-templates", "alternative": ["/v0.1/docs/modules/model_io/prompts/quick_start/"]}, + "/docs/modules/model_io/prompts/pipeline/": {"canonical": "/docs/how_to/prompts_composition/", "alternative": ["/v0.1/docs/modules/model_io/prompts/composition/"]}, + "/docs/expression_language/cookbook/memory/": {"canonical": "/docs/how_to/chatbots_memory/", "alternative": ["/v0.1/docs/modules/memory/"]}, + "/docs/expression_language/cookbook/tools/": {"canonical": "/docs/tutorials/agents/", "alternative": ["/v0.1/docs/use_cases/tool_use/quickstart/"]}, + "/docs/expression_language/cookbook/sql_db/": {"canonical": "/docs/tutorials/sql_qa/", "alternative": ["/v0.1/docs/use_cases/sql/quickstart/"]}, + "/docs/expression_language/cookbook/moderation/": {"canonical": "https://docs.smith.langchain.com/", "alternative": ["/v0.1/docs/guides/productionization/safety/moderation/"]}, + "/docs/expression_language/cookbook/embedding_router/": {"canonical": "/docs/how_to/routing/", "alternative": ["/v0.1/docs/expression_language/how_to/routing/"]}, + "/docs/guides/structured_output/": {"canonical": "/docs/how_to/structured_output/", "alternative": ["/v0.1/docs/modules/model_io/chat/structured_output/"]}, + "/docs/modules/agents/how_to/structured_tools/": {"canonical": "/docs/how_to/#tools", "alternative": ["/v0.1/docs/modules/tools/"]}, + "/docs/use_cases/csv/": {"canonical": "/docs/tutorials/sql_qa/", "alternative": ["/v0.1/docs/use_cases/sql/csv/"]}, + "/docs/guides/debugging/": {"canonical": "/docs/how_to/debugging/", "alternative": ["/v0.1/docs/guides/development/debugging/"]}, + "/docs/guides/extending_langchain/": {"canonical": "/docs/how_to/#custom", "alternative": ["/v0.1/docs/guides/development/extending_langchain/"]}, + "/docs/guides/fallbacks/": {"canonical": "https://docs.smith.langchain.com/", "alternative": ["/v0.1/docs/guides/productionization/fallbacks/"]}, + "/docs/guides/model_laboratory/": {"canonical": "https://docs.smith.langchain.com/", "alternative": ["/v0.1/docs/guides/productionization/evaluation/"]}, + "/docs/guides/pydantic_compatibility/": {"canonical": "/docs/how_to/pydantic_compatibility/", "alternative": ["/v0.1/docs/guides/development/pydantic_compatibility/"]}, + "/docs/guides/local_llms/": {"canonical": "/docs/how_to/local_llms/", "alternative": ["/v0.1/docs/guides/development/local_llms/"]}, + "/docs/modules/model_io/quick_start/": {"canonical": "/docs/how_to/#chat-models", "alternative": ["/v0.1/docs/modules/model_io/"]}, + "/docs/expression_language/how_to/generators/": {"canonical": "/docs/how_to/functions/", "alternative": ["/v0.1/docs/expression_language/primitives/functions/"]}, + "/docs/expression_language/how_to/functions/": {"canonical": "/docs/how_to/functions/", "alternative": ["/v0.1/docs/expression_language/primitives/functions/"]}, + "/docs/expression_language/how_to/passthrough/": {"canonical": "/docs/how_to/passthrough/", "alternative": ["/v0.1/docs/expression_language/primitives/passthrough/"]}, + "/docs/expression_language/how_to/map/": {"canonical": "/docs/how_to/parallel/", "alternative": ["/v0.1/docs/expression_language/primitives/parallel/"]}, + "/docs/expression_language/how_to/binding/": {"canonical": "/docs/how_to/binding/", "alternative": ["/v0.1/docs/expression_language/primitives/binding/"]}, + "/docs/expression_language/how_to/configure/": {"canonical": "/docs/how_to/configure/", "alternative": ["/v0.1/docs/expression_language/primitives/configure/"]}, + "/docs/expression_language/cookbook/prompt_llm_parser/": {"canonical": "/docs/how_to/sequence/", "alternative": ["/v0.1/docs/expression_language/get_started/"]}, + "/docs/contributing/documentation/": {"canonical": "/docs/contributing/documentation/", "alternative": ["/v0.1/docs/contributing/documentation/technical_logistics/"]}, + "/docs/expression_language/cookbook/": {"canonical": "/docs/how_to/#langchain-expression-language-lcel", "alternative": ["/v0.1/docs/expression_language/"]}, + "/docs/integrations/text_embedding/solar/": {"canonical": "/docs/integrations/text_embedding/upstage/"}, + "/docs/integrations/chat/solar/": {"canonical": "/docs/integrations/chat/upstage/"}, + // custom ones + + "/docs/modules/model_io/chat/llm_chain/": { + "canonical": "/docs/tutorials/llm_chain/" + }, + + "/docs/modules/agents/toolkits/": { + "canonical": "/docs/integrations/tools/", + "alternative": [ + "/v0.1/docs/integrations/toolkits/" + ] + } +} \ No newline at end of file