diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md
index 37a45f6e108..1033af0dfa7 100644
--- a/.github/PULL_REQUEST_TEMPLATE.md
+++ b/.github/PULL_REQUEST_TEMPLATE.md
@@ -1,28 +1,20 @@
diff --git a/.github/actions/poetry_setup/action.yml b/.github/actions/poetry_setup/action.yml
index 79dff7cc276..1a7a992fed1 100644
--- a/.github/actions/poetry_setup/action.yml
+++ b/.github/actions/poetry_setup/action.yml
@@ -62,6 +62,19 @@ runs:
run: |
poetry lock --check
+ - name: Set proper Poetry.lock file
+ shell: bash
+ env:
+ WORKDIR: ${{ inputs.working-directory == '' && '.' || inputs.working-directory }}
+ run: |
+ if [ -f "$WORKDIR/poetry.lock" ]; then
+ echo 'Using working directory poetry.lock in cache key'
+ cp "$WORKDIR/poetry.lock" poetry-lock.cache-key
+ else
+ echo 'Using the top-level poetry.lock in cache key'
+ cp poetry.lock poetry-lock.cache-key
+ fi
+
- uses: actions/cache@v3
id: cache-poetry
env:
@@ -71,7 +84,8 @@ runs:
~/.cache/pypoetry/virtualenvs
~/.cache/pypoetry/cache
~/.cache/pypoetry/artifacts
- key: poetry-${{ runner.os }}-${{ runner.arch }}-py-${{ inputs.python-version }}-poetry-${{ inputs.poetry-version }}-${{ inputs.cache-key }}-${{ hashFiles('poetry.lock') }}
+ ${{ inputs.working-directory == '' && '.' || inputs.working-directory }}/.venv
+ key: poetry-${{ runner.os }}-${{ runner.arch }}-py-${{ inputs.python-version }}-poetry-${{ inputs.poetry-version }}-${{ inputs.cache-key }}-${{ hashFiles('poetry-lock.cache-key') }}
- run: ${{ inputs.install-command }}
working-directory: ${{ inputs.working-directory }}
diff --git a/.github/workflows/_lint.yml b/.github/workflows/_lint.yml
index 99af18a7ef7..b99cd79eb28 100644
--- a/.github/workflows/_lint.yml
+++ b/.github/workflows/_lint.yml
@@ -13,9 +13,6 @@ env:
jobs:
build:
- defaults:
- run:
- working-directory: ${{ inputs.working-directory }}
runs-on: ubuntu-latest
strategy:
matrix:
@@ -26,21 +23,47 @@ jobs:
- "3.11"
steps:
- uses: actions/checkout@v3
+ - uses: actions/cache@v3
+ id: cache-pip
+ name: Cache langchain editable pip install - ${{ matrix.python-version }}
+ env:
+ SEGMENT_DOWNLOAD_TIMEOUT_MIN: "15"
+ with:
+ path: |
+ ~/.cache/pip
+ key: pip-editable-langchain-deps-${{ runner.os }}-${{ runner.arch }}-py-${{ matrix.python-version }}
- name: Install poetry
run: |
pipx install poetry==$POETRY_VERSION
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v4
+ env:
+ SEGMENT_DOWNLOAD_TIMEOUT_MIN: "15"
with:
python-version: ${{ matrix.python-version }}
cache: poetry
+ cache-dependency-path: |
+ ${{ inputs.working-directory == '' && '.' || inputs.working-directory }}/**/poetry.lock
- name: Install dependencies
+ working-directory: ${{ inputs.working-directory }}
run: |
poetry install
- name: Install langchain editable
+ working-directory: ${{ inputs.working-directory }}
if: ${{ inputs.working-directory != 'langchain' }}
run: |
pip install -e ../langchain
+ - name: Get .mypy_cache to speed up mypy
+ uses: actions/cache@v3
+ env:
+ SEGMENT_DOWNLOAD_TIMEOUT_MIN: "15"
+ WORKDIR: ${{ inputs.working-directory == '' && '.' || inputs.working-directory }}
+ with:
+ path: |
+ ${{ env.WORKDIR }}/.mypy_cache
+ key: mypy-${{ runner.os }}-${{ runner.arch }}-py${{ matrix.python-version }}-${{ inputs.working-directory }}-${{ hashFiles(format('{0}/poetry.lock', env.WORKDIR)) }}
+
- name: Analysing the code with our lint
+ working-directory: ${{ inputs.working-directory }}
run: |
make lint
diff --git a/.github/workflows/_test.yml b/.github/workflows/_test.yml
index 116702804e6..2465aa1ace9 100644
--- a/.github/workflows/_test.yml
+++ b/.github/workflows/_test.yml
@@ -10,7 +10,7 @@ on:
test_type:
type: string
description: "Test types to run"
- default: '["core", "extended"]'
+ default: '["core", "extended", "core-pydantic-2"]'
env:
POETRY_VERSION: "1.4.2"
@@ -43,19 +43,42 @@ jobs:
if [ "${{ matrix.test_type }}" == "core" ]; then
echo "Running core tests, installing dependencies with poetry..."
poetry install
+ elif [ "${{ matrix.test_type }}" == "core-pydantic-2" ]; then
+ echo "Running core-pydantic-v2 tests, installing dependencies with poetry..."
+ poetry install
+ poetry add pydantic@2.1
else
echo "Running extended tests, installing dependencies with poetry..."
poetry install -E extended_testing
fi
- - name: Install langchain editable
- if: ${{ inputs.working-directory != 'langchain' }}
+ - name: Verify pydantic version
run: |
- pip install -e ../langchain
+ if [ "${{ matrix.test_type }}" == "core-pydantic-2" ]; then
+ EXPECTED_VERSION=2
+ else
+ EXPECTED_VERSION=1
+ fi
+ echo "Checking pydantic version... Expecting ${EXPECTED_VERSION}"
+
+ # Determine the major part of pydantic version
+ VERSION=$(poetry run python -c "import pydantic; print(pydantic.__version__)" | cut -d. -f1)
+
+ # Check that the major part of pydantic version is as expected, if not
+ # raise an error
+ if [[ "$VERSION" -ne $EXPECTED_VERSION ]]; then
+ echo "Error: pydantic version must be equal to ${EXPECTED_VERSION}; Found: ${VERSION}"
+ exit 1
+ fi
+ echo "Found pydantic version ${VERSION}, as expected"
+ shell: bash
- name: Run ${{matrix.test_type}} tests
run: |
- if [ "${{ matrix.test_type }}" == "core" ]; then
- make test
- else
- make extended_tests
- fi
+ case "${{ matrix.test_type }}" in
+ core | core-pydantic-2)
+ make test
+ ;;
+ *)
+ make extended_tests
+ ;;
+ esac
shell: bash
diff --git a/.github/workflows/langchain_ci.yml b/.github/workflows/langchain_ci.yml
index a3bf6157573..9dfbd8c3d6e 100644
--- a/.github/workflows/langchain_ci.yml
+++ b/.github/workflows/langchain_ci.yml
@@ -24,4 +24,5 @@ jobs:
./.github/workflows/_test.yml
with:
working-directory: libs/langchain
+ test_type: '["core", "extended", "core-pydantic-2"]'
secrets: inherit
\ No newline at end of file
diff --git a/.github/workflows/scheduled_test.yml b/.github/workflows/scheduled_test.yml
index aad5f9e0e94..29ca8c119d5 100644
--- a/.github/workflows/scheduled_test.yml
+++ b/.github/workflows/scheduled_test.yml
@@ -1,6 +1,7 @@
name: Scheduled tests
on:
+ workflow_dispatch: # Allows to trigger the workflow manually in GitHub UI
schedule:
- cron: '0 13 * * *'
@@ -9,6 +10,9 @@ env:
jobs:
build:
+ defaults:
+ run:
+ working-directory: libs/langchain
runs-on: ubuntu-latest
environment: Scheduled testing
strategy:
@@ -26,13 +30,13 @@ jobs:
with:
python-version: ${{ matrix.python-version }}
poetry-version: "1.4.2"
+ working-directory: libs/langchain
install-command: |
echo "Running scheduled tests, installing dependencies with poetry..."
- poetry install -E scheduled_testing
+ poetry install --with=test_integration
- name: Run tests
env:
OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
run: |
make scheduled_tests
shell: bash
- secrets: inherit
diff --git a/README.md b/README.md
index 1b2e823aa77..201903c6c2d 100644
--- a/README.md
+++ b/README.md
@@ -21,7 +21,7 @@ Looking for the JS/TS version? Check out [LangChain.js](https://github.com/hwcha
**Production Support:** As you move your LangChains into production, we'd love to offer more hands-on support.
Fill out [this form](https://airtable.com/appwQzlErAS2qiP0L/shrGtGaVBVAz7NcV2) to share more about what you're building, and our team will get in touch.
-## 🚨Breaking Changes for select chains (SQLDatabase) on 7/28
+## 🚨Breaking Changes for select chains (SQLDatabase) on 7/28/23
In an effort to make `langchain` leaner and safer, we are moving select chains to `langchain_experimental`.
This migration has already started, but we are remaining backwards compatible until 7/28.
diff --git a/docs/api_reference/create_api_rst.py b/docs/api_reference/create_api_rst.py
index e49b89b6afd..23fa327af60 100644
--- a/docs/api_reference/create_api_rst.py
+++ b/docs/api_reference/create_api_rst.py
@@ -145,30 +145,37 @@ def _load_package_modules(
package_name = package_path.name
for file_path in package_path.rglob("*.py"):
- if not file_path.name.startswith("__"):
- relative_module_name = file_path.relative_to(package_path)
- # Get the full namespace of the module
- namespace = str(relative_module_name).replace(".py", "").replace("/", ".")
- # Keep only the top level namespace
- top_namespace = namespace.split(".")[0]
+ if file_path.name.startswith("_"):
+ continue
- try:
- module_members = _load_module_members(
- f"{package_name}.{namespace}", namespace
+ relative_module_name = file_path.relative_to(package_path)
+
+ # Skip if any module part starts with an underscore
+ if any(part.startswith("_") for part in relative_module_name.parts):
+ continue
+
+ # Get the full namespace of the module
+ namespace = str(relative_module_name).replace(".py", "").replace("/", ".")
+ # Keep only the top level namespace
+ top_namespace = namespace.split(".")[0]
+
+ try:
+ module_members = _load_module_members(
+ f"{package_name}.{namespace}", namespace
+ )
+ # Merge module members if the namespace already exists
+ if top_namespace in modules_by_namespace:
+ existing_module_members = modules_by_namespace[top_namespace]
+ _module_members = _merge_module_members(
+ [existing_module_members, module_members]
)
- # Merge module members if the namespace already exists
- if top_namespace in modules_by_namespace:
- existing_module_members = modules_by_namespace[top_namespace]
- _module_members = _merge_module_members(
- [existing_module_members, module_members]
- )
- else:
- _module_members = module_members
+ else:
+ _module_members = module_members
- modules_by_namespace[top_namespace] = _module_members
+ modules_by_namespace[top_namespace] = _module_members
- except ImportError as e:
- print(f"Error: Unable to import module '{namespace}' with error: {e}")
+ except ImportError as e:
+ print(f"Error: Unable to import module '{namespace}' with error: {e}")
return modules_by_namespace
@@ -222,9 +229,9 @@ Classes
"""
for class_ in classes:
- if not class_['is_public']:
+ if not class_["is_public"]:
continue
-
+
if class_["kind"] == "TypedDict":
template = "typeddict.rst"
elif class_["kind"] == "enum":
diff --git a/docs/api_reference/guide_imports.json b/docs/api_reference/guide_imports.json
index 9efc571c7e9..9c608a7328f 100644
--- a/docs/api_reference/guide_imports.json
+++ b/docs/api_reference/guide_imports.json
@@ -1 +1,3413 @@
-{"XinferenceEmbeddings": {"Xorbits inference (Xinference)": "https://python.langchain.com/docs/integrations/text_embedding/xinference"}, "DeepInfraEmbeddings": {"DeepInfra": "https://python.langchain.com/docs/integrations/text_embedding/deepinfra"}, "HuggingFaceEmbeddings": {"Hugging Face Hub": "https://python.langchain.com/docs/integrations/text_embedding/huggingfacehub", "Sentence Transformers Embeddings": "https://python.langchain.com/docs/integrations/text_embedding/sentence_transformers", "LOTR (Merger Retriever)": "https://python.langchain.com/docs/integrations/retrievers/merger_retriever", "Hugging Face": "https://python.langchain.com/docs/integrations/providers/huggingface", "Annoy": "https://python.langchain.com/docs/integrations/vectorstores/annoy", "Pairwise Embedding Distance ": "https://python.langchain.com/docs/guides/evaluation/comparison/pairwise_embedding_distance", "Embedding Distance": "https://python.langchain.com/docs/guides/evaluation/string/embedding_distance", "Lost in the middle: The problem with long contexts": "https://python.langchain.com/docs/modules/data_connection/document_transformers/post_retrieval/long_context_reorder"}, "GPT4AllEmbeddings": {"GPT4All": "https://python.langchain.com/docs/integrations/text_embedding/gpt4all", "Running LLMs locally": "https://python.langchain.com/docs/use_cases/question_answering/local_retrieval_qa", "Use local LLMs": "https://python.langchain.com/docs/use_cases/question_answering/how_to/local_retrieval_qa", "WebResearchRetriever": "https://python.langchain.com/docs/modules/data_connection/retrievers/web_research"}, "MosaicMLInstructorEmbeddings": {"MosaicML embeddings": "https://python.langchain.com/docs/integrations/text_embedding/mosaicml"}, "OpenAIEmbeddings": {"OpenAI": "https://python.langchain.com/docs/integrations/providers/openai", "AzureOpenAI": "https://python.langchain.com/docs/integrations/text_embedding/azureopenai", "Cohere Reranker": "https://python.langchain.com/docs/integrations/retrievers/cohere-reranker", "kNN": "https://python.langchain.com/docs/integrations/retrievers/knn", "DocArray Retriever": "https://python.langchain.com/docs/integrations/retrievers/docarray_retriever", "SVM": "https://python.langchain.com/docs/integrations/retrievers/svm", "Pinecone Hybrid Search": "https://python.langchain.com/docs/integrations/retrievers/pinecone_hybrid_search", "LOTR (Merger Retriever)": "https://python.langchain.com/docs/integrations/retrievers/merger_retriever", "Azure OpenAI": "https://python.langchain.com/docs/integrations/providers/azure_openai", "Document Comparison": "https://python.langchain.com/docs/integrations/toolkits/document_comparison_toolkit", "Vectorstore Agent": "https://python.langchain.com/docs/integrations/toolkits/vectorstore", "LanceDB": "https://python.langchain.com/docs/integrations/vectorstores/lancedb", "Weaviate": "https://python.langchain.com/docs/integrations/vectorstores/weaviate", "Activeloop's Deep Lake": "https://python.langchain.com/docs/integrations/vectorstores/deeplake", "Redis": "https://python.langchain.com/docs/integrations/vectorstores/redis", "PGVector": "https://python.langchain.com/docs/integrations/vectorstores/pgvector", "Rockset": "https://python.langchain.com/docs/integrations/vectorstores/rockset", "Zilliz": "https://python.langchain.com/docs/integrations/vectorstores/zilliz", "SingleStoreDB": "https://python.langchain.com/docs/integrations/vectorstores/singlestoredb", "Typesense": "https://python.langchain.com/docs/integrations/vectorstores/typesense", "Atlas": "https://python.langchain.com/docs/integrations/vectorstores/atlas", "Chroma": "https://python.langchain.com/docs/integrations/vectorstores/chroma", "Alibaba Cloud OpenSearch": "https://python.langchain.com/docs/integrations/vectorstores/alibabacloud_opensearch", "StarRocks": "https://python.langchain.com/docs/integrations/vectorstores/starrocks", "scikit-learn": "https://python.langchain.com/docs/integrations/vectorstores/sklearn", "DocArrayHnswSearch": "https://python.langchain.com/docs/integrations/vectorstores/docarray_hnsw", "MyScale": "https://python.langchain.com/docs/integrations/vectorstores/myscale", "ClickHouse Vector Search": "https://python.langchain.com/docs/integrations/vectorstores/clickhouse", "Qdrant": "https://python.langchain.com/docs/integrations/vectorstores/qdrant", "Tigris": "https://python.langchain.com/docs/integrations/vectorstores/tigris", "Supabase (Postgres)": "https://python.langchain.com/docs/integrations/vectorstores/supabase", "OpenSearch": "https://python.langchain.com/docs/integrations/vectorstores/opensearch", "Pinecone": "https://python.langchain.com/docs/integrations/vectorstores/pinecone", "Azure Cognitive Search": "https://python.langchain.com/docs/integrations/vectorstores/azuresearch", "Cassandra": "https://python.langchain.com/docs/integrations/vectorstores/cassandra", "Milvus": "https://python.langchain.com/docs/integrations/vectorstores/milvus", "ElasticSearch": "https://python.langchain.com/docs/integrations/vectorstores/elasticsearch", "DocArrayInMemorySearch": "https://python.langchain.com/docs/integrations/vectorstores/docarray_in_memory", "pg_embedding": "https://python.langchain.com/docs/integrations/vectorstores/pgembedding", "FAISS": "https://python.langchain.com/docs/integrations/vectorstores/faiss", "AnalyticDB": "https://python.langchain.com/docs/integrations/vectorstores/analyticdb", "Hologres": "https://python.langchain.com/docs/integrations/vectorstores/hologres", "MongoDB Atlas": "https://python.langchain.com/docs/integrations/vectorstores/mongodb_atlas", "Meilisearch": "https://python.langchain.com/docs/integrations/vectorstores/meilisearch", "Loading documents from a YouTube url": "https://python.langchain.com/docs/integrations/document_loaders/youtube_audio", "Psychic": "https://python.langchain.com/docs/integrations/document_loaders/psychic", "Docugami": "https://python.langchain.com/docs/integrations/document_loaders/docugami", "Caching integrations": "https://python.langchain.com/docs/integrations/llms/llm_caching", "Data Augmented Question Answering": "https://python.langchain.com/docs/guides/evaluation/examples/data_augmented_question_answering", "AutoGPT": "https://python.langchain.com/docs/use_cases/autonomous_agents/autogpt", "BabyAGI User Guide": "https://python.langchain.com/docs/use_cases/agents/baby_agi", "BabyAGI with Tools": "https://python.langchain.com/docs/use_cases/agents/baby_agi_with_agent", "!pip install bs4": "https://python.langchain.com/docs/use_cases/autonomous_agents/marathon_times", "Context aware text splitting and QA / Chat": "https://python.langchain.com/docs/use_cases/question_answering/document-context-aware-QA", "QA over Documents": "https://python.langchain.com/docs/use_cases/question_answering/index", "Question answering over a group chat messages using Activeloop's DeepLake": "https://python.langchain.com/docs/use_cases/question_answering/semantic-search-over-chat", "Perform context-aware text splitting": "https://python.langchain.com/docs/use_cases/question_answering/how_to/document-context-aware-QA", "Retrieve from vector stores directly": "https://python.langchain.com/docs/use_cases/question_answering/how_to/vector_db_text_generation", "Retrieve as you generate with FLARE": "https://python.langchain.com/docs/use_cases/question_answering/how_to/flare", "Improve document indexing with HyDE": "https://python.langchain.com/docs/use_cases/question_answering/how_to/hyde", "Structure answers with OpenAI functions": "https://python.langchain.com/docs/use_cases/question_answering/integrations/openai_functions_retrieval_qa", "QA using Activeloop's DeepLake": "https://python.langchain.com/docs/use_cases/question_answering/integrations/semantic-search-over-chat", "Analysis of Twitter the-algorithm source code with LangChain, GPT4 and Activeloop's Deep Lake": "https://python.langchain.com/docs/use_cases/code/twitter-the-algorithm-analysis-deeplake", "Use LangChain, GPT and Activeloop's Deep Lake to work with code base": "https://python.langchain.com/docs/use_cases/code/code-analysis-deeplake", "Plug-and-Plai": "https://python.langchain.com/docs/use_cases/agents/custom_agent_with_plugin_retrieval_using_plugnplai", "SalesGPT - Your Context-Aware AI Sales Assistant With Knowledge Base": "https://python.langchain.com/docs/use_cases/agents/sales_agent_with_context", "Custom Agent with PlugIn Retrieval": "https://python.langchain.com/docs/use_cases/agents/custom_agent_with_plugin_retrieval", "Generative Agents in LangChain": "https://python.langchain.com/docs/use_cases/agent_simulations/characters", "MultiQueryRetriever": "https://python.langchain.com/docs/modules/data_connection/retrievers/MultiQueryRetriever", "WebResearchRetriever": "https://python.langchain.com/docs/modules/data_connection/retrievers/web_research", "Weaviate self-querying ": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/weaviate_self_query", "Chroma self-querying ": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/chroma_self_query", "DeepLake self-querying ": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/deeplake_self_query", "Self-querying with Pinecone": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/pinecone", "Self-querying with MyScale": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/myscale_self_query", "Qdrant self-querying ": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/qdrant_self_query", "How to add memory to a Multi-Input Chain": "https://python.langchain.com/docs/modules/memory/adding_memory_chain_multiple_inputs", "Combine agents and vector stores": "https://python.langchain.com/docs/modules/agents/how_to/agent_vectorstore", "Custom agent with tool retrieval": "https://python.langchain.com/docs/modules/agents/how_to/custom_agent_with_tool_retrieval", "Select by maximal marginal relevance (MMR)": "https://python.langchain.com/docs/modules/model_io/prompts/example_selectors/mmr", "Few shot examples for chat models": "https://python.langchain.com/docs/modules/model_io/prompts/prompt_templates/few_shot_examples_chat", "Loading from LangChainHub": "https://python.langchain.com/docs/modules/chains/how_to/from_hub", "Retrieval QA using OpenAI functions": "https://python.langchain.com/docs/modules/chains/additional/openai_functions_retrieval_qa", "Vector store-augmented text generation": "https://python.langchain.com/docs/modules/chains/additional/vector_db_text_generation", "FLARE": "https://python.langchain.com/docs/modules/chains/additional/flare", "Hypothetical Document Embeddings": "https://python.langchain.com/docs/modules/chains/additional/hyde"}, "VertexAIEmbeddings": {"Google Cloud Platform Vertex AI PaLM ": "https://python.langchain.com/docs/integrations/text_embedding/google_vertex_ai_palm"}, "BedrockEmbeddings": {"Bedrock Embeddings": "https://python.langchain.com/docs/integrations/text_embedding/bedrock", "Bedrock": "https://python.langchain.com/docs/integrations/providers/bedrock"}, "LlamaCppEmbeddings": {"Llama-cpp": "https://python.langchain.com/docs/integrations/text_embedding/llamacpp", "Llama.cpp": "https://python.langchain.com/docs/integrations/providers/llamacpp"}, "NLPCloudEmbeddings": {"NLP Cloud": "https://python.langchain.com/docs/integrations/text_embedding/nlp_cloud"}, "SpacyEmbeddings": {"Spacy Embedding": "https://python.langchain.com/docs/integrations/text_embedding/spacy_embedding"}, "HuggingFaceInstructEmbeddings": {"InstructEmbeddings": "https://python.langchain.com/docs/integrations/text_embedding/instruct_embeddings"}, "CohereEmbeddings": {"Cohere": "https://python.langchain.com/docs/integrations/providers/cohere", "How to add memory to a Multi-Input Chain": "https://python.langchain.com/docs/modules/memory/adding_memory_chain_multiple_inputs", "Router": "https://python.langchain.com/docs/modules/chains/foundational/router"}, "SentenceTransformerEmbeddings": {"Sentence Transformers Embeddings": "https://python.langchain.com/docs/integrations/text_embedding/sentence_transformers", "Chroma": "https://python.langchain.com/docs/integrations/vectorstores/chroma"}, "ClarifaiEmbeddings": {"Clarifai": "https://python.langchain.com/docs/integrations/providers/clarifai"}, "AwaEmbeddings": {"AwaEmbedding": "https://python.langchain.com/docs/integrations/text_embedding/Awa"}, "MiniMaxEmbeddings": {"MiniMax": "https://python.langchain.com/docs/integrations/text_embedding/minimax", "Minimax": "https://python.langchain.com/docs/integrations/providers/minimax"}, "FakeEmbeddings": {"Fake Embeddings": "https://python.langchain.com/docs/integrations/text_embedding/fake", "DocArray Retriever": "https://python.langchain.com/docs/integrations/retrievers/docarray_retriever", "Vectara": "https://python.langchain.com/docs/integrations/vectorstores/vectara", "Tair": "https://python.langchain.com/docs/integrations/vectorstores/tair"}, "ElasticsearchEmbeddings": {"Elasticsearch": "https://python.langchain.com/docs/integrations/text_embedding/elasticsearch", "ElasticSearch": "https://python.langchain.com/docs/integrations/vectorstores/elasticsearch"}, "SelfHostedEmbeddings": {"Self Hosted Embeddings": "https://python.langchain.com/docs/integrations/text_embedding/self-hosted"}, "SelfHostedHuggingFaceEmbeddings": {"Self Hosted Embeddings": "https://python.langchain.com/docs/integrations/text_embedding/self-hosted"}, "SelfHostedHuggingFaceInstructEmbeddings": {"Self Hosted Embeddings": "https://python.langchain.com/docs/integrations/text_embedding/self-hosted"}, "EmbaasEmbeddings": {"Embaas": "https://python.langchain.com/docs/integrations/text_embedding/embaas"}, "JinaEmbeddings": {"Jina": "https://python.langchain.com/docs/integrations/providers/jina"}, "AlephAlphaAsymmetricSemanticEmbedding": {"Aleph Alpha": "https://python.langchain.com/docs/integrations/providers/aleph_alpha"}, "AlephAlphaSymmetricSemanticEmbedding": {"Aleph Alpha": "https://python.langchain.com/docs/integrations/providers/aleph_alpha"}, "DashScopeEmbeddings": {"DashScope": "https://python.langchain.com/docs/integrations/text_embedding/dashscope"}, "TensorflowHubEmbeddings": {"TensorflowHub": "https://python.langchain.com/docs/integrations/text_embedding/tensorflowhub"}, "ModelScopeEmbeddings": {"ModelScope": "https://python.langchain.com/docs/integrations/providers/modelscope"}, "SagemakerEndpointEmbeddings": {"SageMaker Endpoint Embeddings": "https://python.langchain.com/docs/integrations/text_embedding/sagemaker-endpoint", "SageMaker Endpoint": "https://python.langchain.com/docs/integrations/providers/sagemaker_endpoint"}, "EmbeddingsContentHandler": {"SageMaker Endpoint Embeddings": "https://python.langchain.com/docs/integrations/text_embedding/sagemaker-endpoint"}, "LocalAIEmbeddings": {"LocalAI": "https://python.langchain.com/docs/integrations/text_embedding/localai"}, "ElasticSearchBM25Retriever": {"ElasticSearch BM25": "https://python.langchain.com/docs/integrations/retrievers/elastic_search_bm25", "Elasticsearch": "https://python.langchain.com/docs/integrations/providers/elasticsearch"}, "ZepChatMessageHistory": {"Zep": "https://python.langchain.com/docs/integrations/retrievers/zep_memorystore"}, "HumanMessage": {"Zep": "https://python.langchain.com/docs/integrations/retrievers/zep_memorystore", "Zep Memory": "https://python.langchain.com/docs/integrations/memory/zep_memory", "Anthropic": "https://python.langchain.com/docs/integrations/chat/anthropic", "OpenAI": "https://python.langchain.com/docs/integrations/chat/openai", "Google Cloud Platform Vertex AI PaLM ": "https://python.langchain.com/docs/integrations/chat/google_vertex_ai_palm", "JinaChat": "https://python.langchain.com/docs/integrations/chat/jinachat", "Azure": "https://python.langchain.com/docs/integrations/chat/azure_chat_openai", "PromptLayer ChatOpenAI": "https://python.langchain.com/docs/integrations/chat/promptlayer_chatopenai", "Context": "https://python.langchain.com/docs/integrations/callbacks/context", "PromptLayer": "https://python.langchain.com/docs/integrations/callbacks/promptlayer", "MLflow AI Gateway": "https://python.langchain.com/docs/integrations/providers/mlflow_ai_gateway", "Flyte": "https://python.langchain.com/docs/integrations/providers/flyte", "Arthur": "https://python.langchain.com/docs/integrations/providers/arthur_tracking", "Structure answers with OpenAI functions": "https://python.langchain.com/docs/use_cases/question_answering/integrations/openai_functions_retrieval_qa", "CAMEL Role-Playing Autonomous Cooperative Agents": "https://python.langchain.com/docs/use_cases/agent_simulations/camel_role_playing", "Multi-Agent Simulated Environment: Petting Zoo": "https://python.langchain.com/docs/use_cases/agent_simulations/petting_zoo", "Multi-agent decentralized speaker selection": "https://python.langchain.com/docs/use_cases/agent_simulations/multiagent_bidding", "Multi-agent authoritarian speaker selection": "https://python.langchain.com/docs/use_cases/agent_simulations/multiagent_authoritarian", "Two-Player Dungeons & Dragons": "https://python.langchain.com/docs/use_cases/agent_simulations/two_player_dnd", "Multi-Player Dungeons & Dragons": "https://python.langchain.com/docs/use_cases/agent_simulations/multi_player_dnd", "Simulated Environment: Gymnasium": "https://python.langchain.com/docs/use_cases/agent_simulations/gymnasium", "Agent Debates with Tools": "https://python.langchain.com/docs/use_cases/agent_simulations/two_agent_debate_tools", "Custom callback handlers": "https://python.langchain.com/docs/modules/callbacks/custom_callbacks", "Async callbacks": "https://python.langchain.com/docs/modules/callbacks/async_callbacks", "Tools as OpenAI Functions": "https://python.langchain.com/docs/modules/agents/tools/tools_as_openai_functions", "Prompt Pipelining": "https://python.langchain.com/docs/modules/model_io/prompts/prompt_templates/prompts_pipelining", "Using OpenAI functions": "https://python.langchain.com/docs/modules/chains/popular/openai_functions", "Retrieval QA using OpenAI functions": "https://python.langchain.com/docs/modules/chains/additional/openai_functions_retrieval_qa"}, "AIMessage": {"Zep": "https://python.langchain.com/docs/integrations/retrievers/zep_memorystore", "Zep Memory": "https://python.langchain.com/docs/integrations/memory/zep_memory", "Anthropic": "https://python.langchain.com/docs/integrations/chat/anthropic", "OpenAI": "https://python.langchain.com/docs/integrations/chat/openai", "JinaChat": "https://python.langchain.com/docs/integrations/chat/jinachat", "CAMEL Role-Playing Autonomous Cooperative Agents": "https://python.langchain.com/docs/use_cases/agent_simulations/camel_role_playing", "Multi-agent decentralized speaker selection": "https://python.langchain.com/docs/use_cases/agent_simulations/multiagent_bidding", "Multi-agent authoritarian speaker selection": "https://python.langchain.com/docs/use_cases/agent_simulations/multiagent_authoritarian", "Multi-Player Dungeons & Dragons": "https://python.langchain.com/docs/use_cases/agent_simulations/multi_player_dnd", "Simulated Environment: Gymnasium": "https://python.langchain.com/docs/use_cases/agent_simulations/gymnasium", "Agent Debates with Tools": "https://python.langchain.com/docs/use_cases/agent_simulations/two_agent_debate_tools", "Prompt Pipelining": "https://python.langchain.com/docs/modules/model_io/prompts/prompt_templates/prompts_pipelining"}, "ZepRetriever": {"Zep": "https://python.langchain.com/docs/integrations/providers/zep", "Zep Memory": "https://python.langchain.com/docs/integrations/memory/zep_memory"}, "VespaRetriever": {"Vespa": "https://python.langchain.com/docs/integrations/providers/vespa"}, "AmazonKendraRetriever": {"Amazon Kendra": "https://python.langchain.com/docs/integrations/retrievers/amazon_kendra_retriever"}, "RecursiveCharacterTextSplitter": {"Cohere Reranker": "https://python.langchain.com/docs/integrations/retrievers/cohere-reranker", "Loading documents from a YouTube url": "https://python.langchain.com/docs/integrations/document_loaders/youtube_audio", "Source Code": "https://python.langchain.com/docs/integrations/document_loaders/source_code", "!pip install bs4": "https://python.langchain.com/docs/use_cases/autonomous_agents/marathon_times", "Context aware text splitting and QA / Chat": "https://python.langchain.com/docs/use_cases/question_answering/document-context-aware-QA", "QA over Documents": "https://python.langchain.com/docs/use_cases/question_answering/index", "Running LLMs locally": "https://python.langchain.com/docs/use_cases/question_answering/local_retrieval_qa", "Question answering over a group chat messages using Activeloop's DeepLake": "https://python.langchain.com/docs/use_cases/question_answering/semantic-search-over-chat", "Perform context-aware text splitting": "https://python.langchain.com/docs/use_cases/question_answering/how_to/document-context-aware-QA", "Use local LLMs": "https://python.langchain.com/docs/use_cases/question_answering/how_to/local_retrieval_qa", "QA using Activeloop's DeepLake": "https://python.langchain.com/docs/use_cases/question_answering/integrations/semantic-search-over-chat", "MultiQueryRetriever": "https://python.langchain.com/docs/modules/data_connection/retrievers/MultiQueryRetriever", "MarkdownHeaderTextSplitter": "https://python.langchain.com/docs/modules/data_connection/document_transformers/text_splitters/markdown_header_metadata"}, "TextLoader": {"Cohere Reranker": "https://python.langchain.com/docs/integrations/retrievers/cohere-reranker", "Chat Over Documents with Vectara": "https://python.langchain.com/docs/integrations/providers/vectara/vectara_chat", "Vectorstore Agent": "https://python.langchain.com/docs/integrations/toolkits/vectorstore", "LanceDB": "https://python.langchain.com/docs/integrations/vectorstores/lancedb", "Weaviate": "https://python.langchain.com/docs/integrations/vectorstores/weaviate", "Activeloop's Deep Lake": "https://python.langchain.com/docs/integrations/vectorstores/deeplake", "Vectara": "https://python.langchain.com/docs/integrations/vectorstores/vectara", "Redis": "https://python.langchain.com/docs/integrations/vectorstores/redis", "PGVector": "https://python.langchain.com/docs/integrations/vectorstores/pgvector", "Rockset": "https://python.langchain.com/docs/integrations/vectorstores/rockset", "Zilliz": "https://python.langchain.com/docs/integrations/vectorstores/zilliz", "SingleStoreDB": "https://python.langchain.com/docs/integrations/vectorstores/singlestoredb", "Annoy": "https://python.langchain.com/docs/integrations/vectorstores/annoy", "Typesense": "https://python.langchain.com/docs/integrations/vectorstores/typesense", "Atlas": "https://python.langchain.com/docs/integrations/vectorstores/atlas", "Tair": "https://python.langchain.com/docs/integrations/vectorstores/tair", "Chroma": "https://python.langchain.com/docs/integrations/vectorstores/chroma", "Alibaba Cloud OpenSearch": "https://python.langchain.com/docs/integrations/vectorstores/alibabacloud_opensearch", "StarRocks": "https://python.langchain.com/docs/integrations/vectorstores/starrocks", "Clarifai": "https://python.langchain.com/docs/integrations/vectorstores/clarifai", "scikit-learn": "https://python.langchain.com/docs/integrations/vectorstores/sklearn", "DocArrayHnswSearch": "https://python.langchain.com/docs/integrations/vectorstores/docarray_hnsw", "MyScale": "https://python.langchain.com/docs/integrations/vectorstores/myscale", "ClickHouse Vector Search": "https://python.langchain.com/docs/integrations/vectorstores/clickhouse", "Qdrant": "https://python.langchain.com/docs/integrations/vectorstores/qdrant", "Tigris": "https://python.langchain.com/docs/integrations/vectorstores/tigris", "AwaDB": "https://python.langchain.com/docs/integrations/vectorstores/awadb", "Supabase (Postgres)": "https://python.langchain.com/docs/integrations/vectorstores/supabase", "OpenSearch": "https://python.langchain.com/docs/integrations/vectorstores/opensearch", "Pinecone": "https://python.langchain.com/docs/integrations/vectorstores/pinecone", "Azure Cognitive Search": "https://python.langchain.com/docs/integrations/vectorstores/azuresearch", "Cassandra": "https://python.langchain.com/docs/integrations/vectorstores/cassandra", "Milvus": "https://python.langchain.com/docs/integrations/vectorstores/milvus", "ElasticSearch": "https://python.langchain.com/docs/integrations/vectorstores/elasticsearch", "Marqo": "https://python.langchain.com/docs/integrations/vectorstores/marqo", "DocArrayInMemorySearch": "https://python.langchain.com/docs/integrations/vectorstores/docarray_in_memory", "pg_embedding": "https://python.langchain.com/docs/integrations/vectorstores/pgembedding", "FAISS": "https://python.langchain.com/docs/integrations/vectorstores/faiss", "AnalyticDB": "https://python.langchain.com/docs/integrations/vectorstores/analyticdb", "Hologres": "https://python.langchain.com/docs/integrations/vectorstores/hologres", "MongoDB Atlas": "https://python.langchain.com/docs/integrations/vectorstores/mongodb_atlas", "Meilisearch": "https://python.langchain.com/docs/integrations/vectorstores/meilisearch", "Question Answering Benchmarking: State of the Union Address": "https://python.langchain.com/docs/guides/evaluation/examples/qa_benchmarking_sota", "QA Generation": "https://python.langchain.com/docs/guides/evaluation/examples/qa_generation", "Question Answering Benchmarking: Paul Graham Essay": "https://python.langchain.com/docs/guides/evaluation/examples/qa_benchmarking_pg", "Data Augmented Question Answering": "https://python.langchain.com/docs/guides/evaluation/examples/data_augmented_question_answering", "Agent VectorDB Question Answering Benchmarking": "https://python.langchain.com/docs/guides/evaluation/examples/agent_vectordb_sota_pg", "Question answering over a group chat messages using Activeloop's DeepLake": "https://python.langchain.com/docs/use_cases/question_answering/semantic-search-over-chat", "Structure answers with OpenAI functions": "https://python.langchain.com/docs/use_cases/question_answering/integrations/openai_functions_retrieval_qa", "QA using Activeloop's DeepLake": "https://python.langchain.com/docs/use_cases/question_answering/integrations/semantic-search-over-chat", "Graph QA": "https://python.langchain.com/docs/modules/chains/additional/graph_qa", "Analysis of Twitter the-algorithm source code with LangChain, GPT4 and Activeloop's Deep Lake": "https://python.langchain.com/docs/use_cases/code/twitter-the-algorithm-analysis-deeplake", "Use LangChain, GPT and Activeloop's Deep Lake to work with code base": "https://python.langchain.com/docs/use_cases/code/code-analysis-deeplake", "Combine agents and vector stores": "https://python.langchain.com/docs/modules/agents/how_to/agent_vectorstore", "Loading from LangChainHub": "https://python.langchain.com/docs/modules/chains/how_to/from_hub", "Retrieval QA using OpenAI functions": "https://python.langchain.com/docs/modules/chains/additional/openai_functions_retrieval_qa"}, "FAISS": {"Cohere Reranker": "https://python.langchain.com/docs/integrations/retrievers/cohere-reranker", "Document Comparison": "https://python.langchain.com/docs/integrations/toolkits/document_comparison_toolkit", "FAISS": "https://python.langchain.com/docs/integrations/vectorstores/faiss", "Loading documents from a YouTube url": "https://python.langchain.com/docs/integrations/document_loaders/youtube_audio", "AutoGPT": "https://python.langchain.com/docs/use_cases/autonomous_agents/autogpt", "BabyAGI User Guide": "https://python.langchain.com/docs/use_cases/agents/baby_agi", "BabyAGI with Tools": "https://python.langchain.com/docs/use_cases/agents/baby_agi_with_agent", "!pip install bs4": "https://python.langchain.com/docs/use_cases/autonomous_agents/marathon_times", "Plug-and-Plai": "https://python.langchain.com/docs/use_cases/agents/custom_agent_with_plugin_retrieval_using_plugnplai", "Custom Agent with PlugIn Retrieval": "https://python.langchain.com/docs/use_cases/agents/custom_agent_with_plugin_retrieval", "Generative Agents in LangChain": "https://python.langchain.com/docs/use_cases/agent_simulations/characters", "Ensemble Retriever": "https://python.langchain.com/docs/modules/data_connection/retrievers/ensemble", "Custom agent with tool retrieval": "https://python.langchain.com/docs/modules/agents/how_to/custom_agent_with_tool_retrieval", "Select by maximal marginal relevance (MMR)": "https://python.langchain.com/docs/modules/model_io/prompts/example_selectors/mmr"}, "OpenAI": {"Cohere Reranker": "https://python.langchain.com/docs/integrations/retrievers/cohere-reranker", "Google Serper API": "https://python.langchain.com/docs/integrations/tools/google_serper", "Human as a tool": "https://python.langchain.com/docs/integrations/tools/human_tools", "OpenWeatherMap API": "https://python.langchain.com/docs/integrations/tools/openweathermap", "Search Tools": "https://python.langchain.com/docs/integrations/tools/search_tools", "Zapier Natural Language Actions API": "https://python.langchain.com/docs/integrations/tools/zapier", "Gradio Tools": "https://python.langchain.com/docs/integrations/tools/gradio_tools", "SceneXplain": "https://python.langchain.com/docs/integrations/tools/sceneXplain", "Entity Memory with SQLite storage": "https://python.langchain.com/docs/integrations/memory/entity_memory_with_sqlite", "Argilla": "https://python.langchain.com/docs/integrations/callbacks/argilla", "PromptLayer": "https://python.langchain.com/docs/integrations/callbacks/promptlayer", "Streamlit": "https://python.langchain.com/docs/integrations/callbacks/streamlit", "WandB Tracing": "https://python.langchain.com/docs/integrations/providers/agent_with_wandb_tracing", "Comet": "https://python.langchain.com/docs/integrations/providers/comet_tracking", "Aim": "https://python.langchain.com/docs/integrations/providers/aim_tracking", "Weights & Biases": "https://python.langchain.com/docs/integrations/providers/wandb_tracking", "OpenAI": "https://python.langchain.com/docs/integrations/llms/openai", "Rebuff": "https://python.langchain.com/docs/integrations/providers/rebuff", "MLflow": "https://python.langchain.com/docs/integrations/providers/mlflow_tracking", "Google Serper": "https://python.langchain.com/docs/integrations/providers/google_serper", "Helicone": "https://python.langchain.com/docs/integrations/providers/helicone", "Shale Protocol": "https://python.langchain.com/docs/integrations/providers/shaleprotocol", "WhyLabs": "https://python.langchain.com/docs/integrations/providers/whylabs_profiling", "ClearML": "https://python.langchain.com/docs/integrations/providers/clearml_tracking", "Ray Serve": "https://python.langchain.com/docs/integrations/providers/ray_serve", "Log, Trace, and Monitor Langchain LLM Calls": "https://python.langchain.com/docs/integrations/providers/portkey/logging_tracing_portkey", "Portkey": "https://python.langchain.com/docs/integrations/providers/portkey/index", "Chat Over Documents with Vectara": "https://python.langchain.com/docs/integrations/providers/vectara/vectara_chat", "Vectara Text Generation": "https://python.langchain.com/docs/integrations/providers/vectara/vectara_text_generation", "CSV Agent": "https://python.langchain.com/docs/integrations/toolkits/csv", "Xorbits Agent": "https://python.langchain.com/docs/integrations/toolkits/xorbits", "Jira": "https://python.langchain.com/docs/integrations/toolkits/jira", "Spark Dataframe Agent": "https://python.langchain.com/docs/integrations/toolkits/spark", "Python Agent": "https://python.langchain.com/docs/integrations/toolkits/python", "SQL Database Agent": "https://python.langchain.com/docs/integrations/toolkits/sql_database", "Natural Language APIs": "https://python.langchain.com/docs/integrations/toolkits/openapi_nla", "JSON Agent": "https://python.langchain.com/docs/integrations/toolkits/json", "Github Toolkit": "https://python.langchain.com/docs/integrations/toolkits/github", "Pandas Dataframe Agent": "https://python.langchain.com/docs/integrations/toolkits/pandas", "OpenAPI agents": "https://python.langchain.com/docs/integrations/toolkits/openapi", "Psychic": "https://python.langchain.com/docs/integrations/document_loaders/psychic", "Docugami": "https://python.langchain.com/docs/integrations/document_loaders/docugami", "Caching integrations": "https://python.langchain.com/docs/integrations/llms/llm_caching", "Question Answering Benchmarking: State of the Union Address": "https://python.langchain.com/docs/guides/evaluation/examples/qa_benchmarking_sota", "Question Answering Benchmarking: Paul Graham Essay": "https://python.langchain.com/docs/guides/evaluation/examples/qa_benchmarking_pg", "Evaluating an OpenAPI Chain": "https://python.langchain.com/docs/guides/evaluation/examples/openapi_eval", "Data Augmented Question Answering": "https://python.langchain.com/docs/guides/evaluation/examples/data_augmented_question_answering", "Question Answering": "https://python.langchain.com/docs/guides/evaluation/examples/question_answering", "Agent VectorDB Question Answering Benchmarking": "https://python.langchain.com/docs/guides/evaluation/examples/agent_vectordb_sota_pg", "HTTP request chain": "https://python.langchain.com/docs/modules/chains/additional/llm_requests", "OpenAPI chain": "https://python.langchain.com/docs/modules/chains/additional/openapi", "HuggingGPT": "https://python.langchain.com/docs/use_cases/autonomous_agents/hugginggpt", "Context aware text splitting and QA / Chat": "https://python.langchain.com/docs/use_cases/question_answering/document-context-aware-QA", "Question answering over a group chat messages using Activeloop's DeepLake": "https://python.langchain.com/docs/use_cases/question_answering/semantic-search-over-chat", "Perform context-aware text splitting": "https://python.langchain.com/docs/use_cases/question_answering/how_to/document-context-aware-QA", "Retrieve from vector stores directly": "https://python.langchain.com/docs/use_cases/question_answering/how_to/vector_db_text_generation", "Retrieve as you generate with FLARE": "https://python.langchain.com/docs/use_cases/question_answering/how_to/flare", "Improve document indexing with HyDE": "https://python.langchain.com/docs/use_cases/question_answering/how_to/hyde", "QA using Activeloop's DeepLake": "https://python.langchain.com/docs/use_cases/question_answering/integrations/semantic-search-over-chat", "Graph QA": "https://python.langchain.com/docs/modules/chains/additional/graph_qa", "Tree of Thought (ToT) example": "https://python.langchain.com/docs/use_cases/graph/tot", "SalesGPT - Your Context-Aware AI Sales Assistant With Knowledge Base": "https://python.langchain.com/docs/use_cases/agents/sales_agent_with_context", "Bash chain": "https://python.langchain.com/docs/modules/chains/additional/llm_bash", "LLM Symbolic Math ": "https://python.langchain.com/docs/modules/chains/additional/llm_symbolic_math", "Summarization checker chain": "https://python.langchain.com/docs/modules/chains/additional/llm_summarization_checker", "Self-checking chain": "https://python.langchain.com/docs/modules/chains/additional/llm_checker", "Agent Debates with Tools": "https://python.langchain.com/docs/use_cases/agent_simulations/two_agent_debate_tools", "Weaviate self-querying ": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/weaviate_self_query", "Chroma self-querying ": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/chroma_self_query", "DeepLake self-querying ": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/deeplake_self_query", "Self-querying with Pinecone": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/pinecone", "Self-querying with MyScale": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/myscale_self_query", "Qdrant self-querying ": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/qdrant_self_query", "Lost in the middle: The problem with long contexts": "https://python.langchain.com/docs/modules/data_connection/document_transformers/post_retrieval/long_context_reorder", "How to add memory to a Multi-Input Chain": "https://python.langchain.com/docs/modules/memory/adding_memory_chain_multiple_inputs", "Conversation Knowledge Graph Memory": "https://python.langchain.com/docs/modules/memory/types/kg", "ConversationTokenBufferMemory": "https://python.langchain.com/docs/modules/memory/types/token_buffer", "How to add Memory to an LLMChain": "https://python.langchain.com/docs/modules/memory/adding_memory", "How to use multiple memory classes in the same chain": "https://python.langchain.com/docs/modules/memory/multiple_memory", "How to customize conversational memory": "https://python.langchain.com/docs/modules/memory/conversational_customization", "ConversationSummaryBufferMemory": "https://python.langchain.com/docs/modules/memory/types/summary_buffer", "Multiple callback handlers": "https://python.langchain.com/docs/modules/callbacks/multiple_callbacks", "Token counting": "https://python.langchain.com/docs/modules/callbacks/token_counting", "Logging to file": "https://python.langchain.com/docs/modules/callbacks/filecallbackhandler", "Multi-Input Tools": "https://python.langchain.com/docs/modules/agents/tools/multi_input_tool", "Defining Custom Tools": "https://python.langchain.com/docs/modules/agents/tools/custom_tools", "Tool Input Schema": "https://python.langchain.com/docs/modules/agents/tools/tool_input_validation", "Human-in-the-loop Tool Validation": "https://python.langchain.com/docs/modules/agents/tools/human_approval", "Combine agents and vector stores": "https://python.langchain.com/docs/modules/agents/how_to/agent_vectorstore", "Access intermediate steps": "https://python.langchain.com/docs/modules/agents/how_to/intermediate_steps", "Timeouts for agents": "https://python.langchain.com/docs/modules/agents/how_to/max_time_limit", "Streaming final agent output": "https://python.langchain.com/docs/modules/agents/how_to/streaming_stdout_final_only", "Cap the max number of iterations": "https://python.langchain.com/docs/modules/agents/how_to/max_iterations", "Async API": "https://python.langchain.com/docs/modules/chains/how_to/async_chain", "Tracking token usage": "https://python.langchain.com/docs/modules/model_io/models/llms/token_usage_tracking", "Serialization": "https://python.langchain.com/docs/modules/model_io/models/llms/llm_serialization", "Retry parser": "https://python.langchain.com/docs/modules/model_io/output_parsers/retry", "Datetime parser": "https://python.langchain.com/docs/modules/model_io/output_parsers/datetime", "Pydantic (JSON) parser": "https://python.langchain.com/docs/modules/model_io/output_parsers/pydantic", "Router": "https://python.langchain.com/docs/modules/chains/foundational/router", "Transformation": "https://python.langchain.com/docs/modules/chains/foundational/transformation", "Vector store-augmented text generation": "https://python.langchain.com/docs/modules/chains/additional/vector_db_text_generation", "FLARE": "https://python.langchain.com/docs/modules/chains/additional/flare", "Hypothetical Document Embeddings": "https://python.langchain.com/docs/modules/chains/additional/hyde"}, "ContextualCompressionRetriever": {"Cohere Reranker": "https://python.langchain.com/docs/integrations/retrievers/cohere-reranker", "LOTR (Merger Retriever)": "https://python.langchain.com/docs/integrations/retrievers/merger_retriever"}, "CohereRerank": {"Cohere Reranker": "https://python.langchain.com/docs/integrations/retrievers/cohere-reranker", "Cohere": "https://python.langchain.com/docs/integrations/providers/cohere"}, "RetrievalQA": {"Cohere Reranker": "https://python.langchain.com/docs/integrations/retrievers/cohere-reranker", "Document Comparison": "https://python.langchain.com/docs/integrations/toolkits/document_comparison_toolkit", "Activeloop's Deep Lake": "https://python.langchain.com/docs/integrations/vectorstores/deeplake", "StarRocks": "https://python.langchain.com/docs/integrations/vectorstores/starrocks", "Loading documents from a YouTube url": "https://python.langchain.com/docs/integrations/document_loaders/youtube_audio", "Docugami": "https://python.langchain.com/docs/integrations/document_loaders/docugami", "Question Answering Benchmarking: State of the Union Address": "https://python.langchain.com/docs/guides/evaluation/examples/qa_benchmarking_sota", "Question Answering Benchmarking: Paul Graham Essay": "https://python.langchain.com/docs/guides/evaluation/examples/qa_benchmarking_pg", "Data Augmented Question Answering": "https://python.langchain.com/docs/guides/evaluation/examples/data_augmented_question_answering", "Agent VectorDB Question Answering Benchmarking": "https://python.langchain.com/docs/guides/evaluation/examples/agent_vectordb_sota_pg", "Context aware text splitting and QA / Chat": "https://python.langchain.com/docs/use_cases/question_answering/document-context-aware-QA", "QA over Documents": "https://python.langchain.com/docs/use_cases/question_answering/index", "Running LLMs locally": "https://python.langchain.com/docs/use_cases/question_answering/local_retrieval_qa", "Question answering over a group chat messages using Activeloop's DeepLake": "https://python.langchain.com/docs/use_cases/question_answering/semantic-search-over-chat", "Perform context-aware text splitting": "https://python.langchain.com/docs/use_cases/question_answering/how_to/document-context-aware-QA", "Use local LLMs": "https://python.langchain.com/docs/use_cases/question_answering/how_to/local_retrieval_qa", "Structure answers with OpenAI functions": "https://python.langchain.com/docs/use_cases/question_answering/integrations/openai_functions_retrieval_qa", "QA using Activeloop's DeepLake": "https://python.langchain.com/docs/use_cases/question_answering/integrations/semantic-search-over-chat", "SalesGPT - Your Context-Aware AI Sales Assistant With Knowledge Base": "https://python.langchain.com/docs/use_cases/agents/sales_agent_with_context", "Combine agents and vector stores": "https://python.langchain.com/docs/modules/agents/how_to/agent_vectorstore", "Retrieval QA using OpenAI functions": "https://python.langchain.com/docs/modules/chains/additional/openai_functions_retrieval_qa"}, "KNNRetriever": {"kNN": "https://python.langchain.com/docs/integrations/retrievers/knn"}, "WikipediaRetriever": {"Wikipedia": "https://python.langchain.com/docs/integrations/providers/wikipedia"}, "ChatOpenAI": {"Wikipedia": "https://python.langchain.com/docs/integrations/retrievers/wikipedia", "Arxiv": "https://python.langchain.com/docs/integrations/retrievers/arxiv", "ChatGPT Plugins": "https://python.langchain.com/docs/integrations/tools/chatgpt_plugins", "Human as a tool": "https://python.langchain.com/docs/integrations/tools/human_tools", "ArXiv API Tool": "https://python.langchain.com/docs/integrations/tools/arxiv", "Metaphor Search": "https://python.langchain.com/docs/integrations/tools/metaphor_search", "Shell Tool": "https://python.langchain.com/docs/integrations/tools/bash", "Dynamodb Chat Message History": "https://python.langchain.com/docs/integrations/memory/dynamodb_chat_message_history", "OpenAI": "https://python.langchain.com/docs/integrations/chat/openai", "Context": "https://python.langchain.com/docs/integrations/callbacks/context", "PromptLayer": "https://python.langchain.com/docs/integrations/callbacks/promptlayer", "CnosDB": "https://python.langchain.com/docs/integrations/providers/cnosdb", "Flyte": "https://python.langchain.com/docs/integrations/providers/flyte", "Arthur": "https://python.langchain.com/docs/integrations/providers/arthur_tracking", "CSV Agent": "https://python.langchain.com/docs/integrations/toolkits/csv", "Document Comparison": "https://python.langchain.com/docs/integrations/toolkits/document_comparison_toolkit", "Python Agent": "https://python.langchain.com/docs/integrations/toolkits/python", "PowerBI Dataset Agent": "https://python.langchain.com/docs/integrations/toolkits/powerbi", "SQL Database Agent": "https://python.langchain.com/docs/integrations/toolkits/sql_database", "Github Toolkit": "https://python.langchain.com/docs/integrations/toolkits/github", "Spark SQL Agent": "https://python.langchain.com/docs/integrations/toolkits/spark_sql", "Pandas Dataframe Agent": "https://python.langchain.com/docs/integrations/toolkits/pandas", "Multion Toolkit": "https://python.langchain.com/docs/integrations/toolkits/multion", "OpenAI Functions Metadata Tagger": "https://python.langchain.com/docs/integrations/document_transformers/openai_metadata_tagger", "Loading documents from a YouTube url": "https://python.langchain.com/docs/integrations/document_loaders/youtube_audio", "Figma": "https://python.langchain.com/docs/integrations/document_loaders/figma", "Debugging": "https://python.langchain.com/docs/guides/debugging", "LangSmith Walkthrough": "https://python.langchain.com/docs/guides/langsmith/walkthrough", "QA Generation": "https://python.langchain.com/docs/guides/evaluation/examples/qa_generation", "Comparing Chain Outputs": "https://python.langchain.com/docs/guides/evaluation/examples/comparisons", "Agent Trajectory": "https://python.langchain.com/docs/guides/evaluation/trajectory/trajectory_eval", "Custom Trajectory Evaluator": "https://python.langchain.com/docs/guides/evaluation/trajectory/custom", "QA Correctness": "https://python.langchain.com/docs/guides/evaluation/string/qa", "Tagging": "https://python.langchain.com/docs/modules/chains/additional/tagging", "AutoGPT": "https://python.langchain.com/docs/use_cases/autonomous_agents/autogpt", "!pip install bs4": "https://python.langchain.com/docs/use_cases/autonomous_agents/marathon_times", "Context aware text splitting and QA / Chat": "https://python.langchain.com/docs/use_cases/question_answering/document-context-aware-QA", "QA over Documents": "https://python.langchain.com/docs/use_cases/question_answering/index", "Question answering over a group chat messages using Activeloop's DeepLake": "https://python.langchain.com/docs/use_cases/question_answering/semantic-search-over-chat", "Perform context-aware text splitting": "https://python.langchain.com/docs/use_cases/question_answering/how_to/document-context-aware-QA", "Cite sources": "https://python.langchain.com/docs/use_cases/question_answering/how_to/qa_citations", "Retrieve as you generate with FLARE": "https://python.langchain.com/docs/use_cases/question_answering/how_to/flare", "Structure answers with OpenAI functions": "https://python.langchain.com/docs/use_cases/question_answering/integrations/openai_functions_retrieval_qa", "QA using Activeloop's DeepLake": "https://python.langchain.com/docs/use_cases/question_answering/integrations/semantic-search-over-chat", "Elasticsearch database": "https://python.langchain.com/docs/modules/chains/additional/elasticsearch_database", "SQL Query": "https://python.langchain.com/docs/use_cases/tabular/sql_query", "Neptune Open Cypher QA Chain": "https://python.langchain.com/docs/modules/chains/additional/neptune_cypher_qa", "NebulaGraphQAChain": "https://python.langchain.com/docs/modules/chains/additional/graph_nebula_qa", "KuzuQAChain": "https://python.langchain.com/docs/modules/chains/additional/graph_kuzu_qa", "HugeGraph QA Chain": "https://python.langchain.com/docs/modules/chains/additional/graph_hugegraph_qa", "GraphSparqlQAChain": "https://python.langchain.com/docs/modules/chains/additional/graph_sparql_qa", "ArangoDB QA chain": "https://python.langchain.com/docs/modules/chains/additional/graph_arangodb_qa", "Graph DB QA chain": "https://python.langchain.com/docs/modules/chains/additional/graph_cypher_qa", "Analysis of Twitter the-algorithm source code with LangChain, GPT4 and Activeloop's Deep Lake": "https://python.langchain.com/docs/use_cases/code/twitter-the-algorithm-analysis-deeplake", "Use LangChain, GPT and Activeloop's Deep Lake to work with code base": "https://python.langchain.com/docs/use_cases/code/code-analysis-deeplake", "Wikibase Agent": "https://python.langchain.com/docs/use_cases/agents/wikibase_agent", "SalesGPT - Your Context-Aware AI Sales Assistant With Knowledge Base": "https://python.langchain.com/docs/use_cases/agents/sales_agent_with_context", "CAMEL Role-Playing Autonomous Cooperative Agents": "https://python.langchain.com/docs/use_cases/agent_simulations/camel_role_playing", "Extraction with OpenAI Functions": "https://python.langchain.com/docs/use_cases/extraction/openai_extraction", "Multi-Agent Simulated Environment: Petting Zoo": "https://python.langchain.com/docs/use_cases/agent_simulations/petting_zoo", "Multi-agent decentralized speaker selection": "https://python.langchain.com/docs/use_cases/agent_simulations/multiagent_bidding", "Multi-agent authoritarian speaker selection": "https://python.langchain.com/docs/use_cases/agent_simulations/multiagent_authoritarian", "Generative Agents in LangChain": "https://python.langchain.com/docs/use_cases/agent_simulations/characters", "Two-Player Dungeons & Dragons": "https://python.langchain.com/docs/use_cases/agent_simulations/two_player_dnd", "Multi-Player Dungeons & Dragons": "https://python.langchain.com/docs/use_cases/agent_simulations/multi_player_dnd", "Simulated Environment: Gymnasium": "https://python.langchain.com/docs/use_cases/agent_simulations/gymnasium", "Agent Debates with Tools": "https://python.langchain.com/docs/use_cases/agent_simulations/two_agent_debate_tools", "MultiQueryRetriever": "https://python.langchain.com/docs/modules/data_connection/retrievers/MultiQueryRetriever", "WebResearchRetriever": "https://python.langchain.com/docs/modules/data_connection/retrievers/web_research", "How to add Memory to an LLMChain": "https://python.langchain.com/docs/modules/memory/adding_memory", "Custom callback handlers": "https://python.langchain.com/docs/modules/callbacks/custom_callbacks", "Async callbacks": "https://python.langchain.com/docs/modules/callbacks/async_callbacks", "Defining Custom Tools": "https://python.langchain.com/docs/modules/agents/tools/custom_tools", "Tools as OpenAI Functions": "https://python.langchain.com/docs/modules/agents/tools/tools_as_openai_functions", "OpenAI Multi Functions Agent": "https://python.langchain.com/docs/modules/agents/agent_types/openai_multi_functions_agent", "Handle parsing errors": "https://python.langchain.com/docs/modules/agents/how_to/handle_parsing_errors", "Running Agent as an Iterator": "https://python.langchain.com/docs/modules/agents/how_to/agent_iter", "Add Memory to OpenAI Functions Agent": "https://python.langchain.com/docs/modules/agents/how_to/add_memory_openai_functions", "Custom functions with OpenAI Functions Agent": "https://python.langchain.com/docs/modules/agents/how_to/custom-functions-with-openai-functions-agent", "Use ToolKits with OpenAI Functions": "https://python.langchain.com/docs/modules/agents/how_to/use_toolkits_with_openai_functions", "Retry parser": "https://python.langchain.com/docs/modules/model_io/output_parsers/retry", "Pydantic (JSON) parser": "https://python.langchain.com/docs/modules/model_io/output_parsers/pydantic", "Prompt Pipelining": "https://python.langchain.com/docs/modules/model_io/prompts/prompt_templates/prompts_pipelining", "Connecting to a Feature Store": "https://python.langchain.com/docs/modules/model_io/prompts/prompt_templates/connecting_to_a_feature_store", "Custom chain": "https://python.langchain.com/docs/modules/chains/how_to/custom_chain", "Using OpenAI functions": "https://python.langchain.com/docs/modules/chains/popular/openai_functions", "Extraction": "https://python.langchain.com/docs/modules/chains/additional/extraction", "Retrieval QA using OpenAI functions": "https://python.langchain.com/docs/modules/chains/additional/openai_functions_retrieval_qa", "Question-Answering Citations": "https://python.langchain.com/docs/modules/chains/additional/qa_citations", "FLARE": "https://python.langchain.com/docs/modules/chains/additional/flare"}, "ConversationalRetrievalChain": {"Wikipedia": "https://python.langchain.com/docs/integrations/retrievers/wikipedia", "Arxiv": "https://python.langchain.com/docs/integrations/retrievers/arxiv", "Chat Over Documents with Vectara": "https://python.langchain.com/docs/integrations/providers/vectara/vectara_chat", "QA over Documents": "https://python.langchain.com/docs/use_cases/question_answering/index", "Question answering over a group chat messages using Activeloop's DeepLake": "https://python.langchain.com/docs/use_cases/question_answering/semantic-search-over-chat", "Structure answers with OpenAI functions": "https://python.langchain.com/docs/use_cases/question_answering/integrations/openai_functions_retrieval_qa", "QA using Activeloop's DeepLake": "https://python.langchain.com/docs/use_cases/question_answering/integrations/semantic-search-over-chat", "Analysis of Twitter the-algorithm source code with LangChain, GPT4 and Activeloop's Deep Lake": "https://python.langchain.com/docs/use_cases/code/twitter-the-algorithm-analysis-deeplake", "Use LangChain, GPT and Activeloop's Deep Lake to work with code base": "https://python.langchain.com/docs/use_cases/code/code-analysis-deeplake", "Retrieval QA using OpenAI functions": "https://python.langchain.com/docs/modules/chains/additional/openai_functions_retrieval_qa"}, "MetalRetriever": {"Metal": "https://python.langchain.com/docs/integrations/providers/metal"}, "CSVLoader": {"ChatGPT Plugin": "https://python.langchain.com/docs/integrations/retrievers/chatgpt-plugin", "CSV": "https://python.langchain.com/docs/integrations/document_loaders/csv"}, "Document": {"ChatGPT Plugin": "https://python.langchain.com/docs/integrations/retrievers/chatgpt-plugin", "Weaviate Hybrid Search": "https://python.langchain.com/docs/integrations/retrievers/weaviate-hybrid", "BM25": "https://python.langchain.com/docs/integrations/retrievers/bm25", "TF-IDF": "https://python.langchain.com/docs/integrations/retrievers/tf_idf", "Apify": "https://python.langchain.com/docs/integrations/tools/apify", "Vectara Text Generation": "https://python.langchain.com/docs/integrations/providers/vectara/vectara_text_generation", "PGVector": "https://python.langchain.com/docs/integrations/vectorstores/pgvector", "Annoy": "https://python.langchain.com/docs/integrations/vectorstores/annoy", "pg_embedding": "https://python.langchain.com/docs/integrations/vectorstores/pgembedding", "FAISS": "https://python.langchain.com/docs/integrations/vectorstores/faiss", "OpenAI Functions Metadata Tagger": "https://python.langchain.com/docs/integrations/document_transformers/openai_metadata_tagger", "Doctran Extract Properties": "https://python.langchain.com/docs/integrations/document_transformers/doctran_extract_properties", "Doctran Interrogate Documents": "https://python.langchain.com/docs/integrations/document_transformers/doctran_interrogate_document", "Doctran Translate Documents": "https://python.langchain.com/docs/integrations/document_transformers/doctran_translate_document", "Copy Paste": "https://python.langchain.com/docs/integrations/document_loaders/copypaste", "Apify Dataset": "https://python.langchain.com/docs/integrations/document_loaders/apify_dataset", "Docugami": "https://python.langchain.com/docs/integrations/document_loaders/docugami", "SageMakerEndpoint": "https://python.langchain.com/docs/integrations/llms/sagemaker", "Caching integrations": "https://python.langchain.com/docs/integrations/llms/llm_caching", "!pip install bs4": "https://python.langchain.com/docs/use_cases/autonomous_agents/marathon_times", "Retrieve from vector stores directly": "https://python.langchain.com/docs/use_cases/question_answering/how_to/vector_db_text_generation", "Retrieve as you generate with FLARE": "https://python.langchain.com/docs/use_cases/question_answering/how_to/flare", "Plug-and-Plai": "https://python.langchain.com/docs/use_cases/agents/custom_agent_with_plugin_retrieval_using_plugnplai", "Custom Agent with PlugIn Retrieval": "https://python.langchain.com/docs/use_cases/agents/custom_agent_with_plugin_retrieval", "Weaviate self-querying ": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/weaviate_self_query", "Chroma self-querying ": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/chroma_self_query", "DeepLake self-querying ": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/deeplake_self_query", "Self-querying with Pinecone": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/pinecone", "Self-querying with MyScale": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/myscale_self_query", "Qdrant self-querying ": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/qdrant_self_query", "How to add memory to a Multi-Input Chain": "https://python.langchain.com/docs/modules/memory/adding_memory_chain_multiple_inputs", "Custom agent with tool retrieval": "https://python.langchain.com/docs/modules/agents/how_to/custom_agent_with_tool_retrieval", "Vector store-augmented text generation": "https://python.langchain.com/docs/modules/chains/additional/vector_db_text_generation", "FLARE": "https://python.langchain.com/docs/modules/chains/additional/flare"}, "ChatGPTPluginRetriever": {"ChatGPT Plugin": "https://python.langchain.com/docs/integrations/retrievers/chatgpt-plugin", "OpenAI": "https://python.langchain.com/docs/integrations/providers/openai"}, "GoogleCloudEnterpriseSearchRetriever": {"Google Cloud Enterprise Search": "https://python.langchain.com/docs/integrations/retrievers/google_cloud_enterprise_search"}, "DocArrayRetriever": {"DocArray Retriever": "https://python.langchain.com/docs/integrations/retrievers/docarray_retriever"}, "SVMRetriever": {"SVM": "https://python.langchain.com/docs/integrations/retrievers/svm", "QA over Documents": "https://python.langchain.com/docs/use_cases/question_answering/index"}, "PineconeHybridSearchRetriever": {"Pinecone Hybrid Search": "https://python.langchain.com/docs/integrations/retrievers/pinecone_hybrid_search"}, "PubMedRetriever": {"PubMed": "https://python.langchain.com/docs/integrations/retrievers/pubmed"}, "WeaviateHybridSearchRetriever": {"Weaviate Hybrid Search": "https://python.langchain.com/docs/integrations/retrievers/weaviate-hybrid"}, "ArxivRetriever": {"Arxiv": "https://python.langchain.com/docs/integrations/providers/arxiv"}, "BM25Retriever": {"BM25": "https://python.langchain.com/docs/integrations/retrievers/bm25", "Ensemble Retriever": "https://python.langchain.com/docs/modules/data_connection/retrievers/ensemble"}, "AzureCognitiveSearchRetriever": {"Azure Cognitive Search": "https://python.langchain.com/docs/integrations/providers/azure_cognitive_search_"}, "ChaindeskRetriever": {"Chaindesk": "https://python.langchain.com/docs/integrations/providers/chaindesk"}, "MergerRetriever": {"LOTR (Merger Retriever)": "https://python.langchain.com/docs/integrations/retrievers/merger_retriever"}, "Chroma": {"LOTR (Merger Retriever)": "https://python.langchain.com/docs/integrations/retrievers/merger_retriever", "Chroma": "https://python.langchain.com/docs/integrations/vectorstores/chroma", "Vectorstore Agent": "https://python.langchain.com/docs/integrations/toolkits/vectorstore", "StarRocks": "https://python.langchain.com/docs/integrations/vectorstores/starrocks", "Psychic": "https://python.langchain.com/docs/integrations/document_loaders/psychic", "Docugami": "https://python.langchain.com/docs/integrations/document_loaders/docugami", "Data Augmented Question Answering": "https://python.langchain.com/docs/guides/evaluation/examples/data_augmented_question_answering", "Context aware text splitting and QA / Chat": "https://python.langchain.com/docs/use_cases/question_answering/document-context-aware-QA", "QA over Documents": "https://python.langchain.com/docs/use_cases/question_answering/index", "Running LLMs locally": "https://python.langchain.com/docs/use_cases/question_answering/local_retrieval_qa", "Perform context-aware text splitting": "https://python.langchain.com/docs/use_cases/question_answering/how_to/document-context-aware-QA", "Use local LLMs": "https://python.langchain.com/docs/use_cases/question_answering/how_to/local_retrieval_qa", "Retrieve from vector stores directly": "https://python.langchain.com/docs/use_cases/question_answering/how_to/vector_db_text_generation", "Improve document indexing with HyDE": "https://python.langchain.com/docs/use_cases/question_answering/how_to/hyde", "Structure answers with OpenAI functions": "https://python.langchain.com/docs/use_cases/question_answering/integrations/openai_functions_retrieval_qa", "SalesGPT - Your Context-Aware AI Sales Assistant With Knowledge Base": "https://python.langchain.com/docs/use_cases/agents/sales_agent_with_context", "MultiQueryRetriever": "https://python.langchain.com/docs/modules/data_connection/retrievers/MultiQueryRetriever", "WebResearchRetriever": "https://python.langchain.com/docs/modules/data_connection/retrievers/web_research", "Chroma self-querying ": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/chroma_self_query", "Lost in the middle: The problem with long contexts": "https://python.langchain.com/docs/modules/data_connection/document_transformers/post_retrieval/long_context_reorder", "How to add memory to a Multi-Input Chain": "https://python.langchain.com/docs/modules/memory/adding_memory_chain_multiple_inputs", "Combine agents and vector stores": "https://python.langchain.com/docs/modules/agents/how_to/agent_vectorstore", "Few shot examples for chat models": "https://python.langchain.com/docs/modules/model_io/prompts/prompt_templates/few_shot_examples_chat", "Router": "https://python.langchain.com/docs/modules/chains/foundational/router", "Loading from LangChainHub": "https://python.langchain.com/docs/modules/chains/how_to/from_hub", "Retrieval QA using OpenAI functions": "https://python.langchain.com/docs/modules/chains/additional/openai_functions_retrieval_qa", "Vector store-augmented text generation": "https://python.langchain.com/docs/modules/chains/additional/vector_db_text_generation", "Hypothetical Document Embeddings": "https://python.langchain.com/docs/modules/chains/additional/hyde"}, "EmbeddingsRedundantFilter": {"LOTR (Merger Retriever)": "https://python.langchain.com/docs/integrations/retrievers/merger_retriever"}, "EmbeddingsClusteringFilter": {"LOTR (Merger Retriever)": "https://python.langchain.com/docs/integrations/retrievers/merger_retriever"}, "DocumentCompressorPipeline": {"LOTR (Merger Retriever)": "https://python.langchain.com/docs/integrations/retrievers/merger_retriever"}, "LongContextReorder": {"LOTR (Merger Retriever)": "https://python.langchain.com/docs/integrations/retrievers/merger_retriever", "Lost in the middle: The problem with long contexts": "https://python.langchain.com/docs/modules/data_connection/document_transformers/post_retrieval/long_context_reorder"}, "TFIDFRetriever": {"TF-IDF": "https://python.langchain.com/docs/integrations/retrievers/tf_idf"}, "load_tools": {"ChatGPT Plugins": "https://python.langchain.com/docs/integrations/tools/chatgpt_plugins", "Human as a tool": "https://python.langchain.com/docs/integrations/tools/human_tools", "AWS Lambda API": "https://python.langchain.com/docs/integrations/tools/awslambda", "Requests": "https://python.langchain.com/docs/integrations/tools/requests", "OpenWeatherMap API": "https://python.langchain.com/docs/integrations/tools/openweathermap", "Search Tools": "https://python.langchain.com/docs/integrations/tools/search_tools", "ArXiv API Tool": "https://python.langchain.com/docs/integrations/tools/arxiv", "GraphQL tool": "https://python.langchain.com/docs/integrations/tools/graphql", "SceneXplain": "https://python.langchain.com/docs/integrations/tools/sceneXplain", "Argilla": "https://python.langchain.com/docs/integrations/callbacks/argilla", "Streamlit": "https://python.langchain.com/docs/integrations/callbacks/streamlit", "SerpAPI": "https://python.langchain.com/docs/integrations/providers/serpapi", "WandB Tracing": "https://python.langchain.com/docs/integrations/providers/agent_with_wandb_tracing", "Comet": "https://python.langchain.com/docs/integrations/providers/comet_tracking", "Aim": "https://python.langchain.com/docs/integrations/providers/aim_tracking", "Golden": "https://python.langchain.com/docs/integrations/providers/golden", "Weights & Biases": "https://python.langchain.com/docs/integrations/providers/wandb_tracking", "Wolfram Alpha": "https://python.langchain.com/docs/integrations/providers/wolfram_alpha", "MLflow": "https://python.langchain.com/docs/integrations/providers/mlflow_tracking", "DataForSEO": "https://python.langchain.com/docs/integrations/providers/dataforseo", "SearxNG Search API": "https://python.langchain.com/docs/integrations/providers/searx", "Google Serper": "https://python.langchain.com/docs/integrations/providers/google_serper", "OpenWeatherMap": "https://python.langchain.com/docs/integrations/providers/openweathermap", "Flyte": "https://python.langchain.com/docs/integrations/providers/flyte", "ClearML": "https://python.langchain.com/docs/integrations/providers/clearml_tracking", "Google Search": "https://python.langchain.com/docs/integrations/providers/google_search", "Log, Trace, and Monitor Langchain LLM Calls": "https://python.langchain.com/docs/integrations/providers/portkey/logging_tracing_portkey", "Portkey": "https://python.langchain.com/docs/integrations/providers/portkey/index", "Amazon API Gateway": "https://python.langchain.com/docs/integrations/llms/amazon_api_gateway_example", "Debugging": "https://python.langchain.com/docs/guides/debugging", "LangSmith Walkthrough": "https://python.langchain.com/docs/guides/langsmith/walkthrough", "Agent Debates with Tools": "https://python.langchain.com/docs/use_cases/agent_simulations/two_agent_debate_tools", "Multiple callback handlers": "https://python.langchain.com/docs/modules/callbacks/multiple_callbacks", "Defining Custom Tools": "https://python.langchain.com/docs/modules/agents/tools/custom_tools", "Human-in-the-loop Tool Validation": "https://python.langchain.com/docs/modules/agents/tools/human_approval", "Access intermediate steps": "https://python.langchain.com/docs/modules/agents/how_to/intermediate_steps", "Timeouts for agents": "https://python.langchain.com/docs/modules/agents/how_to/max_time_limit", "Streaming final agent output": "https://python.langchain.com/docs/modules/agents/how_to/streaming_stdout_final_only", "Cap the max number of iterations": "https://python.langchain.com/docs/modules/agents/how_to/max_iterations", "Async API": "https://python.langchain.com/docs/modules/agents/how_to/async_agent", "Human input Chat Model": "https://python.langchain.com/docs/modules/model_io/models/chat/human_input_chat_model", "Fake LLM": "https://python.langchain.com/docs/modules/model_io/models/llms/fake_llm", "Tracking token usage": "https://python.langchain.com/docs/modules/model_io/models/llms/token_usage_tracking", "Human input LLM": "https://python.langchain.com/docs/modules/model_io/models/llms/human_input_llm"}, "initialize_agent": {"ChatGPT Plugins": "https://python.langchain.com/docs/integrations/tools/chatgpt_plugins", "Google Serper API": "https://python.langchain.com/docs/integrations/tools/google_serper", "Human as a tool": "https://python.langchain.com/docs/integrations/tools/human_tools", "OpenWeatherMap API": "https://python.langchain.com/docs/integrations/tools/openweathermap", "Search Tools": "https://python.langchain.com/docs/integrations/tools/search_tools", "Zapier Natural Language Actions API": "https://python.langchain.com/docs/integrations/tools/zapier", "ArXiv API Tool": "https://python.langchain.com/docs/integrations/tools/arxiv", "Metaphor Search": "https://python.langchain.com/docs/integrations/tools/metaphor_search", "GraphQL tool": "https://python.langchain.com/docs/integrations/tools/graphql", "Gradio Tools": "https://python.langchain.com/docs/integrations/tools/gradio_tools", "SceneXplain": "https://python.langchain.com/docs/integrations/tools/sceneXplain", "Shell Tool": "https://python.langchain.com/docs/integrations/tools/bash", "Zep Memory": "https://python.langchain.com/docs/integrations/memory/zep_memory", "Dynamodb Chat Message History": "https://python.langchain.com/docs/integrations/memory/dynamodb_chat_message_history", "Argilla": "https://python.langchain.com/docs/integrations/callbacks/argilla", "Streamlit": "https://python.langchain.com/docs/integrations/callbacks/streamlit", "WandB Tracing": "https://python.langchain.com/docs/integrations/providers/agent_with_wandb_tracing", "Comet": "https://python.langchain.com/docs/integrations/providers/comet_tracking", "Aim": "https://python.langchain.com/docs/integrations/providers/aim_tracking", "Weights & Biases": "https://python.langchain.com/docs/integrations/providers/wandb_tracking", "MLflow": "https://python.langchain.com/docs/integrations/providers/mlflow_tracking", "Google Serper": "https://python.langchain.com/docs/integrations/providers/google_serper", "Flyte": "https://python.langchain.com/docs/integrations/providers/flyte", "ClearML": "https://python.langchain.com/docs/integrations/providers/clearml_tracking", "Log, Trace, and Monitor Langchain LLM Calls": "https://python.langchain.com/docs/integrations/providers/portkey/logging_tracing_portkey", "Portkey": "https://python.langchain.com/docs/integrations/providers/portkey/index", "Jira": "https://python.langchain.com/docs/integrations/toolkits/jira", "Document Comparison": "https://python.langchain.com/docs/integrations/toolkits/document_comparison_toolkit", "Azure Cognitive Services Toolkit": "https://python.langchain.com/docs/integrations/toolkits/azure_cognitive_services", "Natural Language APIs": "https://python.langchain.com/docs/integrations/toolkits/openapi_nla", "Gmail Toolkit": "https://python.langchain.com/docs/integrations/toolkits/gmail", "Github Toolkit": "https://python.langchain.com/docs/integrations/toolkits/github", "PlayWright Browser Toolkit": "https://python.langchain.com/docs/integrations/toolkits/playwright", "Office365 Toolkit": "https://python.langchain.com/docs/integrations/toolkits/office365", "Amadeus Toolkit": "https://python.langchain.com/docs/integrations/toolkits/amadeus", "Amazon API Gateway": "https://python.langchain.com/docs/integrations/llms/amazon_api_gateway_example", "Debugging": "https://python.langchain.com/docs/guides/debugging", "LangSmith Walkthrough": "https://python.langchain.com/docs/guides/langsmith/walkthrough", "Comparing Chain Outputs": "https://python.langchain.com/docs/guides/evaluation/examples/comparisons", "Agent VectorDB Question Answering Benchmarking": "https://python.langchain.com/docs/guides/evaluation/examples/agent_vectordb_sota_pg", "Agent Trajectory": "https://python.langchain.com/docs/guides/evaluation/trajectory/trajectory_eval", "Multi-modal outputs: Image & Text": "https://python.langchain.com/docs/use_cases/multi_modal/image_agent", "Agent Debates with Tools": "https://python.langchain.com/docs/use_cases/agent_simulations/two_agent_debate_tools", "Multiple callback handlers": "https://python.langchain.com/docs/modules/callbacks/multiple_callbacks", "Multi-Input Tools": "https://python.langchain.com/docs/modules/agents/tools/multi_input_tool", "Defining Custom Tools": "https://python.langchain.com/docs/modules/agents/tools/custom_tools", "Tool Input Schema": "https://python.langchain.com/docs/modules/agents/tools/tool_input_validation", "Human-in-the-loop Tool Validation": "https://python.langchain.com/docs/modules/agents/tools/human_approval", "Self ask with search": "https://python.langchain.com/docs/modules/agents/agent_types/self_ask_with_search", "ReAct document store": "https://python.langchain.com/docs/modules/agents/agent_types/react_docstore", "OpenAI Multi Functions Agent": "https://python.langchain.com/docs/modules/agents/agent_types/openai_multi_functions_agent", "Combine agents and vector stores": "https://python.langchain.com/docs/modules/agents/how_to/agent_vectorstore", "Access intermediate steps": "https://python.langchain.com/docs/modules/agents/how_to/intermediate_steps", "Handle parsing errors": "https://python.langchain.com/docs/modules/agents/how_to/handle_parsing_errors", "Running Agent as an Iterator": "https://python.langchain.com/docs/modules/agents/how_to/agent_iter", "Timeouts for agents": "https://python.langchain.com/docs/modules/agents/how_to/max_time_limit", "Streaming final agent output": "https://python.langchain.com/docs/modules/agents/how_to/streaming_stdout_final_only", "Add Memory to OpenAI Functions Agent": "https://python.langchain.com/docs/modules/agents/how_to/add_memory_openai_functions", "Cap the max number of iterations": "https://python.langchain.com/docs/modules/agents/how_to/max_iterations", "Custom functions with OpenAI Functions Agent": "https://python.langchain.com/docs/modules/agents/how_to/custom-functions-with-openai-functions-agent", "Async API": "https://python.langchain.com/docs/modules/agents/how_to/async_agent", "Use ToolKits with OpenAI Functions": "https://python.langchain.com/docs/modules/agents/how_to/use_toolkits_with_openai_functions", "Human input Chat Model": "https://python.langchain.com/docs/modules/model_io/models/chat/human_input_chat_model", "Fake LLM": "https://python.langchain.com/docs/modules/model_io/models/llms/fake_llm", "Tracking token usage": "https://python.langchain.com/docs/modules/model_io/models/llms/token_usage_tracking", "Human input LLM": "https://python.langchain.com/docs/modules/model_io/models/llms/human_input_llm"}, "AgentType": {"ChatGPT Plugins": "https://python.langchain.com/docs/integrations/tools/chatgpt_plugins", "Google Serper API": "https://python.langchain.com/docs/integrations/tools/google_serper", "Human as a tool": "https://python.langchain.com/docs/integrations/tools/human_tools", "AWS Lambda API": "https://python.langchain.com/docs/integrations/tools/awslambda", "OpenWeatherMap API": "https://python.langchain.com/docs/integrations/tools/openweathermap", "Search Tools": "https://python.langchain.com/docs/integrations/tools/search_tools", "Zapier Natural Language Actions API": "https://python.langchain.com/docs/integrations/tools/zapier", "ArXiv API Tool": "https://python.langchain.com/docs/integrations/tools/arxiv", "Metaphor Search": "https://python.langchain.com/docs/integrations/tools/metaphor_search", "GraphQL tool": "https://python.langchain.com/docs/integrations/tools/graphql", "Shell Tool": "https://python.langchain.com/docs/integrations/tools/bash", "Zep Memory": "https://python.langchain.com/docs/integrations/memory/zep_memory", "Dynamodb Chat Message History": "https://python.langchain.com/docs/integrations/memory/dynamodb_chat_message_history", "Argilla": "https://python.langchain.com/docs/integrations/callbacks/argilla", "Streamlit": "https://python.langchain.com/docs/integrations/callbacks/streamlit", "WandB Tracing": "https://python.langchain.com/docs/integrations/providers/agent_with_wandb_tracing", "Aim": "https://python.langchain.com/docs/integrations/providers/aim_tracking", "Weights & Biases": "https://python.langchain.com/docs/integrations/providers/wandb_tracking", "MLflow": "https://python.langchain.com/docs/integrations/providers/mlflow_tracking", "Google Serper": "https://python.langchain.com/docs/integrations/providers/google_serper", "Flyte": "https://python.langchain.com/docs/integrations/providers/flyte", "ClearML": "https://python.langchain.com/docs/integrations/providers/clearml_tracking", "Log, Trace, and Monitor Langchain LLM Calls": "https://python.langchain.com/docs/integrations/providers/portkey/logging_tracing_portkey", "Portkey": "https://python.langchain.com/docs/integrations/providers/portkey/index", "CSV Agent": "https://python.langchain.com/docs/integrations/toolkits/csv", "Jira": "https://python.langchain.com/docs/integrations/toolkits/jira", "Document Comparison": "https://python.langchain.com/docs/integrations/toolkits/document_comparison_toolkit", "Python Agent": "https://python.langchain.com/docs/integrations/toolkits/python", "Azure Cognitive Services Toolkit": "https://python.langchain.com/docs/integrations/toolkits/azure_cognitive_services", "SQL Database Agent": "https://python.langchain.com/docs/integrations/toolkits/sql_database", "Natural Language APIs": "https://python.langchain.com/docs/integrations/toolkits/openapi_nla", "Gmail Toolkit": "https://python.langchain.com/docs/integrations/toolkits/gmail", "Github Toolkit": "https://python.langchain.com/docs/integrations/toolkits/github", "PlayWright Browser Toolkit": "https://python.langchain.com/docs/integrations/toolkits/playwright", "Office365 Toolkit": "https://python.langchain.com/docs/integrations/toolkits/office365", "Pandas Dataframe Agent": "https://python.langchain.com/docs/integrations/toolkits/pandas", "Multion Toolkit": "https://python.langchain.com/docs/integrations/toolkits/multion", "Amadeus Toolkit": "https://python.langchain.com/docs/integrations/toolkits/amadeus", "Amazon API Gateway": "https://python.langchain.com/docs/integrations/llms/amazon_api_gateway_example", "Debugging": "https://python.langchain.com/docs/guides/debugging", "LangSmith Walkthrough": "https://python.langchain.com/docs/guides/langsmith/walkthrough", "Comparing Chain Outputs": "https://python.langchain.com/docs/guides/evaluation/examples/comparisons", "Agent VectorDB Question Answering Benchmarking": "https://python.langchain.com/docs/guides/evaluation/examples/agent_vectordb_sota_pg", "Agent Trajectory": "https://python.langchain.com/docs/guides/evaluation/trajectory/trajectory_eval", "Multi-modal outputs: Image & Text": "https://python.langchain.com/docs/use_cases/multi_modal/image_agent", "Agent Debates with Tools": "https://python.langchain.com/docs/use_cases/agent_simulations/two_agent_debate_tools", "Multiple callback handlers": "https://python.langchain.com/docs/modules/callbacks/multiple_callbacks", "Multi-Input Tools": "https://python.langchain.com/docs/modules/agents/tools/multi_input_tool", "Defining Custom Tools": "https://python.langchain.com/docs/modules/agents/tools/custom_tools", "Tool Input Schema": "https://python.langchain.com/docs/modules/agents/tools/tool_input_validation", "Human-in-the-loop Tool Validation": "https://python.langchain.com/docs/modules/agents/tools/human_approval", "Self ask with search": "https://python.langchain.com/docs/modules/agents/agent_types/self_ask_with_search", "ReAct document store": "https://python.langchain.com/docs/modules/agents/agent_types/react_docstore", "OpenAI Multi Functions Agent": "https://python.langchain.com/docs/modules/agents/agent_types/openai_multi_functions_agent", "Combine agents and vector stores": "https://python.langchain.com/docs/modules/agents/how_to/agent_vectorstore", "Access intermediate steps": "https://python.langchain.com/docs/modules/agents/how_to/intermediate_steps", "Handle parsing errors": "https://python.langchain.com/docs/modules/agents/how_to/handle_parsing_errors", "Running Agent as an Iterator": "https://python.langchain.com/docs/modules/agents/how_to/agent_iter", "Timeouts for agents": "https://python.langchain.com/docs/modules/agents/how_to/max_time_limit", "Streaming final agent output": "https://python.langchain.com/docs/modules/agents/how_to/streaming_stdout_final_only", "Add Memory to OpenAI Functions Agent": "https://python.langchain.com/docs/modules/agents/how_to/add_memory_openai_functions", "Cap the max number of iterations": "https://python.langchain.com/docs/modules/agents/how_to/max_iterations", "Custom functions with OpenAI Functions Agent": "https://python.langchain.com/docs/modules/agents/how_to/custom-functions-with-openai-functions-agent", "Async API": "https://python.langchain.com/docs/modules/agents/how_to/async_agent", "Use ToolKits with OpenAI Functions": "https://python.langchain.com/docs/modules/agents/how_to/use_toolkits_with_openai_functions", "Human input Chat Model": "https://python.langchain.com/docs/modules/model_io/models/chat/human_input_chat_model", "Fake LLM": "https://python.langchain.com/docs/modules/model_io/models/llms/fake_llm", "Tracking token usage": "https://python.langchain.com/docs/modules/model_io/models/llms/token_usage_tracking", "Human input LLM": "https://python.langchain.com/docs/modules/model_io/models/llms/human_input_llm"}, "AIPluginTool": {"ChatGPT Plugins": "https://python.langchain.com/docs/integrations/tools/chatgpt_plugins"}, "DataForSeoAPIWrapper": {"DataForSeo API Wrapper": "https://python.langchain.com/docs/integrations/tools/dataforseo", "DataForSEO": "https://python.langchain.com/docs/integrations/providers/dataforseo"}, "Tool": {"DataForSeo API Wrapper": "https://python.langchain.com/docs/integrations/tools/dataforseo", "Google Serper API": "https://python.langchain.com/docs/integrations/tools/google_serper", "SerpAPI": "https://python.langchain.com/docs/integrations/tools/serpapi", "Google Search": "https://python.langchain.com/docs/integrations/tools/google_search", "Python REPL": "https://python.langchain.com/docs/integrations/tools/foo_python", "Zep Memory": "https://python.langchain.com/docs/integrations/memory/zep_memory", "Dynamodb Chat Message History": "https://python.langchain.com/docs/integrations/memory/dynamodb_chat_message_history", "Google Serper": "https://python.langchain.com/docs/integrations/providers/google_serper", "Document Comparison": "https://python.langchain.com/docs/integrations/toolkits/document_comparison_toolkit", "Natural Language APIs": "https://python.langchain.com/docs/integrations/toolkits/openapi_nla", "Github Toolkit": "https://python.langchain.com/docs/integrations/toolkits/github", "Comparing Chain Outputs": "https://python.langchain.com/docs/guides/evaluation/examples/comparisons", "Agent VectorDB Question Answering Benchmarking": "https://python.langchain.com/docs/guides/evaluation/examples/agent_vectordb_sota_pg", "AutoGPT": "https://python.langchain.com/docs/use_cases/autonomous_agents/autogpt", "BabyAGI with Tools": "https://python.langchain.com/docs/use_cases/agents/baby_agi_with_agent", "Plug-and-Plai": "https://python.langchain.com/docs/use_cases/agents/custom_agent_with_plugin_retrieval_using_plugnplai", "Wikibase Agent": "https://python.langchain.com/docs/use_cases/agents/wikibase_agent", "SalesGPT - Your Context-Aware AI Sales Assistant With Knowledge Base": "https://python.langchain.com/docs/use_cases/agents/sales_agent_with_context", "Custom Agent with PlugIn Retrieval": "https://python.langchain.com/docs/use_cases/agents/custom_agent_with_plugin_retrieval", "Agent Debates with Tools": "https://python.langchain.com/docs/use_cases/agent_simulations/two_agent_debate_tools", "Adding Message Memory backed by a database to an Agent": "https://python.langchain.com/docs/modules/memory/agent_with_memory_in_db", "How to add Memory to an Agent": "https://python.langchain.com/docs/modules/memory/agent_with_memory", "Multi-Input Tools": "https://python.langchain.com/docs/modules/agents/tools/multi_input_tool", "Defining Custom Tools": "https://python.langchain.com/docs/modules/agents/tools/custom_tools", "Self ask with search": "https://python.langchain.com/docs/modules/agents/agent_types/self_ask_with_search", "ReAct document store": "https://python.langchain.com/docs/modules/agents/agent_types/react_docstore", "OpenAI Multi Functions Agent": "https://python.langchain.com/docs/modules/agents/agent_types/openai_multi_functions_agent", "Combine agents and vector stores": "https://python.langchain.com/docs/modules/agents/how_to/agent_vectorstore", "Custom MRKL agent": "https://python.langchain.com/docs/modules/agents/how_to/custom_mrkl_agent", "Handle parsing errors": "https://python.langchain.com/docs/modules/agents/how_to/handle_parsing_errors", "Shared memory across agents and tools": "https://python.langchain.com/docs/modules/agents/how_to/sharedmemory_for_tools", "Custom multi-action agent": "https://python.langchain.com/docs/modules/agents/how_to/custom_multi_action_agent", "Running Agent as an Iterator": "https://python.langchain.com/docs/modules/agents/how_to/agent_iter", "Timeouts for agents": "https://python.langchain.com/docs/modules/agents/how_to/max_time_limit", "Add Memory to OpenAI Functions Agent": "https://python.langchain.com/docs/modules/agents/how_to/add_memory_openai_functions", "Cap the max number of iterations": "https://python.langchain.com/docs/modules/agents/how_to/max_iterations", "Custom agent": "https://python.langchain.com/docs/modules/agents/how_to/custom_agent", "Use ToolKits with OpenAI Functions": "https://python.langchain.com/docs/modules/agents/how_to/use_toolkits_with_openai_functions", "Custom agent with tool retrieval": "https://python.langchain.com/docs/modules/agents/how_to/custom_agent_with_tool_retrieval"}, "SearxSearchWrapper": {"SearxNG Search API": "https://python.langchain.com/docs/integrations/providers/searx"}, "GoogleSerperAPIWrapper": {"Google Serper API": "https://python.langchain.com/docs/integrations/tools/google_serper", "Google Serper": "https://python.langchain.com/docs/integrations/providers/google_serper", "Retrieve as you generate with FLARE": "https://python.langchain.com/docs/use_cases/question_answering/how_to/flare", "FLARE": "https://python.langchain.com/docs/modules/chains/additional/flare"}, "GooglePlacesTool": {"Google Places": "https://python.langchain.com/docs/integrations/tools/google_places"}, "HumanInputRun": {"Human as a tool": "https://python.langchain.com/docs/integrations/tools/human_tools", "!pip install bs4": "https://python.langchain.com/docs/use_cases/autonomous_agents/marathon_times"}, "TwilioAPIWrapper": {"Twilio": "https://python.langchain.com/docs/integrations/tools/twilio"}, "IFTTTWebhook": {"IFTTT WebHooks": "https://python.langchain.com/docs/integrations/tools/ifttt"}, "WikipediaQueryRun": {"Wikipedia": "https://python.langchain.com/docs/integrations/tools/wikipedia"}, "WikipediaAPIWrapper": {"Wikipedia": "https://python.langchain.com/docs/integrations/tools/wikipedia", "Zep Memory": "https://python.langchain.com/docs/integrations/memory/zep_memory"}, "TextRequestsWrapper": {"Requests": "https://python.langchain.com/docs/integrations/tools/requests", "JSON Agent": "https://python.langchain.com/docs/integrations/toolkits/json", "OpenAPI agents": "https://python.langchain.com/docs/integrations/toolkits/openapi", "Tool Input Schema": "https://python.langchain.com/docs/modules/agents/tools/tool_input_validation"}, "OpenWeatherMapAPIWrapper": {"OpenWeatherMap API": "https://python.langchain.com/docs/integrations/tools/openweathermap", "OpenWeatherMap": "https://python.langchain.com/docs/integrations/providers/openweathermap"}, "PubmedQueryRun": {"PubMed Tool": "https://python.langchain.com/docs/integrations/tools/pubmed"}, "YouTubeSearchTool": {"YouTubeSearchTool": "https://python.langchain.com/docs/integrations/tools/youtube"}, "VectorstoreIndexCreator": {"Apify": "https://python.langchain.com/docs/integrations/tools/apify", "HuggingFace dataset": "https://python.langchain.com/docs/integrations/document_loaders/hugging_face_dataset", "Spreedly": "https://python.langchain.com/docs/integrations/document_loaders/spreedly", "Image captions": "https://python.langchain.com/docs/integrations/document_loaders/image_captions", "Figma": "https://python.langchain.com/docs/integrations/document_loaders/figma", "Apify Dataset": "https://python.langchain.com/docs/integrations/document_loaders/apify_dataset", "Iugu": "https://python.langchain.com/docs/integrations/document_loaders/iugu", "Stripe": "https://python.langchain.com/docs/integrations/document_loaders/stripe", "Modern Treasury": "https://python.langchain.com/docs/integrations/document_loaders/modern_treasury", "Question Answering Benchmarking: State of the Union Address": "https://python.langchain.com/docs/guides/evaluation/examples/qa_benchmarking_sota", "Question Answering Benchmarking: Paul Graham Essay": "https://python.langchain.com/docs/guides/evaluation/examples/qa_benchmarking_pg", "Agent VectorDB Question Answering Benchmarking": "https://python.langchain.com/docs/guides/evaluation/examples/agent_vectordb_sota_pg", "QA over Documents": "https://python.langchain.com/docs/use_cases/question_answering/index"}, "ZapierToolkit": {"Zapier Natural Language Actions API": "https://python.langchain.com/docs/integrations/tools/zapier"}, "ZapierNLAWrapper": {"Zapier Natural Language Actions API": "https://python.langchain.com/docs/integrations/tools/zapier"}, "LLMChain": {"Zapier Natural Language Actions API": "https://python.langchain.com/docs/integrations/tools/zapier", "Argilla": "https://python.langchain.com/docs/integrations/callbacks/argilla", "Comet": "https://python.langchain.com/docs/integrations/providers/comet_tracking", "Aim": "https://python.langchain.com/docs/integrations/providers/aim_tracking", "Weights & Biases": "https://python.langchain.com/docs/integrations/providers/wandb_tracking", "Rebuff": "https://python.langchain.com/docs/integrations/providers/rebuff", "MLflow": "https://python.langchain.com/docs/integrations/providers/mlflow_tracking", "Flyte": "https://python.langchain.com/docs/integrations/providers/flyte", "Chat Over Documents with Vectara": "https://python.langchain.com/docs/integrations/providers/vectara/vectara_chat", "Vectara Text Generation": "https://python.langchain.com/docs/integrations/providers/vectara/vectara_text_generation", "Natural Language APIs": "https://python.langchain.com/docs/integrations/toolkits/openapi_nla", "JSON Agent": "https://python.langchain.com/docs/integrations/toolkits/json", "Figma": "https://python.langchain.com/docs/integrations/document_loaders/figma", "Predibase": "https://python.langchain.com/docs/integrations/llms/predibase", "AzureML Online Endpoint": "https://python.langchain.com/docs/integrations/llms/azureml_endpoint_example", "Evaluating an OpenAPI Chain": "https://python.langchain.com/docs/guides/evaluation/examples/openapi_eval", "Question Answering": "https://python.langchain.com/docs/guides/evaluation/examples/question_answering", "Custom Trajectory Evaluator": "https://python.langchain.com/docs/guides/evaluation/trajectory/custom", "Custom Pairwise Evaluator": "https://python.langchain.com/docs/guides/evaluation/comparison/custom", "HTTP request chain": "https://python.langchain.com/docs/modules/chains/additional/llm_requests", "Retrieve from vector stores directly": "https://python.langchain.com/docs/use_cases/question_answering/how_to/vector_db_text_generation", "Improve document indexing with HyDE": "https://python.langchain.com/docs/use_cases/question_answering/how_to/hyde", "Structure answers with OpenAI functions": "https://python.langchain.com/docs/use_cases/question_answering/integrations/openai_functions_retrieval_qa", "Multi-agent authoritarian speaker selection": "https://python.langchain.com/docs/use_cases/agent_simulations/multiagent_authoritarian", "WebResearchRetriever": "https://python.langchain.com/docs/modules/data_connection/retrievers/web_research", "Lost in the middle: The problem with long contexts": "https://python.langchain.com/docs/modules/data_connection/document_transformers/post_retrieval/long_context_reorder", "How to add Memory to an LLMChain": "https://python.langchain.com/docs/modules/memory/adding_memory", "Logging to file": "https://python.langchain.com/docs/modules/callbacks/filecallbackhandler", "Datetime parser": "https://python.langchain.com/docs/modules/model_io/output_parsers/datetime", "Prompt Pipelining": "https://python.langchain.com/docs/modules/model_io/prompts/prompt_templates/prompts_pipelining", "Connecting to a Feature Store": "https://python.langchain.com/docs/modules/model_io/prompts/prompt_templates/connecting_to_a_feature_store", "Router": "https://python.langchain.com/docs/modules/chains/foundational/router", "Transformation": "https://python.langchain.com/docs/modules/chains/foundational/transformation", "Async API": "https://python.langchain.com/docs/modules/chains/how_to/async_chain", "Retrieval QA using OpenAI functions": "https://python.langchain.com/docs/modules/chains/additional/openai_functions_retrieval_qa", "Vector store-augmented text generation": "https://python.langchain.com/docs/modules/chains/additional/vector_db_text_generation", "Hypothetical Document Embeddings": "https://python.langchain.com/docs/modules/chains/additional/hyde"}, "TransformChain": {"Zapier Natural Language Actions API": "https://python.langchain.com/docs/integrations/tools/zapier", "Rebuff": "https://python.langchain.com/docs/integrations/providers/rebuff", "Transformation": "https://python.langchain.com/docs/modules/chains/foundational/transformation"}, "SimpleSequentialChain": {"Zapier Natural Language Actions API": "https://python.langchain.com/docs/integrations/tools/zapier", "Rebuff": "https://python.langchain.com/docs/integrations/providers/rebuff", "Baseten": "https://python.langchain.com/docs/integrations/llms/baseten", "Predibase": "https://python.langchain.com/docs/integrations/llms/predibase", "Replicate": "https://python.langchain.com/docs/integrations/llms/replicate", "Transformation": "https://python.langchain.com/docs/modules/chains/foundational/transformation"}, "PromptTemplate": {"Zapier Natural Language Actions API": "https://python.langchain.com/docs/integrations/tools/zapier", "Context": "https://python.langchain.com/docs/integrations/callbacks/context", "Argilla": "https://python.langchain.com/docs/integrations/callbacks/argilla", "Comet": "https://python.langchain.com/docs/integrations/providers/comet_tracking", "Aim": "https://python.langchain.com/docs/integrations/providers/aim_tracking", "Weights & Biases": "https://python.langchain.com/docs/integrations/providers/wandb_tracking", "Rebuff": "https://python.langchain.com/docs/integrations/providers/rebuff", "MLflow": "https://python.langchain.com/docs/integrations/providers/mlflow_tracking", "Flyte": "https://python.langchain.com/docs/integrations/providers/flyte", "Vectara Text Generation": "https://python.langchain.com/docs/integrations/providers/vectara/vectara_text_generation", "Natural Language APIs": "https://python.langchain.com/docs/integrations/toolkits/openapi_nla", "Predibase": "https://python.langchain.com/docs/integrations/llms/predibase", "Evaluating an OpenAPI Chain": "https://python.langchain.com/docs/guides/evaluation/examples/openapi_eval", "Question Answering": "https://python.langchain.com/docs/guides/evaluation/examples/question_answering", "Pairwise String Comparison": "https://python.langchain.com/docs/guides/evaluation/comparison/pairwise_string", "Criteria Evaluation": "https://python.langchain.com/docs/guides/evaluation/string/criteria_eval_chain", "HTTP request chain": "https://python.langchain.com/docs/modules/chains/additional/llm_requests", "QA over Documents": "https://python.langchain.com/docs/use_cases/question_answering/index", "Retrieve from vector stores directly": "https://python.langchain.com/docs/use_cases/question_answering/how_to/vector_db_text_generation", "Improve document indexing with HyDE": "https://python.langchain.com/docs/use_cases/question_answering/how_to/hyde", "Structure answers with OpenAI functions": "https://python.langchain.com/docs/use_cases/question_answering/integrations/openai_functions_retrieval_qa", "Elasticsearch database": "https://python.langchain.com/docs/modules/chains/additional/elasticsearch_database", "Bash chain": "https://python.langchain.com/docs/modules/chains/additional/llm_bash", "Multi-agent authoritarian speaker selection": "https://python.langchain.com/docs/use_cases/agent_simulations/multiagent_authoritarian", "Agent Debates with Tools": "https://python.langchain.com/docs/use_cases/agent_simulations/two_agent_debate_tools", "MultiQueryRetriever": "https://python.langchain.com/docs/modules/data_connection/retrievers/MultiQueryRetriever", "WebResearchRetriever": "https://python.langchain.com/docs/modules/data_connection/retrievers/web_research", "Lost in the middle: The problem with long contexts": "https://python.langchain.com/docs/modules/data_connection/document_transformers/post_retrieval/long_context_reorder", "How to create a custom Memory class": "https://python.langchain.com/docs/modules/memory/custom_memory", "How to add memory to a Multi-Input Chain": "https://python.langchain.com/docs/modules/memory/adding_memory_chain_multiple_inputs", "Conversation Knowledge Graph Memory": "https://python.langchain.com/docs/modules/memory/types/kg", "How to add Memory to an LLMChain": "https://python.langchain.com/docs/modules/memory/adding_memory", "How to use multiple memory classes in the same chain": "https://python.langchain.com/docs/modules/memory/multiple_memory", "How to customize conversational memory": "https://python.langchain.com/docs/modules/memory/conversational_customization", "Logging to file": "https://python.langchain.com/docs/modules/callbacks/filecallbackhandler", "Retry parser": "https://python.langchain.com/docs/modules/model_io/output_parsers/retry", "Datetime parser": "https://python.langchain.com/docs/modules/model_io/output_parsers/datetime", "Pydantic (JSON) parser": "https://python.langchain.com/docs/modules/model_io/output_parsers/pydantic", "Select by maximal marginal relevance (MMR)": "https://python.langchain.com/docs/modules/model_io/prompts/example_selectors/mmr", "Select by n-gram overlap": "https://python.langchain.com/docs/modules/model_io/prompts/example_selectors/ngram_overlap", "Prompt Pipelining": "https://python.langchain.com/docs/modules/model_io/prompts/prompt_templates/prompts_pipelining", "Template Formats": "https://python.langchain.com/docs/modules/model_io/prompts/prompt_templates/formats", "Connecting to a Feature Store": "https://python.langchain.com/docs/modules/model_io/prompts/prompt_templates/connecting_to_a_feature_store", "Router": "https://python.langchain.com/docs/modules/chains/foundational/router", "Transformation": "https://python.langchain.com/docs/modules/chains/foundational/transformation", "Custom chain": "https://python.langchain.com/docs/modules/chains/how_to/custom_chain", "Async API": "https://python.langchain.com/docs/modules/chains/how_to/async_chain", "Retrieval QA using OpenAI functions": "https://python.langchain.com/docs/modules/chains/additional/openai_functions_retrieval_qa", "Vector store-augmented text generation": "https://python.langchain.com/docs/modules/chains/additional/vector_db_text_generation", "Hypothetical Document Embeddings": "https://python.langchain.com/docs/modules/chains/additional/hyde"}, "ZapierNLARunAction": {"Zapier Natural Language Actions API": "https://python.langchain.com/docs/integrations/tools/zapier"}, "GoldenQueryAPIWrapper": {"Golden Query": "https://python.langchain.com/docs/integrations/tools/golden_query", "Golden": "https://python.langchain.com/docs/integrations/providers/golden"}, "ArxivAPIWrapper": {"ArXiv API Tool": "https://python.langchain.com/docs/integrations/tools/arxiv"}, "MetaphorSearchAPIWrapper": {"Metaphor Search": "https://python.langchain.com/docs/integrations/tools/metaphor_search"}, "PlayWrightBrowserToolkit": {"Metaphor Search": "https://python.langchain.com/docs/integrations/tools/metaphor_search", "PlayWright Browser Toolkit": "https://python.langchain.com/docs/integrations/toolkits/playwright"}, "create_async_playwright_browser": {"Metaphor Search": "https://python.langchain.com/docs/integrations/tools/metaphor_search", "PlayWright Browser Toolkit": "https://python.langchain.com/docs/integrations/toolkits/playwright"}, "MetaphorSearchResults": {"Metaphor Search": "https://python.langchain.com/docs/integrations/tools/metaphor_search"}, "SerpAPIWrapper": {"SerpAPI": "https://python.langchain.com/docs/integrations/providers/serpapi", "AutoGPT": "https://python.langchain.com/docs/use_cases/autonomous_agents/autogpt"}, "GraphQLAPIWrapper": {"GraphQL tool": "https://python.langchain.com/docs/integrations/tools/graphql"}, "DuckDuckGoSearchRun": {"DuckDuckGo Search": "https://python.langchain.com/docs/integrations/tools/ddg", "Github Toolkit": "https://python.langchain.com/docs/integrations/toolkits/github", "!pip install bs4": "https://python.langchain.com/docs/use_cases/autonomous_agents/marathon_times"}, "DuckDuckGoSearchResults": {"DuckDuckGo Search": "https://python.langchain.com/docs/integrations/tools/ddg"}, "DuckDuckGoSearchAPIWrapper": {"DuckDuckGo Search": "https://python.langchain.com/docs/integrations/tools/ddg"}, "ConversationBufferMemory": {"Gradio Tools": "https://python.langchain.com/docs/integrations/tools/gradio_tools", "SceneXplain": "https://python.langchain.com/docs/integrations/tools/sceneXplain", "Dynamodb Chat Message History": "https://python.langchain.com/docs/integrations/memory/dynamodb_chat_message_history", "Chat Over Documents with Vectara": "https://python.langchain.com/docs/integrations/providers/vectara/vectara_chat", "Bedrock": "https://python.langchain.com/docs/integrations/llms/bedrock", "QA over Documents": "https://python.langchain.com/docs/use_cases/question_answering/index", "Structure answers with OpenAI functions": "https://python.langchain.com/docs/use_cases/question_answering/integrations/openai_functions_retrieval_qa", "Agent Debates with Tools": "https://python.langchain.com/docs/use_cases/agent_simulations/two_agent_debate_tools", "Adding Message Memory backed by a database to an Agent": "https://python.langchain.com/docs/modules/memory/agent_with_memory_in_db", "How to add memory to a Multi-Input Chain": "https://python.langchain.com/docs/modules/memory/adding_memory_chain_multiple_inputs", "How to add Memory to an LLMChain": "https://python.langchain.com/docs/modules/memory/adding_memory", "How to use multiple memory classes in the same chain": "https://python.langchain.com/docs/modules/memory/multiple_memory", "How to customize conversational memory": "https://python.langchain.com/docs/modules/memory/conversational_customization", "How to add Memory to an Agent": "https://python.langchain.com/docs/modules/memory/agent_with_memory", "Shared memory across agents and tools": "https://python.langchain.com/docs/modules/agents/how_to/sharedmemory_for_tools", "Add Memory to OpenAI Functions Agent": "https://python.langchain.com/docs/modules/agents/how_to/add_memory_openai_functions", "Retrieval QA using OpenAI functions": "https://python.langchain.com/docs/modules/chains/additional/openai_functions_retrieval_qa"}, "SceneXplainTool": {"SceneXplain": "https://python.langchain.com/docs/integrations/tools/sceneXplain"}, "WolframAlphaAPIWrapper": {"Wolfram Alpha": "https://python.langchain.com/docs/integrations/providers/wolfram_alpha"}, "load_huggingface_tool": {"Requires transformers>=4.29.0 and huggingface_hub>=0.14.1": "https://python.langchain.com/docs/integrations/tools/huggingface_tools"}, "GoogleSearchAPIWrapper": {"Google Search": "https://python.langchain.com/docs/integrations/providers/google_search", "WebResearchRetriever": "https://python.langchain.com/docs/modules/data_connection/retrievers/web_research", "Adding Message Memory backed by a database to an Agent": "https://python.langchain.com/docs/modules/memory/agent_with_memory_in_db", "How to add Memory to an Agent": "https://python.langchain.com/docs/modules/memory/agent_with_memory", "Shared memory across agents and tools": "https://python.langchain.com/docs/modules/agents/how_to/sharedmemory_for_tools"}, "BingSearchAPIWrapper": {"Bing Search": "https://python.langchain.com/docs/integrations/tools/bing_search"}, "PythonREPL": {"Python REPL": "https://python.langchain.com/docs/integrations/tools/foo_python", "Dynamodb Chat Message History": "https://python.langchain.com/docs/integrations/memory/dynamodb_chat_message_history", "Python Agent": "https://python.langchain.com/docs/integrations/toolkits/python"}, "ShellTool": {"Shell Tool": "https://python.langchain.com/docs/integrations/tools/bash", "Human-in-the-loop Tool Validation": "https://python.langchain.com/docs/modules/agents/tools/human_approval"}, "ReadFileTool": {"File System Tools": "https://python.langchain.com/docs/integrations/tools/filesystem", "AutoGPT": "https://python.langchain.com/docs/use_cases/autonomous_agents/autogpt", "!pip install bs4": "https://python.langchain.com/docs/use_cases/autonomous_agents/marathon_times"}, "CopyFileTool": {"File System Tools": "https://python.langchain.com/docs/integrations/tools/filesystem"}, "DeleteFileTool": {"File System Tools": "https://python.langchain.com/docs/integrations/tools/filesystem"}, "MoveFileTool": {"File System Tools": "https://python.langchain.com/docs/integrations/tools/filesystem", "Tools as OpenAI Functions": "https://python.langchain.com/docs/modules/agents/tools/tools_as_openai_functions"}, "WriteFileTool": {"File System Tools": "https://python.langchain.com/docs/integrations/tools/filesystem", "AutoGPT": "https://python.langchain.com/docs/use_cases/autonomous_agents/autogpt", "!pip install bs4": "https://python.langchain.com/docs/use_cases/autonomous_agents/marathon_times"}, "ListDirectoryTool": {"File System Tools": "https://python.langchain.com/docs/integrations/tools/filesystem"}, "FileManagementToolkit": {"File System Tools": "https://python.langchain.com/docs/integrations/tools/filesystem"}, "BraveSearch": {"Brave Search": "https://python.langchain.com/docs/integrations/providers/brave_search"}, "RedisChatMessageHistory": {"Redis Chat Message History": "https://python.langchain.com/docs/integrations/memory/redis_chat_message_history", "Adding Message Memory backed by a database to an Agent": "https://python.langchain.com/docs/modules/memory/agent_with_memory_in_db"}, "ZepMemory": {"Zep Memory": "https://python.langchain.com/docs/integrations/memory/zep_memory"}, "ConversationChain": {"Entity Memory with SQLite storage": "https://python.langchain.com/docs/integrations/memory/entity_memory_with_sqlite", "Figma": "https://python.langchain.com/docs/integrations/document_loaders/figma", "Bedrock": "https://python.langchain.com/docs/integrations/llms/bedrock", "Agent Debates with Tools": "https://python.langchain.com/docs/use_cases/agent_simulations/two_agent_debate_tools", "Conversation Knowledge Graph Memory": "https://python.langchain.com/docs/modules/memory/types/kg", "ConversationTokenBufferMemory": "https://python.langchain.com/docs/modules/memory/types/token_buffer", "How to use multiple memory classes in the same chain": "https://python.langchain.com/docs/modules/memory/multiple_memory", "How to customize conversational memory": "https://python.langchain.com/docs/modules/memory/conversational_customization", "ConversationSummaryBufferMemory": "https://python.langchain.com/docs/modules/memory/types/summary_buffer", "Router": "https://python.langchain.com/docs/modules/chains/foundational/router"}, "ConversationEntityMemory": {"Entity Memory with SQLite storage": "https://python.langchain.com/docs/integrations/memory/entity_memory_with_sqlite"}, "SQLiteEntityStore": {"Entity Memory with SQLite storage": "https://python.langchain.com/docs/integrations/memory/entity_memory_with_sqlite"}, "ENTITY_MEMORY_CONVERSATION_TEMPLATE": {"Entity Memory with SQLite storage": "https://python.langchain.com/docs/integrations/memory/entity_memory_with_sqlite"}, "PostgresChatMessageHistory": {"Postgres Chat Message History": "https://python.langchain.com/docs/integrations/memory/postgres_chat_message_history"}, "MomentoChatMessageHistory": {"Momento Chat Message History": "https://python.langchain.com/docs/integrations/memory/momento_chat_message_history"}, "MongoDBChatMessageHistory": {"Mongodb Chat Message History": "https://python.langchain.com/docs/integrations/memory/mongodb_chat_message_history"}, "CassandraChatMessageHistory": {"Cassandra Chat Message History": "https://python.langchain.com/docs/integrations/memory/cassandra_chat_message_history", "Cassandra": "https://python.langchain.com/docs/integrations/providers/cassandra"}, "MotorheadMemory": {"Mot\u00f6rhead Memory": "https://python.langchain.com/docs/integrations/memory/motorhead_memory", "Mot\u00f6rhead Memory (Managed)": "https://python.langchain.com/docs/integrations/memory/motorhead_memory_managed"}, "DynamoDBChatMessageHistory": {"Dynamodb Chat Message History": "https://python.langchain.com/docs/integrations/memory/dynamodb_chat_message_history"}, "ChatAnthropic": {"Anthropic": "https://python.langchain.com/docs/integrations/chat/anthropic", "PlayWright Browser Toolkit": "https://python.langchain.com/docs/integrations/toolkits/playwright", "Agent Trajectory": "https://python.langchain.com/docs/guides/evaluation/trajectory/trajectory_eval", "Custom Pairwise Evaluator": "https://python.langchain.com/docs/guides/evaluation/comparison/custom", "Pairwise String Comparison": "https://python.langchain.com/docs/guides/evaluation/comparison/pairwise_string", "Criteria Evaluation": "https://python.langchain.com/docs/guides/evaluation/string/criteria_eval_chain", "Few shot examples for chat models": "https://python.langchain.com/docs/modules/model_io/prompts/prompt_templates/few_shot_examples_chat"}, "ChatPromptTemplate": {"Anthropic": "https://python.langchain.com/docs/integrations/chat/anthropic", "OpenAI": "https://python.langchain.com/docs/integrations/chat/openai", "Google Cloud Platform Vertex AI PaLM ": "https://python.langchain.com/docs/integrations/chat/google_vertex_ai_palm", "JinaChat": "https://python.langchain.com/docs/integrations/chat/jinachat", "Context": "https://python.langchain.com/docs/integrations/callbacks/context", "OpenAI Functions Metadata Tagger": "https://python.langchain.com/docs/integrations/document_transformers/openai_metadata_tagger", "Figma": "https://python.langchain.com/docs/integrations/document_loaders/figma", "Tagging": "https://python.langchain.com/docs/modules/chains/additional/tagging", "Structure answers with OpenAI functions": "https://python.langchain.com/docs/use_cases/question_answering/integrations/openai_functions_retrieval_qa", "Extraction with OpenAI Functions": "https://python.langchain.com/docs/use_cases/extraction/openai_extraction", "Multi-agent authoritarian speaker selection": "https://python.langchain.com/docs/use_cases/agent_simulations/multiagent_authoritarian", "How to add Memory to an LLMChain": "https://python.langchain.com/docs/modules/memory/adding_memory", "Retry parser": "https://python.langchain.com/docs/modules/model_io/output_parsers/retry", "Pydantic (JSON) parser": "https://python.langchain.com/docs/modules/model_io/output_parsers/pydantic", "Few shot examples for chat models": "https://python.langchain.com/docs/modules/model_io/prompts/prompt_templates/few_shot_examples_chat", "Prompt Pipelining": "https://python.langchain.com/docs/modules/model_io/prompts/prompt_templates/prompts_pipelining", "Using OpenAI functions": "https://python.langchain.com/docs/modules/chains/popular/openai_functions", "Extraction": "https://python.langchain.com/docs/modules/chains/additional/extraction", "Retrieval QA using OpenAI functions": "https://python.langchain.com/docs/modules/chains/additional/openai_functions_retrieval_qa"}, "SystemMessagePromptTemplate": {"Anthropic": "https://python.langchain.com/docs/integrations/chat/anthropic", "OpenAI": "https://python.langchain.com/docs/integrations/chat/openai", "Google Cloud Platform Vertex AI PaLM ": "https://python.langchain.com/docs/integrations/chat/google_vertex_ai_palm", "JinaChat": "https://python.langchain.com/docs/integrations/chat/jinachat", "Figma": "https://python.langchain.com/docs/integrations/document_loaders/figma", "CAMEL Role-Playing Autonomous Cooperative Agents": "https://python.langchain.com/docs/use_cases/agent_simulations/camel_role_playing"}, "AIMessagePromptTemplate": {"Anthropic": "https://python.langchain.com/docs/integrations/chat/anthropic", "OpenAI": "https://python.langchain.com/docs/integrations/chat/openai", "JinaChat": "https://python.langchain.com/docs/integrations/chat/jinachat", "Figma": "https://python.langchain.com/docs/integrations/document_loaders/figma"}, "HumanMessagePromptTemplate": {"Anthropic": "https://python.langchain.com/docs/integrations/chat/anthropic", "OpenAI": "https://python.langchain.com/docs/integrations/chat/openai", "Google Cloud Platform Vertex AI PaLM ": "https://python.langchain.com/docs/integrations/chat/google_vertex_ai_palm", "JinaChat": "https://python.langchain.com/docs/integrations/chat/jinachat", "Context": "https://python.langchain.com/docs/integrations/callbacks/context", "Figma": "https://python.langchain.com/docs/integrations/document_loaders/figma", "Structure answers with OpenAI functions": "https://python.langchain.com/docs/use_cases/question_answering/integrations/openai_functions_retrieval_qa", "CAMEL Role-Playing Autonomous Cooperative Agents": "https://python.langchain.com/docs/use_cases/agent_simulations/camel_role_playing", "Multi-agent authoritarian speaker selection": "https://python.langchain.com/docs/use_cases/agent_simulations/multiagent_authoritarian", "How to add Memory to an LLMChain": "https://python.langchain.com/docs/modules/memory/adding_memory", "Retry parser": "https://python.langchain.com/docs/modules/model_io/output_parsers/retry", "Pydantic (JSON) parser": "https://python.langchain.com/docs/modules/model_io/output_parsers/pydantic", "Prompt Pipelining": "https://python.langchain.com/docs/modules/model_io/prompts/prompt_templates/prompts_pipelining", "Using OpenAI functions": "https://python.langchain.com/docs/modules/chains/popular/openai_functions", "Retrieval QA using OpenAI functions": "https://python.langchain.com/docs/modules/chains/additional/openai_functions_retrieval_qa"}, "SystemMessage": {"Anthropic": "https://python.langchain.com/docs/integrations/chat/anthropic", "OpenAI": "https://python.langchain.com/docs/integrations/chat/openai", "Google Cloud Platform Vertex AI PaLM ": "https://python.langchain.com/docs/integrations/chat/google_vertex_ai_palm", "JinaChat": "https://python.langchain.com/docs/integrations/chat/jinachat", "Context": "https://python.langchain.com/docs/integrations/callbacks/context", "MLflow AI Gateway": "https://python.langchain.com/docs/integrations/providers/mlflow_ai_gateway", "Structure answers with OpenAI functions": "https://python.langchain.com/docs/use_cases/question_answering/integrations/openai_functions_retrieval_qa", "CAMEL Role-Playing Autonomous Cooperative Agents": "https://python.langchain.com/docs/use_cases/agent_simulations/camel_role_playing", "Multi-Agent Simulated Environment: Petting Zoo": "https://python.langchain.com/docs/use_cases/agent_simulations/petting_zoo", "Multi-agent decentralized speaker selection": "https://python.langchain.com/docs/use_cases/agent_simulations/multiagent_bidding", "Multi-agent authoritarian speaker selection": "https://python.langchain.com/docs/use_cases/agent_simulations/multiagent_authoritarian", "Two-Player Dungeons & Dragons": "https://python.langchain.com/docs/use_cases/agent_simulations/two_player_dnd", "Multi-Player Dungeons & Dragons": "https://python.langchain.com/docs/use_cases/agent_simulations/multi_player_dnd", "Simulated Environment: Gymnasium": "https://python.langchain.com/docs/use_cases/agent_simulations/gymnasium", "Agent Debates with Tools": "https://python.langchain.com/docs/use_cases/agent_simulations/two_agent_debate_tools", "How to add Memory to an LLMChain": "https://python.langchain.com/docs/modules/memory/adding_memory", "Use ToolKits with OpenAI Functions": "https://python.langchain.com/docs/modules/agents/how_to/use_toolkits_with_openai_functions", "Prompt Pipelining": "https://python.langchain.com/docs/modules/model_io/prompts/prompt_templates/prompts_pipelining", "Using OpenAI functions": "https://python.langchain.com/docs/modules/chains/popular/openai_functions", "Retrieval QA using OpenAI functions": "https://python.langchain.com/docs/modules/chains/additional/openai_functions_retrieval_qa"}, "CallbackManager": {"Anthropic": "https://python.langchain.com/docs/integrations/chat/anthropic", "Llama-cpp": "https://python.langchain.com/docs/integrations/llms/llamacpp", "Running LLMs locally": "https://python.langchain.com/docs/use_cases/question_answering/local_retrieval_qa", "Use local LLMs": "https://python.langchain.com/docs/use_cases/question_answering/how_to/local_retrieval_qa", "WebResearchRetriever": "https://python.langchain.com/docs/modules/data_connection/retrievers/web_research"}, "StreamingStdOutCallbackHandler": {"Anthropic": "https://python.langchain.com/docs/integrations/chat/anthropic", "GPT4All": "https://python.langchain.com/docs/integrations/llms/gpt4all", "Arthur": "https://python.langchain.com/docs/integrations/providers/arthur_tracking", "Chat Over Documents with Vectara": "https://python.langchain.com/docs/integrations/providers/vectara/vectara_chat", "Llama-cpp": "https://python.langchain.com/docs/integrations/llms/llamacpp", "C Transformers": "https://python.langchain.com/docs/integrations/llms/ctransformers", "Huggingface TextGen Inference": "https://python.langchain.com/docs/integrations/llms/huggingface_textgen_inference", "Replicate": "https://python.langchain.com/docs/integrations/llms/replicate", "Running LLMs locally": "https://python.langchain.com/docs/use_cases/question_answering/local_retrieval_qa", "Use local LLMs": "https://python.langchain.com/docs/use_cases/question_answering/how_to/local_retrieval_qa", "WebResearchRetriever": "https://python.langchain.com/docs/modules/data_connection/retrievers/web_research"}, "create_tagging_chain": {"Llama API": "https://python.langchain.com/docs/integrations/chat/llama_api", "Tagging": "https://python.langchain.com/docs/modules/chains/additional/tagging"}, "ChatVertexAI": {"Google Cloud Platform Vertex AI PaLM ": "https://python.langchain.com/docs/integrations/chat/google_vertex_ai_palm"}, "JinaChat": {"JinaChat": "https://python.langchain.com/docs/integrations/chat/jinachat"}, "AzureChatOpenAI": {"Azure": "https://python.langchain.com/docs/integrations/chat/azure_chat_openai", "Azure OpenAI": "https://python.langchain.com/docs/integrations/providers/azure_openai"}, "PromptLayerChatOpenAI": {"PromptLayer ChatOpenAI": "https://python.langchain.com/docs/integrations/chat/promptlayer_chatopenai"}, "ContextCallbackHandler": {"Context": "https://python.langchain.com/docs/integrations/callbacks/context"}, "ArgillaCallbackHandler": {"Argilla": "https://python.langchain.com/docs/integrations/providers/argilla"}, "StdOutCallbackHandler": {"Argilla": "https://python.langchain.com/docs/integrations/callbacks/argilla", "Comet": "https://python.langchain.com/docs/integrations/providers/comet_tracking", "Aim": "https://python.langchain.com/docs/integrations/providers/aim_tracking", "Weights & Biases": "https://python.langchain.com/docs/integrations/providers/wandb_tracking", "ClearML": "https://python.langchain.com/docs/integrations/providers/clearml_tracking", "Async API": "https://python.langchain.com/docs/modules/agents/how_to/async_agent", "Custom chain": "https://python.langchain.com/docs/modules/chains/how_to/custom_chain"}, "PromptLayerCallbackHandler": {"PromptLayer": "https://python.langchain.com/docs/integrations/callbacks/promptlayer"}, "GPT4All": {"PromptLayer": "https://python.langchain.com/docs/integrations/callbacks/promptlayer", "GPT4All": "https://python.langchain.com/docs/integrations/llms/gpt4all", "Running LLMs locally": "https://python.langchain.com/docs/use_cases/question_answering/local_retrieval_qa", "Use local LLMs": "https://python.langchain.com/docs/use_cases/question_answering/how_to/local_retrieval_qa"}, "StreamlitCallbackHandler": {"Streamlit": "https://python.langchain.com/docs/integrations/callbacks/streamlit", "GPT4All": "https://python.langchain.com/docs/integrations/providers/gpt4all"}, "FigmaFileLoader": {"Figma": "https://python.langchain.com/docs/integrations/document_loaders/figma"}, "AzureOpenAI": {"Azure OpenAI": "https://python.langchain.com/docs/integrations/llms/azure_openai_example", "OpenAI": "https://python.langchain.com/docs/integrations/providers/openai"}, "MyScale": {"MyScale": "https://python.langchain.com/docs/integrations/vectorstores/myscale", "Self-querying with MyScale": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/myscale_self_query"}, "Baseten": {"Baseten": "https://python.langchain.com/docs/integrations/llms/baseten"}, "WeatherDataLoader": {"Weather": "https://python.langchain.com/docs/integrations/document_loaders/weather"}, "Tair": {"Tair": "https://python.langchain.com/docs/integrations/vectorstores/tair"}, "UnstructuredWordDocumentLoader": {"Microsoft Word": "https://python.langchain.com/docs/integrations/document_loaders/microsoft_word"}, "CollegeConfidentialLoader": {"College Confidential": "https://python.langchain.com/docs/integrations/document_loaders/college_confidential"}, "RWKV": {"RWKV-4": "https://python.langchain.com/docs/integrations/providers/rwkv"}, "GoogleDriveLoader": {"Google Drive": "https://python.langchain.com/docs/integrations/document_loaders/google_drive"}, "AmazonAPIGateway": {"Amazon API Gateway": "https://python.langchain.com/docs/integrations/llms/amazon_api_gateway_example"}, "UnstructuredPowerPointLoader": {"Microsoft PowerPoint": "https://python.langchain.com/docs/integrations/document_loaders/microsoft_powerpoint"}, "wandb_tracing_enabled": {"WandB Tracing": "https://python.langchain.com/docs/integrations/providers/agent_with_wandb_tracing"}, "CometCallbackHandler": {"Comet": "https://python.langchain.com/docs/integrations/providers/comet_tracking"}, "CTransformers": {"C Transformers": "https://python.langchain.com/docs/integrations/llms/ctransformers"}, "BiliBiliLoader": {"BiliBili": "https://python.langchain.com/docs/integrations/document_loaders/bilibili"}, "DiffbotLoader": {"Diffbot": "https://python.langchain.com/docs/integrations/document_loaders/diffbot"}, "AimCallbackHandler": {"Aim": "https://python.langchain.com/docs/integrations/providers/aim_tracking"}, "ModernTreasuryLoader": {"Modern Treasury": "https://python.langchain.com/docs/integrations/document_loaders/modern_treasury"}, "FacebookChatLoader": {"Facebook Chat": "https://python.langchain.com/docs/integrations/document_loaders/facebook_chat"}, "Banana": {"Banana": "https://python.langchain.com/docs/integrations/llms/banana"}, "HuggingFacePipeline": {"Hugging Face": "https://python.langchain.com/docs/integrations/providers/huggingface", "RELLM": "https://python.langchain.com/docs/integrations/llms/rellm_experimental", "JSONFormer": "https://python.langchain.com/docs/integrations/llms/jsonformer_experimental"}, "HuggingFaceHub": {"Hugging Face": "https://python.langchain.com/docs/integrations/providers/huggingface"}, "HuggingFaceHubEmbeddings": {"Hugging Face": "https://python.langchain.com/docs/integrations/providers/huggingface"}, "CharacterTextSplitter": {"Hugging Face": "https://python.langchain.com/docs/integrations/providers/huggingface", "OpenAI": "https://python.langchain.com/docs/integrations/providers/openai", "Vectara Text Generation": "https://python.langchain.com/docs/integrations/providers/vectara/vectara_text_generation", "Document Comparison": "https://python.langchain.com/docs/integrations/toolkits/document_comparison_toolkit", "Vectorstore Agent": "https://python.langchain.com/docs/integrations/toolkits/vectorstore", "LanceDB": "https://python.langchain.com/docs/integrations/vectorstores/lancedb", "Weaviate": "https://python.langchain.com/docs/integrations/vectorstores/weaviate", "Activeloop's Deep Lake": "https://python.langchain.com/docs/integrations/vectorstores/deeplake", "Vectara": "https://python.langchain.com/docs/integrations/vectorstores/vectara", "Redis": "https://python.langchain.com/docs/integrations/vectorstores/redis", "PGVector": "https://python.langchain.com/docs/integrations/vectorstores/pgvector", "Rockset": "https://python.langchain.com/docs/integrations/vectorstores/rockset", "Zilliz": "https://python.langchain.com/docs/integrations/vectorstores/zilliz", "SingleStoreDB": "https://python.langchain.com/docs/integrations/vectorstores/singlestoredb", "Annoy": "https://python.langchain.com/docs/integrations/vectorstores/annoy", "Typesense": "https://python.langchain.com/docs/integrations/vectorstores/typesense", "Tair": "https://python.langchain.com/docs/integrations/vectorstores/tair", "Chroma": "https://python.langchain.com/docs/integrations/vectorstores/chroma", "Alibaba Cloud OpenSearch": "https://python.langchain.com/docs/integrations/vectorstores/alibabacloud_opensearch", "StarRocks": "https://python.langchain.com/docs/integrations/vectorstores/starrocks", "Clarifai": "https://python.langchain.com/docs/integrations/vectorstores/clarifai", "scikit-learn": "https://python.langchain.com/docs/integrations/vectorstores/sklearn", "DocArrayHnswSearch": "https://python.langchain.com/docs/integrations/vectorstores/docarray_hnsw", "MyScale": "https://python.langchain.com/docs/integrations/vectorstores/myscale", "ClickHouse Vector Search": "https://python.langchain.com/docs/integrations/vectorstores/clickhouse", "Qdrant": "https://python.langchain.com/docs/integrations/vectorstores/qdrant", "Tigris": "https://python.langchain.com/docs/integrations/vectorstores/tigris", "AwaDB": "https://python.langchain.com/docs/integrations/vectorstores/awadb", "Supabase (Postgres)": "https://python.langchain.com/docs/integrations/vectorstores/supabase", "OpenSearch": "https://python.langchain.com/docs/integrations/vectorstores/opensearch", "Pinecone": "https://python.langchain.com/docs/integrations/vectorstores/pinecone", "Azure Cognitive Search": "https://python.langchain.com/docs/integrations/vectorstores/azuresearch", "Cassandra": "https://python.langchain.com/docs/integrations/vectorstores/cassandra", "Milvus": "https://python.langchain.com/docs/integrations/vectorstores/milvus", "ElasticSearch": "https://python.langchain.com/docs/integrations/vectorstores/elasticsearch", "Marqo": "https://python.langchain.com/docs/integrations/vectorstores/marqo", "DocArrayInMemorySearch": "https://python.langchain.com/docs/integrations/vectorstores/docarray_in_memory", "pg_embedding": "https://python.langchain.com/docs/integrations/vectorstores/pgembedding", "FAISS": "https://python.langchain.com/docs/integrations/vectorstores/faiss", "AnalyticDB": "https://python.langchain.com/docs/integrations/vectorstores/analyticdb", "Hologres": "https://python.langchain.com/docs/integrations/vectorstores/hologres", "MongoDB Atlas": "https://python.langchain.com/docs/integrations/vectorstores/mongodb_atlas", "Meilisearch": "https://python.langchain.com/docs/integrations/vectorstores/meilisearch", "Figma": "https://python.langchain.com/docs/integrations/document_loaders/figma", "Psychic": "https://python.langchain.com/docs/integrations/document_loaders/psychic", "Manifest": "https://python.langchain.com/docs/integrations/llms/manifest", "Caching integrations": "https://python.langchain.com/docs/integrations/llms/llm_caching", "Data Augmented Question Answering": "https://python.langchain.com/docs/guides/evaluation/examples/data_augmented_question_answering", "Question answering over a group chat messages using Activeloop's DeepLake": "https://python.langchain.com/docs/use_cases/question_answering/semantic-search-over-chat", "Retrieve from vector stores directly": "https://python.langchain.com/docs/use_cases/question_answering/how_to/vector_db_text_generation", "Improve document indexing with HyDE": "https://python.langchain.com/docs/use_cases/question_answering/how_to/hyde", "Structure answers with OpenAI functions": "https://python.langchain.com/docs/use_cases/question_answering/integrations/openai_functions_retrieval_qa", "QA using Activeloop's DeepLake": "https://python.langchain.com/docs/use_cases/question_answering/integrations/semantic-search-over-chat", "Analysis of Twitter the-algorithm source code with LangChain, GPT4 and Activeloop's Deep Lake": "https://python.langchain.com/docs/use_cases/code/twitter-the-algorithm-analysis-deeplake", "Use LangChain, GPT and Activeloop's Deep Lake to work with code base": "https://python.langchain.com/docs/use_cases/code/code-analysis-deeplake", "SalesGPT - Your Context-Aware AI Sales Assistant With Knowledge Base": "https://python.langchain.com/docs/use_cases/agents/sales_agent_with_context", "Split by tokens ": "https://python.langchain.com/docs/modules/data_connection/document_transformers/text_splitters/split_by_token", "How to add memory to a Multi-Input Chain": "https://python.langchain.com/docs/modules/memory/adding_memory_chain_multiple_inputs", "Combine agents and vector stores": "https://python.langchain.com/docs/modules/agents/how_to/agent_vectorstore", "Loading from LangChainHub": "https://python.langchain.com/docs/modules/chains/how_to/from_hub", "Retrieval QA using OpenAI functions": "https://python.langchain.com/docs/modules/chains/additional/openai_functions_retrieval_qa", "Vector store-augmented text generation": "https://python.langchain.com/docs/modules/chains/additional/vector_db_text_generation", "Hypothetical Document Embeddings": "https://python.langchain.com/docs/modules/chains/additional/hyde"}, "DocugamiLoader": {"Docugami": "https://python.langchain.com/docs/integrations/document_loaders/docugami"}, "GutenbergLoader": {"Gutenberg": "https://python.langchain.com/docs/integrations/document_loaders/gutenberg"}, "AzureBlobStorageContainerLoader": {"Azure Blob Storage": "https://python.langchain.com/docs/integrations/providers/azure_blob_storage", "Azure Blob Storage Container": "https://python.langchain.com/docs/integrations/document_loaders/azure_blob_storage_container"}, "AzureBlobStorageFileLoader": {"Azure Blob Storage": "https://python.langchain.com/docs/integrations/providers/azure_blob_storage", "Azure Blob Storage File": "https://python.langchain.com/docs/integrations/document_loaders/azure_blob_storage_file"}, "WikipediaLoader": {"Wikipedia": "https://python.langchain.com/docs/integrations/document_loaders/wikipedia"}, "ConfluenceLoader": {"Confluence": "https://python.langchain.com/docs/integrations/document_loaders/confluence"}, "Predibase": {"Predibase": "https://python.langchain.com/docs/integrations/llms/predibase"}, "Beam": {"Beam": "https://python.langchain.com/docs/integrations/llms/beam"}, "GrobidParser": {"Grobid": "https://python.langchain.com/docs/integrations/document_loaders/grobid"}, "GenericLoader": {"Grobid": "https://python.langchain.com/docs/integrations/document_loaders/grobid", "Loading documents from a YouTube url": "https://python.langchain.com/docs/integrations/document_loaders/youtube_audio", "Source Code": "https://python.langchain.com/docs/integrations/document_loaders/source_code"}, "Typesense": {"Typesense": "https://python.langchain.com/docs/integrations/vectorstores/typesense"}, "Hologres": {"Hologres": "https://python.langchain.com/docs/integrations/vectorstores/hologres"}, "AI21": {"AI21 Labs": "https://python.langchain.com/docs/integrations/providers/ai21", "AI21": "https://python.langchain.com/docs/integrations/llms/ai21"}, "WandbCallbackHandler": {"Weights & Biases": "https://python.langchain.com/docs/integrations/providers/wandb_tracking"}, "ObsidianLoader": {"Obsidian": "https://python.langchain.com/docs/integrations/document_loaders/obsidian"}, "create_sql_agent": {"CnosDB": "https://python.langchain.com/docs/integrations/providers/cnosdb", "SQL Database Agent": "https://python.langchain.com/docs/integrations/toolkits/sql_database"}, "SQLDatabaseToolkit": {"CnosDB": "https://python.langchain.com/docs/integrations/providers/cnosdb", "SQL Database Agent": "https://python.langchain.com/docs/integrations/toolkits/sql_database", "Use ToolKits with OpenAI Functions": "https://python.langchain.com/docs/modules/agents/how_to/use_toolkits_with_openai_functions"}, "OpenAIModerationChain": {"OpenAI": "https://python.langchain.com/docs/integrations/providers/openai"}, "ChatGPTLoader": {"OpenAI": "https://python.langchain.com/docs/integrations/providers/openai", "ChatGPT Data": "https://python.langchain.com/docs/integrations/document_loaders/chatgpt_loader"}, "AZLyricsLoader": {"AZLyrics": "https://python.langchain.com/docs/integrations/document_loaders/azlyrics"}, "ToMarkdownLoader": {"2Markdown": "https://python.langchain.com/docs/integrations/document_loaders/tomarkdown"}, "GitLoader": {"Git": "https://python.langchain.com/docs/integrations/document_loaders/git"}, "InfinoCallbackHandler": {"Infino": "https://python.langchain.com/docs/integrations/providers/infino"}, "MlflowAIGateway": {"MLflow AI Gateway": "https://python.langchain.com/docs/integrations/providers/mlflow_ai_gateway"}, "MlflowAIGatewayEmbeddings": {"MLflow AI Gateway": "https://python.langchain.com/docs/integrations/providers/mlflow_ai_gateway"}, "ChatMLflowAIGateway": {"MLflow AI Gateway": "https://python.langchain.com/docs/integrations/providers/mlflow_ai_gateway"}, "SingleStoreDB": {"SingleStoreDB": "https://python.langchain.com/docs/integrations/vectorstores/singlestoredb"}, "Tigris": {"Tigris": "https://python.langchain.com/docs/integrations/vectorstores/tigris"}, "S3DirectoryLoader": {"AWS S3 Directory": "https://python.langchain.com/docs/integrations/document_loaders/aws_s3_directory"}, "S3FileLoader": {"AWS S3 Directory": "https://python.langchain.com/docs/integrations/providers/aws_s3", "AWS S3 File": "https://python.langchain.com/docs/integrations/document_loaders/aws_s3_file"}, "SQLDatabase": {"Rebuff": "https://python.langchain.com/docs/integrations/providers/rebuff", "SQL Database Agent": "https://python.langchain.com/docs/integrations/toolkits/sql_database", "SQL Query": "https://python.langchain.com/docs/use_cases/tabular/sql_query"}, "Weaviate": {"Weaviate": "https://python.langchain.com/docs/integrations/vectorstores/weaviate", "Weaviate self-querying ": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/weaviate_self_query"}, "AirbyteJSONLoader": {"Airbyte": "https://python.langchain.com/docs/integrations/providers/airbyte", "Airbyte JSON": "https://python.langchain.com/docs/integrations/document_loaders/airbyte_json"}, "TelegramChatFileLoader": {"Telegram": "https://python.langchain.com/docs/integrations/document_loaders/telegram"}, "TelegramChatApiLoader": {"Telegram": "https://python.langchain.com/docs/integrations/document_loaders/telegram"}, "PredictionGuard": {"Prediction Guard": "https://python.langchain.com/docs/integrations/llms/predictionguard"}, "NotionDirectoryLoader": {"Notion DB": "https://python.langchain.com/docs/integrations/providers/notion", "Notion DB 1/2": "https://python.langchain.com/docs/integrations/document_loaders/notion", "Context aware text splitting and QA / Chat": "https://python.langchain.com/docs/use_cases/question_answering/document-context-aware-QA", "Perform context-aware text splitting": "https://python.langchain.com/docs/use_cases/question_answering/how_to/document-context-aware-QA"}, "NotionDBLoader": {"Notion DB": "https://python.langchain.com/docs/integrations/providers/notion", "Notion DB 2/2": "https://python.langchain.com/docs/integrations/document_loaders/notiondb"}, "MWDumpLoader": {"MediaWikiDump": "https://python.langchain.com/docs/integrations/document_loaders/mediawikidump"}, "BraveSearchLoader": {"Brave Search": "https://python.langchain.com/docs/integrations/document_loaders/brave_search"}, "StarRocks": {"StarRocks": "https://python.langchain.com/docs/integrations/vectorstores/starrocks"}, "DatadogLogsLoader": {"Datadog Logs": "https://python.langchain.com/docs/integrations/document_loaders/datadog_logs"}, "ApifyDatasetLoader": {"Apify": "https://python.langchain.com/docs/integrations/providers/apify", "Apify Dataset": "https://python.langchain.com/docs/integrations/document_loaders/apify_dataset"}, "NLPCloud": {"NLPCloud": "https://python.langchain.com/docs/integrations/providers/nlpcloud", "NLP Cloud": "https://python.langchain.com/docs/integrations/llms/nlpcloud"}, "Milvus": {"Milvus": "https://python.langchain.com/docs/integrations/vectorstores/milvus", "Zilliz": "https://python.langchain.com/docs/integrations/vectorstores/zilliz"}, "Qdrant": {"Qdrant": "https://python.langchain.com/docs/integrations/vectorstores/qdrant", "Qdrant self-querying ": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/qdrant_self_query"}, "GitbookLoader": {"GitBook": "https://python.langchain.com/docs/integrations/document_loaders/gitbook"}, "OpenSearchVectorSearch": {"OpenSearch": "https://python.langchain.com/docs/integrations/vectorstores/opensearch"}, "Pinecone": {"Pinecone": "https://python.langchain.com/docs/integrations/vectorstores/pinecone", "Self-querying with Pinecone": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/pinecone"}, "Rockset": {"Rockset": "https://python.langchain.com/docs/integrations/vectorstores/rockset"}, "Minimax": {"Minimax": "https://python.langchain.com/docs/integrations/llms/minimax"}, "UnstructuredFileLoader": {"Unstructured": "https://python.langchain.com/docs/integrations/providers/unstructured", "Unstructured File": "https://python.langchain.com/docs/integrations/document_loaders/unstructured_file"}, "SelfHostedPipeline": {"Runhouse": "https://python.langchain.com/docs/integrations/llms/runhouse"}, "SelfHostedHuggingFaceLLM": {"Runhouse": "https://python.langchain.com/docs/integrations/llms/runhouse"}, "MlflowCallbackHandler": {"MLflow": "https://python.langchain.com/docs/integrations/providers/mlflow_tracking"}, "SpreedlyLoader": {"Spreedly": "https://python.langchain.com/docs/integrations/document_loaders/spreedly"}, "OpenLLM": {"OpenLLM": "https://python.langchain.com/docs/integrations/llms/openllm"}, "SearxSearchResults": {"SearxNG Search API": "https://python.langchain.com/docs/integrations/providers/searx"}, "SpacyTextSplitter": {"spaCy": "https://python.langchain.com/docs/integrations/providers/spacy", "Atlas": "https://python.langchain.com/docs/integrations/vectorstores/atlas", "Split by tokens ": "https://python.langchain.com/docs/modules/data_connection/document_transformers/text_splitters/split_by_token"}, "Modal": {"Modal": "https://python.langchain.com/docs/integrations/llms/modal"}, "Xinference": {"Xorbits Inference (Xinference)": "https://python.langchain.com/docs/integrations/llms/xinference"}, "IFixitLoader": {"iFixit": "https://python.langchain.com/docs/integrations/document_loaders/ifixit"}, "AlephAlpha": {"Aleph Alpha": "https://python.langchain.com/docs/integrations/llms/aleph_alpha"}, "PipelineAI": {"PipelineAI": "https://python.langchain.com/docs/integrations/llms/pipelineai_example"}, "LlamaCpp": {"Llama.cpp": "https://python.langchain.com/docs/integrations/providers/llamacpp", "Llama-cpp": "https://python.langchain.com/docs/integrations/llms/llamacpp", "Running LLMs locally": "https://python.langchain.com/docs/use_cases/question_answering/local_retrieval_qa", "Use local LLMs": "https://python.langchain.com/docs/use_cases/question_answering/how_to/local_retrieval_qa", "WebResearchRetriever": "https://python.langchain.com/docs/modules/data_connection/retrievers/web_research"}, "AwaDB": {"AwaDB": "https://python.langchain.com/docs/integrations/vectorstores/awadb"}, "ArxivLoader": {"Arxiv": "https://python.langchain.com/docs/integrations/document_loaders/arxiv"}, "Anyscale": {"Anyscale": "https://python.langchain.com/docs/integrations/llms/anyscale"}, "StripeLoader": {"Stripe": "https://python.langchain.com/docs/integrations/document_loaders/stripe"}, "BlackboardLoader": {"Blackboard": "https://python.langchain.com/docs/integrations/document_loaders/blackboard"}, "WhatsAppChatLoader": {"WhatsApp": "https://python.langchain.com/docs/integrations/providers/whatsapp", "WhatsApp Chat": "https://python.langchain.com/docs/integrations/document_loaders/whatsapp_chat"}, "LanceDB": {"LanceDB": "https://python.langchain.com/docs/integrations/vectorstores/lancedb"}, "OneDriveLoader": {"Microsoft OneDrive": "https://python.langchain.com/docs/integrations/document_loaders/microsoft_onedrive"}, "AnalyticDB": {"AnalyticDB": "https://python.langchain.com/docs/integrations/vectorstores/analyticdb"}, "YoutubeLoader": {"YouTube": "https://python.langchain.com/docs/integrations/providers/youtube", "YouTube transcripts": "https://python.langchain.com/docs/integrations/document_loaders/youtube_transcript"}, "GoogleApiYoutubeLoader": {"YouTube": "https://python.langchain.com/docs/integrations/providers/youtube", "YouTube transcripts": "https://python.langchain.com/docs/integrations/document_loaders/youtube_transcript"}, "PromptLayerOpenAI": {"PromptLayer": "https://python.langchain.com/docs/integrations/providers/promptlayer", "PromptLayer OpenAI": "https://python.langchain.com/docs/integrations/llms/promptlayer_openai"}, "DeepLake": {"Deep Lake": "https://python.langchain.com/docs/integrations/providers/deeplake", "Activeloop's Deep Lake": "https://python.langchain.com/docs/integrations/vectorstores/deeplake", "Question answering over a group chat messages using Activeloop's DeepLake": "https://python.langchain.com/docs/use_cases/question_answering/semantic-search-over-chat", "QA using Activeloop's DeepLake": "https://python.langchain.com/docs/use_cases/question_answering/integrations/semantic-search-over-chat", "Analysis of Twitter the-algorithm source code with LangChain, GPT4 and Activeloop's Deep Lake": "https://python.langchain.com/docs/use_cases/code/twitter-the-algorithm-analysis-deeplake", "Use LangChain, GPT and Activeloop's Deep Lake to work with code base": "https://python.langchain.com/docs/use_cases/code/code-analysis-deeplake", "DeepLake self-querying ": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/deeplake_self_query"}, "WhyLabsCallbackHandler": {"WhyLabs": "https://python.langchain.com/docs/integrations/providers/whylabs_profiling"}, "FlyteCallbackHandler": {"Flyte": "https://python.langchain.com/docs/integrations/providers/flyte"}, "ManifestWrapper": {"Hazy Research": "https://python.langchain.com/docs/integrations/providers/hazy_research", "Manifest": "https://python.langchain.com/docs/integrations/llms/manifest"}, "Marqo": {"Marqo": "https://python.langchain.com/docs/integrations/vectorstores/marqo"}, "IMSDbLoader": {"IMSDb": "https://python.langchain.com/docs/integrations/document_loaders/imsdb"}, "PGVector": {"PGVector": "https://python.langchain.com/docs/integrations/vectorstores/pgvector"}, "DeepInfra": {"DeepInfra": "https://python.langchain.com/docs/integrations/llms/deepinfra_example"}, "AgentExecutor": {"Jina": "https://python.langchain.com/docs/integrations/providers/jina", "PowerBI Dataset Agent": "https://python.langchain.com/docs/integrations/toolkits/powerbi", "SQL Database Agent": "https://python.langchain.com/docs/integrations/toolkits/sql_database", "JSON Agent": "https://python.langchain.com/docs/integrations/toolkits/json", "BabyAGI with Tools": "https://python.langchain.com/docs/use_cases/agents/baby_agi_with_agent", "Plug-and-Plai": "https://python.langchain.com/docs/use_cases/agents/custom_agent_with_plugin_retrieval_using_plugnplai", "Wikibase Agent": "https://python.langchain.com/docs/use_cases/agents/wikibase_agent", "SalesGPT - Your Context-Aware AI Sales Assistant With Knowledge Base": "https://python.langchain.com/docs/use_cases/agents/sales_agent_with_context", "Custom Agent with PlugIn Retrieval": "https://python.langchain.com/docs/use_cases/agents/custom_agent_with_plugin_retrieval", "Adding Message Memory backed by a database to an Agent": "https://python.langchain.com/docs/modules/memory/agent_with_memory_in_db", "How to add Memory to an Agent": "https://python.langchain.com/docs/modules/memory/agent_with_memory", "Custom MRKL agent": "https://python.langchain.com/docs/modules/agents/how_to/custom_mrkl_agent", "Shared memory across agents and tools": "https://python.langchain.com/docs/modules/agents/how_to/sharedmemory_for_tools", "Custom multi-action agent": "https://python.langchain.com/docs/modules/agents/how_to/custom_multi_action_agent", "Running Agent as an Iterator": "https://python.langchain.com/docs/modules/agents/how_to/agent_iter", "Custom agent": "https://python.langchain.com/docs/modules/agents/how_to/custom_agent", "Custom agent with tool retrieval": "https://python.langchain.com/docs/modules/agents/how_to/custom_agent_with_tool_retrieval"}, "ZeroShotAgent": {"Jina": "https://python.langchain.com/docs/integrations/providers/jina", "BabyAGI with Tools": "https://python.langchain.com/docs/use_cases/agents/baby_agi_with_agent", "Adding Message Memory backed by a database to an Agent": "https://python.langchain.com/docs/modules/memory/agent_with_memory_in_db", "How to add Memory to an Agent": "https://python.langchain.com/docs/modules/memory/agent_with_memory", "Custom MRKL agent": "https://python.langchain.com/docs/modules/agents/how_to/custom_mrkl_agent", "Shared memory across agents and tools": "https://python.langchain.com/docs/modules/agents/how_to/sharedmemory_for_tools"}, "RedditPostsLoader": {"Reddit": "https://python.langchain.com/docs/integrations/document_loaders/reddit"}, "TrelloLoader": {"Trello": "https://python.langchain.com/docs/integrations/document_loaders/trello"}, "AtlasDB": {"AtlasDB": "https://python.langchain.com/docs/integrations/providers/atlas", "Atlas": "https://python.langchain.com/docs/integrations/vectorstores/atlas"}, "SKLearnVectorStore": {"scikit-learn": "https://python.langchain.com/docs/integrations/vectorstores/sklearn"}, "EverNoteLoader": {"EverNote": "https://python.langchain.com/docs/integrations/document_loaders/evernote"}, "TwitterTweetLoader": {"Twitter": "https://python.langchain.com/docs/integrations/document_loaders/twitter"}, "DiscordChatLoader": {"Discord": "https://python.langchain.com/docs/integrations/document_loaders/discord"}, "RedisCache": {"Redis": "https://python.langchain.com/docs/integrations/providers/redis", "Caching integrations": "https://python.langchain.com/docs/integrations/llms/llm_caching"}, "RedisSemanticCache": {"Redis": "https://python.langchain.com/docs/integrations/providers/redis", "Caching integrations": "https://python.langchain.com/docs/integrations/llms/llm_caching"}, "Redis": {"Redis": "https://python.langchain.com/docs/integrations/vectorstores/redis"}, "SelfQueryRetriever": {"Chroma": "https://python.langchain.com/docs/integrations/providers/chroma", "Docugami": "https://python.langchain.com/docs/integrations/document_loaders/docugami", "Context aware text splitting and QA / Chat": "https://python.langchain.com/docs/use_cases/question_answering/document-context-aware-QA", "Perform context-aware text splitting": "https://python.langchain.com/docs/use_cases/question_answering/how_to/document-context-aware-QA", "Weaviate self-querying ": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/weaviate_self_query", "Chroma self-querying ": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/chroma_self_query", "DeepLake self-querying ": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/deeplake_self_query", "Self-querying with Pinecone": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/pinecone", "Self-querying with MyScale": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/myscale_self_query", "Qdrant self-querying ": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/qdrant_self_query"}, "ClearMLCallbackHandler": {"ClearML": "https://python.langchain.com/docs/integrations/providers/clearml_tracking"}, "Cohere": {"Cohere": "https://python.langchain.com/docs/integrations/llms/cohere"}, "SlackDirectoryLoader": {"Slack": "https://python.langchain.com/docs/integrations/document_loaders/slack"}, "LLMContentHandler": {"SageMaker Endpoint": "https://python.langchain.com/docs/integrations/providers/sagemaker_endpoint", "SageMakerEndpoint": "https://python.langchain.com/docs/integrations/llms/sagemaker"}, "ContentHandlerBase": {"SageMaker Endpoint": "https://python.langchain.com/docs/integrations/providers/sagemaker_endpoint"}, "HNLoader": {"Hacker News": "https://python.langchain.com/docs/integrations/document_loaders/hacker_news"}, "Annoy": {"Annoy": "https://python.langchain.com/docs/integrations/vectorstores/annoy"}, "GCSDirectoryLoader": {"Google Cloud Storage": "https://python.langchain.com/docs/integrations/providers/google_cloud_storage", "Google Cloud Storage Directory": "https://python.langchain.com/docs/integrations/document_loaders/google_cloud_storage_directory"}, "GCSFileLoader": {"Google Cloud Storage": "https://python.langchain.com/docs/integrations/providers/google_cloud_storage", "Google Cloud Storage File": "https://python.langchain.com/docs/integrations/document_loaders/google_cloud_storage_file"}, "ArthurCallbackHandler": {"Arthur": "https://python.langchain.com/docs/integrations/providers/arthur_tracking"}, "DuckDBLoader": {"DuckDB": "https://python.langchain.com/docs/integrations/document_loaders/duckdb"}, "Petals": {"Petals": "https://python.langchain.com/docs/integrations/llms/petals_example"}, "MomentoCache": {"Momento": "https://python.langchain.com/docs/integrations/providers/momento", "Caching integrations": "https://python.langchain.com/docs/integrations/llms/llm_caching"}, "AirtableLoader": {"Airtable": "https://python.langchain.com/docs/integrations/document_loaders/airtable"}, "Clarifai": {"Clarifai": "https://python.langchain.com/docs/integrations/llms/clarifai"}, "BigQueryLoader": {"Google BigQuery": "https://python.langchain.com/docs/integrations/document_loaders/google_bigquery"}, "RoamLoader": {"Roam": "https://python.langchain.com/docs/integrations/document_loaders/roam"}, "Portkey": {"Log, Trace, and Monitor Langchain LLM Calls": "https://python.langchain.com/docs/integrations/providers/portkey/logging_tracing_portkey", "Portkey": "https://python.langchain.com/docs/integrations/providers/portkey/index"}, "Vectara": {"Vectara": "https://python.langchain.com/docs/integrations/vectorstores/vectara", "Chat Over Documents with Vectara": "https://python.langchain.com/docs/integrations/providers/vectara/vectara_chat", "Vectara Text Generation": "https://python.langchain.com/docs/integrations/providers/vectara/vectara_text_generation"}, "VectaraRetriever": {"Chat Over Documents with Vectara": "https://python.langchain.com/docs/integrations/providers/vectara/vectara_chat"}, "load_qa_chain": {"Chat Over Documents with Vectara": "https://python.langchain.com/docs/integrations/providers/vectara/vectara_chat", "SageMakerEndpoint": "https://python.langchain.com/docs/integrations/llms/sagemaker", "QA over Documents": "https://python.langchain.com/docs/use_cases/question_answering/index", "Running LLMs locally": "https://python.langchain.com/docs/use_cases/question_answering/local_retrieval_qa", "Use local LLMs": "https://python.langchain.com/docs/use_cases/question_answering/how_to/local_retrieval_qa", "WebResearchRetriever": "https://python.langchain.com/docs/modules/data_connection/retrievers/web_research", "How to add memory to a Multi-Input Chain": "https://python.langchain.com/docs/modules/memory/adding_memory_chain_multiple_inputs"}, "CONDENSE_QUESTION_PROMPT": {"Chat Over Documents with Vectara": "https://python.langchain.com/docs/integrations/providers/vectara/vectara_chat"}, "load_qa_with_sources_chain": {"Chat Over Documents with Vectara": "https://python.langchain.com/docs/integrations/providers/vectara/vectara_chat", "!pip install bs4": "https://python.langchain.com/docs/use_cases/autonomous_agents/marathon_times"}, "QA_PROMPT": {"Chat Over Documents with Vectara": "https://python.langchain.com/docs/integrations/providers/vectara/vectara_chat"}, "create_csv_agent": {"CSV Agent": "https://python.langchain.com/docs/integrations/toolkits/csv"}, "create_xorbits_agent": {"Xorbits Agent": "https://python.langchain.com/docs/integrations/toolkits/xorbits"}, "JiraToolkit": {"Jira": "https://python.langchain.com/docs/integrations/toolkits/jira"}, "JiraAPIWrapper": {"Jira": "https://python.langchain.com/docs/integrations/toolkits/jira"}, "create_spark_dataframe_agent": {"Spark Dataframe Agent": "https://python.langchain.com/docs/integrations/toolkits/spark"}, "PyPDFLoader": {"Document Comparison": "https://python.langchain.com/docs/integrations/toolkits/document_comparison_toolkit", "MergeDocLoader": "https://python.langchain.com/docs/integrations/document_loaders/merge_doc_loader", "Question answering over a group chat messages using Activeloop's DeepLake": "https://python.langchain.com/docs/use_cases/question_answering/semantic-search-over-chat", "QA using Activeloop's DeepLake": "https://python.langchain.com/docs/use_cases/question_answering/integrations/semantic-search-over-chat"}, "create_python_agent": {"Python Agent": "https://python.langchain.com/docs/integrations/toolkits/python"}, "PythonREPLTool": {"Python Agent": "https://python.langchain.com/docs/integrations/toolkits/python"}, "create_pbi_agent": {"PowerBI Dataset Agent": "https://python.langchain.com/docs/integrations/toolkits/powerbi"}, "PowerBIToolkit": {"PowerBI Dataset Agent": "https://python.langchain.com/docs/integrations/toolkits/powerbi"}, "PowerBIDataset": {"PowerBI Dataset Agent": "https://python.langchain.com/docs/integrations/toolkits/powerbi"}, "AzureCognitiveServicesToolkit": {"Azure Cognitive Services Toolkit": "https://python.langchain.com/docs/integrations/toolkits/azure_cognitive_services"}, "Requests": {"Natural Language APIs": "https://python.langchain.com/docs/integrations/toolkits/openapi_nla", "Evaluating an OpenAPI Chain": "https://python.langchain.com/docs/guides/evaluation/examples/openapi_eval", "OpenAPI chain": "https://python.langchain.com/docs/modules/chains/additional/openapi"}, "APIOperation": {"Natural Language APIs": "https://python.langchain.com/docs/integrations/toolkits/openapi_nla", "Evaluating an OpenAPI Chain": "https://python.langchain.com/docs/guides/evaluation/examples/openapi_eval", "OpenAPI chain": "https://python.langchain.com/docs/modules/chains/additional/openapi"}, "OpenAPISpec": {"Natural Language APIs": "https://python.langchain.com/docs/integrations/toolkits/openapi_nla", "Evaluating an OpenAPI Chain": "https://python.langchain.com/docs/guides/evaluation/examples/openapi_eval", "OpenAPI chain": "https://python.langchain.com/docs/modules/chains/additional/openapi"}, "NLAToolkit": {"Natural Language APIs": "https://python.langchain.com/docs/integrations/toolkits/openapi_nla", "Plug-and-Plai": "https://python.langchain.com/docs/use_cases/agents/custom_agent_with_plugin_retrieval_using_plugnplai", "Custom Agent with PlugIn Retrieval": "https://python.langchain.com/docs/use_cases/agents/custom_agent_with_plugin_retrieval"}, "GmailToolkit": {"Gmail Toolkit": "https://python.langchain.com/docs/integrations/toolkits/gmail"}, "build_resource_service": {"Gmail Toolkit": "https://python.langchain.com/docs/integrations/toolkits/gmail"}, "get_gmail_credentials": {"Gmail Toolkit": "https://python.langchain.com/docs/integrations/toolkits/gmail"}, "create_json_agent": {"JSON Agent": "https://python.langchain.com/docs/integrations/toolkits/json"}, "JsonToolkit": {"JSON Agent": "https://python.langchain.com/docs/integrations/toolkits/json"}, "JsonSpec": {"JSON Agent": "https://python.langchain.com/docs/integrations/toolkits/json", "OpenAPI agents": "https://python.langchain.com/docs/integrations/toolkits/openapi"}, "GitHubToolkit": {"Github Toolkit": "https://python.langchain.com/docs/integrations/toolkits/github"}, "GitHubAPIWrapper": {"Github Toolkit": "https://python.langchain.com/docs/integrations/toolkits/github"}, "GitHubAction": {"Github Toolkit": "https://python.langchain.com/docs/integrations/toolkits/github"}, "create_spark_sql_agent": {"Spark SQL Agent": "https://python.langchain.com/docs/integrations/toolkits/spark_sql"}, "SparkSQLToolkit": {"Spark SQL Agent": "https://python.langchain.com/docs/integrations/toolkits/spark_sql"}, "SparkSQL": {"Spark SQL Agent": "https://python.langchain.com/docs/integrations/toolkits/spark_sql"}, "create_sync_playwright_browser": {"PlayWright Browser Toolkit": "https://python.langchain.com/docs/integrations/toolkits/playwright"}, "O365Toolkit": {"Office365 Toolkit": "https://python.langchain.com/docs/integrations/toolkits/office365"}, "create_pandas_dataframe_agent": {"Pandas Dataframe Agent": "https://python.langchain.com/docs/integrations/toolkits/pandas", "!pip install bs4": "https://python.langchain.com/docs/use_cases/autonomous_agents/marathon_times"}, "create_multion_agent": {"Multion Toolkit": "https://python.langchain.com/docs/integrations/toolkits/multion"}, "MultionClientTool": {"Multion Toolkit": "https://python.langchain.com/docs/integrations/toolkits/multion"}, "AmadeusToolkit": {"Amadeus Toolkit": "https://python.langchain.com/docs/integrations/toolkits/amadeus"}, "WebBaseLoader": {"Vectorstore Agent": "https://python.langchain.com/docs/integrations/toolkits/vectorstore", "WebBaseLoader": "https://python.langchain.com/docs/integrations/document_loaders/web_base", "MergeDocLoader": "https://python.langchain.com/docs/integrations/document_loaders/merge_doc_loader", "QA over Documents": "https://python.langchain.com/docs/use_cases/question_answering/index", "Running LLMs locally": "https://python.langchain.com/docs/use_cases/question_answering/local_retrieval_qa", "Use local LLMs": "https://python.langchain.com/docs/use_cases/question_answering/how_to/local_retrieval_qa", "MultiQueryRetriever": "https://python.langchain.com/docs/modules/data_connection/retrievers/MultiQueryRetriever", "Combine agents and vector stores": "https://python.langchain.com/docs/modules/agents/how_to/agent_vectorstore"}, "create_vectorstore_agent": {"Vectorstore Agent": "https://python.langchain.com/docs/integrations/toolkits/vectorstore"}, "VectorStoreToolkit": {"Vectorstore Agent": "https://python.langchain.com/docs/integrations/toolkits/vectorstore"}, "VectorStoreInfo": {"Vectorstore Agent": "https://python.langchain.com/docs/integrations/toolkits/vectorstore"}, "create_vectorstore_router_agent": {"Vectorstore Agent": "https://python.langchain.com/docs/integrations/toolkits/vectorstore"}, "VectorStoreRouterToolkit": {"Vectorstore Agent": "https://python.langchain.com/docs/integrations/toolkits/vectorstore"}, "reduce_openapi_spec": {"OpenAPI agents": "https://python.langchain.com/docs/integrations/toolkits/openapi"}, "RequestsWrapper": {"OpenAPI agents": "https://python.langchain.com/docs/integrations/toolkits/openapi"}, "create_openapi_agent": {"OpenAPI agents": "https://python.langchain.com/docs/integrations/toolkits/openapi"}, "OpenAPIToolkit": {"OpenAPI agents": "https://python.langchain.com/docs/integrations/toolkits/openapi"}, "RetrievalQAWithSourcesChain": {"Weaviate": "https://python.langchain.com/docs/integrations/vectorstores/weaviate", "Marqo": "https://python.langchain.com/docs/integrations/vectorstores/marqo", "Psychic": "https://python.langchain.com/docs/integrations/document_loaders/psychic", "QA over Documents": "https://python.langchain.com/docs/use_cases/question_answering/index", "WebResearchRetriever": "https://python.langchain.com/docs/modules/data_connection/retrievers/web_research"}, "MatchingEngine": {"MatchingEngine": "https://python.langchain.com/docs/integrations/vectorstores/matchingengine"}, "OpenAIChat": {"Activeloop's Deep Lake": "https://python.langchain.com/docs/integrations/vectorstores/deeplake"}, "InMemoryDocstore": {"Annoy": "https://python.langchain.com/docs/integrations/vectorstores/annoy", "AutoGPT": "https://python.langchain.com/docs/use_cases/autonomous_agents/autogpt", "BabyAGI User Guide": "https://python.langchain.com/docs/use_cases/agents/baby_agi", "BabyAGI with Tools": "https://python.langchain.com/docs/use_cases/agents/baby_agi_with_agent", "!pip install bs4": "https://python.langchain.com/docs/use_cases/autonomous_agents/marathon_times", "Generative Agents in LangChain": "https://python.langchain.com/docs/use_cases/agent_simulations/characters"}, "AlibabaCloudOpenSearch": {"Alibaba Cloud OpenSearch": "https://python.langchain.com/docs/integrations/vectorstores/alibabacloud_opensearch"}, "AlibabaCloudOpenSearchSettings": {"Alibaba Cloud OpenSearch": "https://python.langchain.com/docs/integrations/vectorstores/alibabacloud_opensearch"}, "StarRocksSettings": {"StarRocks": "https://python.langchain.com/docs/integrations/vectorstores/starrocks"}, "TokenTextSplitter": {"StarRocks": "https://python.langchain.com/docs/integrations/vectorstores/starrocks", "Split by tokens ": "https://python.langchain.com/docs/modules/data_connection/document_transformers/text_splitters/split_by_token"}, "DirectoryLoader": {"StarRocks": "https://python.langchain.com/docs/integrations/vectorstores/starrocks"}, "UnstructuredMarkdownLoader": {"StarRocks": "https://python.langchain.com/docs/integrations/vectorstores/starrocks"}, "DocArrayHnswSearch": {"DocArrayHnswSearch": "https://python.langchain.com/docs/integrations/vectorstores/docarray_hnsw"}, "MyScaleSettings": {"MyScale": "https://python.langchain.com/docs/integrations/vectorstores/myscale"}, "Clickhouse": {"ClickHouse Vector Search": "https://python.langchain.com/docs/integrations/vectorstores/clickhouse"}, "ClickhouseSettings": {"ClickHouse Vector Search": "https://python.langchain.com/docs/integrations/vectorstores/clickhouse"}, "SupabaseVectorStore": {"Supabase (Postgres)": "https://python.langchain.com/docs/integrations/vectorstores/supabase"}, "AzureSearch": {"Azure Cognitive Search": "https://python.langchain.com/docs/integrations/vectorstores/azuresearch"}, "Cassandra": {"Cassandra": "https://python.langchain.com/docs/integrations/vectorstores/cassandra"}, "ElasticVectorSearch": {"ElasticSearch": "https://python.langchain.com/docs/integrations/vectorstores/elasticsearch", "How to add memory to a Multi-Input Chain": "https://python.langchain.com/docs/modules/memory/adding_memory_chain_multiple_inputs"}, "ElasticKnnSearch": {"ElasticSearch": "https://python.langchain.com/docs/integrations/vectorstores/elasticsearch"}, "DocArrayInMemorySearch": {"DocArrayInMemorySearch": "https://python.langchain.com/docs/integrations/vectorstores/docarray_in_memory"}, "PGEmbedding": {"pg_embedding": "https://python.langchain.com/docs/integrations/vectorstores/pgembedding"}, "MongoDBAtlasVectorSearch": {"MongoDB Atlas": "https://python.langchain.com/docs/integrations/vectorstores/mongodb_atlas"}, "Meilisearch": {"Meilisearch": "https://python.langchain.com/docs/integrations/vectorstores/meilisearch"}, "create_metadata_tagger": {"OpenAI Functions Metadata Tagger": "https://python.langchain.com/docs/integrations/document_transformers/openai_metadata_tagger"}, "AsyncHtmlLoader": {"html2text": "https://python.langchain.com/docs/integrations/document_transformers/html2text", "AsyncHtmlLoader": "https://python.langchain.com/docs/integrations/document_loaders/async_html"}, "Html2TextTransformer": {"html2text": "https://python.langchain.com/docs/integrations/document_transformers/html2text"}, "DoctranPropertyExtractor": {"Doctran Extract Properties": "https://python.langchain.com/docs/integrations/document_transformers/doctran_extract_properties"}, "DoctranQATransformer": {"Doctran Interrogate Documents": "https://python.langchain.com/docs/integrations/document_transformers/doctran_interrogate_document"}, "DoctranTextTranslator": {"Doctran Translate Documents": "https://python.langchain.com/docs/integrations/document_transformers/doctran_translate_document"}, "SnowflakeLoader": {"Snowflake": "https://python.langchain.com/docs/integrations/document_loaders/snowflake"}, "AcreomLoader": {"acreom": "https://python.langchain.com/docs/integrations/document_loaders/acreom"}, "UnstructuredCSVLoader": {"CSV": "https://python.langchain.com/docs/integrations/document_loaders/csv"}, "XorbitsLoader": {"Xorbits Pandas DataFrame": "https://python.langchain.com/docs/integrations/document_loaders/xorbits"}, "UnstructuredEmailLoader": {"Email": "https://python.langchain.com/docs/integrations/document_loaders/email"}, "OutlookMessageLoader": {"Email": "https://python.langchain.com/docs/integrations/document_loaders/email"}, "BlockchainDocumentLoader": {"Blockchain": "https://python.langchain.com/docs/integrations/document_loaders/blockchain"}, "BlockchainType": {"Blockchain": "https://python.langchain.com/docs/integrations/document_loaders/blockchain"}, "RecursiveUrlLoader": {"Recursive URL Loader": "https://python.langchain.com/docs/integrations/document_loaders/recursive_url_loader"}, "JoplinLoader": {"Joplin": "https://python.langchain.com/docs/integrations/document_loaders/joplin"}, "EtherscanLoader": {"Etherscan Loader": "https://python.langchain.com/docs/integrations/document_loaders/Etherscan"}, "Docx2txtLoader": {"Microsoft Word": "https://python.langchain.com/docs/integrations/document_loaders/microsoft_word"}, "OpenAIWhisperParser": {"Loading documents from a YouTube url": "https://python.langchain.com/docs/integrations/document_loaders/youtube_audio"}, "YoutubeAudioLoader": {"Loading documents from a YouTube url": "https://python.langchain.com/docs/integrations/document_loaders/youtube_audio"}, "UnstructuredURLLoader": {"URL": "https://python.langchain.com/docs/integrations/document_loaders/url"}, "SeleniumURLLoader": {"URL": "https://python.langchain.com/docs/integrations/document_loaders/url"}, "PlaywrightURLLoader": {"URL": "https://python.langchain.com/docs/integrations/document_loaders/url"}, "OpenCityDataLoader": {"Geopandas": "https://python.langchain.com/docs/integrations/document_loaders/geopandas", "Open City Data": "https://python.langchain.com/docs/integrations/document_loaders/open_city_data"}, "GeoDataFrameLoader": {"Geopandas": "https://python.langchain.com/docs/integrations/document_loaders/geopandas"}, "HuggingFaceDatasetLoader": {"HuggingFace dataset": "https://python.langchain.com/docs/integrations/document_loaders/hugging_face_dataset"}, "DropboxLoader": {"Dropbox": "https://python.langchain.com/docs/modules/data_connection/document_loaders/integrations/dropbox"}, "MHTMLLoader": {"mhtml": "https://python.langchain.com/docs/integrations/document_loaders/mhtml"}, "RocksetLoader": {"Rockset": "https://python.langchain.com/docs/integrations/document_loaders/rockset"}, "ImageCaptionLoader": {"Image captions": "https://python.langchain.com/docs/integrations/document_loaders/image_captions"}, "UnstructuredRSTLoader": {"RST": "https://python.langchain.com/docs/integrations/document_loaders/rst"}, "ConversationBufferWindowMemory": {"Figma": "https://python.langchain.com/docs/integrations/document_loaders/figma", "Meta-Prompt": "https://python.langchain.com/docs/use_cases/autonomous_agents/meta_prompt", "Voice Assistant": "https://python.langchain.com/docs/use_cases/chatbots/voice_assistant", "Create ChatGPT clone": "https://python.langchain.com/docs/modules/agents/how_to/chatgpt_clone"}, "UnstructuredImageLoader": {"Images": "https://python.langchain.com/docs/integrations/document_loaders/image"}, "TencentCOSFileLoader": {"Tencent COS File": "https://python.langchain.com/docs/integrations/document_loaders/tencent_cos_file"}, "TomlLoader": {"TOML": "https://python.langchain.com/docs/integrations/document_loaders/toml"}, "UnstructuredAPIFileLoader": {"Unstructured File": "https://python.langchain.com/docs/integrations/document_loaders/unstructured_file"}, "PsychicLoader": {"Psychic": "https://python.langchain.com/docs/integrations/document_loaders/psychic"}, "TencentCOSDirectoryLoader": {"Tencent COS Directory": "https://python.langchain.com/docs/integrations/document_loaders/tencent_cos_directory"}, "GitHubIssuesLoader": {"GitHub": "https://python.langchain.com/docs/integrations/document_loaders/github"}, "UnstructuredOrgModeLoader": {"Org-mode": "https://python.langchain.com/docs/integrations/document_loaders/org_mode"}, "LarkSuiteDocLoader": {"LarkSuite (FeiShu)": "https://python.langchain.com/docs/integrations/document_loaders/larksuite"}, "load_summarize_chain": {"LarkSuite (FeiShu)": "https://python.langchain.com/docs/integrations/document_loaders/larksuite", "Caching integrations": "https://python.langchain.com/docs/integrations/llms/llm_caching", "Summarization": "https://python.langchain.com/docs/use_cases/summarization/index"}, "IuguLoader": {"Iugu": "https://python.langchain.com/docs/integrations/document_loaders/iugu"}, "UnstructuredEPubLoader": {"EPub ": "https://python.langchain.com/docs/integrations/document_loaders/epub"}, "AttributeInfo": {"Docugami": "https://python.langchain.com/docs/integrations/document_loaders/docugami", "Context aware text splitting and QA / Chat": "https://python.langchain.com/docs/use_cases/question_answering/document-context-aware-QA", "Perform context-aware text splitting": "https://python.langchain.com/docs/use_cases/question_answering/how_to/document-context-aware-QA", "Weaviate self-querying ": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/weaviate_self_query", "Chroma self-querying ": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/chroma_self_query", "DeepLake self-querying ": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/deeplake_self_query", "Self-querying with Pinecone": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/pinecone", "Self-querying with MyScale": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/myscale_self_query", "Qdrant self-querying ": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/qdrant_self_query"}, "UnstructuredFileIOLoader": {"Google Drive": "https://python.langchain.com/docs/integrations/document_loaders/google_drive"}, "BrowserlessLoader": {"Browserless": "https://python.langchain.com/docs/integrations/document_loaders/browserless"}, "BibtexLoader": {"BibTeX": "https://python.langchain.com/docs/integrations/document_loaders/bibtex"}, "ReadTheDocsLoader": {"ReadTheDocs Documentation": "https://python.langchain.com/docs/integrations/document_loaders/readthedocs_documentation"}, "DataFrameLoader": {"Pandas DataFrame": "https://python.langchain.com/docs/integrations/document_loaders/pandas_dataframe"}, "GoogleApiClient": {"YouTube transcripts": "https://python.langchain.com/docs/integrations/document_loaders/youtube_transcript"}, "NotebookLoader": {"Jupyter Notebook": "https://python.langchain.com/docs/integrations/document_loaders/jupyter_notebook", "Notebook": "https://python.langchain.com/docs/integrations/document_loaders/example_data/notebook"}, "UnstructuredTSVLoader": {"TSV": "https://python.langchain.com/docs/integrations/document_loaders/tsv"}, "UnstructuredODTLoader": {"Open Document Format (ODT)": "https://python.langchain.com/docs/integrations/document_loaders/odt"}, "EmbaasBlobLoader": {"Embaas": "https://python.langchain.com/docs/integrations/document_loaders/embaas"}, "Blob": {"Embaas": "https://python.langchain.com/docs/integrations/document_loaders/embaas"}, "EmbaasLoader": {"Embaas": "https://python.langchain.com/docs/integrations/document_loaders/embaas"}, "UnstructuredXMLLoader": {"XML": "https://python.langchain.com/docs/integrations/document_loaders/xml"}, "MaxComputeLoader": {"Alibaba Cloud MaxCompute": "https://python.langchain.com/docs/integrations/document_loaders/alibaba_cloud_maxcompute"}, "CubeSemanticLoader": {"Cube Semantic Layer": "https://python.langchain.com/docs/integrations/document_loaders/cube_semantic"}, "UnstructuredExcelLoader": {"Microsoft Excel": "https://python.langchain.com/docs/integrations/document_loaders/excel"}, "Language": {"Source Code": "https://python.langchain.com/docs/integrations/document_loaders/source_code"}, "LanguageParser": {"Source Code": "https://python.langchain.com/docs/integrations/document_loaders/source_code"}, "SRTLoader": {"Subtitle": "https://python.langchain.com/docs/integrations/document_loaders/subtitle"}, "MastodonTootsLoader": {"Mastodon": "https://python.langchain.com/docs/integrations/document_loaders/mastodon"}, "MergedDataLoader": {"MergeDocLoader": "https://python.langchain.com/docs/integrations/document_loaders/merge_doc_loader"}, "PySparkDataFrameLoader": {"PySpark DataFrame Loader": "https://python.langchain.com/docs/integrations/document_loaders/pyspark_dataframe"}, "CoNLLULoader": {"CoNLL-U": "https://python.langchain.com/docs/integrations/document_loaders/conll-u"}, "FaunaLoader": {"Fauna": "https://python.langchain.com/docs/integrations/document_loaders/fauna"}, "SitemapLoader": {"Sitemap": "https://python.langchain.com/docs/integrations/document_loaders/sitemap"}, "StochasticAI": {"StochasticAI": "https://python.langchain.com/docs/integrations/llms/stochasticai"}, "ForefrontAI": {"ForefrontAI": "https://python.langchain.com/docs/integrations/llms/forefrontai_example"}, "CerebriumAI": {"CerebriumAI": "https://python.langchain.com/docs/integrations/llms/cerebriumai_example"}, "OctoAIEndpoint": {"OctoAI Compute Service": "https://python.langchain.com/docs/integrations/llms/octoai"}, "Writer": {"Writer": "https://python.langchain.com/docs/integrations/llms/writer"}, "TextGen": {"TextGen": "https://python.langchain.com/docs/integrations/llms/textgen"}, "MosaicML": {"MosaicML": "https://python.langchain.com/docs/integrations/llms/mosaicml"}, "KoboldApiLLM": {"KoboldAI API": "https://python.langchain.com/docs/integrations/llms/koboldai"}, "VertexAI": {"Google Cloud Platform Vertex AI PaLM ": "https://python.langchain.com/docs/integrations/llms/google_vertex_ai_palm"}, "Bedrock": {"Bedrock": "https://python.langchain.com/docs/integrations/llms/bedrock"}, "GooseAI": {"GooseAI": "https://python.langchain.com/docs/integrations/llms/gooseai_example"}, "Databricks": {"Databricks": "https://python.langchain.com/docs/integrations/llms/databricks"}, "MapReduceChain": {"Manifest": "https://python.langchain.com/docs/integrations/llms/manifest", "Caching integrations": "https://python.langchain.com/docs/integrations/llms/llm_caching"}, "ModelLaboratory": {"Manifest": "https://python.langchain.com/docs/integrations/llms/manifest", "Model comparison": "https://python.langchain.com/docs/guides/model_laboratory"}, "Tongyi": {"Tongyi Qwen": "https://python.langchain.com/docs/integrations/llms/tongyi"}, "InMemoryCache": {"Caching integrations": "https://python.langchain.com/docs/integrations/llms/llm_caching"}, "SQLiteCache": {"Caching integrations": "https://python.langchain.com/docs/integrations/llms/llm_caching"}, "GPTCache": {"Caching integrations": "https://python.langchain.com/docs/integrations/llms/llm_caching"}, "SQLAlchemyCache": {"Caching integrations": "https://python.langchain.com/docs/integrations/llms/llm_caching"}, "AzureMLOnlineEndpoint": {"AzureML Online Endpoint": "https://python.langchain.com/docs/integrations/llms/azureml_endpoint_example"}, "ContentFormatterBase": {"AzureML Online Endpoint": "https://python.langchain.com/docs/integrations/llms/azureml_endpoint_example"}, "DollyContentFormatter": {"AzureML Online Endpoint": "https://python.langchain.com/docs/integrations/llms/azureml_endpoint_example"}, "load_llm": {"AzureML Online Endpoint": "https://python.langchain.com/docs/integrations/llms/azureml_endpoint_example", "Serialization": "https://python.langchain.com/docs/modules/model_io/models/llms/llm_serialization"}, "AzureMLEndpointClient": {"AzureML Online Endpoint": "https://python.langchain.com/docs/integrations/llms/azureml_endpoint_example"}, "OpenLM": {"OpenLM": "https://python.langchain.com/docs/integrations/llms/openlm"}, "HuggingFaceTextGenInference": {"Huggingface TextGen Inference": "https://python.langchain.com/docs/integrations/llms/huggingface_textgen_inference"}, "ChatGLM": {"ChatGLM": "https://python.langchain.com/docs/integrations/llms/chatglm"}, "tool": {"JSONFormer": "https://python.langchain.com/docs/integrations/llms/jsonformer_experimental", "Agent Trajectory": "https://python.langchain.com/docs/guides/evaluation/trajectory/trajectory_eval", "!pip install bs4": "https://python.langchain.com/docs/use_cases/autonomous_agents/marathon_times", "Defining Custom Tools": "https://python.langchain.com/docs/modules/agents/tools/custom_tools"}, "Replicate": {"Replicate": "https://python.langchain.com/docs/integrations/llms/replicate"}, "tracing_v2_enabled": {"LangSmith Walkthrough": "https://python.langchain.com/docs/guides/langsmith/walkthrough"}, "wait_for_all_tracers": {"LangSmith Walkthrough": "https://python.langchain.com/docs/guides/langsmith/walkthrough"}, "EvaluatorType": {"LangSmith Walkthrough": "https://python.langchain.com/docs/guides/langsmith/walkthrough", "Criteria Evaluation": "https://python.langchain.com/docs/guides/evaluation/string/criteria_eval_chain"}, "RunEvalConfig": {"LangSmith Walkthrough": "https://python.langchain.com/docs/guides/langsmith/walkthrough"}, "arun_on_dataset": {"LangSmith Walkthrough": "https://python.langchain.com/docs/guides/langsmith/walkthrough"}, "run_on_dataset": {"LangSmith Walkthrough": "https://python.langchain.com/docs/guides/langsmith/walkthrough"}, "load_dataset": {"Question Answering Benchmarking: State of the Union Address": "https://python.langchain.com/docs/guides/evaluation/examples/qa_benchmarking_sota", "Question Answering Benchmarking: Paul Graham Essay": "https://python.langchain.com/docs/guides/evaluation/examples/qa_benchmarking_pg", "Evaluating an OpenAPI Chain": "https://python.langchain.com/docs/guides/evaluation/examples/openapi_eval", "Comparing Chain Outputs": "https://python.langchain.com/docs/guides/evaluation/examples/comparisons", "SQL Question Answering Benchmarking: Chinook": "https://python.langchain.com/docs/guides/evaluation/examples/sql_qa_benchmarking_chinook", "Agent VectorDB Question Answering Benchmarking": "https://python.langchain.com/docs/guides/evaluation/examples/agent_vectordb_sota_pg"}, "QAEvalChain": {"Question Answering Benchmarking: State of the Union Address": "https://python.langchain.com/docs/guides/evaluation/examples/qa_benchmarking_sota", "Question Answering Benchmarking: Paul Graham Essay": "https://python.langchain.com/docs/guides/evaluation/examples/qa_benchmarking_pg", "Data Augmented Question Answering": "https://python.langchain.com/docs/guides/evaluation/examples/data_augmented_question_answering", "SQL Question Answering Benchmarking: Chinook": "https://python.langchain.com/docs/guides/evaluation/examples/sql_qa_benchmarking_chinook", "Question Answering": "https://python.langchain.com/docs/guides/evaluation/examples/question_answering", "Agent VectorDB Question Answering Benchmarking": "https://python.langchain.com/docs/guides/evaluation/examples/agent_vectordb_sota_pg"}, "QAGenerationChain": {"QA Generation": "https://python.langchain.com/docs/guides/evaluation/examples/qa_generation"}, "OpenAPIEndpointChain": {"Evaluating an OpenAPI Chain": "https://python.langchain.com/docs/guides/evaluation/examples/openapi_eval", "OpenAPI chain": "https://python.langchain.com/docs/modules/chains/additional/openapi"}, "QAGenerateChain": {"Data Augmented Question Answering": "https://python.langchain.com/docs/guides/evaluation/examples/data_augmented_question_answering"}, "load_evaluator": {"Comparing Chain Outputs": "https://python.langchain.com/docs/guides/evaluation/examples/comparisons", "Agent Trajectory": "https://python.langchain.com/docs/guides/evaluation/trajectory/trajectory_eval", "Pairwise Embedding Distance ": "https://python.langchain.com/docs/guides/evaluation/comparison/pairwise_embedding_distance", "Pairwise String Comparison": "https://python.langchain.com/docs/guides/evaluation/comparison/pairwise_string", "Criteria Evaluation": "https://python.langchain.com/docs/guides/evaluation/string/criteria_eval_chain", "QA Correctness": "https://python.langchain.com/docs/guides/evaluation/string/qa", "String Distance": "https://python.langchain.com/docs/guides/evaluation/string/string_distance", "Embedding Distance": "https://python.langchain.com/docs/guides/evaluation/string/embedding_distance"}, "ContextQAEvalChain": {"Question Answering": "https://python.langchain.com/docs/guides/evaluation/examples/question_answering"}, "AgentAction": {"Custom Trajectory Evaluator": "https://python.langchain.com/docs/guides/evaluation/trajectory/custom", "Plug-and-Plai": "https://python.langchain.com/docs/use_cases/agents/custom_agent_with_plugin_retrieval_using_plugnplai", "Wikibase Agent": "https://python.langchain.com/docs/use_cases/agents/wikibase_agent", "SalesGPT - Your Context-Aware AI Sales Assistant With Knowledge Base": "https://python.langchain.com/docs/use_cases/agents/sales_agent_with_context", "Custom Agent with PlugIn Retrieval": "https://python.langchain.com/docs/use_cases/agents/custom_agent_with_plugin_retrieval", "Multiple callback handlers": "https://python.langchain.com/docs/modules/callbacks/multiple_callbacks", "Custom multi-action agent": "https://python.langchain.com/docs/modules/agents/how_to/custom_multi_action_agent", "Custom agent": "https://python.langchain.com/docs/modules/agents/how_to/custom_agent", "Custom agent with tool retrieval": "https://python.langchain.com/docs/modules/agents/how_to/custom_agent_with_tool_retrieval"}, "AgentTrajectoryEvaluator": {"Custom Trajectory Evaluator": "https://python.langchain.com/docs/guides/evaluation/trajectory/custom"}, "EmbeddingDistance": {"Pairwise Embedding Distance ": "https://python.langchain.com/docs/guides/evaluation/comparison/pairwise_embedding_distance", "Embedding Distance": "https://python.langchain.com/docs/guides/evaluation/string/embedding_distance"}, "PairwiseStringEvaluator": {"Custom Pairwise Evaluator": "https://python.langchain.com/docs/guides/evaluation/comparison/custom"}, "Criteria": {"Criteria Evaluation": "https://python.langchain.com/docs/guides/evaluation/string/criteria_eval_chain"}, "SQL_PROMPT": {"QA Correctness": "https://python.langchain.com/docs/guides/evaluation/string/qa"}, "StringEvaluator": {"Custom String Evaluator": "https://python.langchain.com/docs/guides/evaluation/string/custom"}, "StringDistance": {"String Distance": "https://python.langchain.com/docs/guides/evaluation/string/string_distance"}, "create_tagging_chain_pydantic": {"Tagging": "https://python.langchain.com/docs/modules/chains/additional/tagging"}, "get_openapi_chain": {"OpenAPI calls with OpenAI functions": "https://python.langchain.com/docs/modules/chains/additional/openapi_openai"}, "LLMRequestsChain": {"HTTP request chain": "https://python.langchain.com/docs/modules/chains/additional/llm_requests"}, "FileChatMessageHistory": {"AutoGPT": "https://python.langchain.com/docs/use_cases/autonomous_agents/autogpt"}, "BaseLLM": {"BabyAGI User Guide": "https://python.langchain.com/docs/use_cases/agents/baby_agi", "BabyAGI with Tools": "https://python.langchain.com/docs/use_cases/agents/baby_agi_with_agent", "SalesGPT - Your Context-Aware AI Sales Assistant With Knowledge Base": "https://python.langchain.com/docs/use_cases/agents/sales_agent_with_context"}, "VectorStore": {"BabyAGI User Guide": "https://python.langchain.com/docs/use_cases/agents/baby_agi", "BabyAGI with Tools": "https://python.langchain.com/docs/use_cases/agents/baby_agi_with_agent"}, "Chain": {"BabyAGI User Guide": "https://python.langchain.com/docs/use_cases/agents/baby_agi", "BabyAGI with Tools": "https://python.langchain.com/docs/use_cases/agents/baby_agi_with_agent", "SalesGPT - Your Context-Aware AI Sales Assistant With Knowledge Base": "https://python.langchain.com/docs/use_cases/agents/sales_agent_with_context", "Custom chain": "https://python.langchain.com/docs/modules/chains/how_to/custom_chain"}, "BaseTool": {"!pip install bs4": "https://python.langchain.com/docs/use_cases/autonomous_agents/marathon_times", "Defining Custom Tools": "https://python.langchain.com/docs/modules/agents/tools/custom_tools", "Combine agents and vector stores": "https://python.langchain.com/docs/modules/agents/how_to/agent_vectorstore", "Custom functions with OpenAI Functions Agent": "https://python.langchain.com/docs/modules/agents/how_to/custom-functions-with-openai-functions-agent"}, "BaseCombineDocumentsChain": {"!pip install bs4": "https://python.langchain.com/docs/use_cases/autonomous_agents/marathon_times"}, "MarkdownHeaderTextSplitter": {"Context aware text splitting and QA / Chat": "https://python.langchain.com/docs/use_cases/question_answering/document-context-aware-QA", "Perform context-aware text splitting": "https://python.langchain.com/docs/use_cases/question_answering/how_to/document-context-aware-QA", "MarkdownHeaderTextSplitter": "https://python.langchain.com/docs/modules/data_connection/document_transformers/text_splitters/markdown_header_metadata"}, "MultiQueryRetriever": {"QA over Documents": "https://python.langchain.com/docs/use_cases/question_answering/index", "MultiQueryRetriever": "https://python.langchain.com/docs/modules/data_connection/retrievers/MultiQueryRetriever"}, "create_citation_fuzzy_match_chain": {"Cite sources": "https://python.langchain.com/docs/use_cases/question_answering/how_to/qa_citations", "Question-Answering Citations": "https://python.langchain.com/docs/modules/chains/additional/qa_citations"}, "BaseRetriever": {"Retrieve as you generate with FLARE": "https://python.langchain.com/docs/use_cases/question_answering/how_to/flare", "FLARE": "https://python.langchain.com/docs/modules/chains/additional/flare"}, "AsyncCallbackManagerForRetrieverRun": {"Retrieve as you generate with FLARE": "https://python.langchain.com/docs/use_cases/question_answering/how_to/flare", "FLARE": "https://python.langchain.com/docs/modules/chains/additional/flare"}, "CallbackManagerForRetrieverRun": {"Retrieve as you generate with FLARE": "https://python.langchain.com/docs/use_cases/question_answering/how_to/flare", "FLARE": "https://python.langchain.com/docs/modules/chains/additional/flare"}, "FlareChain": {"Retrieve as you generate with FLARE": "https://python.langchain.com/docs/use_cases/question_answering/how_to/flare", "FLARE": "https://python.langchain.com/docs/modules/chains/additional/flare"}, "HypotheticalDocumentEmbedder": {"Improve document indexing with HyDE": "https://python.langchain.com/docs/use_cases/question_answering/how_to/hyde", "Hypothetical Document Embeddings": "https://python.langchain.com/docs/modules/chains/additional/hyde"}, "StuffDocumentsChain": {"Structure answers with OpenAI functions": "https://python.langchain.com/docs/use_cases/question_answering/integrations/openai_functions_retrieval_qa", "Lost in the middle: The problem with long contexts": "https://python.langchain.com/docs/modules/data_connection/document_transformers/post_retrieval/long_context_reorder", "Retrieval QA using OpenAI functions": "https://python.langchain.com/docs/modules/chains/additional/openai_functions_retrieval_qa"}, "create_qa_with_sources_chain": {"Structure answers with OpenAI functions": "https://python.langchain.com/docs/use_cases/question_answering/integrations/openai_functions_retrieval_qa", "Retrieval QA using OpenAI functions": "https://python.langchain.com/docs/modules/chains/additional/openai_functions_retrieval_qa"}, "create_qa_with_structure_chain": {"Structure answers with OpenAI functions": "https://python.langchain.com/docs/use_cases/question_answering/integrations/openai_functions_retrieval_qa", "Retrieval QA using OpenAI functions": "https://python.langchain.com/docs/modules/chains/additional/openai_functions_retrieval_qa"}, "ElasticsearchDatabaseChain": {"Elasticsearch database": "https://python.langchain.com/docs/modules/chains/additional/elasticsearch_database"}, "create_sql_query_chain": {"SQL Query": "https://python.langchain.com/docs/use_cases/tabular/sql_query"}, "NeptuneGraph": {"Neptune Open Cypher QA Chain": "https://python.langchain.com/docs/modules/chains/additional/neptune_cypher_qa"}, "NeptuneOpenCypherQAChain": {"Neptune Open Cypher QA Chain": "https://python.langchain.com/docs/modules/chains/additional/neptune_cypher_qa"}, "NebulaGraphQAChain": {"NebulaGraphQAChain": "https://python.langchain.com/docs/modules/chains/additional/graph_nebula_qa"}, "NebulaGraph": {"NebulaGraphQAChain": "https://python.langchain.com/docs/modules/chains/additional/graph_nebula_qa"}, "KuzuGraph": {"KuzuQAChain": "https://python.langchain.com/docs/modules/chains/additional/graph_kuzu_qa"}, "KuzuQAChain": {"KuzuQAChain": "https://python.langchain.com/docs/modules/chains/additional/graph_kuzu_qa"}, "HugeGraphQAChain": {"HugeGraph QA Chain": "https://python.langchain.com/docs/modules/chains/additional/graph_hugegraph_qa"}, "HugeGraph": {"HugeGraph QA Chain": "https://python.langchain.com/docs/modules/chains/additional/graph_hugegraph_qa"}, "GraphSparqlQAChain": {"GraphSparqlQAChain": "https://python.langchain.com/docs/modules/chains/additional/graph_sparql_qa"}, "RdfGraph": {"GraphSparqlQAChain": "https://python.langchain.com/docs/modules/chains/additional/graph_sparql_qa"}, "ArangoGraph": {"ArangoDB QA chain": "https://python.langchain.com/docs/modules/chains/additional/graph_arangodb_qa"}, "ArangoGraphQAChain": {"ArangoDB QA chain": "https://python.langchain.com/docs/modules/chains/additional/graph_arangodb_qa"}, "GraphIndexCreator": {"Graph QA": "https://python.langchain.com/docs/modules/chains/additional/graph_qa"}, "GraphQAChain": {"Graph QA": "https://python.langchain.com/docs/modules/chains/additional/graph_qa"}, "NetworkxEntityGraph": {"Graph QA": "https://python.langchain.com/docs/modules/chains/additional/graph_qa"}, "GraphCypherQAChain": {"Graph DB QA chain": "https://python.langchain.com/docs/modules/chains/additional/graph_cypher_qa"}, "Neo4jGraph": {"Graph DB QA chain": "https://python.langchain.com/docs/modules/chains/additional/graph_cypher_qa"}, "LLMSingleActionAgent": {"Plug-and-Plai": "https://python.langchain.com/docs/use_cases/agents/custom_agent_with_plugin_retrieval_using_plugnplai", "Wikibase Agent": "https://python.langchain.com/docs/use_cases/agents/wikibase_agent", "SalesGPT - Your Context-Aware AI Sales Assistant With Knowledge Base": "https://python.langchain.com/docs/use_cases/agents/sales_agent_with_context", "Custom Agent with PlugIn Retrieval": "https://python.langchain.com/docs/use_cases/agents/custom_agent_with_plugin_retrieval", "Custom agent with tool retrieval": "https://python.langchain.com/docs/modules/agents/how_to/custom_agent_with_tool_retrieval"}, "AgentOutputParser": {"Plug-and-Plai": "https://python.langchain.com/docs/use_cases/agents/custom_agent_with_plugin_retrieval_using_plugnplai", "Wikibase Agent": "https://python.langchain.com/docs/use_cases/agents/wikibase_agent", "SalesGPT - Your Context-Aware AI Sales Assistant With Knowledge Base": "https://python.langchain.com/docs/use_cases/agents/sales_agent_with_context", "Custom Agent with PlugIn Retrieval": "https://python.langchain.com/docs/use_cases/agents/custom_agent_with_plugin_retrieval", "Custom agent with tool retrieval": "https://python.langchain.com/docs/modules/agents/how_to/custom_agent_with_tool_retrieval"}, "StringPromptTemplate": {"Plug-and-Plai": "https://python.langchain.com/docs/use_cases/agents/custom_agent_with_plugin_retrieval_using_plugnplai", "Wikibase Agent": "https://python.langchain.com/docs/use_cases/agents/wikibase_agent", "SalesGPT - Your Context-Aware AI Sales Assistant With Knowledge Base": "https://python.langchain.com/docs/use_cases/agents/sales_agent_with_context", "Custom Agent with PlugIn Retrieval": "https://python.langchain.com/docs/use_cases/agents/custom_agent_with_plugin_retrieval", "Custom agent with tool retrieval": "https://python.langchain.com/docs/modules/agents/how_to/custom_agent_with_tool_retrieval", "Custom prompt template": "https://python.langchain.com/docs/modules/model_io/prompts/prompt_templates/custom_prompt_template", "Connecting to a Feature Store": "https://python.langchain.com/docs/modules/model_io/prompts/prompt_templates/connecting_to_a_feature_store"}, "AgentFinish": {"Plug-and-Plai": "https://python.langchain.com/docs/use_cases/agents/custom_agent_with_plugin_retrieval_using_plugnplai", "Wikibase Agent": "https://python.langchain.com/docs/use_cases/agents/wikibase_agent", "SalesGPT - Your Context-Aware AI Sales Assistant With Knowledge Base": "https://python.langchain.com/docs/use_cases/agents/sales_agent_with_context", "Custom Agent with PlugIn Retrieval": "https://python.langchain.com/docs/use_cases/agents/custom_agent_with_plugin_retrieval", "Custom multi-action agent": "https://python.langchain.com/docs/modules/agents/how_to/custom_multi_action_agent", "Running Agent as an Iterator": "https://python.langchain.com/docs/modules/agents/how_to/agent_iter", "Custom agent": "https://python.langchain.com/docs/modules/agents/how_to/custom_agent", "Custom agent with tool retrieval": "https://python.langchain.com/docs/modules/agents/how_to/custom_agent_with_tool_retrieval"}, "AIPlugin": {"Plug-and-Plai": "https://python.langchain.com/docs/use_cases/agents/custom_agent_with_plugin_retrieval_using_plugnplai", "Custom Agent with PlugIn Retrieval": "https://python.langchain.com/docs/use_cases/agents/custom_agent_with_plugin_retrieval"}, "SteamshipImageGenerationTool": {"Multi-modal outputs: Image & Text": "https://python.langchain.com/docs/use_cases/multi_modal/image_agent"}, "BaseMessage": {"CAMEL Role-Playing Autonomous Cooperative Agents": "https://python.langchain.com/docs/use_cases/agent_simulations/camel_role_playing", "Multi-agent decentralized speaker selection": "https://python.langchain.com/docs/use_cases/agent_simulations/multiagent_bidding", "Multi-agent authoritarian speaker selection": "https://python.langchain.com/docs/use_cases/agent_simulations/multiagent_authoritarian", "Multi-Player Dungeons & Dragons": "https://python.langchain.com/docs/use_cases/agent_simulations/multi_player_dnd", "Simulated Environment: Gymnasium": "https://python.langchain.com/docs/use_cases/agent_simulations/gymnasium", "Agent Debates with Tools": "https://python.langchain.com/docs/use_cases/agent_simulations/two_agent_debate_tools"}, "LLMBashChain": {"Bash chain": "https://python.langchain.com/docs/modules/chains/additional/llm_bash"}, "BashOutputParser": {"Bash chain": "https://python.langchain.com/docs/modules/chains/additional/llm_bash"}, "BashProcess": {"Bash chain": "https://python.langchain.com/docs/modules/chains/additional/llm_bash"}, "LLMSymbolicMathChain": {"LLM Symbolic Math ": "https://python.langchain.com/docs/modules/chains/additional/llm_symbolic_math"}, "create_extraction_chain": {"Extraction with OpenAI Functions": "https://python.langchain.com/docs/use_cases/extraction/openai_extraction", "Extraction": "https://python.langchain.com/docs/modules/chains/additional/extraction"}, "create_extraction_chain_pydantic": {"Extraction with OpenAI Functions": "https://python.langchain.com/docs/use_cases/extraction/openai_extraction", "Extraction": "https://python.langchain.com/docs/modules/chains/additional/extraction"}, "LLMSummarizationCheckerChain": {"Summarization checker chain": "https://python.langchain.com/docs/modules/chains/additional/llm_summarization_checker"}, "LLMCheckerChain": {"Self-checking chain": "https://python.langchain.com/docs/modules/chains/additional/llm_checker"}, "RegexParser": {"Multi-Agent Simulated Environment: Petting Zoo": "https://python.langchain.com/docs/use_cases/agent_simulations/petting_zoo", "Multi-agent decentralized speaker selection": "https://python.langchain.com/docs/use_cases/agent_simulations/multiagent_bidding", "Multi-agent authoritarian speaker selection": "https://python.langchain.com/docs/use_cases/agent_simulations/multiagent_authoritarian", "Simulated Environment: Gymnasium": "https://python.langchain.com/docs/use_cases/agent_simulations/gymnasium"}, "TimeWeightedVectorStoreRetriever": {"Generative Agents in LangChain": "https://python.langchain.com/docs/use_cases/agent_simulations/characters"}, "EnsembleRetriever": {"Ensemble Retriever": "https://python.langchain.com/docs/modules/data_connection/retrievers/ensemble"}, "PydanticOutputParser": {"MultiQueryRetriever": "https://python.langchain.com/docs/modules/data_connection/retrievers/MultiQueryRetriever", "WebResearchRetriever": "https://python.langchain.com/docs/modules/data_connection/retrievers/web_research", "Retry parser": "https://python.langchain.com/docs/modules/model_io/output_parsers/retry", "Pydantic (JSON) parser": "https://python.langchain.com/docs/modules/model_io/output_parsers/pydantic"}, "WebResearchRetriever": {"WebResearchRetriever": "https://python.langchain.com/docs/modules/data_connection/retrievers/web_research"}, "SentenceTransformersTokenTextSplitter": {"Split by tokens ": "https://python.langchain.com/docs/modules/data_connection/document_transformers/text_splitters/split_by_token"}, "NLTKTextSplitter": {"Split by tokens ": "https://python.langchain.com/docs/modules/data_connection/document_transformers/text_splitters/split_by_token"}, "ChatMessageHistory": {"Adding Message Memory backed by a database to an Agent": "https://python.langchain.com/docs/modules/memory/agent_with_memory_in_db"}, "BaseMemory": {"How to create a custom Memory class": "https://python.langchain.com/docs/modules/memory/custom_memory"}, "ConversationKGMemory": {"Conversation Knowledge Graph Memory": "https://python.langchain.com/docs/modules/memory/types/kg"}, "ConversationTokenBufferMemory": {"ConversationTokenBufferMemory": "https://python.langchain.com/docs/modules/memory/types/token_buffer"}, "MessagesPlaceholder": {"How to add Memory to an LLMChain": "https://python.langchain.com/docs/modules/memory/adding_memory", "Add Memory to OpenAI Functions Agent": "https://python.langchain.com/docs/modules/agents/how_to/add_memory_openai_functions", "Types of `MessagePromptTemplate`": "https://python.langchain.com/docs/modules/model_io/prompts/prompt_templates/msg_prompt_templates"}, "CombinedMemory": {"How to use multiple memory classes in the same chain": "https://python.langchain.com/docs/modules/memory/multiple_memory"}, "ConversationSummaryMemory": {"How to use multiple memory classes in the same chain": "https://python.langchain.com/docs/modules/memory/multiple_memory"}, "ConversationSummaryBufferMemory": {"ConversationSummaryBufferMemory": "https://python.langchain.com/docs/modules/memory/types/summary_buffer"}, "BaseCallbackHandler": {"Custom callback handlers": "https://python.langchain.com/docs/modules/callbacks/custom_callbacks", "Multiple callback handlers": "https://python.langchain.com/docs/modules/callbacks/multiple_callbacks", "Async callbacks": "https://python.langchain.com/docs/modules/callbacks/async_callbacks", "Streaming final agent output": "https://python.langchain.com/docs/modules/agents/how_to/streaming_stdout_final_only"}, "tracing_enabled": {"Multiple callback handlers": "https://python.langchain.com/docs/modules/callbacks/multiple_callbacks"}, "get_openai_callback": {"Token counting": "https://python.langchain.com/docs/modules/callbacks/token_counting", "Tracking token usage": "https://python.langchain.com/docs/modules/model_io/models/llms/token_usage_tracking"}, "FileCallbackHandler": {"Logging to file": "https://python.langchain.com/docs/modules/callbacks/filecallbackhandler"}, "LLMResult": {"Async callbacks": "https://python.langchain.com/docs/modules/callbacks/async_callbacks"}, "AsyncCallbackHandler": {"Async callbacks": "https://python.langchain.com/docs/modules/callbacks/async_callbacks"}, "StructuredTool": {"Multi-Input Tools": "https://python.langchain.com/docs/modules/agents/tools/multi_input_tool", "Defining Custom Tools": "https://python.langchain.com/docs/modules/agents/tools/custom_tools"}, "AsyncCallbackManagerForToolRun": {"Defining Custom Tools": "https://python.langchain.com/docs/modules/agents/tools/custom_tools"}, "CallbackManagerForToolRun": {"Defining Custom Tools": "https://python.langchain.com/docs/modules/agents/tools/custom_tools"}, "ToolException": {"Defining Custom Tools": "https://python.langchain.com/docs/modules/agents/tools/custom_tools"}, "format_tool_to_openai_function": {"Tools as OpenAI Functions": "https://python.langchain.com/docs/modules/agents/tools/tools_as_openai_functions"}, "RequestsGetTool": {"Tool Input Schema": "https://python.langchain.com/docs/modules/agents/tools/tool_input_validation"}, "HumanApprovalCallbackHandler": {"Human-in-the-loop Tool Validation": "https://python.langchain.com/docs/modules/agents/tools/human_approval"}, "DocstoreExplorer": {"ReAct document store": "https://python.langchain.com/docs/modules/agents/agent_types/react_docstore"}, "ReadOnlySharedMemory": {"Shared memory across agents and tools": "https://python.langchain.com/docs/modules/agents/how_to/sharedmemory_for_tools"}, "BaseMultiActionAgent": {"Custom multi-action agent": "https://python.langchain.com/docs/modules/agents/how_to/custom_multi_action_agent"}, "FinalStreamingStdOutCallbackHandler": {"Streaming final agent output": "https://python.langchain.com/docs/modules/agents/how_to/streaming_stdout_final_only"}, "LangChainTracer": {"Async API": "https://python.langchain.com/docs/modules/agents/how_to/async_agent"}, "BaseSingleActionAgent": {"Custom agent": "https://python.langchain.com/docs/modules/agents/how_to/custom_agent"}, "HumanInputChatModel": {"Human input Chat Model": "https://python.langchain.com/docs/modules/model_io/models/chat/human_input_chat_model"}, "FakeListLLM": {"Fake LLM": "https://python.langchain.com/docs/modules/model_io/models/llms/fake_llm"}, "CallbackManagerForLLMRun": {"Custom LLM": "https://python.langchain.com/docs/modules/model_io/models/llms/custom_llm"}, "LLM": {"Custom LLM": "https://python.langchain.com/docs/modules/model_io/models/llms/custom_llm"}, "HumanInputLLM": {"Human input LLM": "https://python.langchain.com/docs/modules/model_io/models/llms/human_input_llm"}, "OutputFixingParser": {"Retry parser": "https://python.langchain.com/docs/modules/model_io/output_parsers/retry"}, "RetryOutputParser": {"Retry parser": "https://python.langchain.com/docs/modules/model_io/output_parsers/retry"}, "RetryWithErrorOutputParser": {"Retry parser": "https://python.langchain.com/docs/modules/model_io/output_parsers/retry"}, "EnumOutputParser": {"Enum parser": "https://python.langchain.com/docs/modules/model_io/output_parsers/enum"}, "DatetimeOutputParser": {"Datetime parser": "https://python.langchain.com/docs/modules/model_io/output_parsers/datetime"}, "MaxMarginalRelevanceExampleSelector": {"Select by maximal marginal relevance (MMR)": "https://python.langchain.com/docs/modules/model_io/prompts/example_selectors/mmr"}, "SemanticSimilarityExampleSelector": {"Select by maximal marginal relevance (MMR)": "https://python.langchain.com/docs/modules/model_io/prompts/example_selectors/mmr", "Few shot examples for chat models": "https://python.langchain.com/docs/modules/model_io/prompts/prompt_templates/few_shot_examples_chat"}, "FewShotPromptTemplate": {"Select by maximal marginal relevance (MMR)": "https://python.langchain.com/docs/modules/model_io/prompts/example_selectors/mmr", "Select by n-gram overlap": "https://python.langchain.com/docs/modules/model_io/prompts/example_selectors/ngram_overlap"}, "BaseExampleSelector": {"Custom example selector": "https://python.langchain.com/docs/modules/model_io/prompts/example_selectors/custom_example_selector"}, "NGramOverlapExampleSelector": {"Select by n-gram overlap": "https://python.langchain.com/docs/modules/model_io/prompts/example_selectors/ngram_overlap"}, "FewShotChatMessagePromptTemplate": {"Few shot examples for chat models": "https://python.langchain.com/docs/modules/model_io/prompts/prompt_templates/few_shot_examples_chat"}, "load_prompt": {"Serialization": "https://python.langchain.com/docs/modules/model_io/prompts/prompt_templates/prompt_serialization"}, "ChatMessagePromptTemplate": {"Types of `MessagePromptTemplate`": "https://python.langchain.com/docs/modules/model_io/prompts/prompt_templates/msg_prompt_templates"}, "MultiPromptChain": {"Router": "https://python.langchain.com/docs/modules/chains/foundational/router"}, "LLMRouterChain": {"Router": "https://python.langchain.com/docs/modules/chains/foundational/router"}, "RouterOutputParser": {"Router": "https://python.langchain.com/docs/modules/chains/foundational/router"}, "EmbeddingRouterChain": {"Router": "https://python.langchain.com/docs/modules/chains/foundational/router"}, "BaseLanguageModel": {"Custom chain": "https://python.langchain.com/docs/modules/chains/how_to/custom_chain"}, "AsyncCallbackManagerForChainRun": {"Custom chain": "https://python.langchain.com/docs/modules/chains/how_to/custom_chain"}, "CallbackManagerForChainRun": {"Custom chain": "https://python.langchain.com/docs/modules/chains/how_to/custom_chain"}, "BasePromptTemplate": {"Custom chain": "https://python.langchain.com/docs/modules/chains/how_to/custom_chain"}, "load_chain": {"Serialization": "https://python.langchain.com/docs/modules/chains/how_to/serialization", "Loading from LangChainHub": "https://python.langchain.com/docs/modules/chains/how_to/from_hub"}, "create_openai_fn_chain": {"Using OpenAI functions": "https://python.langchain.com/docs/modules/chains/popular/openai_functions"}, "create_structured_output_chain": {"Using OpenAI functions": "https://python.langchain.com/docs/modules/chains/popular/openai_functions"}}
\ No newline at end of file
+{
+ "HuggingFaceBgeEmbeddings": {
+ "BGE Hugging Face Embeddings": "https://python.langchain.com/docs/integrations/text_embedding/bge_huggingface"
+ },
+ "XinferenceEmbeddings": {
+ "Xorbits inference (Xinference)": "https://python.langchain.com/docs/integrations/text_embedding/xinference"
+ },
+ "DeepInfraEmbeddings": {
+ "DeepInfra": "https://python.langchain.com/docs/integrations/text_embedding/deepinfra"
+ },
+ "HuggingFaceEmbeddings": {
+ "Hugging Face Hub": "https://python.langchain.com/docs/integrations/text_embedding/huggingfacehub",
+ "Sentence Transformers Embeddings": "https://python.langchain.com/docs/integrations/text_embedding/sentence_transformers",
+ "LOTR (Merger Retriever)": "https://python.langchain.com/docs/integrations/retrievers/merger_retriever",
+ "Hugging Face": "https://python.langchain.com/docs/integrations/providers/huggingface",
+ "ScaNN": "https://python.langchain.com/docs/integrations/vectorstores/scann",
+ "Annoy": "https://python.langchain.com/docs/integrations/vectorstores/annoy",
+ "Pairwise Embedding Distance ": "https://python.langchain.com/docs/guides/evaluation/comparison/pairwise_embedding_distance",
+ "Embedding Distance": "https://python.langchain.com/docs/guides/evaluation/string/embedding_distance",
+ "Lost in the middle: The problem with long contexts": "https://python.langchain.com/docs/modules/data_connection/document_transformers/post_retrieval/long_context_reorder"
+ },
+ "GPT4AllEmbeddings": {
+ "GPT4All": "https://python.langchain.com/docs/integrations/text_embedding/gpt4all",
+ "Ollama": "https://python.langchain.com/docs/integrations/llms/ollama",
+ "Use local LLMs": "https://python.langchain.com/docs/use_cases/question_answering/how_to/local_retrieval_qa",
+ "WebResearchRetriever": "https://python.langchain.com/docs/modules/data_connection/retrievers/web_research"
+ },
+ "MosaicMLInstructorEmbeddings": {
+ "MosaicML embeddings": "https://python.langchain.com/docs/integrations/text_embedding/mosaicml"
+ },
+ "OpenAIEmbeddings": {
+ "OpenAI": "https://python.langchain.com/docs/integrations/providers/openai",
+ "AzureOpenAI": "https://python.langchain.com/docs/integrations/text_embedding/azureopenai",
+ "RePhraseQueryRetriever": "https://python.langchain.com/docs/integrations/retrievers/re_phrase",
+ "Cohere Reranker": "https://python.langchain.com/docs/integrations/retrievers/cohere-reranker",
+ "kNN": "https://python.langchain.com/docs/integrations/retrievers/knn",
+ "DocArray Retriever": "https://python.langchain.com/docs/integrations/retrievers/docarray_retriever",
+ "SVM": "https://python.langchain.com/docs/integrations/retrievers/svm",
+ "Pinecone Hybrid Search": "https://python.langchain.com/docs/integrations/retrievers/pinecone_hybrid_search",
+ "LOTR (Merger Retriever)": "https://python.langchain.com/docs/integrations/retrievers/merger_retriever",
+ "Azure OpenAI": "https://python.langchain.com/docs/integrations/providers/azure_openai",
+ "Document Comparison": "https://python.langchain.com/docs/integrations/toolkits/document_comparison_toolkit",
+ "Vectorstore Agent": "https://python.langchain.com/docs/integrations/toolkits/vectorstore",
+ "LanceDB": "https://python.langchain.com/docs/integrations/vectorstores/lancedb",
+ "Weaviate": "https://python.langchain.com/docs/integrations/vectorstores/weaviate",
+ "Xata": "https://python.langchain.com/docs/integrations/vectorstores/xata",
+ "Redis": "https://python.langchain.com/docs/integrations/vectorstores/redis",
+ "PGVector": "https://python.langchain.com/docs/integrations/vectorstores/pgvector",
+ "Rockset": "https://python.langchain.com/docs/integrations/vectorstores/rockset",
+ "Dingo": "https://python.langchain.com/docs/integrations/vectorstores/dingo",
+ "Zilliz": "https://python.langchain.com/docs/integrations/vectorstores/zilliz",
+ "SingleStoreDB": "https://python.langchain.com/docs/integrations/vectorstores/singlestoredb",
+ "Typesense": "https://python.langchain.com/docs/integrations/vectorstores/typesense",
+ "Atlas": "https://python.langchain.com/docs/integrations/vectorstores/atlas",
+ "Activeloop's Deep Lake": "https://python.langchain.com/docs/integrations/vectorstores/activeloop_deeplake",
+ "Chroma": "https://python.langchain.com/docs/integrations/vectorstores/chroma",
+ "Alibaba Cloud OpenSearch": "https://python.langchain.com/docs/integrations/vectorstores/alibabacloud_opensearch",
+ "StarRocks": "https://python.langchain.com/docs/integrations/vectorstores/starrocks",
+ "scikit-learn": "https://python.langchain.com/docs/integrations/vectorstores/sklearn",
+ "DocArrayHnswSearch": "https://python.langchain.com/docs/integrations/vectorstores/docarray_hnsw",
+ "MyScale": "https://python.langchain.com/docs/integrations/vectorstores/myscale",
+ "ClickHouse Vector Search": "https://python.langchain.com/docs/integrations/vectorstores/clickhouse",
+ "Qdrant": "https://python.langchain.com/docs/integrations/vectorstores/qdrant",
+ "Tigris": "https://python.langchain.com/docs/integrations/vectorstores/tigris",
+ "Supabase (Postgres)": "https://python.langchain.com/docs/integrations/vectorstores/supabase",
+ "OpenSearch": "https://python.langchain.com/docs/integrations/vectorstores/opensearch",
+ "Pinecone": "https://python.langchain.com/docs/integrations/vectorstores/pinecone",
+ "Azure Cognitive Search": "https://python.langchain.com/docs/integrations/vectorstores/azuresearch",
+ "Cassandra": "https://python.langchain.com/docs/integrations/vectorstores/cassandra",
+ "USearch": "https://python.langchain.com/docs/integrations/vectorstores/usearch",
+ "Milvus": "https://python.langchain.com/docs/integrations/vectorstores/milvus",
+ "Elasticsearch": "https://python.langchain.com/docs/integrations/vectorstores/elasticsearch",
+ "DocArrayInMemorySearch": "https://python.langchain.com/docs/integrations/vectorstores/docarray_in_memory",
+ "pg_embedding": "https://python.langchain.com/docs/integrations/vectorstores/pgembedding",
+ "FAISS": "https://python.langchain.com/docs/integrations/vectorstores/faiss",
+ "AnalyticDB": "https://python.langchain.com/docs/integrations/vectorstores/analyticdb",
+ "Hologres": "https://python.langchain.com/docs/integrations/vectorstores/hologres",
+ "MongoDB Atlas": "https://python.langchain.com/docs/integrations/vectorstores/mongodb_atlas",
+ "Meilisearch": "https://python.langchain.com/docs/integrations/vectorstores/meilisearch",
+ "Loading documents from a YouTube url": "https://python.langchain.com/docs/integrations/document_loaders/youtube_audio",
+ "Psychic": "https://python.langchain.com/docs/integrations/document_loaders/psychic",
+ "Docugami": "https://python.langchain.com/docs/integrations/document_loaders/docugami",
+ "Caching integrations": "https://python.langchain.com/docs/integrations/llms/llm_caching",
+ "Cookbook": "https://python.langchain.com/docs/guides/expression_language/cookbook",
+ "Web Scraping": "https://python.langchain.com/docs/use_cases/web_scraping",
+ "Chatbots": "https://python.langchain.com/docs/use_cases/chatbots",
+ "Code Understanding": "https://python.langchain.com/docs/use_cases/code_understanding",
+ "AutoGPT": "https://python.langchain.com/docs/use_cases/autonomous_agents/autogpt",
+ "BabyAGI User Guide": "https://python.langchain.com/docs/use_cases/agents/baby_agi",
+ "BabyAGI with Tools": "https://python.langchain.com/docs/use_cases/agents/baby_agi_with_agent",
+ "!pip install bs4": "https://python.langchain.com/docs/use_cases/autonomous_agents/marathon_times",
+ "QA over Documents": "https://python.langchain.com/docs/use_cases/question_answering/index",
+ "Perform context-aware text splitting": "https://python.langchain.com/docs/use_cases/question_answering/how_to/document-context-aware-QA",
+ "Conversational Retrieval Agent": "https://python.langchain.com/docs/use_cases/question_answering/how_to/conversational_retrieval_agents",
+ "Retrieve from vector stores directly": "https://python.langchain.com/docs/use_cases/question_answering/how_to/vector_db_text_generation",
+ "Retrieve as you generate with FLARE": "https://python.langchain.com/docs/use_cases/question_answering/how_to/flare",
+ "Improve document indexing with HyDE": "https://python.langchain.com/docs/use_cases/question_answering/how_to/hyde",
+ "Analysis of Twitter the-algorithm source code with LangChain, GPT4 and Activeloop's Deep Lake": "https://python.langchain.com/docs/use_cases/question_answering/how_to/code/twitter-the-algorithm-analysis-deeplake",
+ "Use LangChain, GPT and Activeloop's Deep Lake to work with code base": "https://python.langchain.com/docs/use_cases/question_answering/how_to/code/code-analysis-deeplake",
+ "Structure answers with OpenAI functions": "https://python.langchain.com/docs/use_cases/question_answering/integrations/openai_functions_retrieval_qa",
+ "QA using Activeloop's DeepLake": "https://python.langchain.com/docs/use_cases/question_answering/integrations/semantic-search-over-chat",
+ "Plug-and-Plai": "https://python.langchain.com/docs/use_cases/agents/custom_agent_with_plugin_retrieval_using_plugnplai",
+ "SalesGPT - Your Context-Aware AI Sales Assistant With Knowledge Base": "https://python.langchain.com/docs/use_cases/agents/sales_agent_with_context",
+ "Custom Agent with PlugIn Retrieval": "https://python.langchain.com/docs/use_cases/agents/custom_agent_with_plugin_retrieval",
+ "Generative Agents in LangChain": "https://python.langchain.com/docs/use_cases/agent_simulations/characters",
+ "Caching Embeddings": "https://python.langchain.com/docs/modules/data_connection/caching_embeddings",
+ "MultiQueryRetriever": "https://python.langchain.com/docs/modules/data_connection/retrievers/MultiQueryRetriever",
+ "Parent Document Retriever": "https://python.langchain.com/docs/modules/data_connection/retrievers/parent_document_retriever",
+ "WebResearchRetriever": "https://python.langchain.com/docs/modules/data_connection/retrievers/web_research",
+ "Weaviate self-querying ": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/weaviate_self_query",
+ "Elasticsearch self-querying ": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/elasticsearch_self_query",
+ "Chroma self-querying ": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/chroma_self_query",
+ "Self-querying with Pinecone": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/pinecone",
+ "Self-querying with MyScale": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/myscale_self_query",
+ "Deep Lake self-querying ": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/activeloop_deeplake_self_query",
+ "Qdrant self-querying ": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/qdrant_self_query",
+ "How to add memory to a Multi-Input Chain": "https://python.langchain.com/docs/modules/memory/adding_memory_chain_multiple_inputs",
+ "Combine agents and vector stores": "https://python.langchain.com/docs/modules/agents/how_to/agent_vectorstore",
+ "Custom agent with tool retrieval": "https://python.langchain.com/docs/modules/agents/how_to/custom_agent_with_tool_retrieval",
+ "Select by maximal marginal relevance (MMR)": "https://python.langchain.com/docs/modules/model_io/prompts/example_selectors/mmr",
+ "Few shot examples for chat models": "https://python.langchain.com/docs/modules/model_io/prompts/prompt_templates/few_shot_examples_chat",
+ "Loading from LangChainHub": "https://python.langchain.com/docs/modules/chains/how_to/from_hub"
+ },
+ "VertexAIEmbeddings": {
+ "Google Cloud Platform Vertex AI PaLM ": "https://python.langchain.com/docs/integrations/text_embedding/google_vertex_ai_palm"
+ },
+ "BedrockEmbeddings": {
+ "Bedrock Embeddings": "https://python.langchain.com/docs/integrations/text_embedding/bedrock",
+ "Bedrock": "https://python.langchain.com/docs/integrations/providers/bedrock"
+ },
+ "LlamaCppEmbeddings": {
+ "Llama-cpp": "https://python.langchain.com/docs/integrations/text_embedding/llamacpp",
+ "Llama.cpp": "https://python.langchain.com/docs/integrations/providers/llamacpp"
+ },
+ "NLPCloudEmbeddings": {
+ "NLP Cloud": "https://python.langchain.com/docs/integrations/text_embedding/nlp_cloud"
+ },
+ "SpacyEmbeddings": {
+ "Spacy Embedding": "https://python.langchain.com/docs/integrations/text_embedding/spacy_embedding"
+ },
+ "HuggingFaceInstructEmbeddings": {
+ "InstructEmbeddings": "https://python.langchain.com/docs/integrations/text_embedding/instruct_embeddings"
+ },
+ "CohereEmbeddings": {
+ "Cohere": "https://python.langchain.com/docs/integrations/providers/cohere",
+ "How to add memory to a Multi-Input Chain": "https://python.langchain.com/docs/modules/memory/adding_memory_chain_multiple_inputs",
+ "Router": "https://python.langchain.com/docs/modules/chains/foundational/router"
+ },
+ "EdenAiEmbeddings": {
+ "EDEN AI": "https://python.langchain.com/docs/integrations/text_embedding/edenai"
+ },
+ "SentenceTransformerEmbeddings": {
+ "Sentence Transformers Embeddings": "https://python.langchain.com/docs/integrations/text_embedding/sentence_transformers",
+ "Chroma": "https://python.langchain.com/docs/integrations/vectorstores/chroma"
+ },
+ "ClarifaiEmbeddings": {
+ "Clarifai": "https://python.langchain.com/docs/integrations/providers/clarifai"
+ },
+ "AwaEmbeddings": {
+ "AwaEmbedding": "https://python.langchain.com/docs/integrations/text_embedding/Awa"
+ },
+ "MiniMaxEmbeddings": {
+ "MiniMax": "https://python.langchain.com/docs/integrations/text_embedding/minimax",
+ "Minimax": "https://python.langchain.com/docs/integrations/providers/minimax"
+ },
+ "FakeEmbeddings": {
+ "Fake Embeddings": "https://python.langchain.com/docs/integrations/text_embedding/fake",
+ "DocArray Retriever": "https://python.langchain.com/docs/integrations/retrievers/docarray_retriever",
+ "Vectara": "https://python.langchain.com/docs/integrations/vectorstores/vectara",
+ "Tair": "https://python.langchain.com/docs/integrations/vectorstores/tair"
+ },
+ "ElasticsearchEmbeddings": {
+ "Elasticsearch": "https://python.langchain.com/docs/integrations/text_embedding/elasticsearch"
+ },
+ "SelfHostedEmbeddings": {
+ "Self Hosted Embeddings": "https://python.langchain.com/docs/integrations/text_embedding/self-hosted"
+ },
+ "SelfHostedHuggingFaceEmbeddings": {
+ "Self Hosted Embeddings": "https://python.langchain.com/docs/integrations/text_embedding/self-hosted"
+ },
+ "SelfHostedHuggingFaceInstructEmbeddings": {
+ "Self Hosted Embeddings": "https://python.langchain.com/docs/integrations/text_embedding/self-hosted"
+ },
+ "EmbaasEmbeddings": {
+ "Embaas": "https://python.langchain.com/docs/integrations/text_embedding/embaas"
+ },
+ "JinaEmbeddings": {
+ "Jina": "https://python.langchain.com/docs/integrations/providers/jina"
+ },
+ "AlephAlphaAsymmetricSemanticEmbedding": {
+ "Aleph Alpha": "https://python.langchain.com/docs/integrations/providers/aleph_alpha"
+ },
+ "AlephAlphaSymmetricSemanticEmbedding": {
+ "Aleph Alpha": "https://python.langchain.com/docs/integrations/providers/aleph_alpha"
+ },
+ "DashScopeEmbeddings": {
+ "DashScope": "https://python.langchain.com/docs/integrations/text_embedding/dashscope",
+ "DashVector": "https://python.langchain.com/docs/integrations/vectorstores/dashvector"
+ },
+ "TensorflowHubEmbeddings": {
+ "TensorflowHub": "https://python.langchain.com/docs/integrations/text_embedding/tensorflowhub",
+ "ScaNN": "https://python.langchain.com/docs/integrations/vectorstores/scann"
+ },
+ "ModelScopeEmbeddings": {
+ "ModelScope": "https://python.langchain.com/docs/integrations/providers/modelscope"
+ },
+ "SagemakerEndpointEmbeddings": {
+ "SageMaker Endpoint Embeddings": "https://python.langchain.com/docs/integrations/text_embedding/sagemaker-endpoint",
+ "SageMaker Endpoint": "https://python.langchain.com/docs/integrations/providers/sagemaker_endpoint"
+ },
+ "EmbeddingsContentHandler": {
+ "SageMaker Endpoint Embeddings": "https://python.langchain.com/docs/integrations/text_embedding/sagemaker-endpoint"
+ },
+ "LocalAIEmbeddings": {
+ "LocalAI": "https://python.langchain.com/docs/integrations/text_embedding/localai"
+ },
+ "WebBaseLoader": {
+ "RePhraseQueryRetriever": "https://python.langchain.com/docs/integrations/retrievers/re_phrase",
+ "Vectorstore Agent": "https://python.langchain.com/docs/integrations/toolkits/vectorstore",
+ "WebBaseLoader": "https://python.langchain.com/docs/integrations/document_loaders/web_base",
+ "MergeDocLoader": "https://python.langchain.com/docs/integrations/document_loaders/merge_doc_loader",
+ "Ollama": "https://python.langchain.com/docs/integrations/llms/ollama",
+ "Chatbots": "https://python.langchain.com/docs/use_cases/chatbots",
+ "Summarization": "https://python.langchain.com/docs/use_cases/summarization",
+ "QA over Documents": "https://python.langchain.com/docs/use_cases/question_answering/index",
+ "Use local LLMs": "https://python.langchain.com/docs/use_cases/question_answering/how_to/local_retrieval_qa",
+ "MultiQueryRetriever": "https://python.langchain.com/docs/modules/data_connection/retrievers/MultiQueryRetriever",
+ "Combine agents and vector stores": "https://python.langchain.com/docs/modules/agents/how_to/agent_vectorstore"
+ },
+ "RecursiveCharacterTextSplitter": {
+ "RePhraseQueryRetriever": "https://python.langchain.com/docs/integrations/retrievers/re_phrase",
+ "Cohere Reranker": "https://python.langchain.com/docs/integrations/retrievers/cohere-reranker",
+ "Loading documents from a YouTube url": "https://python.langchain.com/docs/integrations/document_loaders/youtube_audio",
+ "Source Code": "https://python.langchain.com/docs/integrations/document_loaders/source_code",
+ "Ollama": "https://python.langchain.com/docs/integrations/llms/ollama",
+ "Web Scraping": "https://python.langchain.com/docs/use_cases/web_scraping",
+ "Chatbots": "https://python.langchain.com/docs/use_cases/chatbots",
+ "Code Understanding": "https://python.langchain.com/docs/use_cases/code_understanding",
+ "!pip install bs4": "https://python.langchain.com/docs/use_cases/autonomous_agents/marathon_times",
+ "QA over Documents": "https://python.langchain.com/docs/use_cases/question_answering/index",
+ "Perform context-aware text splitting": "https://python.langchain.com/docs/use_cases/question_answering/how_to/document-context-aware-QA",
+ "Use local LLMs": "https://python.langchain.com/docs/use_cases/question_answering/how_to/local_retrieval_qa",
+ "QA using Activeloop's DeepLake": "https://python.langchain.com/docs/use_cases/question_answering/integrations/semantic-search-over-chat",
+ "MultiQueryRetriever": "https://python.langchain.com/docs/modules/data_connection/retrievers/MultiQueryRetriever",
+ "Parent Document Retriever": "https://python.langchain.com/docs/modules/data_connection/retrievers/parent_document_retriever",
+ "MarkdownHeaderTextSplitter": "https://python.langchain.com/docs/modules/data_connection/document_transformers/text_splitters/markdown_header_metadata"
+ },
+ "Chroma": {
+ "RePhraseQueryRetriever": "https://python.langchain.com/docs/integrations/retrievers/re_phrase",
+ "LOTR (Merger Retriever)": "https://python.langchain.com/docs/integrations/retrievers/merger_retriever",
+ "Chroma": "https://python.langchain.com/docs/integrations/vectorstores/chroma",
+ "Vectorstore Agent": "https://python.langchain.com/docs/integrations/toolkits/vectorstore",
+ "StarRocks": "https://python.langchain.com/docs/integrations/vectorstores/starrocks",
+ "Psychic": "https://python.langchain.com/docs/integrations/document_loaders/psychic",
+ "Docugami": "https://python.langchain.com/docs/integrations/document_loaders/docugami",
+ "Ollama": "https://python.langchain.com/docs/integrations/llms/ollama",
+ "Cookbook": "https://python.langchain.com/docs/guides/expression_language/cookbook",
+ "Web Scraping": "https://python.langchain.com/docs/use_cases/web_scraping",
+ "Chatbots": "https://python.langchain.com/docs/use_cases/chatbots",
+ "Code Understanding": "https://python.langchain.com/docs/use_cases/code_understanding",
+ "QA over Documents": "https://python.langchain.com/docs/use_cases/question_answering/index",
+ "Perform context-aware text splitting": "https://python.langchain.com/docs/use_cases/question_answering/how_to/document-context-aware-QA",
+ "Use local LLMs": "https://python.langchain.com/docs/use_cases/question_answering/how_to/local_retrieval_qa",
+ "Retrieve from vector stores directly": "https://python.langchain.com/docs/use_cases/question_answering/how_to/vector_db_text_generation",
+ "Improve document indexing with HyDE": "https://python.langchain.com/docs/use_cases/question_answering/how_to/hyde",
+ "Structure answers with OpenAI functions": "https://python.langchain.com/docs/use_cases/question_answering/integrations/openai_functions_retrieval_qa",
+ "SalesGPT - Your Context-Aware AI Sales Assistant With Knowledge Base": "https://python.langchain.com/docs/use_cases/agents/sales_agent_with_context",
+ "MultiQueryRetriever": "https://python.langchain.com/docs/modules/data_connection/retrievers/MultiQueryRetriever",
+ "Parent Document Retriever": "https://python.langchain.com/docs/modules/data_connection/retrievers/parent_document_retriever",
+ "WebResearchRetriever": "https://python.langchain.com/docs/modules/data_connection/retrievers/web_research",
+ "Chroma self-querying ": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/chroma_self_query",
+ "Lost in the middle: The problem with long contexts": "https://python.langchain.com/docs/modules/data_connection/document_transformers/post_retrieval/long_context_reorder",
+ "How to add memory to a Multi-Input Chain": "https://python.langchain.com/docs/modules/memory/adding_memory_chain_multiple_inputs",
+ "Combine agents and vector stores": "https://python.langchain.com/docs/modules/agents/how_to/agent_vectorstore",
+ "Few shot examples for chat models": "https://python.langchain.com/docs/modules/model_io/prompts/prompt_templates/few_shot_examples_chat",
+ "Router": "https://python.langchain.com/docs/modules/chains/foundational/router",
+ "Loading from LangChainHub": "https://python.langchain.com/docs/modules/chains/how_to/from_hub"
+ },
+ "ChatOpenAI": {
+ "RePhraseQueryRetriever": "https://python.langchain.com/docs/integrations/retrievers/re_phrase",
+ "Wikipedia": "https://python.langchain.com/docs/integrations/retrievers/wikipedia",
+ "Arxiv": "https://python.langchain.com/docs/integrations/retrievers/arxiv",
+ "ChatGPT Plugins": "https://python.langchain.com/docs/integrations/tools/chatgpt_plugins",
+ "Human as a tool": "https://python.langchain.com/docs/integrations/tools/human_tools",
+ "ArXiv API Tool": "https://python.langchain.com/docs/integrations/tools/arxiv",
+ "Metaphor Search": "https://python.langchain.com/docs/integrations/tools/metaphor_search",
+ "Shell Tool": "https://python.langchain.com/docs/integrations/tools/bash",
+ "Dynamodb Chat Message History": "https://python.langchain.com/docs/integrations/memory/dynamodb_chat_message_history",
+ "OpenAI": "https://python.langchain.com/docs/integrations/chat/openai",
+ "Context": "https://python.langchain.com/docs/integrations/callbacks/context",
+ "Label Studio": "https://python.langchain.com/docs/integrations/callbacks/labelstudio",
+ "PromptLayer": "https://python.langchain.com/docs/integrations/callbacks/promptlayer",
+ "CnosDB": "https://python.langchain.com/docs/integrations/providers/cnosdb",
+ "Log10": "https://python.langchain.com/docs/integrations/providers/log10",
+ "Flyte": "https://python.langchain.com/docs/integrations/providers/flyte",
+ "Arthur": "https://python.langchain.com/docs/integrations/providers/arthur_tracking",
+ "CSV Agent": "https://python.langchain.com/docs/integrations/toolkits/csv",
+ "Document Comparison": "https://python.langchain.com/docs/integrations/toolkits/document_comparison_toolkit",
+ "Python Agent": "https://python.langchain.com/docs/integrations/toolkits/python",
+ "PowerBI Dataset Agent": "https://python.langchain.com/docs/integrations/toolkits/powerbi",
+ "SQL Database Agent": "https://python.langchain.com/docs/integrations/toolkits/sql_database",
+ "Github Toolkit": "https://python.langchain.com/docs/integrations/toolkits/github",
+ "Spark SQL Agent": "https://python.langchain.com/docs/integrations/toolkits/spark_sql",
+ "Pandas Dataframe Agent": "https://python.langchain.com/docs/integrations/toolkits/pandas",
+ "OpenAI Functions Metadata Tagger": "https://python.langchain.com/docs/integrations/document_transformers/openai_metadata_tagger",
+ "Loading documents from a YouTube url": "https://python.langchain.com/docs/integrations/document_loaders/youtube_audio",
+ "Figma": "https://python.langchain.com/docs/integrations/document_loaders/figma",
+ "Fallbacks": "https://python.langchain.com/docs/guides/fallbacks",
+ "Debugging": "https://python.langchain.com/docs/guides/debugging",
+ "LangSmith Walkthrough": "https://python.langchain.com/docs/guides/langsmith/walkthrough",
+ "Comparing Chain Outputs": "https://python.langchain.com/docs/guides/evaluation/examples/comparisons",
+ "Agent Trajectory": "https://python.langchain.com/docs/guides/evaluation/trajectory/trajectory_eval",
+ "Custom Trajectory Evaluator": "https://python.langchain.com/docs/guides/evaluation/trajectory/custom",
+ "Cookbook": "https://python.langchain.com/docs/guides/expression_language/cookbook",
+ "Interface": "https://python.langchain.com/docs/guides/expression_language/interface",
+ "Web Scraping": "https://python.langchain.com/docs/use_cases/web_scraping",
+ "Chatbots": "https://python.langchain.com/docs/use_cases/chatbots",
+ "Summarization": "https://python.langchain.com/docs/use_cases/summarization",
+ "Extraction": "https://python.langchain.com/docs/use_cases/extraction",
+ "SQL": "https://python.langchain.com/docs/use_cases/sql",
+ "Tagging": "https://python.langchain.com/docs/use_cases/tagging",
+ "Code Understanding": "https://python.langchain.com/docs/use_cases/code_understanding",
+ "AutoGPT": "https://python.langchain.com/docs/use_cases/autonomous_agents/autogpt",
+ "!pip install bs4": "https://python.langchain.com/docs/use_cases/autonomous_agents/marathon_times",
+ "QA over Documents": "https://python.langchain.com/docs/use_cases/question_answering/index",
+ "Perform context-aware text splitting": "https://python.langchain.com/docs/use_cases/question_answering/how_to/document-context-aware-QA",
+ "Conversational Retrieval Agent": "https://python.langchain.com/docs/use_cases/question_answering/how_to/conversational_retrieval_agents",
+ "Multiple Retrieval Sources": "https://python.langchain.com/docs/use_cases/question_answering/how_to/multiple_retrieval",
+ "Cite sources": "https://python.langchain.com/docs/use_cases/question_answering/how_to/qa_citations",
+ "Retrieve as you generate with FLARE": "https://python.langchain.com/docs/use_cases/question_answering/how_to/flare",
+ "Analysis of Twitter the-algorithm source code with LangChain, GPT4 and Activeloop's Deep Lake": "https://python.langchain.com/docs/use_cases/question_answering/how_to/code/twitter-the-algorithm-analysis-deeplake",
+ "Use LangChain, GPT and Activeloop's Deep Lake to work with code base": "https://python.langchain.com/docs/use_cases/question_answering/how_to/code/code-analysis-deeplake",
+ "Structure answers with OpenAI functions": "https://python.langchain.com/docs/use_cases/question_answering/integrations/openai_functions_retrieval_qa",
+ "QA using Activeloop's DeepLake": "https://python.langchain.com/docs/use_cases/question_answering/integrations/semantic-search-over-chat",
+ "Wikibase Agent": "https://python.langchain.com/docs/use_cases/agents/wikibase_agent",
+ "SalesGPT - Your Context-Aware AI Sales Assistant With Knowledge Base": "https://python.langchain.com/docs/use_cases/agents/sales_agent_with_context",
+ "CAMEL Role-Playing Autonomous Cooperative Agents": "https://python.langchain.com/docs/use_cases/agent_simulations/camel_role_playing",
+ "Neptune Open Cypher QA Chain": "https://python.langchain.com/docs/use_cases/more/graph/neptune_cypher_qa",
+ "NebulaGraphQAChain": "https://python.langchain.com/docs/use_cases/more/graph/graph_nebula_qa",
+ "KuzuQAChain": "https://python.langchain.com/docs/use_cases/more/graph/graph_kuzu_qa",
+ "HugeGraph QA Chain": "https://python.langchain.com/docs/use_cases/more/graph/graph_hugegraph_qa",
+ "GraphSparqlQAChain": "https://python.langchain.com/docs/use_cases/more/graph/graph_sparql_qa",
+ "ArangoDB QA chain": "https://python.langchain.com/docs/use_cases/more/graph/graph_arangodb_qa",
+ "Graph DB QA chain": "https://python.langchain.com/docs/use_cases/more/graph/graph_cypher_qa",
+ "How to use a SmartLLMChain": "https://python.langchain.com/docs/use_cases/more/self_check/smart_llm",
+ "Multi-Agent Simulated Environment: Petting Zoo": "https://python.langchain.com/docs/use_cases/agent_simulations/petting_zoo",
+ "Multi-agent decentralized speaker selection": "https://python.langchain.com/docs/use_cases/agent_simulations/multiagent_bidding",
+ "Multi-agent authoritarian speaker selection": "https://python.langchain.com/docs/use_cases/agent_simulations/multiagent_authoritarian",
+ "Generative Agents in LangChain": "https://python.langchain.com/docs/use_cases/agent_simulations/characters",
+ "Two-Player Dungeons & Dragons": "https://python.langchain.com/docs/use_cases/agent_simulations/two_player_dnd",
+ "Multi-Player Dungeons & Dragons": "https://python.langchain.com/docs/use_cases/agent_simulations/multi_player_dnd",
+ "Simulated Environment: Gymnasium": "https://python.langchain.com/docs/use_cases/agent_simulations/gymnasium",
+ "Agent Debates with Tools": "https://python.langchain.com/docs/use_cases/agent_simulations/two_agent_debate_tools",
+ "MultiQueryRetriever": "https://python.langchain.com/docs/modules/data_connection/retrievers/MultiQueryRetriever",
+ "WebResearchRetriever": "https://python.langchain.com/docs/modules/data_connection/retrievers/web_research",
+ "How to add Memory to an LLMChain": "https://python.langchain.com/docs/modules/memory/adding_memory",
+ "Custom callback handlers": "https://python.langchain.com/docs/modules/callbacks/custom_callbacks",
+ "Async callbacks": "https://python.langchain.com/docs/modules/callbacks/async_callbacks",
+ "Defining Custom Tools": "https://python.langchain.com/docs/modules/agents/tools/custom_tools",
+ "Tools as OpenAI Functions": "https://python.langchain.com/docs/modules/agents/tools/tools_as_openai_functions",
+ "OpenAI Multi Functions Agent": "https://python.langchain.com/docs/modules/agents/agent_types/openai_multi_functions_agent",
+ "Handle parsing errors": "https://python.langchain.com/docs/modules/agents/how_to/handle_parsing_errors",
+ "Running Agent as an Iterator": "https://python.langchain.com/docs/modules/agents/how_to/agent_iter",
+ "Add Memory to OpenAI Functions Agent": "https://python.langchain.com/docs/modules/agents/how_to/add_memory_openai_functions",
+ "Custom functions with OpenAI Functions Agent": "https://python.langchain.com/docs/modules/agents/how_to/custom-functions-with-openai-functions-agent",
+ "Use ToolKits with OpenAI Functions": "https://python.langchain.com/docs/modules/agents/how_to/use_toolkits_with_openai_functions",
+ "Retry parser": "https://python.langchain.com/docs/modules/model_io/output_parsers/retry",
+ "Pydantic (JSON) parser": "https://python.langchain.com/docs/modules/model_io/output_parsers/pydantic",
+ "Prompt Pipelining": "https://python.langchain.com/docs/modules/model_io/prompts/prompt_templates/prompts_pipelining",
+ "Connecting to a Feature Store": "https://python.langchain.com/docs/modules/model_io/prompts/prompt_templates/connecting_to_a_feature_store",
+ "Custom chain": "https://python.langchain.com/docs/modules/chains/how_to/custom_chain",
+ "Using OpenAI functions": "https://python.langchain.com/docs/modules/chains/how_to/openai_functions"
+ },
+ "RePhraseQueryRetriever": {
+ "RePhraseQueryRetriever": "https://python.langchain.com/docs/integrations/retrievers/re_phrase"
+ },
+ "PromptTemplate": {
+ "RePhraseQueryRetriever": "https://python.langchain.com/docs/integrations/retrievers/re_phrase",
+ "Zapier Natural Language Actions API": "https://python.langchain.com/docs/integrations/tools/zapier",
+ "Dall-E Image Generator": "https://python.langchain.com/docs/integrations/tools/dalle_image_generator",
+ "Streamlit Chat Message History": "https://python.langchain.com/docs/integrations/memory/streamlit_chat_message_history",
+ "Context": "https://python.langchain.com/docs/integrations/callbacks/context",
+ "Argilla": "https://python.langchain.com/docs/integrations/callbacks/argilla",
+ "Comet": "https://python.langchain.com/docs/integrations/providers/comet_tracking",
+ "Aim": "https://python.langchain.com/docs/integrations/providers/aim_tracking",
+ "Weights & Biases": "https://python.langchain.com/docs/integrations/providers/wandb_tracking",
+ "SageMaker Tracking": "https://python.langchain.com/docs/integrations/providers/sagemaker_tracking",
+ "Rebuff": "https://python.langchain.com/docs/integrations/providers/rebuff",
+ "MLflow": "https://python.langchain.com/docs/integrations/providers/mlflow_tracking",
+ "Flyte": "https://python.langchain.com/docs/integrations/providers/flyte",
+ "Vectara Text Generation": "https://python.langchain.com/docs/integrations/providers/vectara/vectara_text_generation",
+ "Natural Language APIs": "https://python.langchain.com/docs/integrations/toolkits/openapi_nla",
+ "Predibase": "https://python.langchain.com/docs/integrations/llms/predibase",
+ "Eden AI": "https://python.langchain.com/docs/integrations/llms/edenai",
+ "Fallbacks": "https://python.langchain.com/docs/guides/fallbacks",
+ "Pairwise String Comparison": "https://python.langchain.com/docs/guides/evaluation/comparison/pairwise_string",
+ "Criteria Evaluation": "https://python.langchain.com/docs/guides/evaluation/string/criteria_eval_chain",
+ "Cookbook": "https://python.langchain.com/docs/guides/expression_language/cookbook",
+ "Summarization": "https://python.langchain.com/docs/use_cases/summarization",
+ "Extraction": "https://python.langchain.com/docs/use_cases/extraction",
+ "Interacting with APIs": "https://python.langchain.com/docs/use_cases/apis",
+ "SQL": "https://python.langchain.com/docs/use_cases/sql",
+ "QA over Documents": "https://python.langchain.com/docs/use_cases/question_answering/index",
+ "Retrieve from vector stores directly": "https://python.langchain.com/docs/use_cases/question_answering/how_to/vector_db_text_generation",
+ "Improve document indexing with HyDE": "https://python.langchain.com/docs/use_cases/question_answering/how_to/hyde",
+ "Structure answers with OpenAI functions": "https://python.langchain.com/docs/use_cases/question_answering/integrations/openai_functions_retrieval_qa",
+ "Bash chain": "https://python.langchain.com/docs/use_cases/more/code_writing/llm_bash",
+ "How to use a SmartLLMChain": "https://python.langchain.com/docs/use_cases/more/self_check/smart_llm",
+ "Multi-agent authoritarian speaker selection": "https://python.langchain.com/docs/use_cases/agent_simulations/multiagent_authoritarian",
+ "Agent Debates with Tools": "https://python.langchain.com/docs/use_cases/agent_simulations/two_agent_debate_tools",
+ "MultiQueryRetriever": "https://python.langchain.com/docs/modules/data_connection/retrievers/MultiQueryRetriever",
+ "WebResearchRetriever": "https://python.langchain.com/docs/modules/data_connection/retrievers/web_research",
+ "Lost in the middle: The problem with long contexts": "https://python.langchain.com/docs/modules/data_connection/document_transformers/post_retrieval/long_context_reorder",
+ "How to create a custom Memory class": "https://python.langchain.com/docs/modules/memory/custom_memory",
+ "How to add memory to a Multi-Input Chain": "https://python.langchain.com/docs/modules/memory/adding_memory_chain_multiple_inputs",
+ "How to add Memory to an LLMChain": "https://python.langchain.com/docs/modules/memory/adding_memory",
+ "How to use multiple memory classes in the same chain": "https://python.langchain.com/docs/modules/memory/multiple_memory",
+ "How to customize conversational memory": "https://python.langchain.com/docs/modules/memory/conversational_customization",
+ "Conversation Knowledge Graph Memory": "https://python.langchain.com/docs/modules/memory/types/kg",
+ "Logging to file": "https://python.langchain.com/docs/modules/callbacks/filecallbackhandler",
+ "Retry parser": "https://python.langchain.com/docs/modules/model_io/output_parsers/retry",
+ "Datetime parser": "https://python.langchain.com/docs/modules/model_io/output_parsers/datetime",
+ "Pydantic (JSON) parser": "https://python.langchain.com/docs/modules/model_io/output_parsers/pydantic",
+ "Select by maximal marginal relevance (MMR)": "https://python.langchain.com/docs/modules/model_io/prompts/example_selectors/mmr",
+ "Select by n-gram overlap": "https://python.langchain.com/docs/modules/model_io/prompts/example_selectors/ngram_overlap",
+ "Prompt Pipelining": "https://python.langchain.com/docs/modules/model_io/prompts/prompt_templates/prompts_pipelining",
+ "Template Formats": "https://python.langchain.com/docs/modules/model_io/prompts/prompt_templates/formats",
+ "Connecting to a Feature Store": "https://python.langchain.com/docs/modules/model_io/prompts/prompt_templates/connecting_to_a_feature_store",
+ "Router": "https://python.langchain.com/docs/modules/chains/foundational/router",
+ "Transformation": "https://python.langchain.com/docs/modules/chains/foundational/transformation",
+ "Custom chain": "https://python.langchain.com/docs/modules/chains/how_to/custom_chain",
+ "Async API": "https://python.langchain.com/docs/modules/chains/how_to/async_chain"
+ },
+ "ElasticSearchBM25Retriever": {
+ "ElasticSearch BM25": "https://python.langchain.com/docs/integrations/retrievers/elastic_search_bm25"
+ },
+ "ZepMemory": {
+ "Zep": "https://python.langchain.com/docs/integrations/retrievers/zep_memorystore",
+ "Zep Memory": "https://python.langchain.com/docs/integrations/memory/zep_memory"
+ },
+ "CombinedMemory": {
+ "Zep": "https://python.langchain.com/docs/integrations/retrievers/zep_memorystore",
+ "How to use multiple memory classes in the same chain": "https://python.langchain.com/docs/modules/memory/multiple_memory"
+ },
+ "VectorStoreRetrieverMemory": {
+ "Zep": "https://python.langchain.com/docs/integrations/retrievers/zep_memorystore"
+ },
+ "HumanMessage": {
+ "Zep": "https://python.langchain.com/docs/integrations/retrievers/zep_memorystore",
+ "Zep Memory": "https://python.langchain.com/docs/integrations/memory/zep_memory",
+ "AzureML Chat Online Endpoint": "https://python.langchain.com/docs/integrations/chat/azureml_chat_endpoint",
+ "Anthropic": "https://python.langchain.com/docs/integrations/chat/anthropic",
+ "\ud83d\ude85 LiteLLM": "https://python.langchain.com/docs/integrations/chat/litellm",
+ "OpenAI": "https://python.langchain.com/docs/integrations/chat/openai",
+ "Google Cloud Platform Vertex AI PaLM ": "https://python.langchain.com/docs/integrations/chat/google_vertex_ai_palm",
+ "JinaChat": "https://python.langchain.com/docs/integrations/chat/jinachat",
+ "Azure": "https://python.langchain.com/docs/integrations/chat/azure_chat_openai",
+ "ERNIE-Bot Chat": "https://python.langchain.com/docs/integrations/chat/ernie",
+ "PromptLayer ChatOpenAI": "https://python.langchain.com/docs/integrations/chat/promptlayer_chatopenai",
+ "Anyscale": "https://python.langchain.com/docs/integrations/chat/anyscale",
+ "Anthropic Functions": "https://python.langchain.com/docs/integrations/chat/anthropic_functions",
+ "Context": "https://python.langchain.com/docs/integrations/callbacks/context",
+ "Label Studio": "https://python.langchain.com/docs/integrations/callbacks/labelstudio",
+ "PromptLayer": "https://python.langchain.com/docs/integrations/callbacks/promptlayer",
+ "Log10": "https://python.langchain.com/docs/integrations/providers/log10",
+ "MLflow AI Gateway": "https://python.langchain.com/docs/integrations/providers/mlflow_ai_gateway",
+ "Flyte": "https://python.langchain.com/docs/integrations/providers/flyte",
+ "Arthur": "https://python.langchain.com/docs/integrations/providers/arthur_tracking",
+ "Chatbots": "https://python.langchain.com/docs/use_cases/chatbots",
+ "Structure answers with OpenAI functions": "https://python.langchain.com/docs/use_cases/question_answering/integrations/openai_functions_retrieval_qa",
+ "CAMEL Role-Playing Autonomous Cooperative Agents": "https://python.langchain.com/docs/use_cases/agent_simulations/camel_role_playing",
+ "Multi-Agent Simulated Environment: Petting Zoo": "https://python.langchain.com/docs/use_cases/agent_simulations/petting_zoo",
+ "Multi-agent decentralized speaker selection": "https://python.langchain.com/docs/use_cases/agent_simulations/multiagent_bidding",
+ "Multi-agent authoritarian speaker selection": "https://python.langchain.com/docs/use_cases/agent_simulations/multiagent_authoritarian",
+ "Two-Player Dungeons & Dragons": "https://python.langchain.com/docs/use_cases/agent_simulations/two_player_dnd",
+ "Multi-Player Dungeons & Dragons": "https://python.langchain.com/docs/use_cases/agent_simulations/multi_player_dnd",
+ "Simulated Environment: Gymnasium": "https://python.langchain.com/docs/use_cases/agent_simulations/gymnasium",
+ "Agent Debates with Tools": "https://python.langchain.com/docs/use_cases/agent_simulations/two_agent_debate_tools",
+ "Custom callback handlers": "https://python.langchain.com/docs/modules/callbacks/custom_callbacks",
+ "Async callbacks": "https://python.langchain.com/docs/modules/callbacks/async_callbacks",
+ "Tools as OpenAI Functions": "https://python.langchain.com/docs/modules/agents/tools/tools_as_openai_functions",
+ "Prompt Pipelining": "https://python.langchain.com/docs/modules/model_io/prompts/prompt_templates/prompts_pipelining",
+ "Using OpenAI functions": "https://python.langchain.com/docs/modules/chains/how_to/openai_functions"
+ },
+ "AIMessage": {
+ "Zep": "https://python.langchain.com/docs/integrations/retrievers/zep_memorystore",
+ "Zep Memory": "https://python.langchain.com/docs/integrations/memory/zep_memory",
+ "Anthropic": "https://python.langchain.com/docs/integrations/chat/anthropic",
+ "\ud83d\ude85 LiteLLM": "https://python.langchain.com/docs/integrations/chat/litellm",
+ "OpenAI": "https://python.langchain.com/docs/integrations/chat/openai",
+ "JinaChat": "https://python.langchain.com/docs/integrations/chat/jinachat",
+ "ERNIE-Bot Chat": "https://python.langchain.com/docs/integrations/chat/ernie",
+ "Chatbots": "https://python.langchain.com/docs/use_cases/chatbots",
+ "CAMEL Role-Playing Autonomous Cooperative Agents": "https://python.langchain.com/docs/use_cases/agent_simulations/camel_role_playing",
+ "Multi-agent decentralized speaker selection": "https://python.langchain.com/docs/use_cases/agent_simulations/multiagent_bidding",
+ "Multi-agent authoritarian speaker selection": "https://python.langchain.com/docs/use_cases/agent_simulations/multiagent_authoritarian",
+ "Multi-Player Dungeons & Dragons": "https://python.langchain.com/docs/use_cases/agent_simulations/multi_player_dnd",
+ "Simulated Environment: Gymnasium": "https://python.langchain.com/docs/use_cases/agent_simulations/gymnasium",
+ "Agent Debates with Tools": "https://python.langchain.com/docs/use_cases/agent_simulations/two_agent_debate_tools",
+ "Prompt Pipelining": "https://python.langchain.com/docs/modules/model_io/prompts/prompt_templates/prompts_pipelining"
+ },
+ "ZepRetriever": {
+ "Zep": "https://python.langchain.com/docs/integrations/providers/zep",
+ "Zep Memory": "https://python.langchain.com/docs/integrations/memory/zep_memory"
+ },
+ "VespaRetriever": {
+ "Vespa": "https://python.langchain.com/docs/integrations/providers/vespa"
+ },
+ "AmazonKendraRetriever": {
+ "Amazon Kendra": "https://python.langchain.com/docs/integrations/retrievers/amazon_kendra_retriever"
+ },
+ "TextLoader": {
+ "Cohere Reranker": "https://python.langchain.com/docs/integrations/retrievers/cohere-reranker",
+ "Elasticsearch": "https://python.langchain.com/docs/integrations/vectorstores/elasticsearch",
+ "Chat Over Documents with Vectara": "https://python.langchain.com/docs/integrations/providers/vectara/vectara_chat",
+ "Vectorstore Agent": "https://python.langchain.com/docs/integrations/toolkits/vectorstore",
+ "LanceDB": "https://python.langchain.com/docs/integrations/vectorstores/lancedb",
+ "Weaviate": "https://python.langchain.com/docs/integrations/vectorstores/weaviate",
+ "DashVector": "https://python.langchain.com/docs/integrations/vectorstores/dashvector",
+ "ScaNN": "https://python.langchain.com/docs/integrations/vectorstores/scann",
+ "Xata": "https://python.langchain.com/docs/integrations/vectorstores/xata",
+ "Vectara": "https://python.langchain.com/docs/integrations/vectorstores/vectara",
+ "Redis": "https://python.langchain.com/docs/integrations/vectorstores/redis",
+ "PGVector": "https://python.langchain.com/docs/integrations/vectorstores/pgvector",
+ "Rockset": "https://python.langchain.com/docs/integrations/vectorstores/rockset",
+ "Dingo": "https://python.langchain.com/docs/integrations/vectorstores/dingo",
+ "Zilliz": "https://python.langchain.com/docs/integrations/vectorstores/zilliz",
+ "SingleStoreDB": "https://python.langchain.com/docs/integrations/vectorstores/singlestoredb",
+ "Annoy": "https://python.langchain.com/docs/integrations/vectorstores/annoy",
+ "Typesense": "https://python.langchain.com/docs/integrations/vectorstores/typesense",
+ "Atlas": "https://python.langchain.com/docs/integrations/vectorstores/atlas",
+ "Activeloop's Deep Lake": "https://python.langchain.com/docs/integrations/vectorstores/activeloop_deeplake",
+ "Tair": "https://python.langchain.com/docs/integrations/vectorstores/tair",
+ "Chroma": "https://python.langchain.com/docs/integrations/vectorstores/chroma",
+ "Alibaba Cloud OpenSearch": "https://python.langchain.com/docs/integrations/vectorstores/alibabacloud_opensearch",
+ "StarRocks": "https://python.langchain.com/docs/integrations/vectorstores/starrocks",
+ "Clarifai": "https://python.langchain.com/docs/integrations/vectorstores/clarifai",
+ "scikit-learn": "https://python.langchain.com/docs/integrations/vectorstores/sklearn",
+ "DocArrayHnswSearch": "https://python.langchain.com/docs/integrations/vectorstores/docarray_hnsw",
+ "MyScale": "https://python.langchain.com/docs/integrations/vectorstores/myscale",
+ "ClickHouse Vector Search": "https://python.langchain.com/docs/integrations/vectorstores/clickhouse",
+ "Qdrant": "https://python.langchain.com/docs/integrations/vectorstores/qdrant",
+ "Tigris": "https://python.langchain.com/docs/integrations/vectorstores/tigris",
+ "AwaDB": "https://python.langchain.com/docs/integrations/vectorstores/awadb",
+ "Supabase (Postgres)": "https://python.langchain.com/docs/integrations/vectorstores/supabase",
+ "OpenSearch": "https://python.langchain.com/docs/integrations/vectorstores/opensearch",
+ "Pinecone": "https://python.langchain.com/docs/integrations/vectorstores/pinecone",
+ "BagelDB": "https://python.langchain.com/docs/integrations/vectorstores/bageldb",
+ "Azure Cognitive Search": "https://python.langchain.com/docs/integrations/vectorstores/azuresearch",
+ "Cassandra": "https://python.langchain.com/docs/integrations/vectorstores/cassandra",
+ "USearch": "https://python.langchain.com/docs/integrations/vectorstores/usearch",
+ "Milvus": "https://python.langchain.com/docs/integrations/vectorstores/milvus",
+ "Marqo": "https://python.langchain.com/docs/integrations/vectorstores/marqo",
+ "DocArrayInMemorySearch": "https://python.langchain.com/docs/integrations/vectorstores/docarray_in_memory",
+ "pg_embedding": "https://python.langchain.com/docs/integrations/vectorstores/pgembedding",
+ "FAISS": "https://python.langchain.com/docs/integrations/vectorstores/faiss",
+ "AnalyticDB": "https://python.langchain.com/docs/integrations/vectorstores/analyticdb",
+ "Hologres": "https://python.langchain.com/docs/integrations/vectorstores/hologres",
+ "MongoDB Atlas": "https://python.langchain.com/docs/integrations/vectorstores/mongodb_atlas",
+ "Meilisearch": "https://python.langchain.com/docs/integrations/vectorstores/meilisearch",
+ "Conversational Retrieval Agent": "https://python.langchain.com/docs/use_cases/question_answering/how_to/conversational_retrieval_agents",
+ "Analysis of Twitter the-algorithm source code with LangChain, GPT4 and Activeloop's Deep Lake": "https://python.langchain.com/docs/use_cases/question_answering/how_to/code/twitter-the-algorithm-analysis-deeplake",
+ "Use LangChain, GPT and Activeloop's Deep Lake to work with code base": "https://python.langchain.com/docs/use_cases/question_answering/how_to/code/code-analysis-deeplake",
+ "Structure answers with OpenAI functions": "https://python.langchain.com/docs/use_cases/question_answering/integrations/openai_functions_retrieval_qa",
+ "QA using Activeloop's DeepLake": "https://python.langchain.com/docs/use_cases/question_answering/integrations/semantic-search-over-chat",
+ "Graph QA": "https://python.langchain.com/docs/use_cases/more/graph/graph_qa",
+ "Caching Embeddings": "https://python.langchain.com/docs/modules/data_connection/caching_embeddings",
+ "Parent Document Retriever": "https://python.langchain.com/docs/modules/data_connection/retrievers/parent_document_retriever",
+ "Combine agents and vector stores": "https://python.langchain.com/docs/modules/agents/how_to/agent_vectorstore",
+ "Loading from LangChainHub": "https://python.langchain.com/docs/modules/chains/how_to/from_hub"
+ },
+ "FAISS": {
+ "Cohere Reranker": "https://python.langchain.com/docs/integrations/retrievers/cohere-reranker",
+ "Document Comparison": "https://python.langchain.com/docs/integrations/toolkits/document_comparison_toolkit",
+ "FAISS": "https://python.langchain.com/docs/integrations/vectorstores/faiss",
+ "Loading documents from a YouTube url": "https://python.langchain.com/docs/integrations/document_loaders/youtube_audio",
+ "AutoGPT": "https://python.langchain.com/docs/use_cases/autonomous_agents/autogpt",
+ "BabyAGI User Guide": "https://python.langchain.com/docs/use_cases/agents/baby_agi",
+ "BabyAGI with Tools": "https://python.langchain.com/docs/use_cases/agents/baby_agi_with_agent",
+ "!pip install bs4": "https://python.langchain.com/docs/use_cases/autonomous_agents/marathon_times",
+ "Conversational Retrieval Agent": "https://python.langchain.com/docs/use_cases/question_answering/how_to/conversational_retrieval_agents",
+ "Plug-and-Plai": "https://python.langchain.com/docs/use_cases/agents/custom_agent_with_plugin_retrieval_using_plugnplai",
+ "Custom Agent with PlugIn Retrieval": "https://python.langchain.com/docs/use_cases/agents/custom_agent_with_plugin_retrieval",
+ "Generative Agents in LangChain": "https://python.langchain.com/docs/use_cases/agent_simulations/characters",
+ "Caching Embeddings": "https://python.langchain.com/docs/modules/data_connection/caching_embeddings",
+ "Ensemble Retriever": "https://python.langchain.com/docs/modules/data_connection/retrievers/ensemble",
+ "Custom agent with tool retrieval": "https://python.langchain.com/docs/modules/agents/how_to/custom_agent_with_tool_retrieval",
+ "Select by maximal marginal relevance (MMR)": "https://python.langchain.com/docs/modules/model_io/prompts/example_selectors/mmr"
+ },
+ "OpenAI": {
+ "Cohere Reranker": "https://python.langchain.com/docs/integrations/retrievers/cohere-reranker",
+ "Google Serper API": "https://python.langchain.com/docs/integrations/tools/google_serper",
+ "Human as a tool": "https://python.langchain.com/docs/integrations/tools/human_tools",
+ "OpenWeatherMap API": "https://python.langchain.com/docs/integrations/tools/openweathermap",
+ "Search Tools": "https://python.langchain.com/docs/integrations/tools/search_tools",
+ "Zapier Natural Language Actions API": "https://python.langchain.com/docs/integrations/tools/zapier",
+ "Gradio Tools": "https://python.langchain.com/docs/integrations/tools/gradio_tools",
+ "SceneXplain": "https://python.langchain.com/docs/integrations/tools/sceneXplain",
+ "Dall-E Image Generator": "https://python.langchain.com/docs/integrations/tools/dalle_image_generator",
+ "Entity Memory with SQLite storage": "https://python.langchain.com/docs/integrations/memory/entity_memory_with_sqlite",
+ "Streamlit Chat Message History": "https://python.langchain.com/docs/integrations/memory/streamlit_chat_message_history",
+ "Label Studio": "https://python.langchain.com/docs/integrations/callbacks/labelstudio",
+ "Argilla": "https://python.langchain.com/docs/integrations/callbacks/argilla",
+ "PromptLayer": "https://python.langchain.com/docs/integrations/callbacks/promptlayer",
+ "Streamlit": "https://python.langchain.com/docs/integrations/callbacks/.ipynb_checkpoints/streamlit-checkpoint",
+ "Comet": "https://python.langchain.com/docs/integrations/providers/comet_tracking",
+ "Aim": "https://python.langchain.com/docs/integrations/providers/aim_tracking",
+ "Weights & Biases": "https://python.langchain.com/docs/integrations/providers/wandb_tracking",
+ "SageMaker Tracking": "https://python.langchain.com/docs/integrations/providers/sagemaker_tracking",
+ "OpenAI": "https://python.langchain.com/docs/integrations/llms/openai",
+ "Rebuff": "https://python.langchain.com/docs/integrations/providers/rebuff",
+ "MLflow": "https://python.langchain.com/docs/integrations/providers/mlflow_tracking",
+ "Google Serper": "https://python.langchain.com/docs/integrations/providers/google_serper",
+ "Helicone": "https://python.langchain.com/docs/integrations/providers/helicone",
+ "Shale Protocol": "https://python.langchain.com/docs/integrations/providers/shaleprotocol",
+ "WhyLabs": "https://python.langchain.com/docs/integrations/providers/whylabs_profiling",
+ "WandB Tracing": "https://python.langchain.com/docs/integrations/providers/wandb_tracing",
+ "ClearML": "https://python.langchain.com/docs/integrations/providers/clearml_tracking",
+ "Ray Serve": "https://python.langchain.com/docs/integrations/providers/ray_serve",
+ "Log, Trace, and Monitor Langchain LLM Calls": "https://python.langchain.com/docs/integrations/providers/portkey/logging_tracing_portkey",
+ "Portkey": "https://python.langchain.com/docs/integrations/providers/portkey/index",
+ "Chat Over Documents with Vectara": "https://python.langchain.com/docs/integrations/providers/vectara/vectara_chat",
+ "Vectara Text Generation": "https://python.langchain.com/docs/integrations/providers/vectara/vectara_text_generation",
+ "CSV Agent": "https://python.langchain.com/docs/integrations/toolkits/csv",
+ "Xorbits Agent": "https://python.langchain.com/docs/integrations/toolkits/xorbits",
+ "Jira": "https://python.langchain.com/docs/integrations/toolkits/jira",
+ "Spark Dataframe Agent": "https://python.langchain.com/docs/integrations/toolkits/spark",
+ "Python Agent": "https://python.langchain.com/docs/integrations/toolkits/python",
+ "SQL Database Agent": "https://python.langchain.com/docs/integrations/toolkits/sql_database",
+ "Natural Language APIs": "https://python.langchain.com/docs/integrations/toolkits/openapi_nla",
+ "JSON Agent": "https://python.langchain.com/docs/integrations/toolkits/json",
+ "Github Toolkit": "https://python.langchain.com/docs/integrations/toolkits/github",
+ "Pandas Dataframe Agent": "https://python.langchain.com/docs/integrations/toolkits/pandas",
+ "OpenAPI agents": "https://python.langchain.com/docs/integrations/toolkits/openapi",
+ "Psychic": "https://python.langchain.com/docs/integrations/document_loaders/psychic",
+ "Docugami": "https://python.langchain.com/docs/integrations/document_loaders/docugami",
+ "Caching integrations": "https://python.langchain.com/docs/integrations/llms/llm_caching",
+ "Fallbacks": "https://python.langchain.com/docs/guides/fallbacks",
+ "Cookbook": "https://python.langchain.com/docs/guides/expression_language/cookbook",
+ "Chatbots": "https://python.langchain.com/docs/use_cases/chatbots",
+ "Extraction": "https://python.langchain.com/docs/use_cases/extraction",
+ "Interacting with APIs": "https://python.langchain.com/docs/use_cases/apis",
+ "SQL": "https://python.langchain.com/docs/use_cases/sql",
+ "HuggingGPT": "https://python.langchain.com/docs/use_cases/autonomous_agents/hugginggpt",
+ "Perform context-aware text splitting": "https://python.langchain.com/docs/use_cases/question_answering/how_to/document-context-aware-QA",
+ "Retrieve from vector stores directly": "https://python.langchain.com/docs/use_cases/question_answering/how_to/vector_db_text_generation",
+ "Retrieve as you generate with FLARE": "https://python.langchain.com/docs/use_cases/question_answering/how_to/flare",
+ "Improve document indexing with HyDE": "https://python.langchain.com/docs/use_cases/question_answering/how_to/hyde",
+ "QA using Activeloop's DeepLake": "https://python.langchain.com/docs/use_cases/question_answering/integrations/semantic-search-over-chat",
+ "SalesGPT - Your Context-Aware AI Sales Assistant With Knowledge Base": "https://python.langchain.com/docs/use_cases/agents/sales_agent_with_context",
+ "Graph QA": "https://python.langchain.com/docs/use_cases/more/graph/graph_qa",
+ "Tree of Thought (ToT) example": "https://python.langchain.com/docs/use_cases/more/graph/tot",
+ "Bash chain": "https://python.langchain.com/docs/use_cases/more/code_writing/llm_bash",
+ "LLM Symbolic Math ": "https://python.langchain.com/docs/use_cases/more/code_writing/llm_symbolic_math",
+ "Summarization checker chain": "https://python.langchain.com/docs/use_cases/more/self_check/llm_summarization_checker",
+ "Self-checking chain": "https://python.langchain.com/docs/use_cases/more/self_check/llm_checker",
+ "Agent Debates with Tools": "https://python.langchain.com/docs/use_cases/agent_simulations/two_agent_debate_tools",
+ "Weaviate self-querying ": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/weaviate_self_query",
+ "Elasticsearch self-querying ": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/elasticsearch_self_query",
+ "Chroma self-querying ": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/chroma_self_query",
+ "Self-querying with Pinecone": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/pinecone",
+ "Self-querying with MyScale": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/myscale_self_query",
+ "Deep Lake self-querying ": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/activeloop_deeplake_self_query",
+ "Qdrant self-querying ": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/qdrant_self_query",
+ "Lost in the middle: The problem with long contexts": "https://python.langchain.com/docs/modules/data_connection/document_transformers/post_retrieval/long_context_reorder",
+ "How to add memory to a Multi-Input Chain": "https://python.langchain.com/docs/modules/memory/adding_memory_chain_multiple_inputs",
+ "How to add Memory to an LLMChain": "https://python.langchain.com/docs/modules/memory/adding_memory",
+ "How to use multiple memory classes in the same chain": "https://python.langchain.com/docs/modules/memory/multiple_memory",
+ "How to customize conversational memory": "https://python.langchain.com/docs/modules/memory/conversational_customization",
+ "Conversation Knowledge Graph Memory": "https://python.langchain.com/docs/modules/memory/types/kg",
+ "ConversationTokenBufferMemory": "https://python.langchain.com/docs/modules/memory/types/token_buffer",
+ "ConversationSummaryBufferMemory": "https://python.langchain.com/docs/modules/memory/types/summary_buffer",
+ "Multiple callback handlers": "https://python.langchain.com/docs/modules/callbacks/multiple_callbacks",
+ "Token counting": "https://python.langchain.com/docs/modules/callbacks/token_counting",
+ "Logging to file": "https://python.langchain.com/docs/modules/callbacks/filecallbackhandler",
+ "Multi-Input Tools": "https://python.langchain.com/docs/modules/agents/tools/multi_input_tool",
+ "Defining Custom Tools": "https://python.langchain.com/docs/modules/agents/tools/custom_tools",
+ "Tool Input Schema": "https://python.langchain.com/docs/modules/agents/tools/tool_input_validation",
+ "Human-in-the-loop Tool Validation": "https://python.langchain.com/docs/modules/agents/tools/human_approval",
+ "Combine agents and vector stores": "https://python.langchain.com/docs/modules/agents/how_to/agent_vectorstore",
+ "Access intermediate steps": "https://python.langchain.com/docs/modules/agents/how_to/intermediate_steps",
+ "Timeouts for agents": "https://python.langchain.com/docs/modules/agents/how_to/max_time_limit",
+ "Streaming final agent output": "https://python.langchain.com/docs/modules/agents/how_to/streaming_stdout_final_only",
+ "Cap the max number of iterations": "https://python.langchain.com/docs/modules/agents/how_to/max_iterations",
+ "Async API": "https://python.langchain.com/docs/modules/chains/how_to/async_chain",
+ "Tracking token usage": "https://python.langchain.com/docs/modules/model_io/models/llms/token_usage_tracking",
+ "Serialization": "https://python.langchain.com/docs/modules/model_io/models/llms/llm_serialization",
+ "Retry parser": "https://python.langchain.com/docs/modules/model_io/output_parsers/retry",
+ "Datetime parser": "https://python.langchain.com/docs/modules/model_io/output_parsers/datetime",
+ "Pydantic (JSON) parser": "https://python.langchain.com/docs/modules/model_io/output_parsers/pydantic",
+ "Router": "https://python.langchain.com/docs/modules/chains/foundational/router",
+ "Transformation": "https://python.langchain.com/docs/modules/chains/foundational/transformation"
+ },
+ "ContextualCompressionRetriever": {
+ "Cohere Reranker": "https://python.langchain.com/docs/integrations/retrievers/cohere-reranker",
+ "LOTR (Merger Retriever)": "https://python.langchain.com/docs/integrations/retrievers/merger_retriever"
+ },
+ "CohereRerank": {
+ "Cohere Reranker": "https://python.langchain.com/docs/integrations/retrievers/cohere-reranker",
+ "Cohere": "https://python.langchain.com/docs/integrations/providers/cohere"
+ },
+ "RetrievalQA": {
+ "Cohere Reranker": "https://python.langchain.com/docs/integrations/retrievers/cohere-reranker",
+ "Document Comparison": "https://python.langchain.com/docs/integrations/toolkits/document_comparison_toolkit",
+ "ScaNN": "https://python.langchain.com/docs/integrations/vectorstores/scann",
+ "Activeloop's Deep Lake": "https://python.langchain.com/docs/integrations/vectorstores/activeloop_deeplake",
+ "StarRocks": "https://python.langchain.com/docs/integrations/vectorstores/starrocks",
+ "Loading documents from a YouTube url": "https://python.langchain.com/docs/integrations/document_loaders/youtube_audio",
+ "Docugami": "https://python.langchain.com/docs/integrations/document_loaders/docugami",
+ "Ollama": "https://python.langchain.com/docs/integrations/llms/ollama",
+ "QA over Documents": "https://python.langchain.com/docs/use_cases/question_answering/index",
+ "Perform context-aware text splitting": "https://python.langchain.com/docs/use_cases/question_answering/how_to/document-context-aware-QA",
+ "Use local LLMs": "https://python.langchain.com/docs/use_cases/question_answering/how_to/local_retrieval_qa",
+ "Structure answers with OpenAI functions": "https://python.langchain.com/docs/use_cases/question_answering/integrations/openai_functions_retrieval_qa",
+ "QA using Activeloop's DeepLake": "https://python.langchain.com/docs/use_cases/question_answering/integrations/semantic-search-over-chat",
+ "SalesGPT - Your Context-Aware AI Sales Assistant With Knowledge Base": "https://python.langchain.com/docs/use_cases/agents/sales_agent_with_context",
+ "Combine agents and vector stores": "https://python.langchain.com/docs/modules/agents/how_to/agent_vectorstore"
+ },
+ "KNNRetriever": {
+ "kNN": "https://python.langchain.com/docs/integrations/retrievers/knn"
+ },
+ "WikipediaRetriever": {
+ "Wikipedia": "https://python.langchain.com/docs/integrations/providers/wikipedia"
+ },
+ "ConversationalRetrievalChain": {
+ "Wikipedia": "https://python.langchain.com/docs/integrations/retrievers/wikipedia",
+ "Arxiv": "https://python.langchain.com/docs/integrations/retrievers/arxiv",
+ "Chat Over Documents with Vectara": "https://python.langchain.com/docs/integrations/providers/vectara/vectara_chat",
+ "Chatbots": "https://python.langchain.com/docs/use_cases/chatbots",
+ "Code Understanding": "https://python.langchain.com/docs/use_cases/code_understanding",
+ "QA over Documents": "https://python.langchain.com/docs/use_cases/question_answering/index",
+ "Analysis of Twitter the-algorithm source code with LangChain, GPT4 and Activeloop's Deep Lake": "https://python.langchain.com/docs/use_cases/question_answering/how_to/code/twitter-the-algorithm-analysis-deeplake",
+ "Use LangChain, GPT and Activeloop's Deep Lake to work with code base": "https://python.langchain.com/docs/use_cases/question_answering/how_to/code/code-analysis-deeplake",
+ "Structure answers with OpenAI functions": "https://python.langchain.com/docs/use_cases/question_answering/integrations/openai_functions_retrieval_qa",
+ "QA using Activeloop's DeepLake": "https://python.langchain.com/docs/use_cases/question_answering/integrations/semantic-search-over-chat"
+ },
+ "MetalRetriever": {
+ "Metal": "https://python.langchain.com/docs/integrations/providers/metal"
+ },
+ "CSVLoader": {
+ "ChatGPT Plugin": "https://python.langchain.com/docs/integrations/retrievers/chatgpt-plugin",
+ "CSV": "https://python.langchain.com/docs/integrations/document_loaders/csv"
+ },
+ "Document": {
+ "ChatGPT Plugin": "https://python.langchain.com/docs/integrations/retrievers/chatgpt-plugin",
+ "Weaviate Hybrid Search": "https://python.langchain.com/docs/integrations/retrievers/weaviate-hybrid",
+ "BM25": "https://python.langchain.com/docs/integrations/retrievers/bm25",
+ "TF-IDF": "https://python.langchain.com/docs/integrations/retrievers/tf_idf",
+ "Apify": "https://python.langchain.com/docs/integrations/tools/apify",
+ "Vectara Text Generation": "https://python.langchain.com/docs/integrations/providers/vectara/vectara_text_generation",
+ "PGVector": "https://python.langchain.com/docs/integrations/vectorstores/pgvector",
+ "Annoy": "https://python.langchain.com/docs/integrations/vectorstores/annoy",
+ "pg_embedding": "https://python.langchain.com/docs/integrations/vectorstores/pgembedding",
+ "FAISS": "https://python.langchain.com/docs/integrations/vectorstores/faiss",
+ "Nuclia Understanding API document transformer": "https://python.langchain.com/docs/integrations/document_transformers/nuclia_transformer",
+ "OpenAI Functions Metadata Tagger": "https://python.langchain.com/docs/integrations/document_transformers/openai_metadata_tagger",
+ "Doctran Extract Properties": "https://python.langchain.com/docs/integrations/document_transformers/doctran_extract_properties",
+ "Doctran Interrogate Documents": "https://python.langchain.com/docs/integrations/document_transformers/doctran_interrogate_document",
+ "Doctran Translate Documents": "https://python.langchain.com/docs/integrations/document_transformers/doctran_translate_document",
+ "TensorFlow Datasets": "https://python.langchain.com/docs/integrations/document_loaders/tensorflow_datasets",
+ "Airbyte Salesforce": "https://python.langchain.com/docs/integrations/document_loaders/airbyte_salesforce",
+ "Airbyte CDK": "https://python.langchain.com/docs/integrations/document_loaders/airbyte_cdk",
+ "Airbyte Stripe": "https://python.langchain.com/docs/integrations/document_loaders/airbyte_stripe",
+ "Copy Paste": "https://python.langchain.com/docs/integrations/document_loaders/copypaste",
+ "Airbyte Typeform": "https://python.langchain.com/docs/integrations/document_loaders/airbyte_typeform",
+ "Apify Dataset": "https://python.langchain.com/docs/integrations/document_loaders/apify_dataset",
+ "Docugami": "https://python.langchain.com/docs/integrations/document_loaders/docugami",
+ "Airbyte Hubspot": "https://python.langchain.com/docs/integrations/document_loaders/airbyte_hubspot",
+ "Airbyte Gong": "https://python.langchain.com/docs/integrations/document_loaders/airbyte_gong",
+ "Airbyte Shopify": "https://python.langchain.com/docs/integrations/document_loaders/airbyte_shopify",
+ "Airbyte Zendesk Support": "https://python.langchain.com/docs/integrations/document_loaders/airbyte_zendesk_support",
+ "SageMakerEndpoint": "https://python.langchain.com/docs/integrations/llms/sagemaker",
+ "Caching integrations": "https://python.langchain.com/docs/integrations/llms/llm_caching",
+ "!pip install bs4": "https://python.langchain.com/docs/use_cases/autonomous_agents/marathon_times",
+ "Retrieve from vector stores directly": "https://python.langchain.com/docs/use_cases/question_answering/how_to/vector_db_text_generation",
+ "Multiple Retrieval Sources": "https://python.langchain.com/docs/use_cases/question_answering/how_to/multiple_retrieval",
+ "Retrieve as you generate with FLARE": "https://python.langchain.com/docs/use_cases/question_answering/how_to/flare",
+ "Plug-and-Plai": "https://python.langchain.com/docs/use_cases/agents/custom_agent_with_plugin_retrieval_using_plugnplai",
+ "Custom Agent with PlugIn Retrieval": "https://python.langchain.com/docs/use_cases/agents/custom_agent_with_plugin_retrieval",
+ "Weaviate self-querying ": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/weaviate_self_query",
+ "Elasticsearch self-querying ": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/elasticsearch_self_query",
+ "Chroma self-querying ": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/chroma_self_query",
+ "Self-querying with Pinecone": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/pinecone",
+ "Self-querying with MyScale": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/myscale_self_query",
+ "Deep Lake self-querying ": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/activeloop_deeplake_self_query",
+ "Qdrant self-querying ": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/qdrant_self_query",
+ "How to add memory to a Multi-Input Chain": "https://python.langchain.com/docs/modules/memory/adding_memory_chain_multiple_inputs",
+ "Custom agent with tool retrieval": "https://python.langchain.com/docs/modules/agents/how_to/custom_agent_with_tool_retrieval"
+ },
+ "ChatGPTPluginRetriever": {
+ "ChatGPT Plugin": "https://python.langchain.com/docs/integrations/retrievers/chatgpt-plugin",
+ "OpenAI": "https://python.langchain.com/docs/integrations/providers/openai"
+ },
+ "GoogleCloudEnterpriseSearchRetriever": {
+ "Google Cloud Enterprise Search": "https://python.langchain.com/docs/integrations/retrievers/google_cloud_enterprise_search"
+ },
+ "DocArrayRetriever": {
+ "DocArray Retriever": "https://python.langchain.com/docs/integrations/retrievers/docarray_retriever"
+ },
+ "SVMRetriever": {
+ "SVM": "https://python.langchain.com/docs/integrations/retrievers/svm",
+ "QA over Documents": "https://python.langchain.com/docs/use_cases/question_answering/index"
+ },
+ "PineconeHybridSearchRetriever": {
+ "Pinecone Hybrid Search": "https://python.langchain.com/docs/integrations/retrievers/pinecone_hybrid_search"
+ },
+ "PubMedRetriever": {
+ "PubMed": "https://python.langchain.com/docs/integrations/providers/pubmed"
+ },
+ "WeaviateHybridSearchRetriever": {
+ "Weaviate Hybrid Search": "https://python.langchain.com/docs/integrations/retrievers/weaviate-hybrid"
+ },
+ "ArxivRetriever": {
+ "Arxiv": "https://python.langchain.com/docs/integrations/providers/arxiv"
+ },
+ "BM25Retriever": {
+ "BM25": "https://python.langchain.com/docs/integrations/retrievers/bm25",
+ "Ensemble Retriever": "https://python.langchain.com/docs/modules/data_connection/retrievers/ensemble"
+ },
+ "AzureCognitiveSearchRetriever": {
+ "Azure Cognitive Search": "https://python.langchain.com/docs/integrations/providers/azure_cognitive_search_"
+ },
+ "ChaindeskRetriever": {
+ "Chaindesk": "https://python.langchain.com/docs/integrations/providers/chaindesk"
+ },
+ "MergerRetriever": {
+ "LOTR (Merger Retriever)": "https://python.langchain.com/docs/integrations/retrievers/merger_retriever"
+ },
+ "EmbeddingsRedundantFilter": {
+ "LOTR (Merger Retriever)": "https://python.langchain.com/docs/integrations/retrievers/merger_retriever"
+ },
+ "EmbeddingsClusteringFilter": {
+ "LOTR (Merger Retriever)": "https://python.langchain.com/docs/integrations/retrievers/merger_retriever"
+ },
+ "DocumentCompressorPipeline": {
+ "LOTR (Merger Retriever)": "https://python.langchain.com/docs/integrations/retrievers/merger_retriever"
+ },
+ "LongContextReorder": {
+ "LOTR (Merger Retriever)": "https://python.langchain.com/docs/integrations/retrievers/merger_retriever",
+ "Lost in the middle: The problem with long contexts": "https://python.langchain.com/docs/modules/data_connection/document_transformers/post_retrieval/long_context_reorder"
+ },
+ "TFIDFRetriever": {
+ "TF-IDF": "https://python.langchain.com/docs/integrations/retrievers/tf_idf"
+ },
+ "load_tools": {
+ "ChatGPT Plugins": "https://python.langchain.com/docs/integrations/tools/chatgpt_plugins",
+ "Human as a tool": "https://python.langchain.com/docs/integrations/tools/human_tools",
+ "AWS Lambda API": "https://python.langchain.com/docs/integrations/tools/awslambda",
+ "Requests": "https://python.langchain.com/docs/integrations/tools/requests",
+ "OpenWeatherMap API": "https://python.langchain.com/docs/integrations/tools/openweathermap",
+ "Search Tools": "https://python.langchain.com/docs/integrations/tools/search_tools",
+ "ArXiv API Tool": "https://python.langchain.com/docs/integrations/tools/arxiv",
+ "GraphQL tool": "https://python.langchain.com/docs/integrations/tools/graphql",
+ "SceneXplain": "https://python.langchain.com/docs/integrations/tools/sceneXplain",
+ "Dall-E Image Generator": "https://python.langchain.com/docs/integrations/tools/dalle_image_generator",
+ "Argilla": "https://python.langchain.com/docs/integrations/callbacks/argilla",
+ "Streamlit": "https://python.langchain.com/docs/integrations/callbacks/.ipynb_checkpoints/streamlit-checkpoint",
+ "SerpAPI": "https://python.langchain.com/docs/integrations/providers/serpapi",
+ "Comet": "https://python.langchain.com/docs/integrations/providers/comet_tracking",
+ "Aim": "https://python.langchain.com/docs/integrations/providers/aim_tracking",
+ "Golden": "https://python.langchain.com/docs/integrations/providers/golden",
+ "Weights & Biases": "https://python.langchain.com/docs/integrations/providers/wandb_tracking",
+ "SageMaker Tracking": "https://python.langchain.com/docs/integrations/providers/sagemaker_tracking",
+ "Wolfram Alpha": "https://python.langchain.com/docs/integrations/providers/wolfram_alpha",
+ "MLflow": "https://python.langchain.com/docs/integrations/providers/mlflow_tracking",
+ "DataForSEO": "https://python.langchain.com/docs/integrations/providers/dataforseo",
+ "SearxNG Search API": "https://python.langchain.com/docs/integrations/providers/searx",
+ "Google Serper": "https://python.langchain.com/docs/integrations/providers/google_serper",
+ "OpenWeatherMap": "https://python.langchain.com/docs/integrations/providers/openweathermap",
+ "Flyte": "https://python.langchain.com/docs/integrations/providers/flyte",
+ "WandB Tracing": "https://python.langchain.com/docs/integrations/providers/wandb_tracing",
+ "ClearML": "https://python.langchain.com/docs/integrations/providers/clearml_tracking",
+ "Google Search": "https://python.langchain.com/docs/integrations/providers/google_search",
+ "Log, Trace, and Monitor Langchain LLM Calls": "https://python.langchain.com/docs/integrations/providers/portkey/logging_tracing_portkey",
+ "Portkey": "https://python.langchain.com/docs/integrations/providers/portkey/index",
+ "NIBittensorLLM": "https://python.langchain.com/docs/integrations/llms/bittensor",
+ "Amazon API Gateway": "https://python.langchain.com/docs/integrations/llms/amazon_api_gateway_example",
+ "Debugging": "https://python.langchain.com/docs/guides/debugging",
+ "LangSmith Walkthrough": "https://python.langchain.com/docs/guides/langsmith/walkthrough",
+ "Agent Debates with Tools": "https://python.langchain.com/docs/use_cases/agent_simulations/two_agent_debate_tools",
+ "Multiple callback handlers": "https://python.langchain.com/docs/modules/callbacks/multiple_callbacks",
+ "Defining Custom Tools": "https://python.langchain.com/docs/modules/agents/tools/custom_tools",
+ "Human-in-the-loop Tool Validation": "https://python.langchain.com/docs/modules/agents/tools/human_approval",
+ "Access intermediate steps": "https://python.langchain.com/docs/modules/agents/how_to/intermediate_steps",
+ "Timeouts for agents": "https://python.langchain.com/docs/modules/agents/how_to/max_time_limit",
+ "Streaming final agent output": "https://python.langchain.com/docs/modules/agents/how_to/streaming_stdout_final_only",
+ "Cap the max number of iterations": "https://python.langchain.com/docs/modules/agents/how_to/max_iterations",
+ "Async API": "https://python.langchain.com/docs/modules/agents/how_to/async_agent",
+ "Human input Chat Model": "https://python.langchain.com/docs/modules/model_io/models/chat/human_input_chat_model",
+ "Fake LLM": "https://python.langchain.com/docs/modules/model_io/models/llms/fake_llm",
+ "Tracking token usage": "https://python.langchain.com/docs/modules/model_io/models/llms/token_usage_tracking",
+ "Human input LLM": "https://python.langchain.com/docs/modules/model_io/models/llms/human_input_llm"
+ },
+ "initialize_agent": {
+ "ChatGPT Plugins": "https://python.langchain.com/docs/integrations/tools/chatgpt_plugins",
+ "Google Serper API": "https://python.langchain.com/docs/integrations/tools/google_serper",
+ "Human as a tool": "https://python.langchain.com/docs/integrations/tools/human_tools",
+ "AWS Lambda API": "https://python.langchain.com/docs/integrations/tools/awslambda",
+ "OpenWeatherMap API": "https://python.langchain.com/docs/integrations/tools/openweathermap",
+ "Search Tools": "https://python.langchain.com/docs/integrations/tools/search_tools",
+ "Zapier Natural Language Actions API": "https://python.langchain.com/docs/integrations/tools/zapier",
+ "ArXiv API Tool": "https://python.langchain.com/docs/integrations/tools/arxiv",
+ "Metaphor Search": "https://python.langchain.com/docs/integrations/tools/metaphor_search",
+ "GraphQL tool": "https://python.langchain.com/docs/integrations/tools/graphql",
+ "Gradio Tools": "https://python.langchain.com/docs/integrations/tools/gradio_tools",
+ "SceneXplain": "https://python.langchain.com/docs/integrations/tools/sceneXplain",
+ "Dall-E Image Generator": "https://python.langchain.com/docs/integrations/tools/dalle_image_generator",
+ "Shell Tool": "https://python.langchain.com/docs/integrations/tools/bash",
+ "Zep Memory": "https://python.langchain.com/docs/integrations/memory/zep_memory",
+ "Dynamodb Chat Message History": "https://python.langchain.com/docs/integrations/memory/dynamodb_chat_message_history",
+ "Argilla": "https://python.langchain.com/docs/integrations/callbacks/argilla",
+ "Streamlit": "https://python.langchain.com/docs/integrations/callbacks/.ipynb_checkpoints/streamlit-checkpoint",
+ "Comet": "https://python.langchain.com/docs/integrations/providers/comet_tracking",
+ "Aim": "https://python.langchain.com/docs/integrations/providers/aim_tracking",
+ "Weights & Biases": "https://python.langchain.com/docs/integrations/providers/wandb_tracking",
+ "SageMaker Tracking": "https://python.langchain.com/docs/integrations/providers/sagemaker_tracking",
+ "MLflow": "https://python.langchain.com/docs/integrations/providers/mlflow_tracking",
+ "Google Serper": "https://python.langchain.com/docs/integrations/providers/google_serper",
+ "Flyte": "https://python.langchain.com/docs/integrations/providers/flyte",
+ "WandB Tracing": "https://python.langchain.com/docs/integrations/providers/wandb_tracing",
+ "ClearML": "https://python.langchain.com/docs/integrations/providers/clearml_tracking",
+ "Log, Trace, and Monitor Langchain LLM Calls": "https://python.langchain.com/docs/integrations/providers/portkey/logging_tracing_portkey",
+ "Portkey": "https://python.langchain.com/docs/integrations/providers/portkey/index",
+ "Jira": "https://python.langchain.com/docs/integrations/toolkits/jira",
+ "Document Comparison": "https://python.langchain.com/docs/integrations/toolkits/document_comparison_toolkit",
+ "Azure Cognitive Services Toolkit": "https://python.langchain.com/docs/integrations/toolkits/azure_cognitive_services",
+ "Natural Language APIs": "https://python.langchain.com/docs/integrations/toolkits/openapi_nla",
+ "Gmail Toolkit": "https://python.langchain.com/docs/integrations/toolkits/gmail",
+ "Github Toolkit": "https://python.langchain.com/docs/integrations/toolkits/github",
+ "PlayWright Browser Toolkit": "https://python.langchain.com/docs/integrations/toolkits/playwright",
+ "Office365 Toolkit": "https://python.langchain.com/docs/integrations/toolkits/office365",
+ "MultiOn Toolkit": "https://python.langchain.com/docs/integrations/toolkits/multion",
+ "Amadeus Toolkit": "https://python.langchain.com/docs/integrations/toolkits/amadeus",
+ "NIBittensorLLM": "https://python.langchain.com/docs/integrations/llms/bittensor",
+ "Amazon API Gateway": "https://python.langchain.com/docs/integrations/llms/amazon_api_gateway_example",
+ "Debugging": "https://python.langchain.com/docs/guides/debugging",
+ "LangSmith Walkthrough": "https://python.langchain.com/docs/guides/langsmith/walkthrough",
+ "Comparing Chain Outputs": "https://python.langchain.com/docs/guides/evaluation/examples/comparisons",
+ "Agent Trajectory": "https://python.langchain.com/docs/guides/evaluation/trajectory/trajectory_eval",
+ "Multi-modal outputs: Image & Text": "https://python.langchain.com/docs/use_cases/multi_modal/image_agent",
+ "Agent Debates with Tools": "https://python.langchain.com/docs/use_cases/agent_simulations/two_agent_debate_tools",
+ "Multiple callback handlers": "https://python.langchain.com/docs/modules/callbacks/multiple_callbacks",
+ "Multi-Input Tools": "https://python.langchain.com/docs/modules/agents/tools/multi_input_tool",
+ "Defining Custom Tools": "https://python.langchain.com/docs/modules/agents/tools/custom_tools",
+ "Tool Input Schema": "https://python.langchain.com/docs/modules/agents/tools/tool_input_validation",
+ "Human-in-the-loop Tool Validation": "https://python.langchain.com/docs/modules/agents/tools/human_approval",
+ "Self ask with search": "https://python.langchain.com/docs/modules/agents/agent_types/self_ask_with_search",
+ "ReAct document store": "https://python.langchain.com/docs/modules/agents/agent_types/react_docstore",
+ "OpenAI Multi Functions Agent": "https://python.langchain.com/docs/modules/agents/agent_types/openai_multi_functions_agent",
+ "Combine agents and vector stores": "https://python.langchain.com/docs/modules/agents/how_to/agent_vectorstore",
+ "Access intermediate steps": "https://python.langchain.com/docs/modules/agents/how_to/intermediate_steps",
+ "Handle parsing errors": "https://python.langchain.com/docs/modules/agents/how_to/handle_parsing_errors",
+ "Running Agent as an Iterator": "https://python.langchain.com/docs/modules/agents/how_to/agent_iter",
+ "Timeouts for agents": "https://python.langchain.com/docs/modules/agents/how_to/max_time_limit",
+ "Streaming final agent output": "https://python.langchain.com/docs/modules/agents/how_to/streaming_stdout_final_only",
+ "Add Memory to OpenAI Functions Agent": "https://python.langchain.com/docs/modules/agents/how_to/add_memory_openai_functions",
+ "Cap the max number of iterations": "https://python.langchain.com/docs/modules/agents/how_to/max_iterations",
+ "Custom functions with OpenAI Functions Agent": "https://python.langchain.com/docs/modules/agents/how_to/custom-functions-with-openai-functions-agent",
+ "Async API": "https://python.langchain.com/docs/modules/agents/how_to/async_agent",
+ "Use ToolKits with OpenAI Functions": "https://python.langchain.com/docs/modules/agents/how_to/use_toolkits_with_openai_functions",
+ "Human input Chat Model": "https://python.langchain.com/docs/modules/model_io/models/chat/human_input_chat_model",
+ "Fake LLM": "https://python.langchain.com/docs/modules/model_io/models/llms/fake_llm",
+ "Tracking token usage": "https://python.langchain.com/docs/modules/model_io/models/llms/token_usage_tracking",
+ "Human input LLM": "https://python.langchain.com/docs/modules/model_io/models/llms/human_input_llm"
+ },
+ "AgentType": {
+ "ChatGPT Plugins": "https://python.langchain.com/docs/integrations/tools/chatgpt_plugins",
+ "Google Serper API": "https://python.langchain.com/docs/integrations/tools/google_serper",
+ "Human as a tool": "https://python.langchain.com/docs/integrations/tools/human_tools",
+ "AWS Lambda API": "https://python.langchain.com/docs/integrations/tools/awslambda",
+ "OpenWeatherMap API": "https://python.langchain.com/docs/integrations/tools/openweathermap",
+ "Search Tools": "https://python.langchain.com/docs/integrations/tools/search_tools",
+ "Zapier Natural Language Actions API": "https://python.langchain.com/docs/integrations/tools/zapier",
+ "ArXiv API Tool": "https://python.langchain.com/docs/integrations/tools/arxiv",
+ "Metaphor Search": "https://python.langchain.com/docs/integrations/tools/metaphor_search",
+ "GraphQL tool": "https://python.langchain.com/docs/integrations/tools/graphql",
+ "Shell Tool": "https://python.langchain.com/docs/integrations/tools/bash",
+ "Zep Memory": "https://python.langchain.com/docs/integrations/memory/zep_memory",
+ "Dynamodb Chat Message History": "https://python.langchain.com/docs/integrations/memory/dynamodb_chat_message_history",
+ "Argilla": "https://python.langchain.com/docs/integrations/callbacks/argilla",
+ "Streamlit": "https://python.langchain.com/docs/integrations/callbacks/.ipynb_checkpoints/streamlit-checkpoint",
+ "Aim": "https://python.langchain.com/docs/integrations/providers/aim_tracking",
+ "Weights & Biases": "https://python.langchain.com/docs/integrations/providers/wandb_tracking",
+ "MLflow": "https://python.langchain.com/docs/integrations/providers/mlflow_tracking",
+ "Google Serper": "https://python.langchain.com/docs/integrations/providers/google_serper",
+ "Flyte": "https://python.langchain.com/docs/integrations/providers/flyte",
+ "WandB Tracing": "https://python.langchain.com/docs/integrations/providers/wandb_tracing",
+ "ClearML": "https://python.langchain.com/docs/integrations/providers/clearml_tracking",
+ "Log, Trace, and Monitor Langchain LLM Calls": "https://python.langchain.com/docs/integrations/providers/portkey/logging_tracing_portkey",
+ "Portkey": "https://python.langchain.com/docs/integrations/providers/portkey/index",
+ "CSV Agent": "https://python.langchain.com/docs/integrations/toolkits/csv",
+ "Jira": "https://python.langchain.com/docs/integrations/toolkits/jira",
+ "Document Comparison": "https://python.langchain.com/docs/integrations/toolkits/document_comparison_toolkit",
+ "Python Agent": "https://python.langchain.com/docs/integrations/toolkits/python",
+ "Azure Cognitive Services Toolkit": "https://python.langchain.com/docs/integrations/toolkits/azure_cognitive_services",
+ "SQL Database Agent": "https://python.langchain.com/docs/integrations/toolkits/sql_database",
+ "Natural Language APIs": "https://python.langchain.com/docs/integrations/toolkits/openapi_nla",
+ "Gmail Toolkit": "https://python.langchain.com/docs/integrations/toolkits/gmail",
+ "Github Toolkit": "https://python.langchain.com/docs/integrations/toolkits/github",
+ "PlayWright Browser Toolkit": "https://python.langchain.com/docs/integrations/toolkits/playwright",
+ "Office365 Toolkit": "https://python.langchain.com/docs/integrations/toolkits/office365",
+ "Pandas Dataframe Agent": "https://python.langchain.com/docs/integrations/toolkits/pandas",
+ "MultiOn Toolkit": "https://python.langchain.com/docs/integrations/toolkits/multion",
+ "Amadeus Toolkit": "https://python.langchain.com/docs/integrations/toolkits/amadeus",
+ "NIBittensorLLM": "https://python.langchain.com/docs/integrations/llms/bittensor",
+ "Amazon API Gateway": "https://python.langchain.com/docs/integrations/llms/amazon_api_gateway_example",
+ "Debugging": "https://python.langchain.com/docs/guides/debugging",
+ "LangSmith Walkthrough": "https://python.langchain.com/docs/guides/langsmith/walkthrough",
+ "Comparing Chain Outputs": "https://python.langchain.com/docs/guides/evaluation/examples/comparisons",
+ "Agent Trajectory": "https://python.langchain.com/docs/guides/evaluation/trajectory/trajectory_eval",
+ "SQL": "https://python.langchain.com/docs/use_cases/sql",
+ "Multi-modal outputs: Image & Text": "https://python.langchain.com/docs/use_cases/multi_modal/image_agent",
+ "Agent Debates with Tools": "https://python.langchain.com/docs/use_cases/agent_simulations/two_agent_debate_tools",
+ "Multiple callback handlers": "https://python.langchain.com/docs/modules/callbacks/multiple_callbacks",
+ "Multi-Input Tools": "https://python.langchain.com/docs/modules/agents/tools/multi_input_tool",
+ "Defining Custom Tools": "https://python.langchain.com/docs/modules/agents/tools/custom_tools",
+ "Tool Input Schema": "https://python.langchain.com/docs/modules/agents/tools/tool_input_validation",
+ "Human-in-the-loop Tool Validation": "https://python.langchain.com/docs/modules/agents/tools/human_approval",
+ "Self ask with search": "https://python.langchain.com/docs/modules/agents/agent_types/self_ask_with_search",
+ "ReAct document store": "https://python.langchain.com/docs/modules/agents/agent_types/react_docstore",
+ "OpenAI Multi Functions Agent": "https://python.langchain.com/docs/modules/agents/agent_types/openai_multi_functions_agent",
+ "Combine agents and vector stores": "https://python.langchain.com/docs/modules/agents/how_to/agent_vectorstore",
+ "Access intermediate steps": "https://python.langchain.com/docs/modules/agents/how_to/intermediate_steps",
+ "Handle parsing errors": "https://python.langchain.com/docs/modules/agents/how_to/handle_parsing_errors",
+ "Running Agent as an Iterator": "https://python.langchain.com/docs/modules/agents/how_to/agent_iter",
+ "Timeouts for agents": "https://python.langchain.com/docs/modules/agents/how_to/max_time_limit",
+ "Streaming final agent output": "https://python.langchain.com/docs/modules/agents/how_to/streaming_stdout_final_only",
+ "Add Memory to OpenAI Functions Agent": "https://python.langchain.com/docs/modules/agents/how_to/add_memory_openai_functions",
+ "Cap the max number of iterations": "https://python.langchain.com/docs/modules/agents/how_to/max_iterations",
+ "Custom functions with OpenAI Functions Agent": "https://python.langchain.com/docs/modules/agents/how_to/custom-functions-with-openai-functions-agent",
+ "Async API": "https://python.langchain.com/docs/modules/agents/how_to/async_agent",
+ "Use ToolKits with OpenAI Functions": "https://python.langchain.com/docs/modules/agents/how_to/use_toolkits_with_openai_functions",
+ "Human input Chat Model": "https://python.langchain.com/docs/modules/model_io/models/chat/human_input_chat_model",
+ "Fake LLM": "https://python.langchain.com/docs/modules/model_io/models/llms/fake_llm",
+ "Tracking token usage": "https://python.langchain.com/docs/modules/model_io/models/llms/token_usage_tracking",
+ "Human input LLM": "https://python.langchain.com/docs/modules/model_io/models/llms/human_input_llm"
+ },
+ "AIPluginTool": {
+ "ChatGPT Plugins": "https://python.langchain.com/docs/integrations/tools/chatgpt_plugins"
+ },
+ "DataForSeoAPIWrapper": {
+ "DataForSeo API Wrapper": "https://python.langchain.com/docs/integrations/tools/dataforseo",
+ "DataForSEO": "https://python.langchain.com/docs/integrations/providers/dataforseo"
+ },
+ "Tool": {
+ "DataForSeo API Wrapper": "https://python.langchain.com/docs/integrations/tools/dataforseo",
+ "Google Serper API": "https://python.langchain.com/docs/integrations/tools/google_serper",
+ "SerpAPI": "https://python.langchain.com/docs/integrations/tools/serpapi",
+ "Google Search": "https://python.langchain.com/docs/integrations/tools/google_search",
+ "Zep Memory": "https://python.langchain.com/docs/integrations/memory/zep_memory",
+ "Dynamodb Chat Message History": "https://python.langchain.com/docs/integrations/memory/dynamodb_chat_message_history",
+ "SageMaker Tracking": "https://python.langchain.com/docs/integrations/providers/sagemaker_tracking",
+ "Google Serper": "https://python.langchain.com/docs/integrations/providers/google_serper",
+ "Document Comparison": "https://python.langchain.com/docs/integrations/toolkits/document_comparison_toolkit",
+ "Natural Language APIs": "https://python.langchain.com/docs/integrations/toolkits/openapi_nla",
+ "Github Toolkit": "https://python.langchain.com/docs/integrations/toolkits/github",
+ "NIBittensorLLM": "https://python.langchain.com/docs/integrations/llms/bittensor",
+ "Comparing Chain Outputs": "https://python.langchain.com/docs/guides/evaluation/examples/comparisons",
+ "AutoGPT": "https://python.langchain.com/docs/use_cases/autonomous_agents/autogpt",
+ "BabyAGI with Tools": "https://python.langchain.com/docs/use_cases/agents/baby_agi_with_agent",
+ "Plug-and-Plai": "https://python.langchain.com/docs/use_cases/agents/custom_agent_with_plugin_retrieval_using_plugnplai",
+ "Wikibase Agent": "https://python.langchain.com/docs/use_cases/agents/wikibase_agent",
+ "SalesGPT - Your Context-Aware AI Sales Assistant With Knowledge Base": "https://python.langchain.com/docs/use_cases/agents/sales_agent_with_context",
+ "Custom Agent with PlugIn Retrieval": "https://python.langchain.com/docs/use_cases/agents/custom_agent_with_plugin_retrieval",
+ "Agent Debates with Tools": "https://python.langchain.com/docs/use_cases/agent_simulations/two_agent_debate_tools",
+ "Adding Message Memory backed by a database to an Agent": "https://python.langchain.com/docs/modules/memory/agent_with_memory_in_db",
+ "How to add Memory to an Agent": "https://python.langchain.com/docs/modules/memory/agent_with_memory",
+ "Multi-Input Tools": "https://python.langchain.com/docs/modules/agents/tools/multi_input_tool",
+ "Defining Custom Tools": "https://python.langchain.com/docs/modules/agents/tools/custom_tools",
+ "Self ask with search": "https://python.langchain.com/docs/modules/agents/agent_types/self_ask_with_search",
+ "ReAct document store": "https://python.langchain.com/docs/modules/agents/agent_types/react_docstore",
+ "OpenAI Multi Functions Agent": "https://python.langchain.com/docs/modules/agents/agent_types/openai_multi_functions_agent",
+ "Combine agents and vector stores": "https://python.langchain.com/docs/modules/agents/how_to/agent_vectorstore",
+ "Custom MRKL agent": "https://python.langchain.com/docs/modules/agents/how_to/custom_mrkl_agent",
+ "Handle parsing errors": "https://python.langchain.com/docs/modules/agents/how_to/handle_parsing_errors",
+ "Shared memory across agents and tools": "https://python.langchain.com/docs/modules/agents/how_to/sharedmemory_for_tools",
+ "Custom multi-action agent": "https://python.langchain.com/docs/modules/agents/how_to/custom_multi_action_agent",
+ "Running Agent as an Iterator": "https://python.langchain.com/docs/modules/agents/how_to/agent_iter",
+ "Timeouts for agents": "https://python.langchain.com/docs/modules/agents/how_to/max_time_limit",
+ "Add Memory to OpenAI Functions Agent": "https://python.langchain.com/docs/modules/agents/how_to/add_memory_openai_functions",
+ "Cap the max number of iterations": "https://python.langchain.com/docs/modules/agents/how_to/max_iterations",
+ "Custom agent": "https://python.langchain.com/docs/modules/agents/how_to/custom_agent",
+ "Use ToolKits with OpenAI Functions": "https://python.langchain.com/docs/modules/agents/how_to/use_toolkits_with_openai_functions",
+ "Custom agent with tool retrieval": "https://python.langchain.com/docs/modules/agents/how_to/custom_agent_with_tool_retrieval"
+ },
+ "SearxSearchWrapper": {
+ "SearxNG Search API": "https://python.langchain.com/docs/integrations/providers/searx"
+ },
+ "GoogleSerperAPIWrapper": {
+ "Google Serper API": "https://python.langchain.com/docs/integrations/tools/google_serper",
+ "Google Serper": "https://python.langchain.com/docs/integrations/providers/google_serper",
+ "Retrieve as you generate with FLARE": "https://python.langchain.com/docs/use_cases/question_answering/how_to/flare"
+ },
+ "GooglePlacesTool": {
+ "Google Places": "https://python.langchain.com/docs/integrations/tools/google_places"
+ },
+ "HumanInputRun": {
+ "Human as a tool": "https://python.langchain.com/docs/integrations/tools/human_tools",
+ "!pip install bs4": "https://python.langchain.com/docs/use_cases/autonomous_agents/marathon_times"
+ },
+ "NucliaUnderstandingAPI": {
+ "Nuclia Understanding API tool": "https://python.langchain.com/docs/integrations/tools/nuclia",
+ "Nuclia Understanding API document transformer": "https://python.langchain.com/docs/integrations/document_transformers/nuclia_transformer",
+ "Nuclia Understanding API document loader": "https://python.langchain.com/docs/integrations/document_loaders/nuclia"
+ },
+ "TwilioAPIWrapper": {
+ "Twilio": "https://python.langchain.com/docs/integrations/tools/twilio"
+ },
+ "IFTTTWebhook": {
+ "IFTTT WebHooks": "https://python.langchain.com/docs/integrations/tools/ifttt"
+ },
+ "WikipediaQueryRun": {
+ "Wikipedia": "https://python.langchain.com/docs/integrations/tools/wikipedia"
+ },
+ "WikipediaAPIWrapper": {
+ "Wikipedia": "https://python.langchain.com/docs/integrations/tools/wikipedia",
+ "Zep Memory": "https://python.langchain.com/docs/integrations/memory/zep_memory"
+ },
+ "AlphaVantageAPIWrapper": {
+ "Alpha Vantage": "https://python.langchain.com/docs/integrations/tools/alpha_vantage"
+ },
+ "TextRequestsWrapper": {
+ "Requests": "https://python.langchain.com/docs/integrations/tools/requests",
+ "JSON Agent": "https://python.langchain.com/docs/integrations/toolkits/json",
+ "OpenAPI agents": "https://python.langchain.com/docs/integrations/toolkits/openapi",
+ "Tool Input Schema": "https://python.langchain.com/docs/modules/agents/tools/tool_input_validation"
+ },
+ "OpenWeatherMapAPIWrapper": {
+ "OpenWeatherMap API": "https://python.langchain.com/docs/integrations/tools/openweathermap",
+ "OpenWeatherMap": "https://python.langchain.com/docs/integrations/providers/openweathermap"
+ },
+ "PubmedQueryRun": {
+ "PubMed Tool": "https://python.langchain.com/docs/integrations/tools/pubmed"
+ },
+ "YouTubeSearchTool": {
+ "YouTubeSearchTool": "https://python.langchain.com/docs/integrations/tools/youtube"
+ },
+ "VectorstoreIndexCreator": {
+ "Apify": "https://python.langchain.com/docs/integrations/tools/apify",
+ "HuggingFace dataset": "https://python.langchain.com/docs/integrations/document_loaders/hugging_face_dataset",
+ "Spreedly": "https://python.langchain.com/docs/integrations/document_loaders/spreedly",
+ "Image captions": "https://python.langchain.com/docs/integrations/document_loaders/image_captions",
+ "Figma": "https://python.langchain.com/docs/integrations/document_loaders/figma",
+ "Apify Dataset": "https://python.langchain.com/docs/integrations/document_loaders/apify_dataset",
+ "Iugu": "https://python.langchain.com/docs/integrations/document_loaders/iugu",
+ "Stripe": "https://python.langchain.com/docs/integrations/document_loaders/stripe",
+ "Modern Treasury": "https://python.langchain.com/docs/integrations/document_loaders/modern_treasury",
+ "QA over Documents": "https://python.langchain.com/docs/use_cases/question_answering/index",
+ "Multiple Retrieval Sources": "https://python.langchain.com/docs/use_cases/question_answering/how_to/multiple_retrieval"
+ },
+ "ZapierToolkit": {
+ "Zapier Natural Language Actions API": "https://python.langchain.com/docs/integrations/tools/zapier"
+ },
+ "ZapierNLAWrapper": {
+ "Zapier Natural Language Actions API": "https://python.langchain.com/docs/integrations/tools/zapier"
+ },
+ "LLMChain": {
+ "Zapier Natural Language Actions API": "https://python.langchain.com/docs/integrations/tools/zapier",
+ "Dall-E Image Generator": "https://python.langchain.com/docs/integrations/tools/dalle_image_generator",
+ "Streamlit Chat Message History": "https://python.langchain.com/docs/integrations/memory/streamlit_chat_message_history",
+ "Argilla": "https://python.langchain.com/docs/integrations/callbacks/argilla",
+ "Comet": "https://python.langchain.com/docs/integrations/providers/comet_tracking",
+ "Aim": "https://python.langchain.com/docs/integrations/providers/aim_tracking",
+ "Weights & Biases": "https://python.langchain.com/docs/integrations/providers/wandb_tracking",
+ "SageMaker Tracking": "https://python.langchain.com/docs/integrations/providers/sagemaker_tracking",
+ "Rebuff": "https://python.langchain.com/docs/integrations/providers/rebuff",
+ "MLflow": "https://python.langchain.com/docs/integrations/providers/mlflow_tracking",
+ "Flyte": "https://python.langchain.com/docs/integrations/providers/flyte",
+ "Chat Over Documents with Vectara": "https://python.langchain.com/docs/integrations/providers/vectara/vectara_chat",
+ "Vectara Text Generation": "https://python.langchain.com/docs/integrations/providers/vectara/vectara_text_generation",
+ "Natural Language APIs": "https://python.langchain.com/docs/integrations/toolkits/openapi_nla",
+ "JSON Agent": "https://python.langchain.com/docs/integrations/toolkits/json",
+ "Figma": "https://python.langchain.com/docs/integrations/document_loaders/figma",
+ "Predibase": "https://python.langchain.com/docs/integrations/llms/predibase",
+ "Eden AI": "https://python.langchain.com/docs/integrations/llms/edenai",
+ "AzureML Online Endpoint": "https://python.langchain.com/docs/integrations/llms/azureml_endpoint_example",
+ "Custom Trajectory Evaluator": "https://python.langchain.com/docs/guides/evaluation/trajectory/custom",
+ "Custom Pairwise Evaluator": "https://python.langchain.com/docs/guides/evaluation/comparison/custom",
+ "Chatbots": "https://python.langchain.com/docs/use_cases/chatbots",
+ "Summarization": "https://python.langchain.com/docs/use_cases/summarization",
+ "Interacting with APIs": "https://python.langchain.com/docs/use_cases/apis",
+ "Retrieve from vector stores directly": "https://python.langchain.com/docs/use_cases/question_answering/how_to/vector_db_text_generation",
+ "Improve document indexing with HyDE": "https://python.langchain.com/docs/use_cases/question_answering/how_to/hyde",
+ "Structure answers with OpenAI functions": "https://python.langchain.com/docs/use_cases/question_answering/integrations/openai_functions_retrieval_qa",
+ "Multi-agent authoritarian speaker selection": "https://python.langchain.com/docs/use_cases/agent_simulations/multiagent_authoritarian",
+ "WebResearchRetriever": "https://python.langchain.com/docs/modules/data_connection/retrievers/web_research",
+ "Lost in the middle: The problem with long contexts": "https://python.langchain.com/docs/modules/data_connection/document_transformers/post_retrieval/long_context_reorder",
+ "How to add Memory to an LLMChain": "https://python.langchain.com/docs/modules/memory/adding_memory",
+ "Logging to file": "https://python.langchain.com/docs/modules/callbacks/filecallbackhandler",
+ "XML Agent": "https://python.langchain.com/docs/modules/agents/agent_types/xml_agent",
+ "Datetime parser": "https://python.langchain.com/docs/modules/model_io/output_parsers/datetime",
+ "Prompt Pipelining": "https://python.langchain.com/docs/modules/model_io/prompts/prompt_templates/prompts_pipelining",
+ "Connecting to a Feature Store": "https://python.langchain.com/docs/modules/model_io/prompts/prompt_templates/connecting_to_a_feature_store",
+ "Router": "https://python.langchain.com/docs/modules/chains/foundational/router",
+ "Transformation": "https://python.langchain.com/docs/modules/chains/foundational/transformation",
+ "Async API": "https://python.langchain.com/docs/modules/chains/how_to/async_chain"
+ },
+ "TransformChain": {
+ "Zapier Natural Language Actions API": "https://python.langchain.com/docs/integrations/tools/zapier",
+ "Rebuff": "https://python.langchain.com/docs/integrations/providers/rebuff",
+ "Transformation": "https://python.langchain.com/docs/modules/chains/foundational/transformation"
+ },
+ "SimpleSequentialChain": {
+ "Zapier Natural Language Actions API": "https://python.langchain.com/docs/integrations/tools/zapier",
+ "SageMaker Tracking": "https://python.langchain.com/docs/integrations/providers/sagemaker_tracking",
+ "Rebuff": "https://python.langchain.com/docs/integrations/providers/rebuff",
+ "Baseten": "https://python.langchain.com/docs/integrations/llms/baseten",
+ "Predibase": "https://python.langchain.com/docs/integrations/llms/predibase",
+ "Eden AI": "https://python.langchain.com/docs/integrations/llms/edenai",
+ "Replicate": "https://python.langchain.com/docs/integrations/llms/replicate",
+ "Transformation": "https://python.langchain.com/docs/modules/chains/foundational/transformation"
+ },
+ "ZapierNLARunAction": {
+ "Zapier Natural Language Actions API": "https://python.langchain.com/docs/integrations/tools/zapier"
+ },
+ "GoldenQueryAPIWrapper": {
+ "Golden Query": "https://python.langchain.com/docs/integrations/tools/golden_query",
+ "Golden": "https://python.langchain.com/docs/integrations/providers/golden"
+ },
+ "ArxivAPIWrapper": {
+ "ArXiv API Tool": "https://python.langchain.com/docs/integrations/tools/arxiv"
+ },
+ "tool": {
+ "Metaphor Search": "https://python.langchain.com/docs/integrations/tools/metaphor_search",
+ "JSONFormer": "https://python.langchain.com/docs/integrations/llms/jsonformer_experimental",
+ "Agent Trajectory": "https://python.langchain.com/docs/guides/evaluation/trajectory/trajectory_eval",
+ "!pip install bs4": "https://python.langchain.com/docs/use_cases/autonomous_agents/marathon_times",
+ "Defining Custom Tools": "https://python.langchain.com/docs/modules/agents/tools/custom_tools",
+ "XML Agent": "https://python.langchain.com/docs/modules/agents/agent_types/xml_agent"
+ },
+ "OpenAIFunctionsAgent": {
+ "Metaphor Search": "https://python.langchain.com/docs/integrations/tools/metaphor_search",
+ "Conversational Retrieval Agent": "https://python.langchain.com/docs/use_cases/question_answering/how_to/conversational_retrieval_agents"
+ },
+ "SystemMessage": {
+ "Metaphor Search": "https://python.langchain.com/docs/integrations/tools/metaphor_search",
+ "Anthropic": "https://python.langchain.com/docs/integrations/chat/anthropic",
+ "\ud83d\ude85 LiteLLM": "https://python.langchain.com/docs/integrations/chat/litellm",
+ "OpenAI": "https://python.langchain.com/docs/integrations/chat/openai",
+ "Google Cloud Platform Vertex AI PaLM ": "https://python.langchain.com/docs/integrations/chat/google_vertex_ai_palm",
+ "JinaChat": "https://python.langchain.com/docs/integrations/chat/jinachat",
+ "ERNIE-Bot Chat": "https://python.langchain.com/docs/integrations/chat/ernie",
+ "Anyscale": "https://python.langchain.com/docs/integrations/chat/anyscale",
+ "Context": "https://python.langchain.com/docs/integrations/callbacks/context",
+ "Label Studio": "https://python.langchain.com/docs/integrations/callbacks/labelstudio",
+ "MLflow AI Gateway": "https://python.langchain.com/docs/integrations/providers/mlflow_ai_gateway",
+ "Chatbots": "https://python.langchain.com/docs/use_cases/chatbots",
+ "Conversational Retrieval Agent": "https://python.langchain.com/docs/use_cases/question_answering/how_to/conversational_retrieval_agents",
+ "Structure answers with OpenAI functions": "https://python.langchain.com/docs/use_cases/question_answering/integrations/openai_functions_retrieval_qa",
+ "CAMEL Role-Playing Autonomous Cooperative Agents": "https://python.langchain.com/docs/use_cases/agent_simulations/camel_role_playing",
+ "Multi-Agent Simulated Environment: Petting Zoo": "https://python.langchain.com/docs/use_cases/agent_simulations/petting_zoo",
+ "Multi-agent decentralized speaker selection": "https://python.langchain.com/docs/use_cases/agent_simulations/multiagent_bidding",
+ "Multi-agent authoritarian speaker selection": "https://python.langchain.com/docs/use_cases/agent_simulations/multiagent_authoritarian",
+ "Two-Player Dungeons & Dragons": "https://python.langchain.com/docs/use_cases/agent_simulations/two_player_dnd",
+ "Multi-Player Dungeons & Dragons": "https://python.langchain.com/docs/use_cases/agent_simulations/multi_player_dnd",
+ "Simulated Environment: Gymnasium": "https://python.langchain.com/docs/use_cases/agent_simulations/gymnasium",
+ "Agent Debates with Tools": "https://python.langchain.com/docs/use_cases/agent_simulations/two_agent_debate_tools",
+ "How to add Memory to an LLMChain": "https://python.langchain.com/docs/modules/memory/adding_memory",
+ "Use ToolKits with OpenAI Functions": "https://python.langchain.com/docs/modules/agents/how_to/use_toolkits_with_openai_functions",
+ "Prompt Pipelining": "https://python.langchain.com/docs/modules/model_io/prompts/prompt_templates/prompts_pipelining",
+ "Using OpenAI functions": "https://python.langchain.com/docs/modules/chains/how_to/openai_functions"
+ },
+ "AgentExecutor": {
+ "Metaphor Search": "https://python.langchain.com/docs/integrations/tools/metaphor_search",
+ "Jina": "https://python.langchain.com/docs/integrations/providers/jina",
+ "PowerBI Dataset Agent": "https://python.langchain.com/docs/integrations/toolkits/powerbi",
+ "SQL Database Agent": "https://python.langchain.com/docs/integrations/toolkits/sql_database",
+ "JSON Agent": "https://python.langchain.com/docs/integrations/toolkits/json",
+ "NIBittensorLLM": "https://python.langchain.com/docs/integrations/llms/bittensor",
+ "SQL": "https://python.langchain.com/docs/use_cases/sql",
+ "BabyAGI with Tools": "https://python.langchain.com/docs/use_cases/agents/baby_agi_with_agent",
+ "Conversational Retrieval Agent": "https://python.langchain.com/docs/use_cases/question_answering/how_to/conversational_retrieval_agents",
+ "Plug-and-Plai": "https://python.langchain.com/docs/use_cases/agents/custom_agent_with_plugin_retrieval_using_plugnplai",
+ "Wikibase Agent": "https://python.langchain.com/docs/use_cases/agents/wikibase_agent",
+ "SalesGPT - Your Context-Aware AI Sales Assistant With Knowledge Base": "https://python.langchain.com/docs/use_cases/agents/sales_agent_with_context",
+ "Custom Agent with PlugIn Retrieval": "https://python.langchain.com/docs/use_cases/agents/custom_agent_with_plugin_retrieval",
+ "Adding Message Memory backed by a database to an Agent": "https://python.langchain.com/docs/modules/memory/agent_with_memory_in_db",
+ "How to add Memory to an Agent": "https://python.langchain.com/docs/modules/memory/agent_with_memory",
+ "XML Agent": "https://python.langchain.com/docs/modules/agents/agent_types/xml_agent",
+ "Custom MRKL agent": "https://python.langchain.com/docs/modules/agents/how_to/custom_mrkl_agent",
+ "Shared memory across agents and tools": "https://python.langchain.com/docs/modules/agents/how_to/sharedmemory_for_tools",
+ "Custom multi-action agent": "https://python.langchain.com/docs/modules/agents/how_to/custom_multi_action_agent",
+ "Running Agent as an Iterator": "https://python.langchain.com/docs/modules/agents/how_to/agent_iter",
+ "Custom agent": "https://python.langchain.com/docs/modules/agents/how_to/custom_agent",
+ "Custom agent with tool retrieval": "https://python.langchain.com/docs/modules/agents/how_to/custom_agent_with_tool_retrieval"
+ },
+ "MetaphorSearchAPIWrapper": {
+ "Metaphor Search": "https://python.langchain.com/docs/integrations/tools/metaphor_search"
+ },
+ "PlayWrightBrowserToolkit": {
+ "Metaphor Search": "https://python.langchain.com/docs/integrations/tools/metaphor_search",
+ "PlayWright Browser Toolkit": "https://python.langchain.com/docs/integrations/toolkits/playwright"
+ },
+ "create_async_playwright_browser": {
+ "Metaphor Search": "https://python.langchain.com/docs/integrations/tools/metaphor_search",
+ "PlayWright Browser Toolkit": "https://python.langchain.com/docs/integrations/toolkits/playwright"
+ },
+ "MetaphorSearchResults": {
+ "Metaphor Search": "https://python.langchain.com/docs/integrations/tools/metaphor_search"
+ },
+ "SerpAPIWrapper": {
+ "SerpAPI": "https://python.langchain.com/docs/integrations/providers/serpapi",
+ "NIBittensorLLM": "https://python.langchain.com/docs/integrations/llms/bittensor",
+ "AutoGPT": "https://python.langchain.com/docs/use_cases/autonomous_agents/autogpt"
+ },
+ "GraphQLAPIWrapper": {
+ "GraphQL tool": "https://python.langchain.com/docs/integrations/tools/graphql"
+ },
+ "DuckDuckGoSearchRun": {
+ "DuckDuckGo Search": "https://python.langchain.com/docs/integrations/tools/ddg",
+ "Github Toolkit": "https://python.langchain.com/docs/integrations/toolkits/github",
+ "Cookbook": "https://python.langchain.com/docs/guides/expression_language/cookbook",
+ "!pip install bs4": "https://python.langchain.com/docs/use_cases/autonomous_agents/marathon_times"
+ },
+ "DuckDuckGoSearchResults": {
+ "DuckDuckGo Search": "https://python.langchain.com/docs/integrations/tools/ddg"
+ },
+ "DuckDuckGoSearchAPIWrapper": {
+ "DuckDuckGo Search": "https://python.langchain.com/docs/integrations/tools/ddg"
+ },
+ "ConversationBufferMemory": {
+ "Gradio Tools": "https://python.langchain.com/docs/integrations/tools/gradio_tools",
+ "SceneXplain": "https://python.langchain.com/docs/integrations/tools/sceneXplain",
+ "Streamlit Chat Message History": "https://python.langchain.com/docs/integrations/memory/streamlit_chat_message_history",
+ "Dynamodb Chat Message History": "https://python.langchain.com/docs/integrations/memory/dynamodb_chat_message_history",
+ "Chat Over Documents with Vectara": "https://python.langchain.com/docs/integrations/providers/vectara/vectara_chat",
+ "NIBittensorLLM": "https://python.langchain.com/docs/integrations/llms/bittensor",
+ "Bedrock": "https://python.langchain.com/docs/integrations/llms/bedrock",
+ "Cookbook": "https://python.langchain.com/docs/guides/expression_language/cookbook",
+ "Chatbots": "https://python.langchain.com/docs/use_cases/chatbots",
+ "QA over Documents": "https://python.langchain.com/docs/use_cases/question_answering/index",
+ "Structure answers with OpenAI functions": "https://python.langchain.com/docs/use_cases/question_answering/integrations/openai_functions_retrieval_qa",
+ "Agent Debates with Tools": "https://python.langchain.com/docs/use_cases/agent_simulations/two_agent_debate_tools",
+ "Adding Message Memory backed by a database to an Agent": "https://python.langchain.com/docs/modules/memory/agent_with_memory_in_db",
+ "How to add memory to a Multi-Input Chain": "https://python.langchain.com/docs/modules/memory/adding_memory_chain_multiple_inputs",
+ "How to add Memory to an LLMChain": "https://python.langchain.com/docs/modules/memory/adding_memory",
+ "How to use multiple memory classes in the same chain": "https://python.langchain.com/docs/modules/memory/multiple_memory",
+ "How to customize conversational memory": "https://python.langchain.com/docs/modules/memory/conversational_customization",
+ "How to add Memory to an Agent": "https://python.langchain.com/docs/modules/memory/agent_with_memory",
+ "Shared memory across agents and tools": "https://python.langchain.com/docs/modules/agents/how_to/sharedmemory_for_tools",
+ "Add Memory to OpenAI Functions Agent": "https://python.langchain.com/docs/modules/agents/how_to/add_memory_openai_functions"
+ },
+ "SceneXplainTool": {
+ "SceneXplain": "https://python.langchain.com/docs/integrations/tools/sceneXplain"
+ },
+ "WolframAlphaAPIWrapper": {
+ "Wolfram Alpha": "https://python.langchain.com/docs/integrations/providers/wolfram_alpha"
+ },
+ "load_huggingface_tool": {
+ "Requires transformers>=4.29.0 and huggingface_hub>=0.14.1": "https://python.langchain.com/docs/integrations/tools/huggingface_tools"
+ },
+ "GoogleSearchAPIWrapper": {
+ "Google Search": "https://python.langchain.com/docs/integrations/providers/google_search",
+ "NIBittensorLLM": "https://python.langchain.com/docs/integrations/llms/bittensor",
+ "Web Scraping": "https://python.langchain.com/docs/use_cases/web_scraping",
+ "WebResearchRetriever": "https://python.langchain.com/docs/modules/data_connection/retrievers/web_research",
+ "Adding Message Memory backed by a database to an Agent": "https://python.langchain.com/docs/modules/memory/agent_with_memory_in_db",
+ "How to add Memory to an Agent": "https://python.langchain.com/docs/modules/memory/agent_with_memory",
+ "Shared memory across agents and tools": "https://python.langchain.com/docs/modules/agents/how_to/sharedmemory_for_tools"
+ },
+ "BingSearchAPIWrapper": {
+ "Bing Search": "https://python.langchain.com/docs/integrations/tools/bing_search"
+ },
+ "DallEAPIWrapper": {
+ "Dall-E Image Generator": "https://python.langchain.com/docs/integrations/tools/dalle_image_generator"
+ },
+ "ShellTool": {
+ "Shell Tool": "https://python.langchain.com/docs/integrations/tools/bash",
+ "Human-in-the-loop Tool Validation": "https://python.langchain.com/docs/modules/agents/tools/human_approval"
+ },
+ "ReadFileTool": {
+ "File System Tools": "https://python.langchain.com/docs/integrations/tools/filesystem",
+ "AutoGPT": "https://python.langchain.com/docs/use_cases/autonomous_agents/autogpt",
+ "!pip install bs4": "https://python.langchain.com/docs/use_cases/autonomous_agents/marathon_times"
+ },
+ "CopyFileTool": {
+ "File System Tools": "https://python.langchain.com/docs/integrations/tools/filesystem"
+ },
+ "DeleteFileTool": {
+ "File System Tools": "https://python.langchain.com/docs/integrations/tools/filesystem"
+ },
+ "MoveFileTool": {
+ "File System Tools": "https://python.langchain.com/docs/integrations/tools/filesystem",
+ "Tools as OpenAI Functions": "https://python.langchain.com/docs/modules/agents/tools/tools_as_openai_functions"
+ },
+ "WriteFileTool": {
+ "File System Tools": "https://python.langchain.com/docs/integrations/tools/filesystem",
+ "AutoGPT": "https://python.langchain.com/docs/use_cases/autonomous_agents/autogpt",
+ "!pip install bs4": "https://python.langchain.com/docs/use_cases/autonomous_agents/marathon_times"
+ },
+ "ListDirectoryTool": {
+ "File System Tools": "https://python.langchain.com/docs/integrations/tools/filesystem"
+ },
+ "FileManagementToolkit": {
+ "File System Tools": "https://python.langchain.com/docs/integrations/tools/filesystem"
+ },
+ "BraveSearch": {
+ "Brave Search": "https://python.langchain.com/docs/integrations/providers/brave_search"
+ },
+ "RedisChatMessageHistory": {
+ "Redis Chat Message History": "https://python.langchain.com/docs/integrations/memory/redis_chat_message_history",
+ "Adding Message Memory backed by a database to an Agent": "https://python.langchain.com/docs/modules/memory/agent_with_memory_in_db"
+ },
+ "ConversationChain": {
+ "Entity Memory with SQLite storage": "https://python.langchain.com/docs/integrations/memory/entity_memory_with_sqlite",
+ "Figma": "https://python.langchain.com/docs/integrations/document_loaders/figma",
+ "Bedrock": "https://python.langchain.com/docs/integrations/llms/bedrock",
+ "Chatbots": "https://python.langchain.com/docs/use_cases/chatbots",
+ "Agent Debates with Tools": "https://python.langchain.com/docs/use_cases/agent_simulations/two_agent_debate_tools",
+ "How to use multiple memory classes in the same chain": "https://python.langchain.com/docs/modules/memory/multiple_memory",
+ "How to customize conversational memory": "https://python.langchain.com/docs/modules/memory/conversational_customization",
+ "Conversation Knowledge Graph Memory": "https://python.langchain.com/docs/modules/memory/types/kg",
+ "ConversationTokenBufferMemory": "https://python.langchain.com/docs/modules/memory/types/token_buffer",
+ "ConversationSummaryBufferMemory": "https://python.langchain.com/docs/modules/memory/types/summary_buffer",
+ "Router": "https://python.langchain.com/docs/modules/chains/foundational/router"
+ },
+ "ConversationEntityMemory": {
+ "Entity Memory with SQLite storage": "https://python.langchain.com/docs/integrations/memory/entity_memory_with_sqlite"
+ },
+ "SQLiteEntityStore": {
+ "Entity Memory with SQLite storage": "https://python.langchain.com/docs/integrations/memory/entity_memory_with_sqlite"
+ },
+ "ENTITY_MEMORY_CONVERSATION_TEMPLATE": {
+ "Entity Memory with SQLite storage": "https://python.langchain.com/docs/integrations/memory/entity_memory_with_sqlite"
+ },
+ "PostgresChatMessageHistory": {
+ "Postgres Chat Message History": "https://python.langchain.com/docs/integrations/memory/postgres_chat_message_history"
+ },
+ "MomentoChatMessageHistory": {
+ "Momento Chat Message History": "https://python.langchain.com/docs/integrations/memory/momento_chat_message_history"
+ },
+ "MongoDBChatMessageHistory": {
+ "Mongodb Chat Message History": "https://python.langchain.com/docs/integrations/memory/mongodb_chat_message_history"
+ },
+ "CassandraChatMessageHistory": {
+ "Cassandra Chat Message History": "https://python.langchain.com/docs/integrations/memory/cassandra_chat_message_history",
+ "Cassandra": "https://python.langchain.com/docs/integrations/providers/cassandra"
+ },
+ "MotorheadMemory": {
+ "Mot\u00f6rhead Memory": "https://python.langchain.com/docs/integrations/memory/motorhead_memory",
+ "Mot\u00f6rhead Memory (Managed)": "https://python.langchain.com/docs/integrations/memory/motorhead_memory_managed"
+ },
+ "StreamlitChatMessageHistory": {
+ "Streamlit Chat Message History": "https://python.langchain.com/docs/integrations/memory/streamlit_chat_message_history"
+ },
+ "DynamoDBChatMessageHistory": {
+ "Dynamodb Chat Message History": "https://python.langchain.com/docs/integrations/memory/dynamodb_chat_message_history"
+ },
+ "PythonREPL": {
+ "Dynamodb Chat Message History": "https://python.langchain.com/docs/integrations/memory/dynamodb_chat_message_history",
+ "Python Agent": "https://python.langchain.com/docs/integrations/toolkits/python",
+ "Cookbook": "https://python.langchain.com/docs/guides/expression_language/cookbook"
+ },
+ "RocksetChatMessageHistory": {
+ "Rockset Chat Message History": "https://python.langchain.com/docs/integrations/memory/rockset_chat_message_history"
+ },
+ "AzureMLChatOnlineEndpoint": {
+ "AzureML Chat Online Endpoint": "https://python.langchain.com/docs/integrations/chat/azureml_chat_endpoint"
+ },
+ "LlamaContentFormatter": {
+ "AzureML Chat Online Endpoint": "https://python.langchain.com/docs/integrations/chat/azureml_chat_endpoint"
+ },
+ "ChatAnthropic": {
+ "Anthropic": "https://python.langchain.com/docs/integrations/chat/anthropic",
+ "Log10": "https://python.langchain.com/docs/integrations/providers/log10",
+ "PlayWright Browser Toolkit": "https://python.langchain.com/docs/integrations/toolkits/playwright",
+ "Fallbacks": "https://python.langchain.com/docs/guides/fallbacks",
+ "Agent Trajectory": "https://python.langchain.com/docs/guides/evaluation/trajectory/trajectory_eval",
+ "Custom Pairwise Evaluator": "https://python.langchain.com/docs/guides/evaluation/comparison/custom",
+ "Pairwise String Comparison": "https://python.langchain.com/docs/guides/evaluation/comparison/pairwise_string",
+ "Criteria Evaluation": "https://python.langchain.com/docs/guides/evaluation/string/criteria_eval_chain",
+ "XML Agent": "https://python.langchain.com/docs/modules/agents/agent_types/xml_agent",
+ "Few shot examples for chat models": "https://python.langchain.com/docs/modules/model_io/prompts/prompt_templates/few_shot_examples_chat"
+ },
+ "ChatPromptTemplate": {
+ "Anthropic": "https://python.langchain.com/docs/integrations/chat/anthropic",
+ "\ud83d\ude85 LiteLLM": "https://python.langchain.com/docs/integrations/chat/litellm",
+ "OpenAI": "https://python.langchain.com/docs/integrations/chat/openai",
+ "Google Cloud Platform Vertex AI PaLM ": "https://python.langchain.com/docs/integrations/chat/google_vertex_ai_palm",
+ "JinaChat": "https://python.langchain.com/docs/integrations/chat/jinachat",
+ "Context": "https://python.langchain.com/docs/integrations/callbacks/context",
+ "OpenAI Functions Metadata Tagger": "https://python.langchain.com/docs/integrations/document_transformers/openai_metadata_tagger",
+ "Figma": "https://python.langchain.com/docs/integrations/document_loaders/figma",
+ "Fireworks": "https://python.langchain.com/docs/integrations/llms/Fireworks",
+ "Fallbacks": "https://python.langchain.com/docs/guides/fallbacks",
+ "Cookbook": "https://python.langchain.com/docs/guides/expression_language/cookbook",
+ "Interface": "https://python.langchain.com/docs/guides/expression_language/interface",
+ "Chatbots": "https://python.langchain.com/docs/use_cases/chatbots",
+ "Extraction": "https://python.langchain.com/docs/use_cases/extraction",
+ "Tagging": "https://python.langchain.com/docs/use_cases/tagging",
+ "Multiple Retrieval Sources": "https://python.langchain.com/docs/use_cases/question_answering/how_to/multiple_retrieval",
+ "Structure answers with OpenAI functions": "https://python.langchain.com/docs/use_cases/question_answering/integrations/openai_functions_retrieval_qa",
+ "Multi-agent authoritarian speaker selection": "https://python.langchain.com/docs/use_cases/agent_simulations/multiagent_authoritarian",
+ "How to add Memory to an LLMChain": "https://python.langchain.com/docs/modules/memory/adding_memory",
+ "Retry parser": "https://python.langchain.com/docs/modules/model_io/output_parsers/retry",
+ "Pydantic (JSON) parser": "https://python.langchain.com/docs/modules/model_io/output_parsers/pydantic",
+ "Few shot examples for chat models": "https://python.langchain.com/docs/modules/model_io/prompts/prompt_templates/few_shot_examples_chat",
+ "Prompt Pipelining": "https://python.langchain.com/docs/modules/model_io/prompts/prompt_templates/prompts_pipelining",
+ "Using OpenAI functions": "https://python.langchain.com/docs/modules/chains/how_to/openai_functions"
+ },
+ "SystemMessagePromptTemplate": {
+ "Anthropic": "https://python.langchain.com/docs/integrations/chat/anthropic",
+ "\ud83d\ude85 LiteLLM": "https://python.langchain.com/docs/integrations/chat/litellm",
+ "OpenAI": "https://python.langchain.com/docs/integrations/chat/openai",
+ "Google Cloud Platform Vertex AI PaLM ": "https://python.langchain.com/docs/integrations/chat/google_vertex_ai_palm",
+ "JinaChat": "https://python.langchain.com/docs/integrations/chat/jinachat",
+ "Figma": "https://python.langchain.com/docs/integrations/document_loaders/figma",
+ "Cookbook": "https://python.langchain.com/docs/guides/expression_language/cookbook",
+ "Chatbots": "https://python.langchain.com/docs/use_cases/chatbots",
+ "CAMEL Role-Playing Autonomous Cooperative Agents": "https://python.langchain.com/docs/use_cases/agent_simulations/camel_role_playing"
+ },
+ "AIMessagePromptTemplate": {
+ "Anthropic": "https://python.langchain.com/docs/integrations/chat/anthropic",
+ "\ud83d\ude85 LiteLLM": "https://python.langchain.com/docs/integrations/chat/litellm",
+ "OpenAI": "https://python.langchain.com/docs/integrations/chat/openai",
+ "JinaChat": "https://python.langchain.com/docs/integrations/chat/jinachat",
+ "Figma": "https://python.langchain.com/docs/integrations/document_loaders/figma"
+ },
+ "HumanMessagePromptTemplate": {
+ "Anthropic": "https://python.langchain.com/docs/integrations/chat/anthropic",
+ "\ud83d\ude85 LiteLLM": "https://python.langchain.com/docs/integrations/chat/litellm",
+ "OpenAI": "https://python.langchain.com/docs/integrations/chat/openai",
+ "Google Cloud Platform Vertex AI PaLM ": "https://python.langchain.com/docs/integrations/chat/google_vertex_ai_palm",
+ "JinaChat": "https://python.langchain.com/docs/integrations/chat/jinachat",
+ "Context": "https://python.langchain.com/docs/integrations/callbacks/context",
+ "Figma": "https://python.langchain.com/docs/integrations/document_loaders/figma",
+ "Fireworks": "https://python.langchain.com/docs/integrations/llms/Fireworks",
+ "Cookbook": "https://python.langchain.com/docs/guides/expression_language/cookbook",
+ "Chatbots": "https://python.langchain.com/docs/use_cases/chatbots",
+ "Extraction": "https://python.langchain.com/docs/use_cases/extraction",
+ "Structure answers with OpenAI functions": "https://python.langchain.com/docs/use_cases/question_answering/integrations/openai_functions_retrieval_qa",
+ "CAMEL Role-Playing Autonomous Cooperative Agents": "https://python.langchain.com/docs/use_cases/agent_simulations/camel_role_playing",
+ "Multi-agent authoritarian speaker selection": "https://python.langchain.com/docs/use_cases/agent_simulations/multiagent_authoritarian",
+ "How to add Memory to an LLMChain": "https://python.langchain.com/docs/modules/memory/adding_memory",
+ "Retry parser": "https://python.langchain.com/docs/modules/model_io/output_parsers/retry",
+ "Pydantic (JSON) parser": "https://python.langchain.com/docs/modules/model_io/output_parsers/pydantic",
+ "Prompt Pipelining": "https://python.langchain.com/docs/modules/model_io/prompts/prompt_templates/prompts_pipelining",
+ "Using OpenAI functions": "https://python.langchain.com/docs/modules/chains/how_to/openai_functions"
+ },
+ "CallbackManager": {
+ "Anthropic": "https://python.langchain.com/docs/integrations/chat/anthropic",
+ "\ud83d\ude85 LiteLLM": "https://python.langchain.com/docs/integrations/chat/litellm",
+ "Ollama": "https://python.langchain.com/docs/integrations/llms/ollama",
+ "Llama.cpp": "https://python.langchain.com/docs/integrations/llms/llamacpp",
+ "Titan Takeoff": "https://python.langchain.com/docs/integrations/llms/titan_takeoff",
+ "Use local LLMs": "https://python.langchain.com/docs/use_cases/question_answering/how_to/local_retrieval_qa",
+ "WebResearchRetriever": "https://python.langchain.com/docs/modules/data_connection/retrievers/web_research"
+ },
+ "StreamingStdOutCallbackHandler": {
+ "Anthropic": "https://python.langchain.com/docs/integrations/chat/anthropic",
+ "\ud83d\ude85 LiteLLM": "https://python.langchain.com/docs/integrations/chat/litellm",
+ "GPT4All": "https://python.langchain.com/docs/integrations/llms/gpt4all",
+ "Arthur": "https://python.langchain.com/docs/integrations/providers/arthur_tracking",
+ "Chat Over Documents with Vectara": "https://python.langchain.com/docs/integrations/providers/vectara/vectara_chat",
+ "Ollama": "https://python.langchain.com/docs/integrations/llms/ollama",
+ "Llama.cpp": "https://python.langchain.com/docs/integrations/llms/llamacpp",
+ "Titan Takeoff": "https://python.langchain.com/docs/integrations/llms/titan_takeoff",
+ "Eden AI": "https://python.langchain.com/docs/integrations/llms/edenai",
+ "C Transformers": "https://python.langchain.com/docs/integrations/llms/ctransformers",
+ "Huggingface TextGen Inference": "https://python.langchain.com/docs/integrations/llms/huggingface_textgen_inference",
+ "Replicate": "https://python.langchain.com/docs/integrations/llms/replicate",
+ "Use local LLMs": "https://python.langchain.com/docs/use_cases/question_answering/how_to/local_retrieval_qa",
+ "WebResearchRetriever": "https://python.langchain.com/docs/modules/data_connection/retrievers/web_research"
+ },
+ "ChatLiteLLM": {
+ "\ud83d\ude85 LiteLLM": "https://python.langchain.com/docs/integrations/chat/litellm"
+ },
+ "create_tagging_chain": {
+ "Llama API": "https://python.langchain.com/docs/integrations/chat/llama_api",
+ "Anthropic Functions": "https://python.langchain.com/docs/integrations/chat/anthropic_functions",
+ "Tagging": "https://python.langchain.com/docs/use_cases/tagging"
+ },
+ "ChatVertexAI": {
+ "Google Cloud Platform Vertex AI PaLM ": "https://python.langchain.com/docs/integrations/chat/google_vertex_ai_palm"
+ },
+ "JinaChat": {
+ "JinaChat": "https://python.langchain.com/docs/integrations/chat/jinachat"
+ },
+ "AzureChatOpenAI": {
+ "Azure": "https://python.langchain.com/docs/integrations/chat/azure_chat_openai",
+ "Azure OpenAI": "https://python.langchain.com/docs/integrations/providers/azure_openai"
+ },
+ "get_openai_callback": {
+ "Azure": "https://python.langchain.com/docs/integrations/chat/azure_chat_openai",
+ "Token counting": "https://python.langchain.com/docs/modules/callbacks/token_counting",
+ "Tracking token usage": "https://python.langchain.com/docs/modules/model_io/models/llms/token_usage_tracking"
+ },
+ "ErnieBotChat": {
+ "ERNIE-Bot Chat": "https://python.langchain.com/docs/integrations/chat/ernie"
+ },
+ "PromptLayerChatOpenAI": {
+ "PromptLayer ChatOpenAI": "https://python.langchain.com/docs/integrations/chat/promptlayer_chatopenai"
+ },
+ "ChatAnyscale": {
+ "Anyscale": "https://python.langchain.com/docs/integrations/chat/anyscale"
+ },
+ "create_extraction_chain": {
+ "Anthropic Functions": "https://python.langchain.com/docs/integrations/chat/anthropic_functions",
+ "Web Scraping": "https://python.langchain.com/docs/use_cases/web_scraping",
+ "Extraction": "https://python.langchain.com/docs/use_cases/extraction"
+ },
+ "ContextCallbackHandler": {
+ "Context": "https://python.langchain.com/docs/integrations/callbacks/context"
+ },
+ "LabelStudioCallbackHandler": {
+ "Label Studio": "https://python.langchain.com/docs/integrations/callbacks/labelstudio"
+ },
+ "ArgillaCallbackHandler": {
+ "Argilla": "https://python.langchain.com/docs/integrations/providers/argilla"
+ },
+ "StdOutCallbackHandler": {
+ "Argilla": "https://python.langchain.com/docs/integrations/callbacks/argilla",
+ "Comet": "https://python.langchain.com/docs/integrations/providers/comet_tracking",
+ "Aim": "https://python.langchain.com/docs/integrations/providers/aim_tracking",
+ "Weights & Biases": "https://python.langchain.com/docs/integrations/providers/wandb_tracking",
+ "ClearML": "https://python.langchain.com/docs/integrations/providers/clearml_tracking",
+ "Async API": "https://python.langchain.com/docs/modules/agents/how_to/async_agent",
+ "Custom chain": "https://python.langchain.com/docs/modules/chains/how_to/custom_chain"
+ },
+ "PromptLayerCallbackHandler": {
+ "PromptLayer": "https://python.langchain.com/docs/integrations/callbacks/promptlayer"
+ },
+ "GPT4All": {
+ "PromptLayer": "https://python.langchain.com/docs/integrations/callbacks/promptlayer",
+ "GPT4All": "https://python.langchain.com/docs/integrations/llms/gpt4all",
+ "Use local LLMs": "https://python.langchain.com/docs/use_cases/question_answering/how_to/local_retrieval_qa"
+ },
+ "StreamlitCallbackHandler": {
+ "Streamlit": "https://python.langchain.com/docs/integrations/callbacks/.ipynb_checkpoints/streamlit-checkpoint",
+ "GPT4All": "https://python.langchain.com/docs/integrations/providers/gpt4all"
+ },
+ "FigmaFileLoader": {
+ "Figma": "https://python.langchain.com/docs/integrations/document_loaders/figma"
+ },
+ "AzureOpenAI": {
+ "Azure OpenAI": "https://python.langchain.com/docs/integrations/llms/azure_openai_example",
+ "OpenAI": "https://python.langchain.com/docs/integrations/providers/openai"
+ },
+ "MyScale": {
+ "MyScale": "https://python.langchain.com/docs/integrations/vectorstores/myscale",
+ "Self-querying with MyScale": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/myscale_self_query"
+ },
+ "Baseten": {
+ "Baseten": "https://python.langchain.com/docs/integrations/llms/baseten"
+ },
+ "WeatherDataLoader": {
+ "Weather": "https://python.langchain.com/docs/integrations/document_loaders/weather"
+ },
+ "Tair": {
+ "Tair": "https://python.langchain.com/docs/integrations/vectorstores/tair"
+ },
+ "UnstructuredWordDocumentLoader": {
+ "Microsoft Word": "https://python.langchain.com/docs/integrations/document_loaders/microsoft_word"
+ },
+ "CollegeConfidentialLoader": {
+ "College Confidential": "https://python.langchain.com/docs/integrations/document_loaders/college_confidential"
+ },
+ "RWKV": {
+ "RWKV-4": "https://python.langchain.com/docs/integrations/providers/rwkv"
+ },
+ "GoogleDriveLoader": {
+ "Google Drive": "https://python.langchain.com/docs/integrations/document_loaders/google_drive"
+ },
+ "Fireworks": {
+ "Fireworks": "https://python.langchain.com/docs/integrations/llms/Fireworks"
+ },
+ "AmazonAPIGateway": {
+ "Amazon API Gateway": "https://python.langchain.com/docs/integrations/llms/amazon_api_gateway_example"
+ },
+ "UnstructuredPowerPointLoader": {
+ "Microsoft PowerPoint": "https://python.langchain.com/docs/integrations/document_loaders/microsoft_powerpoint"
+ },
+ "CometCallbackHandler": {
+ "Comet": "https://python.langchain.com/docs/integrations/providers/comet_tracking"
+ },
+ "CTransformers": {
+ "C Transformers": "https://python.langchain.com/docs/integrations/llms/ctransformers"
+ },
+ "BiliBiliLoader": {
+ "BiliBili": "https://python.langchain.com/docs/integrations/document_loaders/bilibili"
+ },
+ "DiffbotLoader": {
+ "Diffbot": "https://python.langchain.com/docs/integrations/document_loaders/diffbot"
+ },
+ "DeepSparse": {
+ "DeepSparse": "https://python.langchain.com/docs/integrations/llms/deepsparse"
+ },
+ "AimCallbackHandler": {
+ "Aim": "https://python.langchain.com/docs/integrations/providers/aim_tracking"
+ },
+ "ModernTreasuryLoader": {
+ "Modern Treasury": "https://python.langchain.com/docs/integrations/document_loaders/modern_treasury"
+ },
+ "FacebookChatLoader": {
+ "Facebook Chat": "https://python.langchain.com/docs/integrations/document_loaders/facebook_chat"
+ },
+ "Banana": {
+ "Banana": "https://python.langchain.com/docs/integrations/llms/banana"
+ },
+ "HuggingFacePipeline": {
+ "Hugging Face": "https://python.langchain.com/docs/integrations/providers/huggingface",
+ "RELLM": "https://python.langchain.com/docs/integrations/llms/rellm_experimental",
+ "JSONFormer": "https://python.langchain.com/docs/integrations/llms/jsonformer_experimental"
+ },
+ "HuggingFaceHub": {
+ "Hugging Face": "https://python.langchain.com/docs/integrations/providers/huggingface"
+ },
+ "HuggingFaceHubEmbeddings": {
+ "Hugging Face": "https://python.langchain.com/docs/integrations/providers/huggingface"
+ },
+ "CharacterTextSplitter": {
+ "Hugging Face": "https://python.langchain.com/docs/integrations/providers/huggingface",
+ "OpenAI": "https://python.langchain.com/docs/integrations/providers/openai",
+ "Elasticsearch": "https://python.langchain.com/docs/integrations/vectorstores/elasticsearch",
+ "Vectara Text Generation": "https://python.langchain.com/docs/integrations/providers/vectara/vectara_text_generation",
+ "Document Comparison": "https://python.langchain.com/docs/integrations/toolkits/document_comparison_toolkit",
+ "Vectorstore Agent": "https://python.langchain.com/docs/integrations/toolkits/vectorstore",
+ "LanceDB": "https://python.langchain.com/docs/integrations/vectorstores/lancedb",
+ "Weaviate": "https://python.langchain.com/docs/integrations/vectorstores/weaviate",
+ "DashVector": "https://python.langchain.com/docs/integrations/vectorstores/dashvector",
+ "ScaNN": "https://python.langchain.com/docs/integrations/vectorstores/scann",
+ "Xata": "https://python.langchain.com/docs/integrations/vectorstores/xata",
+ "Vectara": "https://python.langchain.com/docs/integrations/vectorstores/vectara",
+ "Redis": "https://python.langchain.com/docs/integrations/vectorstores/redis",
+ "PGVector": "https://python.langchain.com/docs/integrations/vectorstores/pgvector",
+ "Rockset": "https://python.langchain.com/docs/integrations/vectorstores/rockset",
+ "Dingo": "https://python.langchain.com/docs/integrations/vectorstores/dingo",
+ "Zilliz": "https://python.langchain.com/docs/integrations/vectorstores/zilliz",
+ "SingleStoreDB": "https://python.langchain.com/docs/integrations/vectorstores/singlestoredb",
+ "Annoy": "https://python.langchain.com/docs/integrations/vectorstores/annoy",
+ "Typesense": "https://python.langchain.com/docs/integrations/vectorstores/typesense",
+ "Activeloop's Deep Lake": "https://python.langchain.com/docs/integrations/vectorstores/activeloop_deeplake",
+ "Tair": "https://python.langchain.com/docs/integrations/vectorstores/tair",
+ "Chroma": "https://python.langchain.com/docs/integrations/vectorstores/chroma",
+ "Alibaba Cloud OpenSearch": "https://python.langchain.com/docs/integrations/vectorstores/alibabacloud_opensearch",
+ "StarRocks": "https://python.langchain.com/docs/integrations/vectorstores/starrocks",
+ "Clarifai": "https://python.langchain.com/docs/integrations/vectorstores/clarifai",
+ "scikit-learn": "https://python.langchain.com/docs/integrations/vectorstores/sklearn",
+ "DocArrayHnswSearch": "https://python.langchain.com/docs/integrations/vectorstores/docarray_hnsw",
+ "MyScale": "https://python.langchain.com/docs/integrations/vectorstores/myscale",
+ "ClickHouse Vector Search": "https://python.langchain.com/docs/integrations/vectorstores/clickhouse",
+ "Qdrant": "https://python.langchain.com/docs/integrations/vectorstores/qdrant",
+ "Tigris": "https://python.langchain.com/docs/integrations/vectorstores/tigris",
+ "AwaDB": "https://python.langchain.com/docs/integrations/vectorstores/awadb",
+ "Supabase (Postgres)": "https://python.langchain.com/docs/integrations/vectorstores/supabase",
+ "OpenSearch": "https://python.langchain.com/docs/integrations/vectorstores/opensearch",
+ "Pinecone": "https://python.langchain.com/docs/integrations/vectorstores/pinecone",
+ "BagelDB": "https://python.langchain.com/docs/integrations/vectorstores/bageldb",
+ "Azure Cognitive Search": "https://python.langchain.com/docs/integrations/vectorstores/azuresearch",
+ "Cassandra": "https://python.langchain.com/docs/integrations/vectorstores/cassandra",
+ "USearch": "https://python.langchain.com/docs/integrations/vectorstores/usearch",
+ "Milvus": "https://python.langchain.com/docs/integrations/vectorstores/milvus",
+ "Marqo": "https://python.langchain.com/docs/integrations/vectorstores/marqo",
+ "DocArrayInMemorySearch": "https://python.langchain.com/docs/integrations/vectorstores/docarray_in_memory",
+ "pg_embedding": "https://python.langchain.com/docs/integrations/vectorstores/pgembedding",
+ "FAISS": "https://python.langchain.com/docs/integrations/vectorstores/faiss",
+ "AnalyticDB": "https://python.langchain.com/docs/integrations/vectorstores/analyticdb",
+ "Hologres": "https://python.langchain.com/docs/integrations/vectorstores/hologres",
+ "MongoDB Atlas": "https://python.langchain.com/docs/integrations/vectorstores/mongodb_atlas",
+ "Meilisearch": "https://python.langchain.com/docs/integrations/vectorstores/meilisearch",
+ "Figma": "https://python.langchain.com/docs/integrations/document_loaders/figma",
+ "Psychic": "https://python.langchain.com/docs/integrations/document_loaders/psychic",
+ "Manifest": "https://python.langchain.com/docs/integrations/llms/manifest",
+ "Caching integrations": "https://python.langchain.com/docs/integrations/llms/llm_caching",
+ "Summarization": "https://python.langchain.com/docs/use_cases/summarization",
+ "Conversational Retrieval Agent": "https://python.langchain.com/docs/use_cases/question_answering/how_to/conversational_retrieval_agents",
+ "Retrieve from vector stores directly": "https://python.langchain.com/docs/use_cases/question_answering/how_to/vector_db_text_generation",
+ "Improve document indexing with HyDE": "https://python.langchain.com/docs/use_cases/question_answering/how_to/hyde",
+ "Analysis of Twitter the-algorithm source code with LangChain, GPT4 and Activeloop's Deep Lake": "https://python.langchain.com/docs/use_cases/question_answering/how_to/code/twitter-the-algorithm-analysis-deeplake",
+ "Use LangChain, GPT and Activeloop's Deep Lake to work with code base": "https://python.langchain.com/docs/use_cases/question_answering/how_to/code/code-analysis-deeplake",
+ "Structure answers with OpenAI functions": "https://python.langchain.com/docs/use_cases/question_answering/integrations/openai_functions_retrieval_qa",
+ "QA using Activeloop's DeepLake": "https://python.langchain.com/docs/use_cases/question_answering/integrations/semantic-search-over-chat",
+ "SalesGPT - Your Context-Aware AI Sales Assistant With Knowledge Base": "https://python.langchain.com/docs/use_cases/agents/sales_agent_with_context",
+ "Caching Embeddings": "https://python.langchain.com/docs/modules/data_connection/caching_embeddings",
+ "Split by tokens ": "https://python.langchain.com/docs/modules/data_connection/document_transformers/text_splitters/split_by_token",
+ "How to add memory to a Multi-Input Chain": "https://python.langchain.com/docs/modules/memory/adding_memory_chain_multiple_inputs",
+ "Combine agents and vector stores": "https://python.langchain.com/docs/modules/agents/how_to/agent_vectorstore",
+ "Loading from LangChainHub": "https://python.langchain.com/docs/modules/chains/how_to/from_hub"
+ },
+ "DocugamiLoader": {
+ "Docugami": "https://python.langchain.com/docs/integrations/document_loaders/docugami"
+ },
+ "GutenbergLoader": {
+ "Gutenberg": "https://python.langchain.com/docs/integrations/document_loaders/gutenberg"
+ },
+ "AzureBlobStorageContainerLoader": {
+ "Azure Blob Storage": "https://python.langchain.com/docs/integrations/providers/azure_blob_storage",
+ "Azure Blob Storage Container": "https://python.langchain.com/docs/integrations/document_loaders/azure_blob_storage_container"
+ },
+ "AzureBlobStorageFileLoader": {
+ "Azure Blob Storage": "https://python.langchain.com/docs/integrations/providers/azure_blob_storage",
+ "Azure Blob Storage File": "https://python.langchain.com/docs/integrations/document_loaders/azure_blob_storage_file"
+ },
+ "WikipediaLoader": {
+ "Wikipedia": "https://python.langchain.com/docs/integrations/document_loaders/wikipedia"
+ },
+ "ConfluenceLoader": {
+ "Confluence": "https://python.langchain.com/docs/integrations/document_loaders/confluence"
+ },
+ "Predibase": {
+ "Predibase": "https://python.langchain.com/docs/integrations/llms/predibase"
+ },
+ "Beam": {
+ "Beam": "https://python.langchain.com/docs/integrations/llms/beam"
+ },
+ "GrobidParser": {
+ "Grobid": "https://python.langchain.com/docs/integrations/document_loaders/grobid"
+ },
+ "GenericLoader": {
+ "Grobid": "https://python.langchain.com/docs/integrations/document_loaders/grobid",
+ "Loading documents from a YouTube url": "https://python.langchain.com/docs/integrations/document_loaders/youtube_audio",
+ "Source Code": "https://python.langchain.com/docs/integrations/document_loaders/source_code",
+ "Code Understanding": "https://python.langchain.com/docs/use_cases/code_understanding"
+ },
+ "Typesense": {
+ "Typesense": "https://python.langchain.com/docs/integrations/vectorstores/typesense"
+ },
+ "Hologres": {
+ "Hologres": "https://python.langchain.com/docs/integrations/vectorstores/hologres"
+ },
+ "AI21": {
+ "AI21 Labs": "https://python.langchain.com/docs/integrations/providers/ai21",
+ "AI21": "https://python.langchain.com/docs/integrations/llms/ai21"
+ },
+ "WandbCallbackHandler": {
+ "Weights & Biases": "https://python.langchain.com/docs/integrations/providers/wandb_tracking"
+ },
+ "ObsidianLoader": {
+ "Obsidian": "https://python.langchain.com/docs/integrations/document_loaders/obsidian"
+ },
+ "create_sql_agent": {
+ "CnosDB": "https://python.langchain.com/docs/integrations/providers/cnosdb",
+ "SQL Database Agent": "https://python.langchain.com/docs/integrations/toolkits/sql_database",
+ "SQL": "https://python.langchain.com/docs/use_cases/sql"
+ },
+ "SQLDatabaseToolkit": {
+ "CnosDB": "https://python.langchain.com/docs/integrations/providers/cnosdb",
+ "SQL Database Agent": "https://python.langchain.com/docs/integrations/toolkits/sql_database",
+ "SQL": "https://python.langchain.com/docs/use_cases/sql",
+ "Use ToolKits with OpenAI Functions": "https://python.langchain.com/docs/modules/agents/how_to/use_toolkits_with_openai_functions"
+ },
+ "SageMakerCallbackHandler": {
+ "SageMaker Tracking": "https://python.langchain.com/docs/integrations/providers/sagemaker_tracking"
+ },
+ "OpenAIModerationChain": {
+ "OpenAI": "https://python.langchain.com/docs/integrations/providers/openai",
+ "Cookbook": "https://python.langchain.com/docs/guides/expression_language/cookbook"
+ },
+ "ChatGPTLoader": {
+ "OpenAI": "https://python.langchain.com/docs/integrations/providers/openai",
+ "ChatGPT Data": "https://python.langchain.com/docs/integrations/document_loaders/chatgpt_loader"
+ },
+ "Nebula": {
+ "Nebula": "https://python.langchain.com/docs/integrations/providers/symblai_nebula",
+ "Nebula (Symbl.ai)": "https://python.langchain.com/docs/integrations/llms/symblai_nebula"
+ },
+ "AZLyricsLoader": {
+ "AZLyrics": "https://python.langchain.com/docs/integrations/document_loaders/azlyrics"
+ },
+ "ToMarkdownLoader": {
+ "2Markdown": "https://python.langchain.com/docs/integrations/document_loaders/tomarkdown"
+ },
+ "Dingo": {
+ "Dingo": "https://python.langchain.com/docs/integrations/vectorstores/dingo"
+ },
+ "GitLoader": {
+ "Git": "https://python.langchain.com/docs/integrations/document_loaders/git"
+ },
+ "InfinoCallbackHandler": {
+ "Infino": "https://python.langchain.com/docs/integrations/providers/infino"
+ },
+ "MlflowAIGateway": {
+ "MLflow AI Gateway": "https://python.langchain.com/docs/integrations/providers/mlflow_ai_gateway"
+ },
+ "MlflowAIGatewayEmbeddings": {
+ "MLflow AI Gateway": "https://python.langchain.com/docs/integrations/providers/mlflow_ai_gateway"
+ },
+ "ChatMLflowAIGateway": {
+ "MLflow AI Gateway": "https://python.langchain.com/docs/integrations/providers/mlflow_ai_gateway"
+ },
+ "SingleStoreDB": {
+ "SingleStoreDB": "https://python.langchain.com/docs/integrations/vectorstores/singlestoredb"
+ },
+ "Tigris": {
+ "Tigris": "https://python.langchain.com/docs/integrations/vectorstores/tigris"
+ },
+ "Bedrock": {
+ "Bedrock": "https://python.langchain.com/docs/integrations/llms/bedrock"
+ },
+ "S3DirectoryLoader": {
+ "AWS S3 Directory": "https://python.langchain.com/docs/integrations/document_loaders/aws_s3_directory"
+ },
+ "S3FileLoader": {
+ "AWS S3 Directory": "https://python.langchain.com/docs/integrations/providers/aws_s3",
+ "AWS S3 File": "https://python.langchain.com/docs/integrations/document_loaders/aws_s3_file"
+ },
+ "SQLDatabase": {
+ "Rebuff": "https://python.langchain.com/docs/integrations/providers/rebuff",
+ "SQL Database Agent": "https://python.langchain.com/docs/integrations/toolkits/sql_database",
+ "Cookbook": "https://python.langchain.com/docs/guides/expression_language/cookbook",
+ "SQL": "https://python.langchain.com/docs/use_cases/sql",
+ "Multiple Retrieval Sources": "https://python.langchain.com/docs/use_cases/question_answering/how_to/multiple_retrieval"
+ },
+ "Weaviate": {
+ "Weaviate": "https://python.langchain.com/docs/integrations/vectorstores/weaviate",
+ "Weaviate self-querying ": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/weaviate_self_query"
+ },
+ "AirbyteJSONLoader": {
+ "Airbyte": "https://python.langchain.com/docs/integrations/providers/airbyte",
+ "Airbyte JSON": "https://python.langchain.com/docs/integrations/document_loaders/airbyte_json"
+ },
+ "TelegramChatFileLoader": {
+ "Telegram": "https://python.langchain.com/docs/integrations/document_loaders/telegram"
+ },
+ "TelegramChatApiLoader": {
+ "Telegram": "https://python.langchain.com/docs/integrations/document_loaders/telegram"
+ },
+ "PredictionGuard": {
+ "Prediction Guard": "https://python.langchain.com/docs/integrations/llms/predictionguard"
+ },
+ "NotionDirectoryLoader": {
+ "Notion DB": "https://python.langchain.com/docs/integrations/providers/notion",
+ "Notion DB 1/2": "https://python.langchain.com/docs/integrations/document_loaders/notion",
+ "Perform context-aware text splitting": "https://python.langchain.com/docs/use_cases/question_answering/how_to/document-context-aware-QA"
+ },
+ "NotionDBLoader": {
+ "Notion DB": "https://python.langchain.com/docs/integrations/providers/notion",
+ "Notion DB 2/2": "https://python.langchain.com/docs/integrations/document_loaders/notiondb"
+ },
+ "MWDumpLoader": {
+ "MediaWikiDump": "https://python.langchain.com/docs/integrations/document_loaders/mediawikidump"
+ },
+ "BraveSearchLoader": {
+ "Brave Search": "https://python.langchain.com/docs/integrations/document_loaders/brave_search"
+ },
+ "StarRocks": {
+ "StarRocks": "https://python.langchain.com/docs/integrations/vectorstores/starrocks"
+ },
+ "ElasticsearchStore": {
+ "Elasticsearch": "https://python.langchain.com/docs/integrations/vectorstores/elasticsearch",
+ "Elasticsearch self-querying ": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/elasticsearch_self_query"
+ },
+ "DatadogLogsLoader": {
+ "Datadog Logs": "https://python.langchain.com/docs/integrations/document_loaders/datadog_logs"
+ },
+ "ApifyDatasetLoader": {
+ "Apify": "https://python.langchain.com/docs/integrations/providers/apify",
+ "Apify Dataset": "https://python.langchain.com/docs/integrations/document_loaders/apify_dataset"
+ },
+ "NLPCloud": {
+ "NLPCloud": "https://python.langchain.com/docs/integrations/providers/nlpcloud",
+ "NLP Cloud": "https://python.langchain.com/docs/integrations/llms/nlpcloud"
+ },
+ "Milvus": {
+ "Milvus": "https://python.langchain.com/docs/integrations/vectorstores/milvus",
+ "Zilliz": "https://python.langchain.com/docs/integrations/vectorstores/zilliz"
+ },
+ "Qdrant": {
+ "Qdrant": "https://python.langchain.com/docs/integrations/vectorstores/qdrant",
+ "Qdrant self-querying ": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/qdrant_self_query"
+ },
+ "GitbookLoader": {
+ "GitBook": "https://python.langchain.com/docs/integrations/document_loaders/gitbook"
+ },
+ "OpenSearchVectorSearch": {
+ "OpenSearch": "https://python.langchain.com/docs/integrations/vectorstores/opensearch"
+ },
+ "Pinecone": {
+ "Pinecone": "https://python.langchain.com/docs/integrations/vectorstores/pinecone",
+ "Self-querying with Pinecone": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/pinecone"
+ },
+ "Rockset": {
+ "Rockset": "https://python.langchain.com/docs/integrations/vectorstores/rockset"
+ },
+ "RocksetLoader": {
+ "Rockset": "https://python.langchain.com/docs/integrations/document_loaders/rockset"
+ },
+ "Minimax": {
+ "Minimax": "https://python.langchain.com/docs/integrations/llms/minimax"
+ },
+ "UnstructuredFileLoader": {
+ "Unstructured": "https://python.langchain.com/docs/integrations/providers/unstructured",
+ "Unstructured File": "https://python.langchain.com/docs/integrations/document_loaders/unstructured_file"
+ },
+ "SelfHostedPipeline": {
+ "Runhouse": "https://python.langchain.com/docs/integrations/llms/runhouse"
+ },
+ "SelfHostedHuggingFaceLLM": {
+ "Runhouse": "https://python.langchain.com/docs/integrations/llms/runhouse"
+ },
+ "MlflowCallbackHandler": {
+ "MLflow": "https://python.langchain.com/docs/integrations/providers/mlflow_tracking"
+ },
+ "SpreedlyLoader": {
+ "Spreedly": "https://python.langchain.com/docs/integrations/document_loaders/spreedly"
+ },
+ "OpenLLM": {
+ "OpenLLM": "https://python.langchain.com/docs/integrations/llms/openllm"
+ },
+ "PubMedLoader": {
+ "PubMed": "https://python.langchain.com/docs/integrations/document_loaders/pubmed"
+ },
+ "SearxSearchResults": {
+ "SearxNG Search API": "https://python.langchain.com/docs/integrations/providers/searx"
+ },
+ "SpacyTextSplitter": {
+ "spaCy": "https://python.langchain.com/docs/integrations/providers/spacy",
+ "Atlas": "https://python.langchain.com/docs/integrations/vectorstores/atlas",
+ "Split by tokens ": "https://python.langchain.com/docs/modules/data_connection/document_transformers/text_splitters/split_by_token"
+ },
+ "Modal": {
+ "Modal": "https://python.langchain.com/docs/integrations/llms/modal"
+ },
+ "Xinference": {
+ "Xorbits Inference (Xinference)": "https://python.langchain.com/docs/integrations/llms/xinference"
+ },
+ "IFixitLoader": {
+ "iFixit": "https://python.langchain.com/docs/integrations/document_loaders/ifixit"
+ },
+ "AlephAlpha": {
+ "Aleph Alpha": "https://python.langchain.com/docs/integrations/llms/aleph_alpha"
+ },
+ "PipelineAI": {
+ "PipelineAI": "https://python.langchain.com/docs/integrations/llms/pipelineai_example"
+ },
+ "LlamaCpp": {
+ "Llama.cpp": "https://python.langchain.com/docs/integrations/llms/llamacpp",
+ "Use local LLMs": "https://python.langchain.com/docs/use_cases/question_answering/how_to/local_retrieval_qa",
+ "WebResearchRetriever": "https://python.langchain.com/docs/modules/data_connection/retrievers/web_research"
+ },
+ "AwaDB": {
+ "AwaDB": "https://python.langchain.com/docs/integrations/vectorstores/awadb"
+ },
+ "ArxivLoader": {
+ "Arxiv": "https://python.langchain.com/docs/integrations/document_loaders/arxiv"
+ },
+ "Anyscale": {
+ "Anyscale": "https://python.langchain.com/docs/integrations/llms/anyscale"
+ },
+ "StripeLoader": {
+ "Stripe": "https://python.langchain.com/docs/integrations/document_loaders/stripe"
+ },
+ "Bagel": {
+ "BagelDB": "https://python.langchain.com/docs/integrations/vectorstores/bageldb"
+ },
+ "BlackboardLoader": {
+ "Blackboard": "https://python.langchain.com/docs/integrations/document_loaders/blackboard"
+ },
+ "WhatsAppChatLoader": {
+ "WhatsApp": "https://python.langchain.com/docs/integrations/providers/whatsapp",
+ "WhatsApp Chat": "https://python.langchain.com/docs/integrations/document_loaders/whatsapp_chat"
+ },
+ "LanceDB": {
+ "LanceDB": "https://python.langchain.com/docs/integrations/vectorstores/lancedb"
+ },
+ "OneDriveLoader": {
+ "Microsoft OneDrive": "https://python.langchain.com/docs/integrations/document_loaders/microsoft_onedrive"
+ },
+ "AnalyticDB": {
+ "AnalyticDB": "https://python.langchain.com/docs/integrations/vectorstores/analyticdb"
+ },
+ "YoutubeLoader": {
+ "YouTube": "https://python.langchain.com/docs/integrations/providers/youtube",
+ "YouTube transcripts": "https://python.langchain.com/docs/integrations/document_loaders/youtube_transcript"
+ },
+ "GoogleApiYoutubeLoader": {
+ "YouTube": "https://python.langchain.com/docs/integrations/providers/youtube",
+ "YouTube transcripts": "https://python.langchain.com/docs/integrations/document_loaders/youtube_transcript"
+ },
+ "PromptLayerOpenAI": {
+ "PromptLayer": "https://python.langchain.com/docs/integrations/providers/promptlayer",
+ "PromptLayer OpenAI": "https://python.langchain.com/docs/integrations/llms/promptlayer_openai"
+ },
+ "DeepLake": {
+ "Deep Lake": "https://python.langchain.com/docs/integrations/providers/deeplake",
+ "Activeloop's Deep Lake": "https://python.langchain.com/docs/integrations/vectorstores/activeloop_deeplake",
+ "Analysis of Twitter the-algorithm source code with LangChain, GPT4 and Activeloop's Deep Lake": "https://python.langchain.com/docs/use_cases/question_answering/how_to/code/twitter-the-algorithm-analysis-deeplake",
+ "Use LangChain, GPT and Activeloop's Deep Lake to work with code base": "https://python.langchain.com/docs/use_cases/question_answering/how_to/code/code-analysis-deeplake",
+ "QA using Activeloop's DeepLake": "https://python.langchain.com/docs/use_cases/question_answering/integrations/semantic-search-over-chat",
+ "Deep Lake self-querying ": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/activeloop_deeplake_self_query"
+ },
+ "WhyLabsCallbackHandler": {
+ "WhyLabs": "https://python.langchain.com/docs/integrations/providers/whylabs_profiling"
+ },
+ "FlyteCallbackHandler": {
+ "Flyte": "https://python.langchain.com/docs/integrations/providers/flyte"
+ },
+ "wandb_tracing_enabled": {
+ "WandB Tracing": "https://python.langchain.com/docs/integrations/providers/wandb_tracing"
+ },
+ "ManifestWrapper": {
+ "Hazy Research": "https://python.langchain.com/docs/integrations/providers/hazy_research",
+ "Manifest": "https://python.langchain.com/docs/integrations/llms/manifest"
+ },
+ "Marqo": {
+ "Marqo": "https://python.langchain.com/docs/integrations/vectorstores/marqo"
+ },
+ "IMSDbLoader": {
+ "IMSDb": "https://python.langchain.com/docs/integrations/document_loaders/imsdb"
+ },
+ "PGVector": {
+ "PGVector": "https://python.langchain.com/docs/integrations/vectorstores/pgvector"
+ },
+ "DeepInfra": {
+ "DeepInfra": "https://python.langchain.com/docs/integrations/llms/deepinfra_example"
+ },
+ "ZeroShotAgent": {
+ "Jina": "https://python.langchain.com/docs/integrations/providers/jina",
+ "NIBittensorLLM": "https://python.langchain.com/docs/integrations/llms/bittensor",
+ "BabyAGI with Tools": "https://python.langchain.com/docs/use_cases/agents/baby_agi_with_agent",
+ "Adding Message Memory backed by a database to an Agent": "https://python.langchain.com/docs/modules/memory/agent_with_memory_in_db",
+ "How to add Memory to an Agent": "https://python.langchain.com/docs/modules/memory/agent_with_memory",
+ "Custom MRKL agent": "https://python.langchain.com/docs/modules/agents/how_to/custom_mrkl_agent",
+ "Shared memory across agents and tools": "https://python.langchain.com/docs/modules/agents/how_to/sharedmemory_for_tools"
+ },
+ "RedditPostsLoader": {
+ "Reddit": "https://python.langchain.com/docs/integrations/document_loaders/reddit"
+ },
+ "TrelloLoader": {
+ "Trello": "https://python.langchain.com/docs/integrations/document_loaders/trello"
+ },
+ "AtlasDB": {
+ "AtlasDB": "https://python.langchain.com/docs/integrations/providers/atlas",
+ "Atlas": "https://python.langchain.com/docs/integrations/vectorstores/atlas"
+ },
+ "SKLearnVectorStore": {
+ "scikit-learn": "https://python.langchain.com/docs/integrations/vectorstores/sklearn"
+ },
+ "EverNoteLoader": {
+ "EverNote": "https://python.langchain.com/docs/integrations/document_loaders/evernote"
+ },
+ "TwitterTweetLoader": {
+ "Twitter": "https://python.langchain.com/docs/integrations/document_loaders/twitter"
+ },
+ "DiscordChatLoader": {
+ "Discord": "https://python.langchain.com/docs/integrations/document_loaders/discord"
+ },
+ "RedisCache": {
+ "Redis": "https://python.langchain.com/docs/integrations/providers/redis",
+ "Caching integrations": "https://python.langchain.com/docs/integrations/llms/llm_caching"
+ },
+ "RedisSemanticCache": {
+ "Redis": "https://python.langchain.com/docs/integrations/providers/redis",
+ "Caching integrations": "https://python.langchain.com/docs/integrations/llms/llm_caching"
+ },
+ "Redis": {
+ "Redis": "https://python.langchain.com/docs/integrations/vectorstores/redis"
+ },
+ "SelfQueryRetriever": {
+ "Chroma": "https://python.langchain.com/docs/integrations/providers/.ipynb_checkpoints/chroma-checkpoint",
+ "Docugami": "https://python.langchain.com/docs/integrations/document_loaders/docugami",
+ "Perform context-aware text splitting": "https://python.langchain.com/docs/use_cases/question_answering/how_to/document-context-aware-QA",
+ "Weaviate self-querying ": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/weaviate_self_query",
+ "Elasticsearch self-querying ": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/elasticsearch_self_query",
+ "Chroma self-querying ": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/chroma_self_query",
+ "Self-querying with Pinecone": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/pinecone",
+ "Self-querying with MyScale": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/myscale_self_query",
+ "Deep Lake self-querying ": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/activeloop_deeplake_self_query",
+ "Qdrant self-querying ": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/qdrant_self_query"
+ },
+ "ClearMLCallbackHandler": {
+ "ClearML": "https://python.langchain.com/docs/integrations/providers/clearml_tracking"
+ },
+ "Cohere": {
+ "Cohere": "https://python.langchain.com/docs/integrations/llms/cohere"
+ },
+ "SlackDirectoryLoader": {
+ "Slack": "https://python.langchain.com/docs/integrations/document_loaders/slack"
+ },
+ "LLMContentHandler": {
+ "SageMaker Endpoint": "https://python.langchain.com/docs/integrations/providers/sagemaker_endpoint",
+ "SageMakerEndpoint": "https://python.langchain.com/docs/integrations/llms/sagemaker"
+ },
+ "ContentHandlerBase": {
+ "SageMaker Endpoint": "https://python.langchain.com/docs/integrations/providers/sagemaker_endpoint"
+ },
+ "HNLoader": {
+ "Hacker News": "https://python.langchain.com/docs/integrations/document_loaders/hacker_news"
+ },
+ "Annoy": {
+ "Annoy": "https://python.langchain.com/docs/integrations/vectorstores/annoy"
+ },
+ "DashVector": {
+ "DashVector": "https://python.langchain.com/docs/integrations/vectorstores/dashvector"
+ },
+ "GCSDirectoryLoader": {
+ "Google Cloud Storage": "https://python.langchain.com/docs/integrations/providers/google_cloud_storage",
+ "Google Cloud Storage Directory": "https://python.langchain.com/docs/integrations/document_loaders/google_cloud_storage_directory"
+ },
+ "GCSFileLoader": {
+ "Google Cloud Storage": "https://python.langchain.com/docs/integrations/providers/google_cloud_storage",
+ "Google Cloud Storage File": "https://python.langchain.com/docs/integrations/document_loaders/google_cloud_storage_file"
+ },
+ "ArthurCallbackHandler": {
+ "Arthur": "https://python.langchain.com/docs/integrations/providers/arthur_tracking"
+ },
+ "DuckDBLoader": {
+ "DuckDB": "https://python.langchain.com/docs/integrations/document_loaders/duckdb"
+ },
+ "Petals": {
+ "Petals": "https://python.langchain.com/docs/integrations/llms/petals_example"
+ },
+ "MomentoCache": {
+ "Momento": "https://python.langchain.com/docs/integrations/providers/momento",
+ "Caching integrations": "https://python.langchain.com/docs/integrations/llms/llm_caching"
+ },
+ "NIBittensorLLM": {
+ "NIBittensor": "https://python.langchain.com/docs/integrations/providers/bittensor",
+ "NIBittensorLLM": "https://python.langchain.com/docs/integrations/llms/bittensor"
+ },
+ "AirtableLoader": {
+ "Airtable": "https://python.langchain.com/docs/integrations/document_loaders/airtable"
+ },
+ "TensorflowDatasetLoader": {
+ "TensorFlow Datasets": "https://python.langchain.com/docs/integrations/document_loaders/tensorflow_datasets"
+ },
+ "Clarifai": {
+ "Clarifai": "https://python.langchain.com/docs/integrations/llms/clarifai"
+ },
+ "BigQueryLoader": {
+ "Google BigQuery": "https://python.langchain.com/docs/integrations/document_loaders/google_bigquery"
+ },
+ "RoamLoader": {
+ "Roam": "https://python.langchain.com/docs/integrations/document_loaders/roam"
+ },
+ "Portkey": {
+ "Log, Trace, and Monitor Langchain LLM Calls": "https://python.langchain.com/docs/integrations/providers/portkey/logging_tracing_portkey",
+ "Portkey": "https://python.langchain.com/docs/integrations/providers/portkey/index"
+ },
+ "Vectara": {
+ "Vectara": "https://python.langchain.com/docs/integrations/vectorstores/vectara",
+ "Chat Over Documents with Vectara": "https://python.langchain.com/docs/integrations/providers/vectara/vectara_chat",
+ "Vectara Text Generation": "https://python.langchain.com/docs/integrations/providers/vectara/vectara_text_generation"
+ },
+ "VectaraRetriever": {
+ "Chat Over Documents with Vectara": "https://python.langchain.com/docs/integrations/providers/vectara/vectara_chat"
+ },
+ "load_qa_chain": {
+ "Chat Over Documents with Vectara": "https://python.langchain.com/docs/integrations/providers/vectara/vectara_chat",
+ "SageMakerEndpoint": "https://python.langchain.com/docs/integrations/llms/sagemaker",
+ "QA over Documents": "https://python.langchain.com/docs/use_cases/question_answering/index",
+ "Use local LLMs": "https://python.langchain.com/docs/use_cases/question_answering/how_to/local_retrieval_qa",
+ "WebResearchRetriever": "https://python.langchain.com/docs/modules/data_connection/retrievers/web_research",
+ "How to add memory to a Multi-Input Chain": "https://python.langchain.com/docs/modules/memory/adding_memory_chain_multiple_inputs"
+ },
+ "CONDENSE_QUESTION_PROMPT": {
+ "Chat Over Documents with Vectara": "https://python.langchain.com/docs/integrations/providers/vectara/vectara_chat"
+ },
+ "load_qa_with_sources_chain": {
+ "Chat Over Documents with Vectara": "https://python.langchain.com/docs/integrations/providers/vectara/vectara_chat",
+ "!pip install bs4": "https://python.langchain.com/docs/use_cases/autonomous_agents/marathon_times"
+ },
+ "QA_PROMPT": {
+ "Chat Over Documents with Vectara": "https://python.langchain.com/docs/integrations/providers/vectara/vectara_chat"
+ },
+ "create_csv_agent": {
+ "CSV Agent": "https://python.langchain.com/docs/integrations/toolkits/csv"
+ },
+ "create_xorbits_agent": {
+ "Xorbits Agent": "https://python.langchain.com/docs/integrations/toolkits/xorbits"
+ },
+ "JiraToolkit": {
+ "Jira": "https://python.langchain.com/docs/integrations/toolkits/jira"
+ },
+ "JiraAPIWrapper": {
+ "Jira": "https://python.langchain.com/docs/integrations/toolkits/jira"
+ },
+ "create_spark_dataframe_agent": {
+ "Spark Dataframe Agent": "https://python.langchain.com/docs/integrations/toolkits/spark"
+ },
+ "PyPDFLoader": {
+ "Document Comparison": "https://python.langchain.com/docs/integrations/toolkits/document_comparison_toolkit",
+ "Google Cloud Storage File": "https://python.langchain.com/docs/integrations/document_loaders/google_cloud_storage_file",
+ "MergeDocLoader": "https://python.langchain.com/docs/integrations/document_loaders/merge_doc_loader",
+ "QA using Activeloop's DeepLake": "https://python.langchain.com/docs/use_cases/question_answering/integrations/semantic-search-over-chat"
+ },
+ "create_python_agent": {
+ "Python Agent": "https://python.langchain.com/docs/integrations/toolkits/python"
+ },
+ "PythonREPLTool": {
+ "Python Agent": "https://python.langchain.com/docs/integrations/toolkits/python"
+ },
+ "create_pbi_agent": {
+ "PowerBI Dataset Agent": "https://python.langchain.com/docs/integrations/toolkits/powerbi"
+ },
+ "PowerBIToolkit": {
+ "PowerBI Dataset Agent": "https://python.langchain.com/docs/integrations/toolkits/powerbi"
+ },
+ "PowerBIDataset": {
+ "PowerBI Dataset Agent": "https://python.langchain.com/docs/integrations/toolkits/powerbi"
+ },
+ "AzureCognitiveServicesToolkit": {
+ "Azure Cognitive Services Toolkit": "https://python.langchain.com/docs/integrations/toolkits/azure_cognitive_services"
+ },
+ "Requests": {
+ "Natural Language APIs": "https://python.langchain.com/docs/integrations/toolkits/openapi_nla"
+ },
+ "APIOperation": {
+ "Natural Language APIs": "https://python.langchain.com/docs/integrations/toolkits/openapi_nla"
+ },
+ "OpenAPISpec": {
+ "Natural Language APIs": "https://python.langchain.com/docs/integrations/toolkits/openapi_nla"
+ },
+ "NLAToolkit": {
+ "Natural Language APIs": "https://python.langchain.com/docs/integrations/toolkits/openapi_nla",
+ "Plug-and-Plai": "https://python.langchain.com/docs/use_cases/agents/custom_agent_with_plugin_retrieval_using_plugnplai",
+ "Custom Agent with PlugIn Retrieval": "https://python.langchain.com/docs/use_cases/agents/custom_agent_with_plugin_retrieval"
+ },
+ "GmailToolkit": {
+ "Gmail Toolkit": "https://python.langchain.com/docs/integrations/toolkits/gmail"
+ },
+ "build_resource_service": {
+ "Gmail Toolkit": "https://python.langchain.com/docs/integrations/toolkits/gmail"
+ },
+ "get_gmail_credentials": {
+ "Gmail Toolkit": "https://python.langchain.com/docs/integrations/toolkits/gmail"
+ },
+ "create_json_agent": {
+ "JSON Agent": "https://python.langchain.com/docs/integrations/toolkits/json"
+ },
+ "JsonToolkit": {
+ "JSON Agent": "https://python.langchain.com/docs/integrations/toolkits/json"
+ },
+ "JsonSpec": {
+ "JSON Agent": "https://python.langchain.com/docs/integrations/toolkits/json",
+ "OpenAPI agents": "https://python.langchain.com/docs/integrations/toolkits/openapi"
+ },
+ "GitHubToolkit": {
+ "Github Toolkit": "https://python.langchain.com/docs/integrations/toolkits/github"
+ },
+ "GitHubAPIWrapper": {
+ "Github Toolkit": "https://python.langchain.com/docs/integrations/toolkits/github"
+ },
+ "GitHubAction": {
+ "Github Toolkit": "https://python.langchain.com/docs/integrations/toolkits/github"
+ },
+ "create_spark_sql_agent": {
+ "Spark SQL Agent": "https://python.langchain.com/docs/integrations/toolkits/spark_sql"
+ },
+ "SparkSQLToolkit": {
+ "Spark SQL Agent": "https://python.langchain.com/docs/integrations/toolkits/spark_sql"
+ },
+ "SparkSQL": {
+ "Spark SQL Agent": "https://python.langchain.com/docs/integrations/toolkits/spark_sql"
+ },
+ "create_sync_playwright_browser": {
+ "PlayWright Browser Toolkit": "https://python.langchain.com/docs/integrations/toolkits/playwright"
+ },
+ "O365Toolkit": {
+ "Office365 Toolkit": "https://python.langchain.com/docs/integrations/toolkits/office365"
+ },
+ "create_pandas_dataframe_agent": {
+ "Pandas Dataframe Agent": "https://python.langchain.com/docs/integrations/toolkits/pandas",
+ "!pip install bs4": "https://python.langchain.com/docs/use_cases/autonomous_agents/marathon_times"
+ },
+ "MultionToolkit": {
+ "MultiOn Toolkit": "https://python.langchain.com/docs/integrations/toolkits/multion"
+ },
+ "AmadeusToolkit": {
+ "Amadeus Toolkit": "https://python.langchain.com/docs/integrations/toolkits/amadeus"
+ },
+ "create_vectorstore_agent": {
+ "Vectorstore Agent": "https://python.langchain.com/docs/integrations/toolkits/vectorstore"
+ },
+ "VectorStoreToolkit": {
+ "Vectorstore Agent": "https://python.langchain.com/docs/integrations/toolkits/vectorstore"
+ },
+ "VectorStoreInfo": {
+ "Vectorstore Agent": "https://python.langchain.com/docs/integrations/toolkits/vectorstore"
+ },
+ "create_vectorstore_router_agent": {
+ "Vectorstore Agent": "https://python.langchain.com/docs/integrations/toolkits/vectorstore"
+ },
+ "VectorStoreRouterToolkit": {
+ "Vectorstore Agent": "https://python.langchain.com/docs/integrations/toolkits/vectorstore"
+ },
+ "reduce_openapi_spec": {
+ "OpenAPI agents": "https://python.langchain.com/docs/integrations/toolkits/openapi"
+ },
+ "RequestsWrapper": {
+ "OpenAPI agents": "https://python.langchain.com/docs/integrations/toolkits/openapi"
+ },
+ "create_openapi_agent": {
+ "OpenAPI agents": "https://python.langchain.com/docs/integrations/toolkits/openapi"
+ },
+ "OpenAPIToolkit": {
+ "OpenAPI agents": "https://python.langchain.com/docs/integrations/toolkits/openapi"
+ },
+ "RetrievalQAWithSourcesChain": {
+ "Weaviate": "https://python.langchain.com/docs/integrations/vectorstores/weaviate",
+ "Marqo": "https://python.langchain.com/docs/integrations/vectorstores/marqo",
+ "Psychic": "https://python.langchain.com/docs/integrations/document_loaders/psychic",
+ "Web Scraping": "https://python.langchain.com/docs/use_cases/web_scraping",
+ "QA over Documents": "https://python.langchain.com/docs/use_cases/question_answering/index",
+ "WebResearchRetriever": "https://python.langchain.com/docs/modules/data_connection/retrievers/web_research"
+ },
+ "MatchingEngine": {
+ "MatchingEngine": "https://python.langchain.com/docs/integrations/vectorstores/matchingengine"
+ },
+ "ScaNN": {
+ "ScaNN": "https://python.langchain.com/docs/integrations/vectorstores/scann"
+ },
+ "google_palm": {
+ "ScaNN": "https://python.langchain.com/docs/integrations/vectorstores/scann"
+ },
+ "XataVectorStore": {
+ "Xata": "https://python.langchain.com/docs/integrations/vectorstores/xata"
+ },
+ "InMemoryDocstore": {
+ "Annoy": "https://python.langchain.com/docs/integrations/vectorstores/annoy",
+ "AutoGPT": "https://python.langchain.com/docs/use_cases/autonomous_agents/autogpt",
+ "BabyAGI User Guide": "https://python.langchain.com/docs/use_cases/agents/baby_agi",
+ "BabyAGI with Tools": "https://python.langchain.com/docs/use_cases/agents/baby_agi_with_agent",
+ "!pip install bs4": "https://python.langchain.com/docs/use_cases/autonomous_agents/marathon_times",
+ "Generative Agents in LangChain": "https://python.langchain.com/docs/use_cases/agent_simulations/characters"
+ },
+ "OpenAIChat": {
+ "Activeloop's Deep Lake": "https://python.langchain.com/docs/integrations/vectorstores/activeloop_deeplake"
+ },
+ "AlibabaCloudOpenSearch": {
+ "Alibaba Cloud OpenSearch": "https://python.langchain.com/docs/integrations/vectorstores/alibabacloud_opensearch"
+ },
+ "AlibabaCloudOpenSearchSettings": {
+ "Alibaba Cloud OpenSearch": "https://python.langchain.com/docs/integrations/vectorstores/alibabacloud_opensearch"
+ },
+ "StarRocksSettings": {
+ "StarRocks": "https://python.langchain.com/docs/integrations/vectorstores/starrocks"
+ },
+ "TokenTextSplitter": {
+ "StarRocks": "https://python.langchain.com/docs/integrations/vectorstores/starrocks",
+ "Split by tokens ": "https://python.langchain.com/docs/modules/data_connection/document_transformers/text_splitters/split_by_token"
+ },
+ "DirectoryLoader": {
+ "StarRocks": "https://python.langchain.com/docs/integrations/vectorstores/starrocks"
+ },
+ "UnstructuredMarkdownLoader": {
+ "StarRocks": "https://python.langchain.com/docs/integrations/vectorstores/starrocks"
+ },
+ "DocArrayHnswSearch": {
+ "DocArrayHnswSearch": "https://python.langchain.com/docs/integrations/vectorstores/docarray_hnsw"
+ },
+ "MyScaleSettings": {
+ "MyScale": "https://python.langchain.com/docs/integrations/vectorstores/myscale"
+ },
+ "Clickhouse": {
+ "ClickHouse Vector Search": "https://python.langchain.com/docs/integrations/vectorstores/clickhouse"
+ },
+ "ClickhouseSettings": {
+ "ClickHouse Vector Search": "https://python.langchain.com/docs/integrations/vectorstores/clickhouse"
+ },
+ "SupabaseVectorStore": {
+ "Supabase (Postgres)": "https://python.langchain.com/docs/integrations/vectorstores/supabase"
+ },
+ "AzureSearch": {
+ "Azure Cognitive Search": "https://python.langchain.com/docs/integrations/vectorstores/azuresearch"
+ },
+ "Cassandra": {
+ "Cassandra": "https://python.langchain.com/docs/integrations/vectorstores/cassandra"
+ },
+ "USearch": {
+ "USearch": "https://python.langchain.com/docs/integrations/vectorstores/usearch"
+ },
+ "ElasticVectorSearch": {
+ "Elasticsearch": "https://python.langchain.com/docs/integrations/vectorstores/elasticsearch",
+ "How to add memory to a Multi-Input Chain": "https://python.langchain.com/docs/modules/memory/adding_memory_chain_multiple_inputs"
+ },
+ "DocArrayInMemorySearch": {
+ "DocArrayInMemorySearch": "https://python.langchain.com/docs/integrations/vectorstores/docarray_in_memory"
+ },
+ "PGEmbedding": {
+ "pg_embedding": "https://python.langchain.com/docs/integrations/vectorstores/pgembedding"
+ },
+ "MongoDBAtlasVectorSearch": {
+ "MongoDB Atlas": "https://python.langchain.com/docs/integrations/vectorstores/mongodb_atlas"
+ },
+ "Meilisearch": {
+ "Meilisearch": "https://python.langchain.com/docs/integrations/vectorstores/meilisearch"
+ },
+ "AsyncChromiumLoader": {
+ "Beautiful Soup": "https://python.langchain.com/docs/integrations/document_transformers/beautiful_soup",
+ "Async Chromium": "https://python.langchain.com/docs/integrations/document_loaders/async_chromium",
+ "Web Scraping": "https://python.langchain.com/docs/use_cases/web_scraping"
+ },
+ "BeautifulSoupTransformer": {
+ "Beautiful Soup": "https://python.langchain.com/docs/integrations/document_transformers/beautiful_soup",
+ "Web Scraping": "https://python.langchain.com/docs/use_cases/web_scraping"
+ },
+ "NucliaTextTransformer": {
+ "Nuclia Understanding API document transformer": "https://python.langchain.com/docs/integrations/document_transformers/nuclia_transformer"
+ },
+ "create_metadata_tagger": {
+ "OpenAI Functions Metadata Tagger": "https://python.langchain.com/docs/integrations/document_transformers/openai_metadata_tagger"
+ },
+ "AsyncHtmlLoader": {
+ "html2text": "https://python.langchain.com/docs/integrations/document_transformers/html2text",
+ "AsyncHtmlLoader": "https://python.langchain.com/docs/integrations/document_loaders/async_html",
+ "Web Scraping": "https://python.langchain.com/docs/use_cases/web_scraping"
+ },
+ "Html2TextTransformer": {
+ "html2text": "https://python.langchain.com/docs/integrations/document_transformers/html2text",
+ "Async Chromium": "https://python.langchain.com/docs/integrations/document_loaders/async_chromium",
+ "Web Scraping": "https://python.langchain.com/docs/use_cases/web_scraping"
+ },
+ "DoctranPropertyExtractor": {
+ "Doctran Extract Properties": "https://python.langchain.com/docs/integrations/document_transformers/doctran_extract_properties"
+ },
+ "DoctranQATransformer": {
+ "Doctran Interrogate Documents": "https://python.langchain.com/docs/integrations/document_transformers/doctran_interrogate_document"
+ },
+ "DoctranTextTranslator": {
+ "Doctran Translate Documents": "https://python.langchain.com/docs/integrations/document_transformers/doctran_translate_document"
+ },
+ "SnowflakeLoader": {
+ "Snowflake": "https://python.langchain.com/docs/integrations/document_loaders/snowflake"
+ },
+ "AcreomLoader": {
+ "acreom": "https://python.langchain.com/docs/integrations/document_loaders/acreom"
+ },
+ "ArcGISLoader": {
+ "ArcGIS": "https://python.langchain.com/docs/integrations/document_loaders/arcgis"
+ },
+ "UnstructuredCSVLoader": {
+ "CSV": "https://python.langchain.com/docs/integrations/document_loaders/csv"
+ },
+ "XorbitsLoader": {
+ "Xorbits Pandas DataFrame": "https://python.langchain.com/docs/integrations/document_loaders/xorbits"
+ },
+ "UnstructuredEmailLoader": {
+ "Email": "https://python.langchain.com/docs/integrations/document_loaders/email"
+ },
+ "OutlookMessageLoader": {
+ "Email": "https://python.langchain.com/docs/integrations/document_loaders/email"
+ },
+ "BlockchainDocumentLoader": {
+ "Blockchain": "https://python.langchain.com/docs/integrations/document_loaders/blockchain"
+ },
+ "BlockchainType": {
+ "Blockchain": "https://python.langchain.com/docs/integrations/document_loaders/blockchain"
+ },
+ "RecursiveUrlLoader": {
+ "Recursive URL Loader": "https://python.langchain.com/docs/integrations/document_loaders/recursive_url_loader"
+ },
+ "JoplinLoader": {
+ "Joplin": "https://python.langchain.com/docs/integrations/document_loaders/joplin"
+ },
+ "AirbyteSalesforceLoader": {
+ "Airbyte Salesforce": "https://python.langchain.com/docs/integrations/document_loaders/airbyte_salesforce"
+ },
+ "EtherscanLoader": {
+ "Etherscan Loader": "https://python.langchain.com/docs/integrations/document_loaders/Etherscan"
+ },
+ "AirbyteCDKLoader": {
+ "Airbyte CDK": "https://python.langchain.com/docs/integrations/document_loaders/airbyte_cdk"
+ },
+ "Docx2txtLoader": {
+ "Microsoft Word": "https://python.langchain.com/docs/integrations/document_loaders/microsoft_word"
+ },
+ "OpenAIWhisperParser": {
+ "Loading documents from a YouTube url": "https://python.langchain.com/docs/integrations/document_loaders/youtube_audio"
+ },
+ "YoutubeAudioLoader": {
+ "Loading documents from a YouTube url": "https://python.langchain.com/docs/integrations/document_loaders/youtube_audio"
+ },
+ "UnstructuredURLLoader": {
+ "URL": "https://python.langchain.com/docs/integrations/document_loaders/url"
+ },
+ "SeleniumURLLoader": {
+ "URL": "https://python.langchain.com/docs/integrations/document_loaders/url"
+ },
+ "PlaywrightURLLoader": {
+ "URL": "https://python.langchain.com/docs/integrations/document_loaders/url"
+ },
+ "AirbyteStripeLoader": {
+ "Airbyte Stripe": "https://python.langchain.com/docs/integrations/document_loaders/airbyte_stripe"
+ },
+ "OpenCityDataLoader": {
+ "Geopandas": "https://python.langchain.com/docs/integrations/document_loaders/geopandas",
+ "Open City Data": "https://python.langchain.com/docs/integrations/document_loaders/open_city_data"
+ },
+ "GeoDataFrameLoader": {
+ "Geopandas": "https://python.langchain.com/docs/integrations/document_loaders/geopandas"
+ },
+ "OBSFileLoader": {
+ "Huawei OBS File": "https://python.langchain.com/docs/integrations/document_loaders/huawei_obs_file"
+ },
+ "HuggingFaceDatasetLoader": {
+ "HuggingFace dataset": "https://python.langchain.com/docs/integrations/document_loaders/hugging_face_dataset"
+ },
+ "DropboxLoader": {
+ "Dropbox": "https://python.langchain.com/docs/integrations/document_loaders/dropbox"
+ },
+ "AirbyteTypeformLoader": {
+ "Airbyte Typeform": "https://python.langchain.com/docs/integrations/document_loaders/airbyte_typeform"
+ },
+ "MHTMLLoader": {
+ "mhtml": "https://python.langchain.com/docs/integrations/document_loaders/mhtml"
+ },
+ "NewsURLLoader": {
+ "News URL": "https://python.langchain.com/docs/integrations/document_loaders/news"
+ },
+ "ImageCaptionLoader": {
+ "Image captions": "https://python.langchain.com/docs/integrations/document_loaders/image_captions"
+ },
+ "UnstructuredRSTLoader": {
+ "RST": "https://python.langchain.com/docs/integrations/document_loaders/rst"
+ },
+ "ConversationBufferWindowMemory": {
+ "Figma": "https://python.langchain.com/docs/integrations/document_loaders/figma",
+ "Chatbots": "https://python.langchain.com/docs/use_cases/chatbots",
+ "Meta-Prompt": "https://python.langchain.com/docs/use_cases/autonomous_agents/meta_prompt",
+ "Create ChatGPT clone": "https://python.langchain.com/docs/modules/agents/how_to/chatgpt_clone"
+ },
+ "UnstructuredImageLoader": {
+ "Images": "https://python.langchain.com/docs/integrations/document_loaders/image"
+ },
+ "NucliaLoader": {
+ "Nuclia Understanding API document loader": "https://python.langchain.com/docs/integrations/document_loaders/nuclia"
+ },
+ "TencentCOSFileLoader": {
+ "Tencent COS File": "https://python.langchain.com/docs/integrations/document_loaders/tencent_cos_file"
+ },
+ "TomlLoader": {
+ "TOML": "https://python.langchain.com/docs/integrations/document_loaders/toml"
+ },
+ "UnstructuredAPIFileLoader": {
+ "Unstructured File": "https://python.langchain.com/docs/integrations/document_loaders/unstructured_file"
+ },
+ "PsychicLoader": {
+ "Psychic": "https://python.langchain.com/docs/integrations/document_loaders/psychic"
+ },
+ "TencentCOSDirectoryLoader": {
+ "Tencent COS Directory": "https://python.langchain.com/docs/integrations/document_loaders/tencent_cos_directory"
+ },
+ "GitHubIssuesLoader": {
+ "GitHub": "https://python.langchain.com/docs/integrations/document_loaders/github"
+ },
+ "UnstructuredOrgModeLoader": {
+ "Org-mode": "https://python.langchain.com/docs/integrations/document_loaders/org_mode"
+ },
+ "LarkSuiteDocLoader": {
+ "LarkSuite (FeiShu)": "https://python.langchain.com/docs/integrations/document_loaders/larksuite"
+ },
+ "load_summarize_chain": {
+ "LarkSuite (FeiShu)": "https://python.langchain.com/docs/integrations/document_loaders/larksuite",
+ "Caching integrations": "https://python.langchain.com/docs/integrations/llms/llm_caching",
+ "Summarization": "https://python.langchain.com/docs/use_cases/summarization"
+ },
+ "IuguLoader": {
+ "Iugu": "https://python.langchain.com/docs/integrations/document_loaders/iugu"
+ },
+ "UnstructuredEPubLoader": {
+ "EPub ": "https://python.langchain.com/docs/integrations/document_loaders/epub"
+ },
+ "AttributeInfo": {
+ "Docugami": "https://python.langchain.com/docs/integrations/document_loaders/docugami",
+ "Perform context-aware text splitting": "https://python.langchain.com/docs/use_cases/question_answering/how_to/document-context-aware-QA",
+ "Weaviate self-querying ": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/weaviate_self_query",
+ "Elasticsearch self-querying ": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/elasticsearch_self_query",
+ "Chroma self-querying ": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/chroma_self_query",
+ "Self-querying with Pinecone": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/pinecone",
+ "Self-querying with MyScale": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/myscale_self_query",
+ "Deep Lake self-querying ": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/activeloop_deeplake_self_query",
+ "Qdrant self-querying ": "https://python.langchain.com/docs/modules/data_connection/retrievers/self_query/qdrant_self_query"
+ },
+ "UnstructuredFileIOLoader": {
+ "Google Drive": "https://python.langchain.com/docs/integrations/document_loaders/google_drive"
+ },
+ "BrowserlessLoader": {
+ "Browserless": "https://python.langchain.com/docs/integrations/document_loaders/browserless"
+ },
+ "BibtexLoader": {
+ "BibTeX": "https://python.langchain.com/docs/integrations/document_loaders/bibtex"
+ },
+ "AirbyteHubspotLoader": {
+ "Airbyte Hubspot": "https://python.langchain.com/docs/integrations/document_loaders/airbyte_hubspot"
+ },
+ "AirbyteGongLoader": {
+ "Airbyte Gong": "https://python.langchain.com/docs/integrations/document_loaders/airbyte_gong"
+ },
+ "ReadTheDocsLoader": {
+ "ReadTheDocs Documentation": "https://python.langchain.com/docs/integrations/document_loaders/readthedocs_documentation"
+ },
+ "DataFrameLoader": {
+ "Pandas DataFrame": "https://python.langchain.com/docs/integrations/document_loaders/pandas_dataframe"
+ },
+ "GoogleApiClient": {
+ "YouTube transcripts": "https://python.langchain.com/docs/integrations/document_loaders/youtube_transcript"
+ },
+ "ConcurrentLoader": {
+ "Concurrent Loader": "https://python.langchain.com/docs/integrations/document_loaders/concurrent"
+ },
+ "RSSFeedLoader": {
+ "RSS Feeds": "https://python.langchain.com/docs/integrations/document_loaders/rss"
+ },
+ "NotebookLoader": {
+ "Jupyter Notebook": "https://python.langchain.com/docs/integrations/document_loaders/jupyter_notebook",
+ "Notebook": "https://python.langchain.com/docs/integrations/document_loaders/example_data/notebook"
+ },
+ "UnstructuredTSVLoader": {
+ "TSV": "https://python.langchain.com/docs/integrations/document_loaders/tsv"
+ },
+ "UnstructuredODTLoader": {
+ "Open Document Format (ODT)": "https://python.langchain.com/docs/integrations/document_loaders/odt"
+ },
+ "EmbaasBlobLoader": {
+ "Embaas": "https://python.langchain.com/docs/integrations/document_loaders/embaas"
+ },
+ "Blob": {
+ "Embaas": "https://python.langchain.com/docs/integrations/document_loaders/embaas"
+ },
+ "EmbaasLoader": {
+ "Embaas": "https://python.langchain.com/docs/integrations/document_loaders/embaas"
+ },
+ "UnstructuredXMLLoader": {
+ "XML": "https://python.langchain.com/docs/integrations/document_loaders/xml"
+ },
+ "MaxComputeLoader": {
+ "Alibaba Cloud MaxCompute": "https://python.langchain.com/docs/integrations/document_loaders/alibaba_cloud_maxcompute"
+ },
+ "CubeSemanticLoader": {
+ "Cube Semantic Layer": "https://python.langchain.com/docs/integrations/document_loaders/cube_semantic"
+ },
+ "UnstructuredExcelLoader": {
+ "Microsoft Excel": "https://python.langchain.com/docs/integrations/document_loaders/excel"
+ },
+ "Language": {
+ "Source Code": "https://python.langchain.com/docs/integrations/document_loaders/source_code",
+ "Code Understanding": "https://python.langchain.com/docs/use_cases/code_understanding"
+ },
+ "LanguageParser": {
+ "Source Code": "https://python.langchain.com/docs/integrations/document_loaders/source_code",
+ "Code Understanding": "https://python.langchain.com/docs/use_cases/code_understanding"
+ },
+ "SRTLoader": {
+ "Subtitle": "https://python.langchain.com/docs/integrations/document_loaders/subtitle"
+ },
+ "MastodonTootsLoader": {
+ "Mastodon": "https://python.langchain.com/docs/integrations/document_loaders/mastodon"
+ },
+ "AirbyteShopifyLoader": {
+ "Airbyte Shopify": "https://python.langchain.com/docs/integrations/document_loaders/airbyte_shopify"
+ },
+ "MergedDataLoader": {
+ "MergeDocLoader": "https://python.langchain.com/docs/integrations/document_loaders/merge_doc_loader"
+ },
+ "PySparkDataFrameLoader": {
+ "PySpark DataFrame Loader": "https://python.langchain.com/docs/integrations/document_loaders/pyspark_dataframe"
+ },
+ "AirbyteZendeskSupportLoader": {
+ "Airbyte Zendesk Support": "https://python.langchain.com/docs/integrations/document_loaders/airbyte_zendesk_support"
+ },
+ "CoNLLULoader": {
+ "CoNLL-U": "https://python.langchain.com/docs/integrations/document_loaders/conll-u"
+ },
+ "OBSDirectoryLoader": {
+ "Huawei OBS Directory": "https://python.langchain.com/docs/integrations/document_loaders/huawei_obs_directory"
+ },
+ "FaunaLoader": {
+ "Fauna": "https://python.langchain.com/docs/integrations/document_loaders/fauna"
+ },
+ "SitemapLoader": {
+ "Sitemap": "https://python.langchain.com/docs/integrations/document_loaders/sitemap"
+ },
+ "StochasticAI": {
+ "StochasticAI": "https://python.langchain.com/docs/integrations/llms/stochasticai"
+ },
+ "ForefrontAI": {
+ "ForefrontAI": "https://python.langchain.com/docs/integrations/llms/forefrontai_example"
+ },
+ "CerebriumAI": {
+ "CerebriumAI": "https://python.langchain.com/docs/integrations/llms/cerebriumai_example"
+ },
+ "FireworksChat": {
+ "Fireworks": "https://python.langchain.com/docs/integrations/llms/Fireworks"
+ },
+ "OctoAIEndpoint": {
+ "OctoAI Compute Service": "https://python.langchain.com/docs/integrations/llms/octoai"
+ },
+ "Writer": {
+ "Writer": "https://python.langchain.com/docs/integrations/llms/writer"
+ },
+ "TextGen": {
+ "TextGen": "https://python.langchain.com/docs/integrations/llms/textgen"
+ },
+ "MosaicML": {
+ "MosaicML": "https://python.langchain.com/docs/integrations/llms/mosaicml"
+ },
+ "KoboldApiLLM": {
+ "KoboldAI API": "https://python.langchain.com/docs/integrations/llms/koboldai"
+ },
+ "VertexAI": {
+ "Google Cloud Platform Vertex AI PaLM ": "https://python.langchain.com/docs/integrations/llms/google_vertex_ai_palm"
+ },
+ "Ollama": {
+ "Ollama": "https://python.langchain.com/docs/integrations/llms/ollama"
+ },
+ "LLMResult": {
+ "Ollama": "https://python.langchain.com/docs/integrations/llms/ollama",
+ "Async callbacks": "https://python.langchain.com/docs/modules/callbacks/async_callbacks"
+ },
+ "BaseCallbackHandler": {
+ "Ollama": "https://python.langchain.com/docs/integrations/llms/ollama",
+ "Custom callback handlers": "https://python.langchain.com/docs/modules/callbacks/custom_callbacks",
+ "Multiple callback handlers": "https://python.langchain.com/docs/modules/callbacks/multiple_callbacks",
+ "Async callbacks": "https://python.langchain.com/docs/modules/callbacks/async_callbacks",
+ "Streaming final agent output": "https://python.langchain.com/docs/modules/agents/how_to/streaming_stdout_final_only"
+ },
+ "TitanTakeoff": {
+ "Titan Takeoff": "https://python.langchain.com/docs/integrations/llms/titan_takeoff"
+ },
+ "GooseAI": {
+ "GooseAI": "https://python.langchain.com/docs/integrations/llms/gooseai_example"
+ },
+ "Databricks": {
+ "Databricks": "https://python.langchain.com/docs/integrations/llms/databricks"
+ },
+ "EdenAI": {
+ "Eden AI": "https://python.langchain.com/docs/integrations/llms/edenai"
+ },
+ "VLLM": {
+ "vLLM": "https://python.langchain.com/docs/integrations/llms/vllm"
+ },
+ "VLLMOpenAI": {
+ "vLLM": "https://python.langchain.com/docs/integrations/llms/vllm"
+ },
+ "MapReduceChain": {
+ "Manifest": "https://python.langchain.com/docs/integrations/llms/manifest",
+ "Caching integrations": "https://python.langchain.com/docs/integrations/llms/llm_caching",
+ "Summarization": "https://python.langchain.com/docs/use_cases/summarization"
+ },
+ "ModelLaboratory": {
+ "Manifest": "https://python.langchain.com/docs/integrations/llms/manifest",
+ "Model comparison": "https://python.langchain.com/docs/guides/model_laboratory"
+ },
+ "Tongyi": {
+ "Tongyi Qwen": "https://python.langchain.com/docs/integrations/llms/tongyi"
+ },
+ "InMemoryCache": {
+ "Caching integrations": "https://python.langchain.com/docs/integrations/llms/llm_caching"
+ },
+ "SQLiteCache": {
+ "Caching integrations": "https://python.langchain.com/docs/integrations/llms/llm_caching"
+ },
+ "GPTCache": {
+ "Caching integrations": "https://python.langchain.com/docs/integrations/llms/llm_caching"
+ },
+ "SQLAlchemyCache": {
+ "Caching integrations": "https://python.langchain.com/docs/integrations/llms/llm_caching"
+ },
+ "AzureMLOnlineEndpoint": {
+ "AzureML Online Endpoint": "https://python.langchain.com/docs/integrations/llms/azureml_endpoint_example"
+ },
+ "ContentFormatterBase": {
+ "AzureML Online Endpoint": "https://python.langchain.com/docs/integrations/llms/azureml_endpoint_example"
+ },
+ "DollyContentFormatter": {
+ "AzureML Online Endpoint": "https://python.langchain.com/docs/integrations/llms/azureml_endpoint_example"
+ },
+ "load_llm": {
+ "AzureML Online Endpoint": "https://python.langchain.com/docs/integrations/llms/azureml_endpoint_example",
+ "Serialization": "https://python.langchain.com/docs/modules/model_io/models/llms/llm_serialization"
+ },
+ "AzureMLEndpointClient": {
+ "AzureML Online Endpoint": "https://python.langchain.com/docs/integrations/llms/azureml_endpoint_example"
+ },
+ "OpenLM": {
+ "OpenLM": "https://python.langchain.com/docs/integrations/llms/openlm"
+ },
+ "HuggingFaceTextGenInference": {
+ "Huggingface TextGen Inference": "https://python.langchain.com/docs/integrations/llms/huggingface_textgen_inference"
+ },
+ "ChatGLM": {
+ "ChatGLM": "https://python.langchain.com/docs/integrations/llms/chatglm"
+ },
+ "Replicate": {
+ "Replicate": "https://python.langchain.com/docs/integrations/llms/replicate"
+ },
+ "StrOutputParser": {
+ "Fallbacks": "https://python.langchain.com/docs/guides/fallbacks",
+ "Cookbook": "https://python.langchain.com/docs/guides/expression_language/cookbook"
+ },
+ "DatetimeOutputParser": {
+ "Fallbacks": "https://python.langchain.com/docs/guides/fallbacks",
+ "Datetime parser": "https://python.langchain.com/docs/modules/model_io/output_parsers/datetime"
+ },
+ "tracing_v2_enabled": {
+ "LangSmith Walkthrough": "https://python.langchain.com/docs/guides/langsmith/walkthrough"
+ },
+ "wait_for_all_tracers": {
+ "LangSmith Walkthrough": "https://python.langchain.com/docs/guides/langsmith/walkthrough"
+ },
+ "EvaluatorType": {
+ "LangSmith Walkthrough": "https://python.langchain.com/docs/guides/langsmith/walkthrough",
+ "Criteria Evaluation": "https://python.langchain.com/docs/guides/evaluation/string/criteria_eval_chain"
+ },
+ "RunEvalConfig": {
+ "LangSmith Walkthrough": "https://python.langchain.com/docs/guides/langsmith/walkthrough"
+ },
+ "arun_on_dataset": {
+ "LangSmith Walkthrough": "https://python.langchain.com/docs/guides/langsmith/walkthrough"
+ },
+ "run_on_dataset": {
+ "LangSmith Walkthrough": "https://python.langchain.com/docs/guides/langsmith/walkthrough"
+ },
+ "openai": {
+ "OpenAI Adapter": "https://python.langchain.com/docs/guides/adapters/openai"
+ },
+ "load_evaluator": {
+ "Comparing Chain Outputs": "https://python.langchain.com/docs/guides/evaluation/examples/comparisons",
+ "Agent Trajectory": "https://python.langchain.com/docs/guides/evaluation/trajectory/trajectory_eval",
+ "Pairwise Embedding Distance ": "https://python.langchain.com/docs/guides/evaluation/comparison/pairwise_embedding_distance",
+ "Pairwise String Comparison": "https://python.langchain.com/docs/guides/evaluation/comparison/pairwise_string",
+ "Criteria Evaluation": "https://python.langchain.com/docs/guides/evaluation/string/criteria_eval_chain",
+ "String Distance": "https://python.langchain.com/docs/guides/evaluation/string/string_distance",
+ "Embedding Distance": "https://python.langchain.com/docs/guides/evaluation/string/embedding_distance"
+ },
+ "load_dataset": {
+ "Comparing Chain Outputs": "https://python.langchain.com/docs/guides/evaluation/examples/comparisons"
+ },
+ "AgentAction": {
+ "Custom Trajectory Evaluator": "https://python.langchain.com/docs/guides/evaluation/trajectory/custom",
+ "Plug-and-Plai": "https://python.langchain.com/docs/use_cases/agents/custom_agent_with_plugin_retrieval_using_plugnplai",
+ "Wikibase Agent": "https://python.langchain.com/docs/use_cases/agents/wikibase_agent",
+ "SalesGPT - Your Context-Aware AI Sales Assistant With Knowledge Base": "https://python.langchain.com/docs/use_cases/agents/sales_agent_with_context",
+ "Custom Agent with PlugIn Retrieval": "https://python.langchain.com/docs/use_cases/agents/custom_agent_with_plugin_retrieval",
+ "Multiple callback handlers": "https://python.langchain.com/docs/modules/callbacks/multiple_callbacks",
+ "Custom multi-action agent": "https://python.langchain.com/docs/modules/agents/how_to/custom_multi_action_agent",
+ "Custom agent": "https://python.langchain.com/docs/modules/agents/how_to/custom_agent",
+ "Custom agent with tool retrieval": "https://python.langchain.com/docs/modules/agents/how_to/custom_agent_with_tool_retrieval"
+ },
+ "AgentTrajectoryEvaluator": {
+ "Custom Trajectory Evaluator": "https://python.langchain.com/docs/guides/evaluation/trajectory/custom"
+ },
+ "EmbeddingDistance": {
+ "Pairwise Embedding Distance ": "https://python.langchain.com/docs/guides/evaluation/comparison/pairwise_embedding_distance",
+ "Embedding Distance": "https://python.langchain.com/docs/guides/evaluation/string/embedding_distance"
+ },
+ "PairwiseStringEvaluator": {
+ "Custom Pairwise Evaluator": "https://python.langchain.com/docs/guides/evaluation/comparison/custom"
+ },
+ "Criteria": {
+ "Criteria Evaluation": "https://python.langchain.com/docs/guides/evaluation/string/criteria_eval_chain"
+ },
+ "StringEvaluator": {
+ "Custom String Evaluator": "https://python.langchain.com/docs/guides/evaluation/string/custom"
+ },
+ "StringDistance": {
+ "String Distance": "https://python.langchain.com/docs/guides/evaluation/string/string_distance"
+ },
+ "JsonOutputFunctionsParser": {
+ "Cookbook": "https://python.langchain.com/docs/guides/expression_language/cookbook"
+ },
+ "JsonKeyOutputFunctionsParser": {
+ "Cookbook": "https://python.langchain.com/docs/guides/expression_language/cookbook"
+ },
+ "RunnablePassthrough": {
+ "Cookbook": "https://python.langchain.com/docs/guides/expression_language/cookbook"
+ },
+ "RunnableMap": {
+ "Cookbook": "https://python.langchain.com/docs/guides/expression_language/cookbook",
+ "Interface": "https://python.langchain.com/docs/guides/expression_language/interface"
+ },
+ "format_document": {
+ "Cookbook": "https://python.langchain.com/docs/guides/expression_language/cookbook"
+ },
+ "create_tagging_chain_pydantic": {
+ "Cookbook": "https://python.langchain.com/docs/guides/expression_language/cookbook",
+ "Tagging": "https://python.langchain.com/docs/use_cases/tagging"
+ },
+ "RouterRunnable": {
+ "Cookbook": "https://python.langchain.com/docs/guides/expression_language/cookbook"
+ },
+ "RunnableLambda": {
+ "Cookbook": "https://python.langchain.com/docs/guides/expression_language/cookbook"
+ },
+ "MessagesPlaceholder": {
+ "Cookbook": "https://python.langchain.com/docs/guides/expression_language/cookbook",
+ "Chatbots": "https://python.langchain.com/docs/use_cases/chatbots",
+ "Conversational Retrieval Agent": "https://python.langchain.com/docs/use_cases/question_answering/how_to/conversational_retrieval_agents",
+ "How to add Memory to an LLMChain": "https://python.langchain.com/docs/modules/memory/adding_memory",
+ "Add Memory to OpenAI Functions Agent": "https://python.langchain.com/docs/modules/agents/how_to/add_memory_openai_functions",
+ "Types of `MessagePromptTemplate`": "https://python.langchain.com/docs/modules/model_io/prompts/prompt_templates/msg_prompt_templates"
+ },
+ "WebResearchRetriever": {
+ "Web Scraping": "https://python.langchain.com/docs/use_cases/web_scraping",
+ "WebResearchRetriever": "https://python.langchain.com/docs/modules/data_connection/retrievers/web_research"
+ },
+ "ConversationSummaryMemory": {
+ "Chatbots": "https://python.langchain.com/docs/use_cases/chatbots",
+ "Code Understanding": "https://python.langchain.com/docs/use_cases/code_understanding",
+ "How to use multiple memory classes in the same chain": "https://python.langchain.com/docs/modules/memory/multiple_memory"
+ },
+ "ConversationSummaryBufferMemory": {
+ "Chatbots": "https://python.langchain.com/docs/use_cases/chatbots",
+ "ConversationSummaryBufferMemory": "https://python.langchain.com/docs/modules/memory/types/summary_buffer"
+ },
+ "StuffDocumentsChain": {
+ "Summarization": "https://python.langchain.com/docs/use_cases/summarization",
+ "Structure answers with OpenAI functions": "https://python.langchain.com/docs/use_cases/question_answering/integrations/openai_functions_retrieval_qa",
+ "Lost in the middle: The problem with long contexts": "https://python.langchain.com/docs/modules/data_connection/document_transformers/post_retrieval/long_context_reorder"
+ },
+ "ReduceDocumentsChain": {
+ "Summarization": "https://python.langchain.com/docs/use_cases/summarization"
+ },
+ "MapReduceDocumentsChain": {
+ "Summarization": "https://python.langchain.com/docs/use_cases/summarization"
+ },
+ "create_extraction_chain_pydantic": {
+ "Extraction": "https://python.langchain.com/docs/use_cases/extraction"
+ },
+ "PydanticOutputParser": {
+ "Extraction": "https://python.langchain.com/docs/use_cases/extraction",
+ "MultiQueryRetriever": "https://python.langchain.com/docs/modules/data_connection/retrievers/MultiQueryRetriever",
+ "WebResearchRetriever": "https://python.langchain.com/docs/modules/data_connection/retrievers/web_research",
+ "Retry parser": "https://python.langchain.com/docs/modules/model_io/output_parsers/retry",
+ "Pydantic (JSON) parser": "https://python.langchain.com/docs/modules/model_io/output_parsers/pydantic"
+ },
+ "get_openapi_chain": {
+ "Interacting with APIs": "https://python.langchain.com/docs/use_cases/apis"
+ },
+ "APIChain": {
+ "Interacting with APIs": "https://python.langchain.com/docs/use_cases/apis"
+ },
+ "open_meteo_docs": {
+ "Interacting with APIs": "https://python.langchain.com/docs/use_cases/apis"
+ },
+ "tmdb_docs": {
+ "Interacting with APIs": "https://python.langchain.com/docs/use_cases/apis"
+ },
+ "podcast_docs": {
+ "Interacting with APIs": "https://python.langchain.com/docs/use_cases/apis"
+ },
+ "LLMRequestsChain": {
+ "Interacting with APIs": "https://python.langchain.com/docs/use_cases/apis"
+ },
+ "create_sql_query_chain": {
+ "SQL": "https://python.langchain.com/docs/use_cases/sql",
+ "Multiple Retrieval Sources": "https://python.langchain.com/docs/use_cases/question_answering/how_to/multiple_retrieval"
+ },
+ "ElasticsearchDatabaseChain": {
+ "SQL": "https://python.langchain.com/docs/use_cases/sql"
+ },
+ "FileChatMessageHistory": {
+ "AutoGPT": "https://python.langchain.com/docs/use_cases/autonomous_agents/autogpt"
+ },
+ "BaseLLM": {
+ "BabyAGI User Guide": "https://python.langchain.com/docs/use_cases/agents/baby_agi",
+ "BabyAGI with Tools": "https://python.langchain.com/docs/use_cases/agents/baby_agi_with_agent",
+ "SalesGPT - Your Context-Aware AI Sales Assistant With Knowledge Base": "https://python.langchain.com/docs/use_cases/agents/sales_agent_with_context"
+ },
+ "VectorStore": {
+ "BabyAGI User Guide": "https://python.langchain.com/docs/use_cases/agents/baby_agi",
+ "BabyAGI with Tools": "https://python.langchain.com/docs/use_cases/agents/baby_agi_with_agent"
+ },
+ "Chain": {
+ "BabyAGI User Guide": "https://python.langchain.com/docs/use_cases/agents/baby_agi",
+ "BabyAGI with Tools": "https://python.langchain.com/docs/use_cases/agents/baby_agi_with_agent",
+ "SalesGPT - Your Context-Aware AI Sales Assistant With Knowledge Base": "https://python.langchain.com/docs/use_cases/agents/sales_agent_with_context",
+ "Custom chain": "https://python.langchain.com/docs/modules/chains/how_to/custom_chain"
+ },
+ "BaseTool": {
+ "!pip install bs4": "https://python.langchain.com/docs/use_cases/autonomous_agents/marathon_times",
+ "Defining Custom Tools": "https://python.langchain.com/docs/modules/agents/tools/custom_tools",
+ "Combine agents and vector stores": "https://python.langchain.com/docs/modules/agents/how_to/agent_vectorstore",
+ "Custom functions with OpenAI Functions Agent": "https://python.langchain.com/docs/modules/agents/how_to/custom-functions-with-openai-functions-agent"
+ },
+ "BaseCombineDocumentsChain": {
+ "!pip install bs4": "https://python.langchain.com/docs/use_cases/autonomous_agents/marathon_times"
+ },
+ "MultiQueryRetriever": {
+ "QA over Documents": "https://python.langchain.com/docs/use_cases/question_answering/index",
+ "MultiQueryRetriever": "https://python.langchain.com/docs/modules/data_connection/retrievers/MultiQueryRetriever"
+ },
+ "MarkdownHeaderTextSplitter": {
+ "Perform context-aware text splitting": "https://python.langchain.com/docs/use_cases/question_answering/how_to/document-context-aware-QA",
+ "MarkdownHeaderTextSplitter": "https://python.langchain.com/docs/modules/data_connection/document_transformers/text_splitters/markdown_header_metadata"
+ },
+ "create_retriever_tool": {
+ "Conversational Retrieval Agent": "https://python.langchain.com/docs/use_cases/question_answering/how_to/conversational_retrieval_agents"
+ },
+ "create_conversational_retrieval_agent": {
+ "Conversational Retrieval Agent": "https://python.langchain.com/docs/use_cases/question_answering/how_to/conversational_retrieval_agents"
+ },
+ "AgentTokenBufferMemory": {
+ "Conversational Retrieval Agent": "https://python.langchain.com/docs/use_cases/question_answering/how_to/conversational_retrieval_agents"
+ },
+ "create_citation_fuzzy_match_chain": {
+ "Cite sources": "https://python.langchain.com/docs/use_cases/question_answering/how_to/qa_citations"
+ },
+ "BaseRetriever": {
+ "Retrieve as you generate with FLARE": "https://python.langchain.com/docs/use_cases/question_answering/how_to/flare"
+ },
+ "AsyncCallbackManagerForRetrieverRun": {
+ "Retrieve as you generate with FLARE": "https://python.langchain.com/docs/use_cases/question_answering/how_to/flare"
+ },
+ "CallbackManagerForRetrieverRun": {
+ "Retrieve as you generate with FLARE": "https://python.langchain.com/docs/use_cases/question_answering/how_to/flare"
+ },
+ "FlareChain": {
+ "Retrieve as you generate with FLARE": "https://python.langchain.com/docs/use_cases/question_answering/how_to/flare"
+ },
+ "HypotheticalDocumentEmbedder": {
+ "Improve document indexing with HyDE": "https://python.langchain.com/docs/use_cases/question_answering/how_to/hyde"
+ },
+ "create_qa_with_sources_chain": {
+ "Structure answers with OpenAI functions": "https://python.langchain.com/docs/use_cases/question_answering/integrations/openai_functions_retrieval_qa"
+ },
+ "create_qa_with_structure_chain": {
+ "Structure answers with OpenAI functions": "https://python.langchain.com/docs/use_cases/question_answering/integrations/openai_functions_retrieval_qa"
+ },
+ "LLMSingleActionAgent": {
+ "Plug-and-Plai": "https://python.langchain.com/docs/use_cases/agents/custom_agent_with_plugin_retrieval_using_plugnplai",
+ "Wikibase Agent": "https://python.langchain.com/docs/use_cases/agents/wikibase_agent",
+ "SalesGPT - Your Context-Aware AI Sales Assistant With Knowledge Base": "https://python.langchain.com/docs/use_cases/agents/sales_agent_with_context",
+ "Custom Agent with PlugIn Retrieval": "https://python.langchain.com/docs/use_cases/agents/custom_agent_with_plugin_retrieval",
+ "Custom agent with tool retrieval": "https://python.langchain.com/docs/modules/agents/how_to/custom_agent_with_tool_retrieval"
+ },
+ "AgentOutputParser": {
+ "Plug-and-Plai": "https://python.langchain.com/docs/use_cases/agents/custom_agent_with_plugin_retrieval_using_plugnplai",
+ "Wikibase Agent": "https://python.langchain.com/docs/use_cases/agents/wikibase_agent",
+ "SalesGPT - Your Context-Aware AI Sales Assistant With Knowledge Base": "https://python.langchain.com/docs/use_cases/agents/sales_agent_with_context",
+ "Custom Agent with PlugIn Retrieval": "https://python.langchain.com/docs/use_cases/agents/custom_agent_with_plugin_retrieval",
+ "Custom agent with tool retrieval": "https://python.langchain.com/docs/modules/agents/how_to/custom_agent_with_tool_retrieval"
+ },
+ "StringPromptTemplate": {
+ "Plug-and-Plai": "https://python.langchain.com/docs/use_cases/agents/custom_agent_with_plugin_retrieval_using_plugnplai",
+ "Wikibase Agent": "https://python.langchain.com/docs/use_cases/agents/wikibase_agent",
+ "SalesGPT - Your Context-Aware AI Sales Assistant With Knowledge Base": "https://python.langchain.com/docs/use_cases/agents/sales_agent_with_context",
+ "Custom Agent with PlugIn Retrieval": "https://python.langchain.com/docs/use_cases/agents/custom_agent_with_plugin_retrieval",
+ "Custom agent with tool retrieval": "https://python.langchain.com/docs/modules/agents/how_to/custom_agent_with_tool_retrieval",
+ "Custom prompt template": "https://python.langchain.com/docs/modules/model_io/prompts/prompt_templates/custom_prompt_template",
+ "Connecting to a Feature Store": "https://python.langchain.com/docs/modules/model_io/prompts/prompt_templates/connecting_to_a_feature_store"
+ },
+ "AgentFinish": {
+ "Plug-and-Plai": "https://python.langchain.com/docs/use_cases/agents/custom_agent_with_plugin_retrieval_using_plugnplai",
+ "Wikibase Agent": "https://python.langchain.com/docs/use_cases/agents/wikibase_agent",
+ "SalesGPT - Your Context-Aware AI Sales Assistant With Knowledge Base": "https://python.langchain.com/docs/use_cases/agents/sales_agent_with_context",
+ "Custom Agent with PlugIn Retrieval": "https://python.langchain.com/docs/use_cases/agents/custom_agent_with_plugin_retrieval",
+ "Custom multi-action agent": "https://python.langchain.com/docs/modules/agents/how_to/custom_multi_action_agent",
+ "Running Agent as an Iterator": "https://python.langchain.com/docs/modules/agents/how_to/agent_iter",
+ "Custom agent": "https://python.langchain.com/docs/modules/agents/how_to/custom_agent",
+ "Custom agent with tool retrieval": "https://python.langchain.com/docs/modules/agents/how_to/custom_agent_with_tool_retrieval"
+ },
+ "AIPlugin": {
+ "Plug-and-Plai": "https://python.langchain.com/docs/use_cases/agents/custom_agent_with_plugin_retrieval_using_plugnplai",
+ "Custom Agent with PlugIn Retrieval": "https://python.langchain.com/docs/use_cases/agents/custom_agent_with_plugin_retrieval"
+ },
+ "SteamshipImageGenerationTool": {
+ "Multi-modal outputs: Image & Text": "https://python.langchain.com/docs/use_cases/multi_modal/image_agent"
+ },
+ "BaseMessage": {
+ "CAMEL Role-Playing Autonomous Cooperative Agents": "https://python.langchain.com/docs/use_cases/agent_simulations/camel_role_playing",
+ "Multi-agent decentralized speaker selection": "https://python.langchain.com/docs/use_cases/agent_simulations/multiagent_bidding",
+ "Multi-agent authoritarian speaker selection": "https://python.langchain.com/docs/use_cases/agent_simulations/multiagent_authoritarian",
+ "Multi-Player Dungeons & Dragons": "https://python.langchain.com/docs/use_cases/agent_simulations/multi_player_dnd",
+ "Simulated Environment: Gymnasium": "https://python.langchain.com/docs/use_cases/agent_simulations/gymnasium",
+ "Agent Debates with Tools": "https://python.langchain.com/docs/use_cases/agent_simulations/two_agent_debate_tools"
+ },
+ "NeptuneGraph": {
+ "Neptune Open Cypher QA Chain": "https://python.langchain.com/docs/use_cases/more/graph/neptune_cypher_qa"
+ },
+ "NeptuneOpenCypherQAChain": {
+ "Neptune Open Cypher QA Chain": "https://python.langchain.com/docs/use_cases/more/graph/neptune_cypher_qa"
+ },
+ "NebulaGraphQAChain": {
+ "NebulaGraphQAChain": "https://python.langchain.com/docs/use_cases/more/graph/graph_nebula_qa"
+ },
+ "NebulaGraph": {
+ "NebulaGraphQAChain": "https://python.langchain.com/docs/use_cases/more/graph/graph_nebula_qa"
+ },
+ "KuzuGraph": {
+ "KuzuQAChain": "https://python.langchain.com/docs/use_cases/more/graph/graph_kuzu_qa"
+ },
+ "KuzuQAChain": {
+ "KuzuQAChain": "https://python.langchain.com/docs/use_cases/more/graph/graph_kuzu_qa"
+ },
+ "HugeGraphQAChain": {
+ "HugeGraph QA Chain": "https://python.langchain.com/docs/use_cases/more/graph/graph_hugegraph_qa"
+ },
+ "HugeGraph": {
+ "HugeGraph QA Chain": "https://python.langchain.com/docs/use_cases/more/graph/graph_hugegraph_qa"
+ },
+ "GraphSparqlQAChain": {
+ "GraphSparqlQAChain": "https://python.langchain.com/docs/use_cases/more/graph/graph_sparql_qa"
+ },
+ "RdfGraph": {
+ "GraphSparqlQAChain": "https://python.langchain.com/docs/use_cases/more/graph/graph_sparql_qa"
+ },
+ "ArangoGraph": {
+ "ArangoDB QA chain": "https://python.langchain.com/docs/use_cases/more/graph/graph_arangodb_qa"
+ },
+ "ArangoGraphQAChain": {
+ "ArangoDB QA chain": "https://python.langchain.com/docs/use_cases/more/graph/graph_arangodb_qa"
+ },
+ "GraphIndexCreator": {
+ "Graph QA": "https://python.langchain.com/docs/use_cases/more/graph/graph_qa"
+ },
+ "GraphQAChain": {
+ "Graph QA": "https://python.langchain.com/docs/use_cases/more/graph/graph_qa"
+ },
+ "NetworkxEntityGraph": {
+ "Graph QA": "https://python.langchain.com/docs/use_cases/more/graph/graph_qa"
+ },
+ "GraphCypherQAChain": {
+ "Graph DB QA chain": "https://python.langchain.com/docs/use_cases/more/graph/graph_cypher_qa"
+ },
+ "Neo4jGraph": {
+ "Graph DB QA chain": "https://python.langchain.com/docs/use_cases/more/graph/graph_cypher_qa"
+ },
+ "LLMBashChain": {
+ "Bash chain": "https://python.langchain.com/docs/use_cases/more/code_writing/llm_bash"
+ },
+ "BashOutputParser": {
+ "Bash chain": "https://python.langchain.com/docs/use_cases/more/code_writing/llm_bash"
+ },
+ "BashProcess": {
+ "Bash chain": "https://python.langchain.com/docs/use_cases/more/code_writing/llm_bash"
+ },
+ "LLMSymbolicMathChain": {
+ "LLM Symbolic Math ": "https://python.langchain.com/docs/use_cases/more/code_writing/llm_symbolic_math"
+ },
+ "LLMSummarizationCheckerChain": {
+ "Summarization checker chain": "https://python.langchain.com/docs/use_cases/more/self_check/llm_summarization_checker"
+ },
+ "LLMCheckerChain": {
+ "Self-checking chain": "https://python.langchain.com/docs/use_cases/more/self_check/llm_checker"
+ },
+ "RegexParser": {
+ "Multi-Agent Simulated Environment: Petting Zoo": "https://python.langchain.com/docs/use_cases/agent_simulations/petting_zoo",
+ "Multi-agent decentralized speaker selection": "https://python.langchain.com/docs/use_cases/agent_simulations/multiagent_bidding",
+ "Multi-agent authoritarian speaker selection": "https://python.langchain.com/docs/use_cases/agent_simulations/multiagent_authoritarian",
+ "Simulated Environment: Gymnasium": "https://python.langchain.com/docs/use_cases/agent_simulations/gymnasium"
+ },
+ "TimeWeightedVectorStoreRetriever": {
+ "Generative Agents in LangChain": "https://python.langchain.com/docs/use_cases/agent_simulations/characters"
+ },
+ "InMemoryStore": {
+ "Caching Embeddings": "https://python.langchain.com/docs/modules/data_connection/caching_embeddings",
+ "Parent Document Retriever": "https://python.langchain.com/docs/modules/data_connection/retrievers/parent_document_retriever"
+ },
+ "LocalFileStore": {
+ "Caching Embeddings": "https://python.langchain.com/docs/modules/data_connection/caching_embeddings"
+ },
+ "RedisStore": {
+ "Caching Embeddings": "https://python.langchain.com/docs/modules/data_connection/caching_embeddings"
+ },
+ "CacheBackedEmbeddings": {
+ "Caching Embeddings": "https://python.langchain.com/docs/modules/data_connection/caching_embeddings"
+ },
+ "EnsembleRetriever": {
+ "Ensemble Retriever": "https://python.langchain.com/docs/modules/data_connection/retrievers/ensemble"
+ },
+ "ParentDocumentRetriever": {
+ "Parent Document Retriever": "https://python.langchain.com/docs/modules/data_connection/retrievers/parent_document_retriever"
+ },
+ "SentenceTransformersTokenTextSplitter": {
+ "Split by tokens ": "https://python.langchain.com/docs/modules/data_connection/document_transformers/text_splitters/split_by_token"
+ },
+ "NLTKTextSplitter": {
+ "Split by tokens ": "https://python.langchain.com/docs/modules/data_connection/document_transformers/text_splitters/split_by_token"
+ },
+ "ChatMessageHistory": {
+ "Adding Message Memory backed by a database to an Agent": "https://python.langchain.com/docs/modules/memory/agent_with_memory_in_db"
+ },
+ "BaseMemory": {
+ "How to create a custom Memory class": "https://python.langchain.com/docs/modules/memory/custom_memory"
+ },
+ "ConversationKGMemory": {
+ "Conversation Knowledge Graph Memory": "https://python.langchain.com/docs/modules/memory/types/kg"
+ },
+ "ConversationTokenBufferMemory": {
+ "ConversationTokenBufferMemory": "https://python.langchain.com/docs/modules/memory/types/token_buffer"
+ },
+ "tracing_enabled": {
+ "Multiple callback handlers": "https://python.langchain.com/docs/modules/callbacks/multiple_callbacks"
+ },
+ "FileCallbackHandler": {
+ "Logging to file": "https://python.langchain.com/docs/modules/callbacks/filecallbackhandler"
+ },
+ "AsyncCallbackHandler": {
+ "Async callbacks": "https://python.langchain.com/docs/modules/callbacks/async_callbacks"
+ },
+ "StructuredTool": {
+ "Multi-Input Tools": "https://python.langchain.com/docs/modules/agents/tools/multi_input_tool",
+ "Defining Custom Tools": "https://python.langchain.com/docs/modules/agents/tools/custom_tools"
+ },
+ "AsyncCallbackManagerForToolRun": {
+ "Defining Custom Tools": "https://python.langchain.com/docs/modules/agents/tools/custom_tools"
+ },
+ "CallbackManagerForToolRun": {
+ "Defining Custom Tools": "https://python.langchain.com/docs/modules/agents/tools/custom_tools"
+ },
+ "ToolException": {
+ "Defining Custom Tools": "https://python.langchain.com/docs/modules/agents/tools/custom_tools"
+ },
+ "format_tool_to_openai_function": {
+ "Tools as OpenAI Functions": "https://python.langchain.com/docs/modules/agents/tools/tools_as_openai_functions"
+ },
+ "RequestsGetTool": {
+ "Tool Input Schema": "https://python.langchain.com/docs/modules/agents/tools/tool_input_validation"
+ },
+ "HumanApprovalCallbackHandler": {
+ "Human-in-the-loop Tool Validation": "https://python.langchain.com/docs/modules/agents/tools/human_approval"
+ },
+ "XMLAgent": {
+ "XML Agent": "https://python.langchain.com/docs/modules/agents/agent_types/xml_agent"
+ },
+ "DocstoreExplorer": {
+ "ReAct document store": "https://python.langchain.com/docs/modules/agents/agent_types/react_docstore"
+ },
+ "ReadOnlySharedMemory": {
+ "Shared memory across agents and tools": "https://python.langchain.com/docs/modules/agents/how_to/sharedmemory_for_tools"
+ },
+ "BaseMultiActionAgent": {
+ "Custom multi-action agent": "https://python.langchain.com/docs/modules/agents/how_to/custom_multi_action_agent"
+ },
+ "FinalStreamingStdOutCallbackHandler": {
+ "Streaming final agent output": "https://python.langchain.com/docs/modules/agents/how_to/streaming_stdout_final_only"
+ },
+ "LangChainTracer": {
+ "Async API": "https://python.langchain.com/docs/modules/agents/how_to/async_agent"
+ },
+ "BaseSingleActionAgent": {
+ "Custom agent": "https://python.langchain.com/docs/modules/agents/how_to/custom_agent"
+ },
+ "HumanInputChatModel": {
+ "Human input Chat Model": "https://python.langchain.com/docs/modules/model_io/models/chat/human_input_chat_model"
+ },
+ "FakeListLLM": {
+ "Fake LLM": "https://python.langchain.com/docs/modules/model_io/models/llms/fake_llm"
+ },
+ "CallbackManagerForLLMRun": {
+ "Custom LLM": "https://python.langchain.com/docs/modules/model_io/models/llms/custom_llm"
+ },
+ "LLM": {
+ "Custom LLM": "https://python.langchain.com/docs/modules/model_io/models/llms/custom_llm"
+ },
+ "HumanInputLLM": {
+ "Human input LLM": "https://python.langchain.com/docs/modules/model_io/models/llms/human_input_llm"
+ },
+ "OutputFixingParser": {
+ "Retry parser": "https://python.langchain.com/docs/modules/model_io/output_parsers/retry"
+ },
+ "RetryOutputParser": {
+ "Retry parser": "https://python.langchain.com/docs/modules/model_io/output_parsers/retry"
+ },
+ "RetryWithErrorOutputParser": {
+ "Retry parser": "https://python.langchain.com/docs/modules/model_io/output_parsers/retry"
+ },
+ "EnumOutputParser": {
+ "Enum parser": "https://python.langchain.com/docs/modules/model_io/output_parsers/enum"
+ },
+ "MaxMarginalRelevanceExampleSelector": {
+ "Select by maximal marginal relevance (MMR)": "https://python.langchain.com/docs/modules/model_io/prompts/example_selectors/mmr"
+ },
+ "SemanticSimilarityExampleSelector": {
+ "Select by maximal marginal relevance (MMR)": "https://python.langchain.com/docs/modules/model_io/prompts/example_selectors/mmr",
+ "Few shot examples for chat models": "https://python.langchain.com/docs/modules/model_io/prompts/prompt_templates/few_shot_examples_chat"
+ },
+ "FewShotPromptTemplate": {
+ "Select by maximal marginal relevance (MMR)": "https://python.langchain.com/docs/modules/model_io/prompts/example_selectors/mmr",
+ "Select by n-gram overlap": "https://python.langchain.com/docs/modules/model_io/prompts/example_selectors/ngram_overlap"
+ },
+ "BaseExampleSelector": {
+ "Custom example selector": "https://python.langchain.com/docs/modules/model_io/prompts/example_selectors/custom_example_selector"
+ },
+ "NGramOverlapExampleSelector": {
+ "Select by n-gram overlap": "https://python.langchain.com/docs/modules/model_io/prompts/example_selectors/ngram_overlap"
+ },
+ "FewShotChatMessagePromptTemplate": {
+ "Few shot examples for chat models": "https://python.langchain.com/docs/modules/model_io/prompts/prompt_templates/few_shot_examples_chat"
+ },
+ "load_prompt": {
+ "Serialization": "https://python.langchain.com/docs/modules/model_io/prompts/prompt_templates/prompt_serialization"
+ },
+ "ChatMessagePromptTemplate": {
+ "Types of `MessagePromptTemplate`": "https://python.langchain.com/docs/modules/model_io/prompts/prompt_templates/msg_prompt_templates"
+ },
+ "MultiPromptChain": {
+ "Router": "https://python.langchain.com/docs/modules/chains/foundational/router"
+ },
+ "LLMRouterChain": {
+ "Router": "https://python.langchain.com/docs/modules/chains/foundational/router"
+ },
+ "RouterOutputParser": {
+ "Router": "https://python.langchain.com/docs/modules/chains/foundational/router"
+ },
+ "EmbeddingRouterChain": {
+ "Router": "https://python.langchain.com/docs/modules/chains/foundational/router"
+ },
+ "BaseLanguageModel": {
+ "Custom chain": "https://python.langchain.com/docs/modules/chains/how_to/custom_chain"
+ },
+ "AsyncCallbackManagerForChainRun": {
+ "Custom chain": "https://python.langchain.com/docs/modules/chains/how_to/custom_chain"
+ },
+ "CallbackManagerForChainRun": {
+ "Custom chain": "https://python.langchain.com/docs/modules/chains/how_to/custom_chain"
+ },
+ "BasePromptTemplate": {
+ "Custom chain": "https://python.langchain.com/docs/modules/chains/how_to/custom_chain"
+ },
+ "load_chain": {
+ "Serialization": "https://python.langchain.com/docs/modules/chains/how_to/serialization",
+ "Loading from LangChainHub": "https://python.langchain.com/docs/modules/chains/how_to/from_hub"
+ },
+ "create_openai_fn_chain": {
+ "Using OpenAI functions": "https://python.langchain.com/docs/modules/chains/how_to/openai_functions"
+ },
+ "create_structured_output_chain": {
+ "Using OpenAI functions": "https://python.langchain.com/docs/modules/chains/how_to/openai_functions"
+ }
+}
\ No newline at end of file
diff --git a/docs/docs_skeleton/docs/community.md b/docs/docs_skeleton/docs/community.md
new file mode 100644
index 00000000000..c3c7031505c
--- /dev/null
+++ b/docs/docs_skeleton/docs/community.md
@@ -0,0 +1,54 @@
+# Community navigator
+
+Hi! Thanks for being here. We’re lucky to have a community of so many passionate developers building with LangChain–we have so much to teach and learn from each other. Community members contribute code, host meetups, write blog posts, amplify each other’s work, become each other's customers and collaborators, and so much more.
+
+Whether you’re new to LangChain, looking to go deeper, or just want to get more exposure to the world of building with LLMs, this page can point you in the right direction.
+
+- **🦜 Contribute to LangChain**
+
+- **🌍 Meetups, Events, and Hackathons**
+
+- **📣 Help Us Amplify Your Work**
+
+- **💬 Stay in the loop**
+
+
+# 🦜 Contribute to LangChain
+
+LangChain is the product of over 5,000+ contributions by 1,500+ contributors, and there is ******still****** so much to do together. Here are some ways to get involved:
+
+- **[Open a pull request](https://github.com/langchain-ai/langchain/issues):** we’d appreciate all forms of contributions–new features, infrastructure improvements, better documentation, bug fixes, etc. If you have an improvement or an idea, we’d love to work on it with you.
+- **[Read our contributor guidelines:](https://github.com/langchain-ai/langchain/blob/bbd22b9b761389a5e40fc45b0570e1830aabb707/.github/CONTRIBUTING.md)** We ask contributors to follow a ["fork and pull request"](https://docs.github.com/en/get-started/quickstart/contributing-to-projects) workflow, run a few local checks for formatting, linting, and testing before submitting, and follow certain documentation and testing conventions.
+ - **First time contributor?** [Try one of these PRs with the “good first issue” tag](https://github.com/langchain-ai/langchain/contribute).
+- **Become an expert:** our experts help the community by answering product questions in Discord. If that’s a role you’d like to play, we’d be so grateful! (And we have some special experts-only goodies/perks we can tell you more about). Send us an email to introduce yourself at hello@langchain.dev and we’ll take it from there!
+- **Integrate with LangChain:** if your product integrates with LangChain–or aspires to–we want to help make sure the experience is as smooth as possible for you and end users. Send us an email at hello@langchain.dev and tell us what you’re working on.
+ - **Become an Integration Maintainer:** Partner with our team to ensure your integration stays up-to-date and talk directly with users (and answer their inquiries) in our Discord. Introduce yourself at hello@langchain.dev if you’d like to explore this role.
+
+
+# 🌍 Meetups, Events, and Hackathons
+
+One of our favorite things about working in AI is how much enthusiasm there is for building together. We want to help make that as easy and impactful for you as possible!
+- **Find a meetup, hackathon, or webinar:** you can find the one for you on our [global events calendar](https://mirror-feeling-d80.notion.site/0bc81da76a184297b86ca8fc782ee9a3?v=0d80342540df465396546976a50cfb3f).
+ - **Submit an event to our calendar:** email us at events@langchain.dev with a link to your event page! We can also help you spread the word with our local communities.
+- **Host a meetup:** If you want to bring a group of builders together, we want to help! We can publicize your event on our event calendar/Twitter, share with our local communities in Discord, send swag, or potentially hook you up with a sponsor. Email us at events@langchain.dev to tell us about your event!
+- **Become a meetup sponsor:** we often hear from groups of builders that want to get together, but are blocked or limited on some dimension (space to host, budget for snacks, prizes to distribute, etc.). If you’d like to help, send us an email to events@langchain.dev we can share more about how it works!
+- **Speak at an event:** meetup hosts are always looking for great speakers, presenters, and panelists. If you’d like to do that at an event, send us an email to hello@langchain.dev with more information about yourself, what you want to talk about, and what city you’re based in and we’ll try to match you with an upcoming event!
+- **Tell us about your LLM community:** If you host or participate in a community that would welcome support from LangChain and/or our team, send us an email at hello@langchain.dev and let us know how we can help.
+
+# 📣 Help Us Amplify Your Work
+
+If you’re working on something you’re proud of, and think the LangChain community would benefit from knowing about it, we want to help you show it off.
+
+- **Post about your work and mention us:** we love hanging out on Twitter to see what people in the space are talking about and working on. If you tag [@langchainai](https://twitter.com/LangChainAI), we’ll almost certainly see it and can show you some love.
+- **Publish something on our blog:** if you’re writing about your experience building with LangChain, we’d love to post (or crosspost) it on our blog! E-mail hello@langchain.dev with a draft of your post! Or even an idea for something you want to write about.
+- **Get your product onto our [integrations hub](https://integrations.langchain.com/):** Many developers take advantage of our seamless integrations with other products, and come to our integrations hub to find out who those are. If you want to get your product up there, tell us about it (and how it works with LangChain) at hello@langchain.dev.
+
+# ☀️ Stay in the loop
+
+Here’s where our team hangs out, talks shop, spotlights cool work, and shares what we’re up to. We’d love to see you there too.
+
+- **[Twitter](https://twitter.com/LangChainAI):** we post about what we’re working on and what cool things we’re seeing in the space. If you tag @langchainai in your post, we’ll almost certainly see it, and can snow you some love!
+- **[Discord](https://discord.gg/6adMQxSpJS):** connect with with >30k developers who are building with LangChain
+- **[GitHub](https://github.com/langchain-ai/langchain):** open pull requests, contribute to a discussion, and/or contribute
+- **[Subscribe to our bi-weekly Release Notes](https://6w1pwbss0py.typeform.com/to/KjZB1auB):** a twice/month email roundup of the coolest things going on in our orbit
+- **Slack:** if you’re building an application in production at your company, we’d love to get into a Slack channel together. Fill out [this form](https://airtable.com/appwQzlErAS2qiP0L/shrGtGaVBVAz7NcV2) and we’ll get in touch about setting one up.
diff --git a/docs/docs_skeleton/docs/guides/evaluation/index.mdx b/docs/docs_skeleton/docs/guides/evaluation/index.mdx
index a608527bed0..e2d04b12284 100644
--- a/docs/docs_skeleton/docs/guides/evaluation/index.mdx
+++ b/docs/docs_skeleton/docs/guides/evaluation/index.mdx
@@ -8,9 +8,9 @@ import DocCardList from "@theme/DocCardList";
Building applications with language models involves many moving parts. One of the most critical components is ensuring that the outcomes produced by your models are reliable and useful across a broad array of inputs, and that they work well with your application's other software components. Ensuring reliability usually boils down to some combination of application design, testing & evaluation, and runtime checks.
-The guides in this section review the APIs and functionality LangChain provides to help yous better evaluate your applications. Evaluation and testing are both critical when thinking about deploying LLM applications, since production environments require repeatable and useful outcomes.
+The guides in this section review the APIs and functionality LangChain provides to help you better evaluate your applications. Evaluation and testing are both critical when thinking about deploying LLM applications, since production environments require repeatable and useful outcomes.
-LangChain offers various types of evaluators to help you measure performance and integrity on diverse data, and we hope to encourage the the community to create and share other useful evaluators so everyone can improve. These docs will introduce the evaluator types, how to use them, and provide some examples of their use in real-world scenarios.
+LangChain offers various types of evaluators to help you measure performance and integrity on diverse data, and we hope to encourage the community to create and share other useful evaluators so everyone can improve. These docs will introduce the evaluator types, how to use them, and provide some examples of their use in real-world scenarios.
Each evaluator type in LangChain comes with ready-to-use implementations and an extensible API that allows for customization according to your unique requirements. Here are some of the types of evaluators we offer:
diff --git a/docs/docs_skeleton/docs/guides/langsmith/index.md b/docs/docs_skeleton/docs/guides/langsmith/index.md
index 42d7e937ddc..9915e70c5fb 100644
--- a/docs/docs_skeleton/docs/guides/langsmith/index.md
+++ b/docs/docs_skeleton/docs/guides/langsmith/index.md
@@ -5,8 +5,8 @@ import DocCardList from "@theme/DocCardList";
LangSmith helps you trace and evaluate your language model applications and intelligent agents to help you
move from prototype to production.
-Check out the [interactive walkthrough](walkthrough) below to get started.
+Check out the [interactive walkthrough](/docs/guides/langsmith/walkthrough) below to get started.
For more information, please refer to the [LangSmith documentation](https://docs.smith.langchain.com/)
-
\ No newline at end of file
+
diff --git a/docs/docs_skeleton/docs/use_cases/apis/api.mdx b/docs/docs_skeleton/docs/use_cases/apis/api.mdx
deleted file mode 100644
index 7760ab04af6..00000000000
--- a/docs/docs_skeleton/docs/use_cases/apis/api.mdx
+++ /dev/null
@@ -1,9 +0,0 @@
----
-sidebar_position: 0
----
-# API chains
-APIChain enables using LLMs to interact with APIs to retrieve relevant information. Construct the chain by providing a question relevant to the provided API documentation.
-
-import Example from "@snippets/modules/chains/popular/api.mdx"
-
-
diff --git a/docs/docs_skeleton/docs/use_cases/web_scraping/index.mdx b/docs/docs_skeleton/docs/use_cases/web_scraping/index.mdx
new file mode 100644
index 00000000000..c62c8e68214
--- /dev/null
+++ b/docs/docs_skeleton/docs/use_cases/web_scraping/index.mdx
@@ -0,0 +1,9 @@
+---
+sidebar_position: 3
+---
+
+# Web Scraping
+
+Web scraping has historically been a challenging endeavor due to the ever-changing nature of website structures, making it tedious for developers to maintain their scraping scripts. Traditional methods often rely on specific HTML tags and patterns which, when altered, can disrupt data extraction processes.
+
+Enter the LLM-based method for parsing HTML: By leveraging the capabilities of LLMs, and especially OpenAI Functions in LangChain's extraction chain, developers can instruct the model to extract only the desired data in a specified format. This method not only streamlines the extraction process but also significantly reduces the time spent on manual debugging and script modifications. Its adaptability means that even if websites undergo significant design changes, the extraction remains consistent and robust. This level of resilience translates to reduced maintenance efforts, cost savings, and ensures a higher quality of extracted data. Compared to its predecessors, LLM-based approach wins out the web scraping domain by transforming a historically cumbersome task into a more automated and efficient process.
diff --git a/docs/docs_skeleton/package-lock.json b/docs/docs_skeleton/package-lock.json
index 9a9c91f907d..db966d261fb 100644
--- a/docs/docs_skeleton/package-lock.json
+++ b/docs/docs_skeleton/package-lock.json
@@ -12,7 +12,7 @@
"@docusaurus/preset-classic": "2.4.0",
"@docusaurus/remark-plugin-npm2yarn": "^2.4.0",
"@mdx-js/react": "^1.6.22",
- "@mendable/search": "^0.0.137",
+ "@mendable/search": "^0.0.150",
"clsx": "^1.2.1",
"json-loader": "^0.5.7",
"process": "^0.11.10",
@@ -3212,9 +3212,9 @@
}
},
"node_modules/@mendable/search": {
- "version": "0.0.137",
- "resolved": "https://registry.npmjs.org/@mendable/search/-/search-0.0.137.tgz",
- "integrity": "sha512-2J2fd5eqToK+mLzrSDA6NAr4F1kfql7QRiHpD7AUJJX0nqpvInhr/mMJKBCUSCv2z76UKCmF5wLuPSw+C90Qdg==",
+ "version": "0.0.150",
+ "resolved": "https://registry.npmjs.org/@mendable/search/-/search-0.0.150.tgz",
+ "integrity": "sha512-Eb5SeAWlMxzEim/8eJ/Ysn01Pyh39xlPBzRBw/5OyOBhti0HVLXk4wd1Fq2TKgJC2ppQIvhEKO98PUcj9dNDFw==",
"dependencies": {
"html-react-parser": "^4.2.0",
"posthog-js": "^1.45.1"
diff --git a/docs/docs_skeleton/package.json b/docs/docs_skeleton/package.json
index b280212e83c..8256b3a334f 100644
--- a/docs/docs_skeleton/package.json
+++ b/docs/docs_skeleton/package.json
@@ -23,7 +23,7 @@
"@docusaurus/preset-classic": "2.4.0",
"@docusaurus/remark-plugin-npm2yarn": "^2.4.0",
"@mdx-js/react": "^1.6.22",
- "@mendable/search": "^0.0.137",
+ "@mendable/search": "^0.0.150",
"clsx": "^1.2.1",
"json-loader": "^0.5.7",
"process": "^0.11.10",
diff --git a/docs/docs_skeleton/sidebars.js b/docs/docs_skeleton/sidebars.js
index 308782e49fc..90950592be3 100644
--- a/docs/docs_skeleton/sidebars.js
+++ b/docs/docs_skeleton/sidebars.js
@@ -75,6 +75,7 @@ module.exports = {
slug: "additional_resources",
},
},
+ 'community'
],
integrations: [
{
diff --git a/docs/docs_skeleton/static/img/OSS_LLM_overview.png b/docs/docs_skeleton/static/img/OSS_LLM_overview.png
new file mode 100644
index 00000000000..33bf4b914b6
Binary files /dev/null and b/docs/docs_skeleton/static/img/OSS_LLM_overview.png differ
diff --git a/docs/docs_skeleton/static/img/api_chain.png b/docs/docs_skeleton/static/img/api_chain.png
new file mode 100644
index 00000000000..f296056498e
Binary files /dev/null and b/docs/docs_skeleton/static/img/api_chain.png differ
diff --git a/docs/docs_skeleton/static/img/api_chain_response.png b/docs/docs_skeleton/static/img/api_chain_response.png
new file mode 100644
index 00000000000..9b3103a9e35
Binary files /dev/null and b/docs/docs_skeleton/static/img/api_chain_response.png differ
diff --git a/docs/docs_skeleton/static/img/api_function_call.png b/docs/docs_skeleton/static/img/api_function_call.png
new file mode 100644
index 00000000000..82f151afe1c
Binary files /dev/null and b/docs/docs_skeleton/static/img/api_function_call.png differ
diff --git a/docs/docs_skeleton/static/img/api_use_case.png b/docs/docs_skeleton/static/img/api_use_case.png
new file mode 100644
index 00000000000..f2fa0cdb7ac
Binary files /dev/null and b/docs/docs_skeleton/static/img/api_use_case.png differ
diff --git a/docs/docs_skeleton/static/img/code_retrieval.png b/docs/docs_skeleton/static/img/code_retrieval.png
new file mode 100644
index 00000000000..4a9b607600a
Binary files /dev/null and b/docs/docs_skeleton/static/img/code_retrieval.png differ
diff --git a/docs/docs_skeleton/static/img/code_understanding.png b/docs/docs_skeleton/static/img/code_understanding.png
new file mode 100644
index 00000000000..f9face6add3
Binary files /dev/null and b/docs/docs_skeleton/static/img/code_understanding.png differ
diff --git a/docs/docs_skeleton/static/img/llama-memory-weights.png b/docs/docs_skeleton/static/img/llama-memory-weights.png
new file mode 100644
index 00000000000..f1b80c29f32
Binary files /dev/null and b/docs/docs_skeleton/static/img/llama-memory-weights.png differ
diff --git a/docs/docs_skeleton/static/img/llama_t_put.png b/docs/docs_skeleton/static/img/llama_t_put.png
new file mode 100644
index 00000000000..f448b1aafa3
Binary files /dev/null and b/docs/docs_skeleton/static/img/llama_t_put.png differ
diff --git a/docs/docs_skeleton/static/img/tagging.png b/docs/docs_skeleton/static/img/tagging.png
new file mode 100644
index 00000000000..cd4443be2b0
Binary files /dev/null and b/docs/docs_skeleton/static/img/tagging.png differ
diff --git a/docs/docs_skeleton/static/img/tagging_trace.png b/docs/docs_skeleton/static/img/tagging_trace.png
new file mode 100644
index 00000000000..3cc1231d865
Binary files /dev/null and b/docs/docs_skeleton/static/img/tagging_trace.png differ
diff --git a/docs/docs_skeleton/static/img/web_research.png b/docs/docs_skeleton/static/img/web_research.png
new file mode 100644
index 00000000000..3192f7570e5
Binary files /dev/null and b/docs/docs_skeleton/static/img/web_research.png differ
diff --git a/docs/docs_skeleton/static/img/web_scraping.png b/docs/docs_skeleton/static/img/web_scraping.png
new file mode 100644
index 00000000000..738fbdd449b
Binary files /dev/null and b/docs/docs_skeleton/static/img/web_scraping.png differ
diff --git a/docs/docs_skeleton/static/img/wsj_page.png b/docs/docs_skeleton/static/img/wsj_page.png
new file mode 100644
index 00000000000..65644746ae1
Binary files /dev/null and b/docs/docs_skeleton/static/img/wsj_page.png differ
diff --git a/docs/docs_skeleton/vercel.json b/docs/docs_skeleton/vercel.json
index 224afa7ba48..6472c045301 100644
--- a/docs/docs_skeleton/vercel.json
+++ b/docs/docs_skeleton/vercel.json
@@ -4,154 +4,78 @@
"source": "/en/latest/additional_resources/youtube.html",
"destination": "/docs/additional_resources/youtube"
},
- {
- "source": "/en/latest/integrations/agent_with_wandb_tracing.html",
- "destination": "/docs/integrations/providers/agent_with_wandb_tracing"
- },
{
"source": "/docs/integrations/agent_with_wandb_tracing",
"destination": "/docs/integrations/providers/agent_with_wandb_tracing"
},
- {
- "source": "/en/latest/integrations/ai21.html",
- "destination": "/docs/integrations/providers/ai21"
- },
{
"source": "/docs/integrations/ai21",
"destination": "/docs/integrations/providers/ai21"
},
- {
- "source": "/en/latest/integrations/aim_tracking.html",
- "destination": "/docs/integrations/providers/aim_tracking"
- },
{
"source": "/docs/integrations/aim_tracking",
"destination": "/docs/integrations/providers/aim_tracking"
},
- {
- "source": "/en/latest/integrations/airbyte.html",
- "destination": "/docs/integrations/providers/airbyte"
- },
{
"source": "/docs/integrations/airbyte",
"destination": "/docs/integrations/providers/airbyte"
},
- {
- "source": "/en/latest/integrations/aleph_alpha.html",
- "destination": "/docs/integrations/providers/aleph_alpha"
- },
{
"source": "/docs/integrations/aleph_alpha",
"destination": "/docs/integrations/providers/aleph_alpha"
},
- {
- "source": "/en/latest/integrations/analyticdb.html",
- "destination": "/docs/integrations/providers/analyticdb"
- },
{
"source": "/docs/integrations/analyticdb",
"destination": "/docs/integrations/providers/analyticdb"
},
- {
- "source": "/en/latest/integrations/annoy.html",
- "destination": "/docs/integrations/providers/annoy"
- },
{
"source": "/docs/integrations/annoy",
"destination": "/docs/integrations/providers/annoy"
},
- {
- "source": "/en/latest/integrations/anyscale.html",
- "destination": "/docs/integrations/providers/anyscale"
- },
{
"source": "/docs/integrations/anyscale",
"destination": "/docs/integrations/providers/anyscale"
},
- {
- "source": "/en/latest/integrations/apify.html",
- "destination": "/docs/integrations/providers/apify"
- },
{
"source": "/docs/integrations/apify",
"destination": "/docs/integrations/providers/apify"
},
- {
- "source": "/en/latest/integrations/argilla.html",
- "destination": "/docs/integrations/providers/argilla"
- },
{
"source": "/docs/integrations/argilla",
"destination": "/docs/integrations/providers/argilla"
},
- {
- "source": "/en/latest/integrations/arxiv.html",
- "destination": "/docs/integrations/providers/arxiv"
- },
{
"source": "/docs/integrations/arxiv",
"destination": "/docs/integrations/providers/arxiv"
},
- {
- "source": "/en/latest/integrations/atlas.html",
- "destination": "/docs/integrations/providers/atlas"
- },
{
"source": "/docs/integrations/atlas",
"destination": "/docs/integrations/providers/atlas"
},
- {
- "source": "/en/latest/integrations/awadb.html",
- "destination": "/docs/integrations/providers/awadb"
- },
{
"source": "/docs/integrations/awadb",
"destination": "/docs/integrations/providers/awadb"
},
- {
- "source": "/en/latest/integrations/aws_s3.html",
- "destination": "/docs/integrations/providers/aws_s3"
- },
{
"source": "/docs/integrations/aws_s3",
"destination": "/docs/integrations/providers/aws_s3"
},
- {
- "source": "/en/latest/integrations/azlyrics.html",
- "destination": "/docs/integrations/providers/azlyrics"
- },
{
"source": "/docs/integrations/azlyrics",
"destination": "/docs/integrations/providers/azlyrics"
},
- {
- "source": "/en/latest/integrations/azure_blob_storage.html",
- "destination": "/docs/integrations/providers/azure_blob_storage"
- },
{
"source": "/docs/integrations/azure_blob_storage",
"destination": "/docs/integrations/providers/azure_blob_storage"
},
- {
- "source": "/en/latest/integrations/azure_cognitive_search_.html",
- "destination": "/docs/integrations/providers/azure_cognitive_search_"
- },
{
"source": "/docs/integrations/azure_cognitive_search_",
"destination": "/docs/integrations/providers/azure_cognitive_search_"
},
- {
- "source": "/en/latest/integrations/azure_openai.html",
- "destination": "/docs/integrations/providers/azure_openai"
- },
{
"source": "/docs/integrations/azure_openai",
"destination": "/docs/integrations/providers/azure_openai"
},
- {
- "source": "/en/latest/integrations/bananadev.html",
- "destination": "/docs/integrations/providers/bananadev"
- },
{
"source": "/docs/integrations/bananadev",
"destination": "/docs/integrations/providers/bananadev"
@@ -164,114 +88,58 @@
"source": "/docs/integrations/baseten",
"destination": "/docs/integrations/providers/baseten"
},
- {
- "source": "/en/latest/integrations/beam.html",
- "destination": "/docs/integrations/providers/beam"
- },
{
"source": "/docs/integrations/beam",
"destination": "/docs/integrations/providers/beam"
},
- {
- "source": "/en/latest/integrations/amazon_bedrock.html",
- "destination": "/docs/integrations/providers/bedrock"
- },
{
"source": "/docs/integrations/bedrock",
"destination": "/docs/integrations/providers/bedrock"
},
- {
- "source": "/en/latest/integrations/bilibili.html",
- "destination": "/docs/integrations/providers/bilibili"
- },
{
"source": "/docs/integrations/bilibili",
"destination": "/docs/integrations/providers/bilibili"
},
- {
- "source": "/en/latest/integrations/blackboard.html",
- "destination": "/docs/integrations/providers/blackboard"
- },
{
"source": "/docs/integrations/blackboard",
"destination": "/docs/integrations/providers/blackboard"
},
- {
- "source": "/en/latest/integrations/cassandra.html",
- "destination": "/docs/integrations/providers/cassandra"
- },
{
"source": "/docs/integrations/cassandra",
"destination": "/docs/integrations/providers/cassandra"
},
- {
- "source": "/en/latest/integrations/cerebriumai.html",
- "destination": "/docs/integrations/providers/cerebriumai"
- },
{
"source": "/docs/integrations/cerebriumai",
"destination": "/docs/integrations/providers/cerebriumai"
},
- {
- "source": "/en/latest/integrations/chroma.html",
- "destination": "/docs/integrations/providers/chroma"
- },
{
"source": "/docs/integrations/chroma",
"destination": "/docs/integrations/providers/chroma"
},
- {
- "source": "/en/latest/integrations/clearml_tracking.html",
- "destination": "/docs/integrations/providers/clearml_tracking"
- },
{
"source": "/docs/integrations/clearml_tracking",
"destination": "/docs/integrations/providers/clearml_tracking"
},
- {
- "source": "/en/latest/integrations/cohere.html",
- "destination": "/docs/integrations/providers/cohere"
- },
{
"source": "/docs/integrations/cohere",
"destination": "/docs/integrations/providers/cohere"
},
- {
- "source": "/en/latest/integrations/college_confidential.html",
- "destination": "/docs/integrations/providers/college_confidential"
- },
{
"source": "/docs/integrations/college_confidential",
"destination": "/docs/integrations/providers/college_confidential"
},
- {
- "source": "/en/latest/integrations/comet_tracking.html",
- "destination": "/docs/integrations/providers/comet_tracking"
- },
{
"source": "/docs/integrations/comet_tracking",
"destination": "/docs/integrations/providers/comet_tracking"
},
- {
- "source": "/en/latest/integrations/confluence.html",
- "destination": "/docs/integrations/providers/confluence"
- },
{
"source": "/docs/integrations/confluence",
"destination": "/docs/integrations/providers/confluence"
},
- {
- "source": "/en/latest/integrations/ctransformers.html",
- "destination": "/docs/integrations/providers/ctransformers"
- },
{
"source": "/docs/integrations/ctransformers",
"destination": "/docs/integrations/providers/ctransformers"
},
- {
- "source": "/en/latest/integrations/databerry.html",
- "destination": "/docs/integrations/providers/chaindesk"
- },
{
"source": "/docs/integrations/chaindesk",
"destination": "/docs/integrations/providers/chaindesk"
@@ -285,345 +153,173 @@
"destination": "/docs/integrations/providers/chaindesk"
},
{
- "source": "/en/latest/integrations/databricks/databricks.html",
+ "source": "/docs/integrations/databricks",
"destination": "/docs/integrations/providers/databricks"
},
{
"source": "/docs/integrations/databricks",
"destination": "/docs/integrations/providers/databricks"
},
- {
- "source": "/en/latest/integrations/databricks.html",
- "destination": "/docs/integrations/providers/databricks"
- },
- {
- "source": "/docs/integrations/databricks",
- "destination": "/docs/integrations/providers/databricks"
- },
- {
- "source": "/en/latest/integrations/deepinfra.html",
- "destination": "/docs/integrations/providers/deepinfra"
- },
{
"source": "/docs/integrations/deepinfra",
"destination": "/docs/integrations/providers/deepinfra"
},
- {
- "source": "/en/latest/integrations/deeplake.html",
- "destination": "/docs/integrations/providers/deeplake"
- },
{
"source": "/docs/integrations/deeplake",
"destination": "/docs/integrations/providers/deeplake"
},
- {
- "source": "/en/latest/integrations/diffbot.html",
- "destination": "/docs/integrations/providers/diffbot"
- },
{
"source": "/docs/integrations/diffbot",
"destination": "/docs/integrations/providers/diffbot"
},
- {
- "source": "/en/latest/integrations/discord.html",
- "destination": "/docs/integrations/providers/discord"
- },
{
"source": "/docs/integrations/discord",
"destination": "/docs/integrations/providers/discord"
},
- {
- "source": "/en/latest/integrations/docugami.html",
- "destination": "/docs/integrations/providers/docugami"
- },
{
"source": "/docs/integrations/docugami",
"destination": "/docs/integrations/providers/docugami"
},
- {
- "source": "/en/latest/integrations/duckdb.html",
- "destination": "/docs/integrations/providers/duckdb"
- },
{
"source": "/docs/integrations/duckdb",
"destination": "/docs/integrations/providers/duckdb"
},
- {
- "source": "/en/latest/integrations/elasticsearch.html",
- "destination": "/docs/integrations/providers/elasticsearch"
- },
{
"source": "/docs/integrations/elasticsearch",
"destination": "/docs/integrations/providers/elasticsearch"
},
- {
- "source": "/en/latest/integrations/evernote.html",
- "destination": "/docs/integrations/providers/evernote"
- },
{
"source": "/docs/integrations/evernote",
"destination": "/docs/integrations/providers/evernote"
},
- {
- "source": "/en/latest/integrations/facebook_chat.html",
- "destination": "/docs/integrations/providers/facebook_chat"
- },
{
"source": "/docs/integrations/facebook_chat",
"destination": "/docs/integrations/providers/facebook_chat"
},
- {
- "source": "/en/latest/integrations/figma.html",
- "destination": "/docs/integrations/providers/figma"
- },
{
"source": "/docs/integrations/figma",
"destination": "/docs/integrations/providers/figma"
},
- {
- "source": "/en/latest/integrations/forefrontai.html",
- "destination": "/docs/integrations/providers/forefrontai"
- },
{
"source": "/docs/integrations/forefrontai",
"destination": "/docs/integrations/providers/forefrontai"
},
- {
- "source": "/en/latest/integrations/git.html",
- "destination": "/docs/integrations/providers/git"
- },
{
"source": "/docs/integrations/git",
"destination": "/docs/integrations/providers/git"
},
- {
- "source": "/en/latest/integrations/gitbook.html",
- "destination": "/docs/integrations/providers/gitbook"
- },
{
"source": "/docs/integrations/gitbook",
"destination": "/docs/integrations/providers/gitbook"
},
- {
- "source": "/en/latest/integrations/google_bigquery.html",
- "destination": "/docs/integrations/providers/google_bigquery"
- },
{
"source": "/docs/integrations/google_bigquery",
"destination": "/docs/integrations/providers/google_bigquery"
},
- {
- "source": "/en/latest/integrations/google_cloud_storage.html",
- "destination": "/docs/integrations/providers/google_cloud_storage"
- },
{
"source": "/docs/integrations/google_cloud_storage",
"destination": "/docs/integrations/providers/google_cloud_storage"
},
- {
- "source": "/en/latest/integrations/google_drive.html",
- "destination": "/docs/integrations/providers/google_drive"
- },
{
"source": "/docs/integrations/google_drive",
"destination": "/docs/integrations/providers/google_drive"
},
- {
- "source": "/en/latest/integrations/google_search.html",
- "destination": "/docs/integrations/providers/google_search"
- },
{
"source": "/docs/integrations/google_search",
"destination": "/docs/integrations/providers/google_search"
},
- {
- "source": "/en/latest/integrations/google_serper.html",
- "destination": "/docs/integrations/providers/google_serper"
- },
{
"source": "/docs/integrations/google_serper",
"destination": "/docs/integrations/providers/google_serper"
},
- {
- "source": "/en/latest/integrations/gooseai.html",
- "destination": "/docs/integrations/providers/gooseai"
- },
{
"source": "/docs/integrations/gooseai",
"destination": "/docs/integrations/providers/gooseai"
},
- {
- "source": "/en/latest/integrations/gpt4all.html",
- "destination": "/docs/integrations/providers/gpt4all"
- },
{
"source": "/docs/integrations/gpt4all",
"destination": "/docs/integrations/providers/gpt4all"
},
- {
- "source": "/en/latest/integrations/graphsignal.html",
- "destination": "/docs/integrations/providers/graphsignal"
- },
{
"source": "/docs/integrations/graphsignal",
"destination": "/docs/integrations/providers/graphsignal"
},
- {
- "source": "/en/latest/integrations/gutenberg.html",
- "destination": "/docs/integrations/providers/gutenberg"
- },
{
"source": "/docs/integrations/gutenberg",
"destination": "/docs/integrations/providers/gutenberg"
},
- {
- "source": "/en/latest/integrations/hacker_news.html",
- "destination": "/docs/integrations/providers/hacker_news"
- },
{
"source": "/docs/integrations/hacker_news",
"destination": "/docs/integrations/providers/hacker_news"
},
- {
- "source": "/en/latest/integrations/hazy_research.html",
- "destination": "/docs/integrations/providers/hazy_research"
- },
{
"source": "/docs/integrations/hazy_research",
"destination": "/docs/integrations/providers/hazy_research"
},
- {
- "source": "/en/latest/integrations/helicone.html",
- "destination": "/docs/integrations/providers/helicone"
- },
{
"source": "/docs/integrations/helicone",
"destination": "/docs/integrations/providers/helicone"
},
- {
- "source": "/en/latest/integrations/huggingface.html",
- "destination": "/docs/integrations/providers/huggingface"
- },
{
"source": "/docs/integrations/huggingface",
"destination": "/docs/integrations/providers/huggingface"
},
- {
- "source": "/en/latest/integrations/ifixit.html",
- "destination": "/docs/integrations/providers/ifixit"
- },
{
"source": "/docs/integrations/ifixit",
"destination": "/docs/integrations/providers/ifixit"
},
- {
- "source": "/en/latest/integrations/imsdb.html",
- "destination": "/docs/integrations/providers/imsdb"
- },
{
"source": "/docs/integrations/imsdb",
"destination": "/docs/integrations/providers/imsdb"
},
- {
- "source": "/en/latest/integrations/jina.html",
- "destination": "/docs/integrations/providers/jina"
- },
{
"source": "/docs/integrations/jina",
"destination": "/docs/integrations/providers/jina"
},
- {
- "source": "/en/latest/integrations/lancedb.html",
- "destination": "/docs/integrations/providers/lancedb"
- },
{
"source": "/docs/integrations/lancedb",
"destination": "/docs/integrations/providers/lancedb"
},
- {
- "source": "/en/latest/integrations/langchain_decorators.html",
- "destination": "/docs/integrations/providers/langchain_decorators"
- },
{
"source": "/docs/integrations/langchain_decorators",
"destination": "/docs/integrations/providers/langchain_decorators"
},
- {
- "source": "/en/latest/integrations/llamacpp.html",
- "destination": "/docs/integrations/providers/llamacpp"
- },
{
"source": "/docs/integrations/llamacpp",
"destination": "/docs/integrations/providers/llamacpp"
},
- {
- "source": "/en/latest/integrations/log10.html",
- "destination": "/docs/integrations/providers/log10"
- },
{
"source": "/docs/integrations/log10",
"destination": "/docs/integrations/providers/log10"
},
- {
- "source": "/en/latest/integrations/mediawikidump.html",
- "destination": "/docs/integrations/providers/mediawikidump"
- },
{
"source": "/docs/integrations/mediawikidump",
"destination": "/docs/integrations/providers/mediawikidump"
},
- {
- "source": "/en/latest/integrations/metal.html",
- "destination": "/docs/integrations/providers/metal"
- },
{
"source": "/docs/integrations/metal",
"destination": "/docs/integrations/providers/metal"
},
- {
- "source": "/en/latest/integrations/microsoft_onedrive.html",
- "destination": "/docs/integrations/providers/microsoft_onedrive"
- },
{
"source": "/docs/integrations/microsoft_onedrive",
"destination": "/docs/integrations/providers/microsoft_onedrive"
},
- {
- "source": "/en/latest/integrations/microsoft_powerpoint.html",
- "destination": "/docs/integrations/providers/microsoft_powerpoint"
- },
{
"source": "/docs/integrations/microsoft_powerpoint",
"destination": "/docs/integrations/providers/microsoft_powerpoint"
},
- {
- "source": "/en/latest/integrations/microsoft_word.html",
- "destination": "/docs/integrations/providers/microsoft_word"
- },
{
"source": "/docs/integrations/microsoft_word",
"destination": "/docs/integrations/providers/microsoft_word"
},
- {
- "source": "/en/latest/integrations/milvus.html",
- "destination": "/docs/integrations/providers/milvus"
- },
{
"source": "/docs/integrations/milvus",
"destination": "/docs/integrations/providers/milvus"
},
- {
- "source": "/en/latest/integrations/mlflow_tracking.html",
- "destination": "/docs/integrations/providers/mlflow_tracking"
- },
{
"source": "/docs/integrations/mlflow_tracking",
"destination": "/docs/integrations/providers/mlflow_tracking"
},
- {
- "source": "/en/latest/integrations/modal.html",
- "destination": "/docs/integrations/providers/modal"
- },
{
"source": "/docs/integrations/modal",
"destination": "/docs/integrations/providers/modal"
@@ -636,450 +332,226 @@
"source": "/docs/integrations/modelscope",
"destination": "/docs/integrations/providers/modelscope"
},
- {
- "source": "/en/latest/integrations/modern_treasury.html",
- "destination": "/docs/integrations/providers/modern_treasury"
- },
{
"source": "/docs/integrations/modern_treasury",
"destination": "/docs/integrations/providers/modern_treasury"
},
- {
- "source": "/en/latest/integrations/momento.html",
- "destination": "/docs/integrations/providers/momento"
- },
{
"source": "/docs/integrations/momento",
"destination": "/docs/integrations/providers/momento"
},
- {
- "source": "/en/latest/integrations/myscale.html",
- "destination": "/docs/integrations/providers/myscale"
- },
{
"source": "/docs/integrations/myscale",
"destination": "/docs/integrations/providers/myscale"
},
- {
- "source": "/en/latest/integrations/nlpcloud.html",
- "destination": "/docs/integrations/providers/nlpcloud"
- },
{
"source": "/docs/integrations/nlpcloud",
"destination": "/docs/integrations/providers/nlpcloud"
},
- {
- "source": "/en/latest/integrations/notion.html",
- "destination": "/docs/integrations/providers/notion"
- },
{
"source": "/docs/integrations/notion",
"destination": "/docs/integrations/providers/notion"
},
- {
- "source": "/en/latest/integrations/obsidian.html",
- "destination": "/docs/integrations/providers/obsidian"
- },
{
"source": "/docs/integrations/obsidian",
"destination": "/docs/integrations/providers/obsidian"
},
- {
- "source": "/en/latest/integrations/openai.html",
- "destination": "/docs/integrations/providers/openai"
- },
{
"source": "/docs/integrations/openai",
"destination": "/docs/integrations/providers/openai"
},
- {
- "source": "/en/latest/integrations/opensearch.html",
- "destination": "/docs/integrations/providers/opensearch"
- },
{
"source": "/docs/integrations/opensearch",
"destination": "/docs/integrations/providers/opensearch"
},
- {
- "source": "/en/latest/integrations/openweathermap.html",
- "destination": "/docs/integrations/providers/openweathermap"
- },
{
"source": "/docs/integrations/openweathermap",
"destination": "/docs/integrations/providers/openweathermap"
},
- {
- "source": "/en/latest/integrations/petals.html",
- "destination": "/docs/integrations/providers/petals"
- },
{
"source": "/docs/integrations/petals",
"destination": "/docs/integrations/providers/petals"
},
- {
- "source": "/en/latest/integrations/pgvector.html",
- "destination": "/docs/integrations/providers/pgvector"
- },
{
"source": "/docs/integrations/pgvector",
"destination": "/docs/integrations/providers/pgvector"
},
- {
- "source": "/en/latest/integrations/pinecone.html",
- "destination": "/docs/integrations/providers/pinecone"
- },
{
"source": "/docs/integrations/pinecone",
"destination": "/docs/integrations/providers/pinecone"
},
- {
- "source": "/en/latest/integrations/pipelineai.html",
- "destination": "/docs/integrations/providers/pipelineai"
- },
{
"source": "/docs/integrations/pipelineai",
"destination": "/docs/integrations/providers/pipelineai"
},
- {
- "source": "/en/latest/integrations/predictionguard.html",
- "destination": "/docs/integrations/providers/predictionguard"
- },
{
"source": "/docs/integrations/predictionguard",
"destination": "/docs/integrations/providers/predictionguard"
},
- {
- "source": "/en/latest/integrations/promptlayer.html",
- "destination": "/docs/integrations/providers/promptlayer"
- },
{
"source": "/docs/integrations/promptlayer",
"destination": "/docs/integrations/providers/promptlayer"
},
- {
- "source": "/en/latest/integrations/psychic.html",
- "destination": "/docs/integrations/providers/psychic"
- },
{
"source": "/docs/integrations/psychic",
"destination": "/docs/integrations/providers/psychic"
},
- {
- "source": "/en/latest/integrations/qdrant.html",
- "destination": "/docs/integrations/providers/qdrant"
- },
{
"source": "/docs/integrations/qdrant",
"destination": "/docs/integrations/providers/qdrant"
},
- {
- "source": "/en/latest/integrations/ray_serve.html",
- "destination": "/docs/integrations/providers/ray_serve"
- },
{
"source": "/docs/integrations/ray_serve",
"destination": "/docs/integrations/providers/ray_serve"
},
- {
- "source": "/en/latest/integrations/rebuff.html",
- "destination": "/docs/integrations/providers/rebuff"
- },
{
"source": "/docs/integrations/rebuff",
"destination": "/docs/integrations/providers/rebuff"
},
- {
- "source": "/en/latest/integrations/reddit.html",
- "destination": "/docs/integrations/providers/reddit"
- },
{
"source": "/docs/integrations/reddit",
"destination": "/docs/integrations/providers/reddit"
},
- {
- "source": "/en/latest/integrations/redis.html",
- "destination": "/docs/integrations/providers/redis"
- },
{
"source": "/docs/integrations/redis",
"destination": "/docs/integrations/providers/redis"
},
- {
- "source": "/en/latest/integrations/replicate.html",
- "destination": "/docs/integrations/providers/replicate"
- },
{
"source": "/docs/integrations/replicate",
"destination": "/docs/integrations/providers/replicate"
},
- {
- "source": "/en/latest/integrations/roam.html",
- "destination": "/docs/integrations/providers/roam"
- },
{
"source": "/docs/integrations/roam",
"destination": "/docs/integrations/providers/roam"
},
- {
- "source": "/en/latest/integrations/runhouse.html",
- "destination": "/docs/integrations/providers/runhouse"
- },
{
"source": "/docs/integrations/runhouse",
"destination": "/docs/integrations/providers/runhouse"
},
- {
- "source": "/en/latest/integrations/rwkv.html",
- "destination": "/docs/integrations/providers/rwkv"
- },
{
"source": "/docs/integrations/rwkv",
"destination": "/docs/integrations/providers/rwkv"
},
- {
- "source": "/en/latest/integrations/sagemaker_endpoint.html",
- "destination": "/docs/integrations/providers/sagemaker_endpoint"
- },
{
"source": "/docs/integrations/sagemaker_endpoint",
"destination": "/docs/integrations/providers/sagemaker_endpoint"
},
- {
- "source": "/en/latest/integrations/searx.html",
- "destination": "/docs/integrations/providers/searx"
- },
{
"source": "/docs/integrations/searx",
"destination": "/docs/integrations/providers/searx"
},
- {
- "source": "/en/latest/integrations/serpapi.html",
- "destination": "/docs/integrations/providers/serpapi"
- },
{
"source": "/docs/integrations/serpapi",
"destination": "/docs/integrations/providers/serpapi"
},
- {
- "source": "/en/latest/integrations/shaleprotocol.html",
- "destination": "/docs/integrations/providers/shaleprotocol"
- },
{
"source": "/docs/integrations/shaleprotocol",
"destination": "/docs/integrations/providers/shaleprotocol"
},
- {
- "source": "/en/latest/integrations/sklearn.html",
- "destination": "/docs/integrations/providers/sklearn"
- },
{
"source": "/docs/integrations/sklearn",
"destination": "/docs/integrations/providers/sklearn"
},
- {
- "source": "/en/latest/integrations/slack.html",
- "destination": "/docs/integrations/providers/slack"
- },
{
"source": "/docs/integrations/slack",
"destination": "/docs/integrations/providers/slack"
},
- {
- "source": "/en/latest/integrations/spacy.html",
- "destination": "/docs/integrations/providers/spacy"
- },
{
"source": "/docs/integrations/spacy",
"destination": "/docs/integrations/providers/spacy"
},
- {
- "source": "/en/latest/integrations/spreedly.html",
- "destination": "/docs/integrations/providers/spreedly"
- },
{
"source": "/docs/integrations/spreedly",
"destination": "/docs/integrations/providers/spreedly"
},
- {
- "source": "/en/latest/integrations/stochasticai.html",
- "destination": "/docs/integrations/providers/stochasticai"
- },
{
"source": "/docs/integrations/stochasticai",
"destination": "/docs/integrations/providers/stochasticai"
},
- {
- "source": "/en/latest/integrations/stripe.html",
- "destination": "/docs/integrations/providers/stripe"
- },
{
"source": "/docs/integrations/stripe",
"destination": "/docs/integrations/providers/stripe"
},
- {
- "source": "/en/latest/integrations/tair.html",
- "destination": "/docs/integrations/providers/tair"
- },
{
"source": "/docs/integrations/tair",
"destination": "/docs/integrations/providers/tair"
},
- {
- "source": "/en/latest/integrations/telegram.html",
- "destination": "/docs/integrations/providers/telegram"
- },
{
"source": "/docs/integrations/telegram",
"destination": "/docs/integrations/providers/telegram"
},
- {
- "source": "/en/latest/integrations/tomarkdown.html",
- "destination": "/docs/integrations/providers/tomarkdown"
- },
{
"source": "/docs/integrations/tomarkdown",
"destination": "/docs/integrations/providers/tomarkdown"
},
- {
- "source": "/en/latest/integrations/trello.html",
- "destination": "/docs/integrations/providers/trello"
- },
{
"source": "/docs/integrations/trello",
"destination": "/docs/integrations/providers/trello"
},
- {
- "source": "/en/latest/integrations/twitter.html",
- "destination": "/docs/integrations/providers/twitter"
- },
{
"source": "/docs/integrations/twitter",
"destination": "/docs/integrations/providers/twitter"
},
- {
- "source": "/en/latest/integrations/unstructured.html",
- "destination": "/docs/integrations/providers/unstructured"
- },
{
"source": "/docs/integrations/unstructured",
"destination": "/docs/integrations/providers/unstructured"
},
- {
- "source": "/en/latest/integrations/vectara/vectara_chat.html",
- "destination": "/docs/integrations/providers/vectara_chat"
- },
{
"source": "/docs/integrations/vectara/vectara_chat",
"destination": "/docs/integrations/providers/vectara_chat"
},
- {
- "source": "/en/latest/integrations/vectara/vectara_text_generation.html",
- "destination": "/docs/integrations/providers/vectara_text_generation"
- },
{
"source": "/docs/integrations/vectara/vectara_text_generation",
"destination": "/docs/integrations/providers/vectara_text_generation"
},
- {
- "source": "/en/latest/integrations/vespa.html",
- "destination": "/docs/integrations/providers/vespa"
- },
{
"source": "/docs/integrations/vespa",
"destination": "/docs/integrations/providers/vespa"
},
- {
- "source": "/en/latest/integrations/wandb_tracking.html",
- "destination": "/docs/integrations/providers/wandb_tracking"
- },
{
"source": "/docs/integrations/wandb_tracking",
"destination": "/docs/integrations/providers/wandb_tracking"
},
- {
- "source": "/en/latest/integrations/weather.html",
- "destination": "/docs/integrations/providers/weather"
- },
{
"source": "/docs/integrations/weather",
"destination": "/docs/integrations/providers/weather"
},
- {
- "source": "/en/latest/integrations/weaviate.html",
- "destination": "/docs/integrations/providers/weaviate"
- },
{
"source": "/docs/integrations/weaviate",
"destination": "/docs/integrations/providers/weaviate"
},
- {
- "source": "/en/latest/integrations/whatsapp.html",
- "destination": "/docs/integrations/providers/whatsapp"
- },
{
"source": "/docs/integrations/whatsapp",
"destination": "/docs/integrations/providers/whatsapp"
},
- {
- "source": "/en/latest/integrations/whylabs_profiling.html",
- "destination": "/docs/integrations/providers/whylabs_profiling"
- },
{
"source": "/docs/integrations/whylabs_profiling",
"destination": "/docs/integrations/providers/whylabs_profiling"
},
- {
- "source": "/en/latest/integrations/wikipedia.html",
- "destination": "/docs/integrations/providers/wikipedia"
- },
{
"source": "/docs/integrations/wikipedia",
"destination": "/docs/integrations/providers/wikipedia"
},
- {
- "source": "/en/latest/integrations/wolfram_alpha.html",
- "destination": "/docs/integrations/providers/wolfram_alpha"
- },
{
"source": "/docs/integrations/wolfram_alpha",
"destination": "/docs/integrations/providers/wolfram_alpha"
},
- {
- "source": "/en/latest/integrations/writer.html",
- "destination": "/docs/integrations/providers/writer"
- },
{
"source": "/docs/integrations/writer",
"destination": "/docs/integrations/providers/writer"
},
- {
- "source": "/en/latest/integrations/yeagerai.html",
- "destination": "/docs/integrations/providers/yeagerai"
- },
{
"source": "/docs/integrations/yeagerai",
"destination": "/docs/integrations/providers/yeagerai"
},
- {
- "source": "/en/latest/integrations/youtube.html",
- "destination": "/docs/integrations/providers/youtube"
- },
{
"source": "/docs/integrations/youtube",
"destination": "/docs/integrations/providers/youtube"
},
- {
- "source": "/en/latest/integrations/zep.html",
- "destination": "/docs/integrations/providers/zep"
- },
{
"source": "/docs/integrations/zep",
"destination": "/docs/integrations/providers/zep"
},
- {
- "source": "/en/latest/integrations/zilliz.html",
- "destination": "/docs/integrations/providers/zilliz"
- },
{
"source": "/docs/integrations/zilliz",
"destination": "/docs/integrations/providers/zilliz"
@@ -1620,17 +1092,29 @@
"source": "/en/latest/modules/chains/examples/flare.html",
"destination": "/docs/use_cases/question_answering/how_to/flare"
},
+ {
+ "source": "/docs/use_cases/graph/graph_cypher_qa",
+ "destination": "/docs/use_cases/more/graph/graph_cypher_qa"
+ },
{
"source": "/en/latest/modules/chains/examples/graph_cypher_qa.html",
- "destination": "/docs/use_cases/graph/graph_cypher_qa"
+ "destination": "/docs/use_cases/more/graph/graph_cypher_qa"
+ },
+ {
+ "source": "/docs/use_cases/graph/graph_nebula_qa",
+ "destination": "/docs/use_cases/more/graph/graph_nebula_qa"
},
{
"source": "/en/latest/modules/chains/examples/graph_nebula_qa.html",
- "destination": "/docs/use_cases/graph/graph_nebula_qa"
+ "destination": "/docs/use_cases/more/graph/graph_nebula_qa"
+ },
+ {
+ "source": "/docs/use_cases/graph/graph_qa",
+ "destination": "/docs/use_cases/more/graph/graph_qa"
},
{
"source": "/en/latest/modules/chains/index_examples/graph_qa.html",
- "destination": "/docs/use_cases/graph/graph_qa"
+ "destination": "/docs/use_cases/more/graph/graph_qa"
},
{
"source": "/en/latest/modules/chains/index_examples/hyde.html",
@@ -1642,11 +1126,11 @@
},
{
"source": "/en/latest/modules/chains/examples/llm_checker.html",
- "destination": "/docs/use_cases/self_check/llm_checker"
+ "destination": "/docs/use_cases/more/self_check/llm_checker"
},
{
"source": "/en/latest/modules/chains/examples/llm_math.html",
- "destination": "/docs/use_cases/code_writing/llm_math"
+ "destination": "/docs/use_cases/more/code_writing/llm_math"
},
{
"source": "/en/latest/modules/chains/examples/llm_requests.html",
@@ -1654,7 +1138,7 @@
},
{
"source": "/en/latest/modules/chains/examples/llm_summarization_checker.html",
- "destination": "/docs/use_cases/self_check/llm_summarization_checker"
+ "destination": "/docs/use_cases/more/self_check/llm_summarization_checker"
},
{
"source": "/en/latest/modules/chains/examples/openapi.html",
@@ -1662,7 +1146,7 @@
},
{
"source": "/en/latest/modules/chains/examples/pal.html",
- "destination": "/docs/use_cases/code_writing/pal"
+ "destination": "/docs/use_cases/more/code_writing/pal"
},
{
"source": "/en/latest/modules/chains/examples/tagging.html",
@@ -2778,11 +2262,19 @@
},
{
"source": "/en/latest/modules/indexes/vectorstores/examples/deeplake.html",
- "destination": "/docs/integrations/vectorstores/deeplake"
+ "destination": "/docs/integrations/vectorstores/activeloop_deeplake"
},
{
"source": "/docs/modules/data_connection/vectorstores/integrations/deeplake",
- "destination": "/docs/integrations/vectorstores/deeplake"
+ "destination": "/docs/integrations/vectorstores/activeloop_deeplake"
+ },
+ {
+ "source": "/docs/integrations/vectorstores/deeplake",
+ "destination": "/docs/integrations/vectorstores/activeloop_deeplake"
+ },
+ {
+ "source": "/docs/modules/data_connection/retrievers/self_query/deeplake_self_query",
+ "destination": "/docs/modules/data_connection/retrievers/self_query/activeloop_deeplake_self_query"
},
{
"source": "/en/latest/modules/indexes/vectorstores/examples/docarray_hnsw.html",
@@ -3858,59 +3350,127 @@
},
{
"source": "/docs/modules/chains/additional/cpal",
- "destination": "/docs/use_cases/code_writing/cpal"
+ "destination": "/docs/use_cases/more/code_writing/cpal"
+ },
+ {
+ "source": "/docs/use_cases/code_writing/cpal",
+ "destination": "/docs/use_cases/more/code_writing/cpal"
},
{
"source": "/docs/modules/chains/additional/llm_bash",
- "destination": "/docs/use_cases/code_writing/llm_bash"
+ "destination": "/docs/use_cases/more/code_writing/llm_bash"
+ },
+ {
+ "source": "/docs/use_cases/code_writing/llm_bash",
+ "destination": "/docs/use_cases/more/code_writing/llm_bash"
},
{
"source": "/docs/modules/chains/additional/llm_math",
- "destination": "/docs/use_cases/code_writing/llm_math"
+ "destination": "/docs/use_cases/more/code_writing/llm_math"
+ },
+ {
+ "source": "/docs/use_cases/code_writing/llm_math",
+ "destination": "/docs/use_cases/more/code_writing/llm_math"
},
{
"source": "/docs/modules/chains/additional/llm_symbolic_math",
- "destination": "/docs/use_cases/code_writing/llm_symbolic_math"
+ "destination": "/docs/use_cases/more/code_writing/llm_symbolic_math"
+ },
+ {
+ "source": "/docs/use_cases/code_writing/llm_symbolic_math",
+ "destination": "/docs/use_cases/more/code_writing/llm_symbolic_math"
},
{
"source": "/docs/modules/chains/additional/pal",
- "destination": "/docs/use_cases/code_writing/pal"
+ "destination": "/docs/use_cases/more/code_writing/pal"
+ },
+ {
+ "source": "/docs/use_cases/code_writing/pal",
+ "destination": "/docs/use_cases/more/code_writing/pal"
+ },
+ {
+ "source": "/docs/use_cases/code_writing/",
+ "destination": "/docs/use_cases/more/code_writing/"
+ },
+ {
+ "source": "/docs/use_cases/code_writing(/?)",
+ "destination": "/docs/use_cases/more/code_writing/"
+ },
+ {
+ "source": "/docs/use_cases/graph(/?)",
+ "destination": "/docs/use_cases/more/graph/"
+ },
+ {
+ "source": "/docs/use_cases/graph/graph_arangodb_qa",
+ "destination": "/docs/use_cases/more/graph/graph_arangodb_qa"
},
{
"source": "/docs/modules/chains/additional/graph_arangodb_qa",
- "destination": "/docs/use_cases/graph/graph_arangodb_qa"
+ "destination": "/docs/use_cases/more/graph/graph_arangodb_qa"
+ },
+ {
+ "source": "/docs/use_cases/graph/graph_cypher_qa",
+ "destination": "/docs/use_cases/more/graph/graph_cypher_qa"
},
{
"source": "/docs/modules/chains/additional/graph_cypher_qa",
- "destination": "/docs/use_cases/graph/graph_cypher_qa"
+ "destination": "/docs/use_cases/more/graph/graph_cypher_qa"
+ },
+ {
+ "source": "/docs/use_cases/graph/graph_hugegraph_qa",
+ "destination": "/docs/use_cases/more/graph/graph_hugegraph_qa"
},
{
"source": "/docs/modules/chains/additional/graph_hugegraph_qa",
- "destination": "/docs/use_cases/graph/graph_hugegraph_qa"
+ "destination": "/docs/use_cases/more/graph/graph_hugegraph_qa"
+ },
+ {
+ "source": "/docs/use_cases/graph/graph_kuzu_qa",
+ "destination": "/docs/use_cases/more/graph/graph_kuzu_qa"
},
{
"source": "/docs/modules/chains/additional/graph_kuzu_qa",
- "destination": "/docs/use_cases/graph/graph_kuzu_qa"
+ "destination": "/docs/use_cases/more/graph/graph_kuzu_qa"
+ },
+ {
+ "source": "/docs/use_cases/graph/graph_nebula_qa",
+ "destination": "/docs/use_cases/more/graph/graph_nebula_qa"
},
{
"source": "/docs/modules/chains/additional/graph_nebula_qa",
- "destination": "/docs/use_cases/graph/graph_nebula_qa"
+ "destination": "/docs/use_cases/more/graph/graph_nebula_qa"
+ },
+ {
+ "source": "/docs/use_cases/graph/graph_qa",
+ "destination": "/docs/use_cases/more/graph/graph_qa"
},
{
"source": "/docs/modules/chains/additional/graph_qa",
- "destination": "/docs/use_cases/graph/graph_qa"
+ "destination": "/docs/use_cases/more/graph/graph_qa"
+ },
+ {
+ "source": "/docs/use_cases/graph/graph_sparql_qa",
+ "destination": "/docs/use_cases/more/graph/graph_sparql_qa"
},
{
"source": "/docs/modules/chains/additional/graph_sparql_qa",
- "destination": "/docs/use_cases/graph/graph_sparql_qa"
+ "destination": "/docs/use_cases/more/graph/graph_sparql_qa"
+ },
+ {
+ "source": "/docs/use_cases/graph/neptune_cypher_qa",
+ "destination": "/docs/use_cases/more/graph/neptune_cypher_qa"
},
{
"source": "/docs/modules/chains/additional/neptune_cypher_qa",
- "destination": "/docs/use_cases/graph/neptune_cypher_qa"
+ "destination": "/docs/use_cases/more/graph/neptune_cypher_qa"
+ },
+ {
+ "source": "/docs/use_cases/graph/tot",
+ "destination": "/docs/use_cases/more/graph/tot"
},
{
"source": "/docs/modules/chains/additional/tot",
- "destination": "/docs/use_cases/graph/tot"
+ "destination": "/docs/use_cases/more/graph/tot"
},
{
"source": "/docs/use_cases/question_answering//document-context-aware-QA",
@@ -3946,11 +3506,27 @@
},
{
"source": "/docs/modules/chains/additional/llm_checker",
- "destination": "/docs/use_cases/self_check/llm_checker"
+ "destination": "/docs/use_cases/more/self_check/llm_checker"
+ },
+ {
+ "source": "/docs/use_cases/self_check/llm_checker",
+ "destination": "/docs/use_cases/more/self_check/llm_checker"
},
{
"source": "/docs/modules/chains/additional/llm_summarization_checker",
- "destination": "/docs/use_cases/self_check/llm_summarization_checker"
+ "destination": "/docs/use_cases/more/self_check/llm_summarization_checker"
+ },
+ {
+ "source": "/docs/use_cases/self_check/llm_summarization_checker",
+ "destination": "/docs/use_cases/more/self_check/llm_summarization_checker"
+ },
+ {
+ "source": "/docs/use_cases/self_check/smart_llm",
+ "destination": "/docs/use_cases/more/self_check/smart_llm"
+ },
+ {
+ "source": "/docs/use_cases/self_check(/?)",
+ "destination": "/docs/use_cases/more/self_check/"
},
{
"source": "/docs/modules/chains/additional/elasticsearch_database",
@@ -3963,6 +3539,10 @@
{
"source": "docs/integrations/providers/agent_with_wandb_tracing",
"destination": "docs/integrations/providers/wandb_tracing"
+ },
+ {
+ "source": "/en/latest/integrations/:path*",
+ "destination": "/docs/integrations/providers/:path*"
}
]
}
\ No newline at end of file
diff --git a/docs/extras/additional_resources/tutorials.mdx b/docs/extras/additional_resources/tutorials.mdx
index 3a56b1cd770..d8128aeff13 100644
--- a/docs/extras/additional_resources/tutorials.mdx
+++ b/docs/extras/additional_resources/tutorials.mdx
@@ -42,8 +42,8 @@ Below are links to video tutorials and courses on LangChain. For written guides
### [LangChain 101](https://www.youtube.com/playlist?list=PLqZXAkvF1bPNQER9mLmDbntNfSpzdDIU5) by [Greg Kamradt (Data Indy)](https://www.youtube.com/@DataIndependent)
- [What Is LangChain? - LangChain + `ChatGPT` Overview](https://youtu.be/_v_fgW2SkkQ)
- [Quickstart Guide](https://youtu.be/kYRB-vJFy38)
-- [Beginner Guide To 7 Essential Concepts](https://youtu.be/2xxziIWmaSA)
-- [Beginner Guide To 9 Use Cases](https://youtu.be/vGP4pQdCocw)
+- [Beginner's Guide To 7 Essential Concepts](https://youtu.be/2xxziIWmaSA)
+- [Beginner's Guide To 9 Use Cases](https://youtu.be/vGP4pQdCocw)
- [Agents Overview + Google Searches](https://youtu.be/Jq9Sf68ozk0)
- [`OpenAI` + `Wolfram Alpha`](https://youtu.be/UijbzCIJ99g)
- [Ask Questions On Your Custom (or Private) Files](https://youtu.be/EnT-ZTrcPrg)
@@ -73,7 +73,7 @@ Below are links to video tutorials and courses on LangChain. For written guides
- [Conversations with Memory (explanation & code walkthrough)](https://youtu.be/X550Zbz_ROE)
- [Chat with `Flan20B`](https://youtu.be/VW5LBavIfY4)
- [Using `Hugging Face Models` locally (code walkthrough)](https://youtu.be/Kn7SX2Mx_Jk)
-- [`PAL` : Program-aided Language Models with LangChain code](https://youtu.be/dy7-LvDu-3s)
+- [`PAL`: Program-aided Language Models with LangChain code](https://youtu.be/dy7-LvDu-3s)
- [Building a Summarization System with LangChain and `GPT-3` - Part 1](https://youtu.be/LNq_2s_H01Y)
- [Building a Summarization System with LangChain and `GPT-3` - Part 2](https://youtu.be/d-yeHDLgKHw)
- [Microsoft's `Visual ChatGPT` using LangChain](https://youtu.be/7YEiEyfPF5U)
@@ -85,7 +85,7 @@ Below are links to video tutorials and courses on LangChain. For written guides
- [`BabyAGI`: Discover the Power of Task-Driven Autonomous Agents!](https://youtu.be/QBcDLSE2ERA)
- [Improve your `BabyAGI` with LangChain](https://youtu.be/DRgPyOXZ-oE)
- [Master `PDF` Chat with LangChain - Your essential guide to queries on documents](https://youtu.be/ZzgUqFtxgXI)
-- [Using LangChain with `DuckDuckGO` `Wikipedia` & `PythonREPL` Tools](https://youtu.be/KerHlb8nuVc)
+- [Using LangChain with `DuckDuckGO`, `Wikipedia` & `PythonREPL` Tools](https://youtu.be/KerHlb8nuVc)
- [Building Custom Tools and Agents with LangChain (gpt-3.5-turbo)](https://youtu.be/biS8G8x8DdA)
- [LangChain Retrieval QA Over Multiple Files with `ChromaDB`](https://youtu.be/3yPBVii7Ct0)
- [LangChain Retrieval QA with Instructor Embeddings & `ChromaDB` for PDFs](https://youtu.be/cFCGUjc33aU)
@@ -107,7 +107,7 @@ Below are links to video tutorials and courses on LangChain. For written guides
- [Working with MULTIPLE `PDF` Files in LangChain: `ChatGPT` for your Data](https://youtu.be/s5LhRdh5fu4)
- [`ChatGPT` for YOUR OWN `PDF` files with LangChain](https://youtu.be/TLf90ipMzfE)
- [Talk to YOUR DATA without OpenAI APIs: LangChain](https://youtu.be/wrD-fZvT6UI)
-- [Langchain: PDF Chat App (GUI) | ChatGPT for Your PDF FILES](https://youtu.be/RIWbalZ7sTo)
+- [LangChain: PDF Chat App (GUI) | ChatGPT for Your PDF FILES](https://youtu.be/RIWbalZ7sTo)
- [LangFlow: Build Chatbots without Writing Code](https://youtu.be/KJ-ux3hre4s)
- [LangChain: Giving Memory to LLMs](https://youtu.be/dxO6pzlgJiY)
- [BEST OPEN Alternative to `OPENAI's EMBEDDINGs` for Retrieval QA: LangChain](https://youtu.be/ogEalPMUCSY)
@@ -122,4 +122,4 @@ Below are links to video tutorials and courses on LangChain. For written guides
---------------------
-⛓ icon marks a new addition [last update 2023-07-05]
\ No newline at end of file
+⛓ icon marks a new addition [last update 2023-07-05]
diff --git a/docs/extras/guides/adapters/_category_.yml b/docs/extras/guides/adapters/_category_.yml
new file mode 100644
index 00000000000..f2009d077dc
--- /dev/null
+++ b/docs/extras/guides/adapters/_category_.yml
@@ -0,0 +1 @@
+label: 'Adapters'
diff --git a/docs/extras/guides/adapters/openai.ipynb b/docs/extras/guides/adapters/openai.ipynb
new file mode 100644
index 00000000000..e00241d74f3
--- /dev/null
+++ b/docs/extras/guides/adapters/openai.ipynb
@@ -0,0 +1,323 @@
+{
+ "cells": [
+ {
+ "cell_type": "markdown",
+ "id": "700a516b",
+ "metadata": {},
+ "source": [
+ "# OpenAI Adapter\n",
+ "\n",
+ "A lot of people get started with OpenAI but want to explore other models. LangChain's integrations with many model providers make this easy to do so. While LangChain has it's own message and model APIs, we've also made it as easy as possible to explore other models by exposing an adapter to adapt LangChain models to the OpenAI api.\n",
+ "\n",
+ "At the moment this only deals with output and does not return other information (token counts, stop reasons, etc)."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 1,
+ "id": "6017f26a",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "import openai\n",
+ "from langchain.adapters import openai as lc_openai"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "b522ceda",
+ "metadata": {},
+ "source": [
+ "## ChatCompletion.create"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 29,
+ "id": "1d22eb61",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "messages = [{\"role\": \"user\", \"content\": \"hi\"}]"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "d550d3ad",
+ "metadata": {},
+ "source": [
+ "Original OpenAI call"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 14,
+ "id": "e1d27dfa",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "result = openai.ChatCompletion.create(\n",
+ " messages=messages, \n",
+ " model=\"gpt-3.5-turbo\", \n",
+ " temperature=0\n",
+ ")"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 15,
+ "id": "012d81ae",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "{'role': 'assistant', 'content': 'Hello! How can I assist you today?'}"
+ ]
+ },
+ "execution_count": 15,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "result[\"choices\"][0]['message'].to_dict_recursive()"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "db5b5500",
+ "metadata": {},
+ "source": [
+ "LangChain OpenAI wrapper call"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 16,
+ "id": "87c2d515",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "lc_result = lc_openai.ChatCompletion.create(\n",
+ " messages=messages, \n",
+ " model=\"gpt-3.5-turbo\", \n",
+ " temperature=0\n",
+ ")"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 17,
+ "id": "c67a5ac8",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "{'role': 'assistant', 'content': 'Hello! How can I assist you today?'}"
+ ]
+ },
+ "execution_count": 17,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "lc_result[\"choices\"][0]['message']"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "034ba845",
+ "metadata": {},
+ "source": [
+ "Swapping out model providers"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 18,
+ "id": "7a2c011c",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "lc_result = lc_openai.ChatCompletion.create(\n",
+ " messages=messages, \n",
+ " model=\"claude-2\", \n",
+ " temperature=0, \n",
+ " provider=\"ChatAnthropic\"\n",
+ ")"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 19,
+ "id": "f7c94827",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "{'role': 'assistant', 'content': ' Hello!'}"
+ ]
+ },
+ "execution_count": 19,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "lc_result[\"choices\"][0]['message']"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "cb3f181d",
+ "metadata": {},
+ "source": [
+ "## ChatCompletion.stream"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "f7b8cd18",
+ "metadata": {},
+ "source": [
+ "Original OpenAI call"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 24,
+ "id": "fd8cb1ea",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "{'role': 'assistant', 'content': ''}\n",
+ "{'content': 'Hello'}\n",
+ "{'content': '!'}\n",
+ "{'content': ' How'}\n",
+ "{'content': ' can'}\n",
+ "{'content': ' I'}\n",
+ "{'content': ' assist'}\n",
+ "{'content': ' you'}\n",
+ "{'content': ' today'}\n",
+ "{'content': '?'}\n",
+ "{}\n"
+ ]
+ }
+ ],
+ "source": [
+ "for c in openai.ChatCompletion.create(\n",
+ " messages = messages,\n",
+ " model=\"gpt-3.5-turbo\", \n",
+ " temperature=0,\n",
+ " stream=True\n",
+ "):\n",
+ " print(c[\"choices\"][0]['delta'].to_dict_recursive())"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "0b2a076b",
+ "metadata": {},
+ "source": [
+ "LangChain OpenAI wrapper call"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 30,
+ "id": "9521218c",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "{'role': 'assistant', 'content': ''}\n",
+ "{'content': 'Hello'}\n",
+ "{'content': '!'}\n",
+ "{'content': ' How'}\n",
+ "{'content': ' can'}\n",
+ "{'content': ' I'}\n",
+ "{'content': ' assist'}\n",
+ "{'content': ' you'}\n",
+ "{'content': ' today'}\n",
+ "{'content': '?'}\n",
+ "{}\n"
+ ]
+ }
+ ],
+ "source": [
+ "for c in lc_openai.ChatCompletion.create(\n",
+ " messages = messages,\n",
+ " model=\"gpt-3.5-turbo\", \n",
+ " temperature=0,\n",
+ " stream=True\n",
+ "):\n",
+ " print(c[\"choices\"][0]['delta'])"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "0fc39750",
+ "metadata": {},
+ "source": [
+ "Swapping out model providers"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 31,
+ "id": "68f0214e",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "{'role': 'assistant', 'content': ' Hello'}\n",
+ "{'content': '!'}\n",
+ "{}\n"
+ ]
+ }
+ ],
+ "source": [
+ "for c in lc_openai.ChatCompletion.create(\n",
+ " messages = messages,\n",
+ " model=\"claude-2\", \n",
+ " temperature=0,\n",
+ " stream=True,\n",
+ " provider=\"ChatAnthropic\",\n",
+ "):\n",
+ " print(c[\"choices\"][0]['delta'])"
+ ]
+ }
+ ],
+ "metadata": {
+ "kernelspec": {
+ "display_name": "Python 3 (ipykernel)",
+ "language": "python",
+ "name": "python3"
+ },
+ "language_info": {
+ "codemirror_mode": {
+ "name": "ipython",
+ "version": 3
+ },
+ "file_extension": ".py",
+ "mimetype": "text/x-python",
+ "name": "python",
+ "nbconvert_exporter": "python",
+ "pygments_lexer": "ipython3",
+ "version": "3.10.1"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 5
+}
diff --git a/docs/extras/guides/expression_language/cookbook.ipynb b/docs/extras/guides/expression_language/cookbook.ipynb
index 3375260b55e..d7aad42915e 100644
--- a/docs/extras/guides/expression_language/cookbook.ipynb
+++ b/docs/extras/guides/expression_language/cookbook.ipynb
@@ -1638,196 +1638,6 @@
"source": [
"moderated_chain.invoke({\"input\": \"you are stupid\"})"
]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "id": "a0a85ba4-f782-47b8-b16f-8b7a61d6dab7",
- "metadata": {},
- "outputs": [],
- "source": [
- "## Conversational Retrieval With Memory"
- ]
- },
- {
- "cell_type": "markdown",
- "id": "92c87dd8-bb6f-4f32-a30d-8f5459ce6265",
- "metadata": {},
- "source": [
- "## Fallbacks\n",
- "\n",
- "With LCEL you can easily introduce fallbacks for any Runnable component, like an LLM."
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 2,
- "id": "1b1cb744-31fc-4261-ab25-65fe1fcad559",
- "metadata": {},
- "outputs": [
- {
- "data": {
- "text/plain": [
- "AIMessage(content='To get to the other side.', additional_kwargs={}, example=False)"
- ]
- },
- "execution_count": 2,
- "metadata": {},
- "output_type": "execute_result"
- }
- ],
- "source": [
- "from langchain.chat_models import ChatOpenAI\n",
- "\n",
- "bad_llm = ChatOpenAI(model_name=\"gpt-fake\")\n",
- "good_llm = ChatOpenAI(model_name=\"gpt-3.5-turbo\")\n",
- "llm = bad_llm.with_fallbacks([good_llm])\n",
- "\n",
- "llm.invoke(\"Why did the the chicken cross the road?\")"
- ]
- },
- {
- "cell_type": "markdown",
- "id": "b8cf3982-03f6-49b3-8ff5-7cd12444f19c",
- "metadata": {},
- "source": [
- "Looking at the trace, we can see that the first model failed but the second succeeded, so we still got an output: https://smith.langchain.com/public/dfaf0bf6-d86d-43e9-b084-dd16a56df15c/r\n",
- "\n",
- "We can add an arbitrary sequence of fallbacks, which will be executed in order:"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 3,
- "id": "31819be0-7f40-4e67-b5ab-61340027b948",
- "metadata": {},
- "outputs": [
- {
- "data": {
- "text/plain": [
- "AIMessage(content='To get to the other side.', additional_kwargs={}, example=False)"
- ]
- },
- "execution_count": 3,
- "metadata": {},
- "output_type": "execute_result"
- }
- ],
- "source": [
- "llm = bad_llm.with_fallbacks([bad_llm, bad_llm, good_llm])\n",
- "\n",
- "llm.invoke(\"Why did the the chicken cross the road?\")"
- ]
- },
- {
- "cell_type": "markdown",
- "id": "acad6e88-8046-450e-b005-db7e50f33b80",
- "metadata": {},
- "source": [
- "Trace: https://smith.langchain.com/public/c09efd01-3184-4369-a225-c9da8efcaf47/r\n",
- "\n",
- "We can continue to use our Runnable with fallbacks the same way we use any Runnable, mean we can include it in sequences:"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 4,
- "id": "bab114a1-bb93-4b7e-a639-e7e00f21aebc",
- "metadata": {},
- "outputs": [
- {
- "data": {
- "text/plain": [
- "AIMessage(content='To show off its incredible jumping skills! Kangaroos are truly amazing creatures.', additional_kwargs={}, example=False)"
- ]
- },
- "execution_count": 4,
- "metadata": {},
- "output_type": "execute_result"
- }
- ],
- "source": [
- "from langchain.prompts import ChatPromptTemplate\n",
- "\n",
- "prompt = ChatPromptTemplate.from_messages(\n",
- " [\n",
- " (\"system\", \"You're a nice assistant who always includes a compliment in your response\"),\n",
- " (\"human\", \"Why did the {animal} cross the road\"),\n",
- " ]\n",
- ")\n",
- "chain = prompt | llm\n",
- "chain.invoke({\"animal\": \"kangaroo\"})"
- ]
- },
- {
- "cell_type": "markdown",
- "id": "58340afa-8187-4ffe-9bd2-7912fb733a15",
- "metadata": {},
- "source": [
- "Trace: https://smith.langchain.com/public/ba03895f-f8bd-4c70-81b7-8b930353eabd/r\n",
- "\n",
- "Note, since every sequence of Runnables is itself a Runnable, we can create fallbacks for whole Sequences. We can also continue using the full interface, including asynchronous calls, batched calls, and streams:"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": 5,
- "id": "45aa3170-b2e6-430d-887b-bd879048060a",
- "metadata": {},
- "outputs": [
- {
- "data": {
- "text/plain": [
- "[\"\\n\\nAnswer: The rabbit crossed the road to get to the other side. That's quite clever of him!\",\n",
- " '\\n\\nAnswer: The turtle crossed the road to get to the other side. You must be pretty clever to come up with that riddle!']"
- ]
- },
- "execution_count": 5,
- "metadata": {},
- "output_type": "execute_result"
- }
- ],
- "source": [
- "from langchain.llms import OpenAI\n",
- "from langchain.prompts import PromptTemplate\n",
- "\n",
- "chat_prompt = ChatPromptTemplate.from_messages(\n",
- " [\n",
- " (\"system\", \"You're a nice assistant who always includes a compliment in your response\"),\n",
- " (\"human\", \"Why did the {animal} cross the road\"),\n",
- " ]\n",
- ")\n",
- "chat_model = ChatOpenAI(model_name=\"gpt-fake\")\n",
- "\n",
- "prompt_template = \"\"\"Instructions: You should always include a compliment in your response.\n",
- "\n",
- "Question: Why did the {animal} cross the road?\"\"\"\n",
- "prompt = PromptTemplate.from_template(prompt_template)\n",
- "llm = OpenAI()\n",
- "\n",
- "bad_chain = chat_prompt | chat_model\n",
- "good_chain = prompt | llm\n",
- "chain = bad_chain.with_fallbacks([good_chain])\n",
- "await chain.abatch([{\"animal\": \"rabbit\"}, {\"animal\": \"turtle\"}])"
- ]
- },
- {
- "cell_type": "markdown",
- "id": "af6731c6-0c73-4b1d-a433-6e8f6ecce2bb",
- "metadata": {},
- "source": [
- "Traces: \n",
- "1. https://smith.langchain.com/public/ccd73236-9ae5-48a6-94b5-41210be18a46/r\n",
- "2. https://smith.langchain.com/public/f43f608e-075c-45c7-bf73-b64e4d3f3082/r"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "id": "3d2fe1fe-506b-4ee5-8056-8b9df801765f",
- "metadata": {},
- "outputs": [],
- "source": []
}
],
"metadata": {
@@ -1846,7 +1656,7 @@
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
- "version": "3.9.1"
+ "version": "3.10.1"
}
},
"nbformat": 4,
diff --git a/docs/extras/guides/expression_language/interface.ipynb b/docs/extras/guides/expression_language/interface.ipynb
index d263805bd9f..98a1a38600d 100644
--- a/docs/extras/guides/expression_language/interface.ipynb
+++ b/docs/extras/guides/expression_language/interface.ipynb
@@ -41,7 +41,7 @@
},
{
"cell_type": "code",
- "execution_count": 20,
+ "execution_count": 1,
"id": "466b65b3",
"metadata": {},
"outputs": [],
@@ -256,6 +256,131 @@
"source": [
"await chain.abatch([{\"topic\": \"bears\"}])"
]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "0a1c409d",
+ "metadata": {},
+ "source": [
+ "## Parallelism\n",
+ "\n",
+ "Let's take a look at how LangChain Expression Language support parralel requests as much as possible. For example, when using a RunnableMapping (often written as a dictionary) it executes each element in parralel."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 7,
+ "id": "e3014c7a",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "from langchain.schema.runnable import RunnableMap\n",
+ "chain1 = ChatPromptTemplate.from_template(\"tell me a joke about {topic}\") | model\n",
+ "chain2 = ChatPromptTemplate.from_template(\"write a short (2 line) poem about {topic}\") | model\n",
+ "combined = RunnableMap({\n",
+ " \"joke\": chain1,\n",
+ " \"poem\": chain2,\n",
+ "})"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 11,
+ "id": "08044c0a",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "CPU times: user 31.7 ms, sys: 8.59 ms, total: 40.3 ms\n",
+ "Wall time: 1.05 s\n"
+ ]
+ },
+ {
+ "data": {
+ "text/plain": [
+ "AIMessage(content=\"Why don't bears like fast food?\\n\\nBecause they can't catch it!\", additional_kwargs={}, example=False)"
+ ]
+ },
+ "execution_count": 11,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "%%time\n",
+ "chain1.invoke({\"topic\": \"bears\"})"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 12,
+ "id": "22c56804",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "CPU times: user 42.9 ms, sys: 10.2 ms, total: 53 ms\n",
+ "Wall time: 1.93 s\n"
+ ]
+ },
+ {
+ "data": {
+ "text/plain": [
+ "AIMessage(content=\"In forest's embrace, bears roam free,\\nSilent strength, nature's majesty.\", additional_kwargs={}, example=False)"
+ ]
+ },
+ "execution_count": 12,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "%%time\n",
+ "chain2.invoke({\"topic\": \"bears\"})"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 13,
+ "id": "4fff4cbb",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "CPU times: user 96.3 ms, sys: 20.4 ms, total: 117 ms\n",
+ "Wall time: 1.1 s\n"
+ ]
+ },
+ {
+ "data": {
+ "text/plain": [
+ "{'joke': AIMessage(content=\"Why don't bears wear socks?\\n\\nBecause they have bear feet!\", additional_kwargs={}, example=False),\n",
+ " 'poem': AIMessage(content=\"In forest's embrace,\\nMajestic bears leave their trace.\", additional_kwargs={}, example=False)}"
+ ]
+ },
+ "execution_count": 13,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "%%time\n",
+ "combined.invoke({\"topic\": \"bears\"})"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "id": "fab75d1d",
+ "metadata": {},
+ "outputs": [],
+ "source": []
}
],
"metadata": {
@@ -274,7 +399,7 @@
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
- "version": "3.9.1"
+ "version": "3.10.1"
}
},
"nbformat": 4,
diff --git a/docs/extras/guides/fallbacks.ipynb b/docs/extras/guides/fallbacks.ipynb
new file mode 100644
index 00000000000..2dd7c6f5949
--- /dev/null
+++ b/docs/extras/guides/fallbacks.ipynb
@@ -0,0 +1,430 @@
+{
+ "cells": [
+ {
+ "cell_type": "markdown",
+ "id": "19c9cbd6",
+ "metadata": {},
+ "source": [
+ "# Fallbacks\n",
+ "\n",
+ "When working with language models, you may often encounter issues from the underlying APIs, whether these be rate limiting or downtime. Therefore, as you go to move your LLM applications into production it becomes more and more important to safe guard against these. That's why we've introduced the concept of fallbacks.\n",
+ "\n",
+ "Crucially, fallbacks can be applied not only on the LLM level but on the whole runnable level. This is important because often times different models require different prompts. So if your call to OpenAI fails, you don't just want to send the same prompt to Anthropic - you probably want want to use a different prompt template and send a different version there."
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "a6bb9ba9",
+ "metadata": {},
+ "source": [
+ "## Handling LLM API Errors\n",
+ "\n",
+ "This is maybe the most common use case for fallbacks. A request to an LLM API can fail for a variety of reasons - the API could be down, you could have hit rate limits, any number of things. Therefor, using fallbacks can help protect against these types of things.\n",
+ "\n",
+ "IMPORTANT: By default, a lot of the LLM wrappers catch errors and retry. You will most likely want to turn those off when working with fallbacks. Otherwise the first wrapper will keep on retying and not failing."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 18,
+ "id": "d3e893bf",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "from langchain.chat_models import ChatOpenAI, ChatAnthropic"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "4847c82d",
+ "metadata": {},
+ "source": [
+ "First, let's mock out what happens if we hit a RateLimitError from OpenAI"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 21,
+ "id": "dfdd8bf5",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "from unittest.mock import patch\n",
+ "from openai.error import RateLimitError"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 24,
+ "id": "e6fdffc1",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "# Note that we set max_retries = 0 to avoid retrying on RateLimits, etc\n",
+ "openai_llm = ChatOpenAI(max_retries=0)\n",
+ "anthropic_llm = ChatAnthropic()\n",
+ "llm = openai_llm.with_fallbacks([anthropic_llm])"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 27,
+ "id": "584461ab",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "Hit error\n"
+ ]
+ }
+ ],
+ "source": [
+ "# Let's use just the OpenAI LLm first, to show that we run into an error\n",
+ "with patch('openai.ChatCompletion.create', side_effect=RateLimitError()):\n",
+ " try:\n",
+ " print(openai_llm.invoke(\"Why did the chicken cross the road?\"))\n",
+ " except:\n",
+ " print(\"Hit error\")"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 28,
+ "id": "4fc1e673",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "content=' I don\\'t actually know why the chicken crossed the road, but here are some possible humorous answers:\\n\\n- To get to the other side!\\n\\n- It was too chicken to just stand there. \\n\\n- It wanted a change of scenery.\\n\\n- It wanted to show the possum it could be done.\\n\\n- It was on its way to a poultry farmers\\' convention.\\n\\nThe joke plays on the double meaning of \"the other side\" - literally crossing the road to the other side, or the \"other side\" meaning the afterlife. So it\\'s an anti-joke, with a silly or unexpected pun as the answer.' additional_kwargs={} example=False\n"
+ ]
+ }
+ ],
+ "source": [
+ "# Now let's try with fallbacks to Anthropic\n",
+ "with patch('openai.ChatCompletion.create', side_effect=RateLimitError()):\n",
+ " try:\n",
+ " print(llm.invoke(\"Why did the the chicken cross the road?\"))\n",
+ " except:\n",
+ " print(\"Hit error\")"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "f00bea25",
+ "metadata": {},
+ "source": [
+ "We can use our \"LLM with Fallbacks\" as we would a normal LLM."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 29,
+ "id": "4f8eaaa0",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "content=\" I don't actually know why the kangaroo crossed the road, but I can take a guess! Here are some possible reasons:\\n\\n- To get to the other side (the classic joke answer!)\\n\\n- It was trying to find some food or water \\n\\n- It was trying to find a mate during mating season\\n\\n- It was fleeing from a predator or perceived threat\\n\\n- It was disoriented and crossed accidentally \\n\\n- It was following a herd of other kangaroos who were crossing\\n\\n- It wanted a change of scenery or environment \\n\\n- It was trying to reach a new habitat or territory\\n\\nThe real reason is unknown without more context, but hopefully one of those potential explanations does the joke justice! Let me know if you have any other animal jokes I can try to decipher.\" additional_kwargs={} example=False\n"
+ ]
+ }
+ ],
+ "source": [
+ "from langchain.prompts import ChatPromptTemplate\n",
+ "\n",
+ "prompt = ChatPromptTemplate.from_messages(\n",
+ " [\n",
+ " (\"system\", \"You're a nice assistant who always includes a compliment in your response\"),\n",
+ " (\"human\", \"Why did the {animal} cross the road\"),\n",
+ " ]\n",
+ ")\n",
+ "chain = prompt | llm\n",
+ "with patch('openai.ChatCompletion.create', side_effect=RateLimitError()):\n",
+ " try:\n",
+ " print(chain.invoke({\"animal\": \"kangaroo\"}))\n",
+ " except:\n",
+ " print(\"Hit error\")"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "8d62241b",
+ "metadata": {},
+ "source": [
+ "## Fallbacks for Sequences\n",
+ "\n",
+ "We can also create fallbacks for sequences, that are sequences themselves. Here we do that with two different models: ChatOpenAI and then normal OpenAI (which does not use a chat model). Because OpenAI is NOT a chat model, you likely want a different prompt."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 30,
+ "id": "6d0b8056",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "# First let's create a chain with a ChatModel\n",
+ "# We add in a string output parser here so the outputs between the two are the same type\n",
+ "from langchain.schema.output_parser import StrOutputParser\n",
+ "\n",
+ "chat_prompt = ChatPromptTemplate.from_messages(\n",
+ " [\n",
+ " (\"system\", \"You're a nice assistant who always includes a compliment in your response\"),\n",
+ " (\"human\", \"Why did the {animal} cross the road\"),\n",
+ " ]\n",
+ ")\n",
+ "# Here we're going to use a bad model name to easily create a chain that will error\n",
+ "chat_model = ChatOpenAI(model_name=\"gpt-fake\")\n",
+ "bad_chain = chat_prompt | chat_model | StrOutputParser()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 31,
+ "id": "8d1fc2a5",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "# Now lets create a chain with the normal OpenAI model\n",
+ "from langchain.llms import OpenAI\n",
+ "from langchain.prompts import PromptTemplate\n",
+ "\n",
+ "prompt_template = \"\"\"Instructions: You should always include a compliment in your response.\n",
+ "\n",
+ "Question: Why did the {animal} cross the road?\"\"\"\n",
+ "prompt = PromptTemplate.from_template(prompt_template)\n",
+ "llm = OpenAI()\n",
+ "good_chain = prompt | llm"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 32,
+ "id": "283bfa44",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "'\\n\\nAnswer: The turtle crossed the road to get to the other side, and I have to say he had some impressive determination.'"
+ ]
+ },
+ "execution_count": 32,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "# We can now create a final chain which combines the two\n",
+ "chain = bad_chain.with_fallbacks([good_chain])\n",
+ "chain.invoke({\"animal\": \"turtle\"})"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "ec4685b4",
+ "metadata": {},
+ "source": [
+ "## Handling Long Inputs\n",
+ "\n",
+ "One of the big limiting factors of LLMs in their context window. Usually you can count and track the length of prompts before sending them to an LLM, but in situations where that is hard/complicated you can fallback to a model with longer context length."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 34,
+ "id": "564b84c9",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "short_llm = ChatOpenAI()\n",
+ "long_llm = ChatOpenAI(model=\"gpt-3.5-turbo-16k\")\n",
+ "llm = short_llm.with_fallbacks([long_llm])"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 38,
+ "id": "5e27a775",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "inputs = \"What is the next number: \" + \", \".join([\"one\", \"two\"] * 3000)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 40,
+ "id": "0a502731",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "This model's maximum context length is 4097 tokens. However, your messages resulted in 12012 tokens. Please reduce the length of the messages.\n"
+ ]
+ }
+ ],
+ "source": [
+ "try:\n",
+ " print(short_llm.invoke(inputs))\n",
+ "except Exception as e:\n",
+ " print(e)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 41,
+ "id": "d91ba5d7",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "content='The next number in the sequence is two.' additional_kwargs={} example=False\n"
+ ]
+ }
+ ],
+ "source": [
+ "try:\n",
+ " print(llm.invoke(inputs))\n",
+ "except Exception as e:\n",
+ " print(e)"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "2a6735df",
+ "metadata": {},
+ "source": [
+ "## Fallback to Better Model\n",
+ "\n",
+ "Often times we ask models to output format in a specific format (like JSON). Models like GPT-3.5 can do this okay, but sometimes struggle. This naturally points to fallbacks - we can try with GPT-3.5 (faster, cheaper), but then if parsing fails we can use GPT-4."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 42,
+ "id": "867a3793",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "from langchain.output_parsers import DatetimeOutputParser"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 67,
+ "id": "b8d9959d",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "prompt = ChatPromptTemplate.from_template(\n",
+ " \"what time was {event} (in %Y-%m-%dT%H:%M:%S.%fZ format - only return this value)\"\n",
+ ")"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 75,
+ "id": "98087a76",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "# In this case we are going to do the fallbacks on the LLM + output parser level\n",
+ "# Because the error will get raised in the OutputParser\n",
+ "openai_35 = ChatOpenAI() | DatetimeOutputParser()\n",
+ "openai_4 = ChatOpenAI(model=\"gpt-4\")| DatetimeOutputParser()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 77,
+ "id": "17ec9e8f",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "only_35 = prompt | openai_35 \n",
+ "fallback_4 = prompt | openai_35.with_fallbacks([openai_4])"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 80,
+ "id": "7e536f0b",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "Error: Could not parse datetime string: The Super Bowl in 1994 took place on January 30th at 3:30 PM local time. Converting this to the specified format (%Y-%m-%dT%H:%M:%S.%fZ) results in: 1994-01-30T15:30:00.000Z\n"
+ ]
+ }
+ ],
+ "source": [
+ "try:\n",
+ " print(only_35.invoke({\"event\": \"the superbowl in 1994\"}))\n",
+ "except Exception as e:\n",
+ " print(f\"Error: {e}\")"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 81,
+ "id": "01355c5e",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "1994-01-30 15:30:00\n"
+ ]
+ }
+ ],
+ "source": [
+ "try:\n",
+ " print(fallback_4.invoke({\"event\": \"the superbowl in 1994\"}))\n",
+ "except Exception as e:\n",
+ " print(f\"Error: {e}\")"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "id": "c537f9d0",
+ "metadata": {},
+ "outputs": [],
+ "source": []
+ }
+ ],
+ "metadata": {
+ "kernelspec": {
+ "display_name": "Python 3 (ipykernel)",
+ "language": "python",
+ "name": "python3"
+ },
+ "language_info": {
+ "codemirror_mode": {
+ "name": "ipython",
+ "version": 3
+ },
+ "file_extension": ".py",
+ "mimetype": "text/x-python",
+ "name": "python",
+ "nbconvert_exporter": "python",
+ "pygments_lexer": "ipython3",
+ "version": "3.9.1"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 5
+}
diff --git a/docs/extras/guides/local_llms.ipynb b/docs/extras/guides/local_llms.ipynb
new file mode 100644
index 00000000000..5f399df3567
--- /dev/null
+++ b/docs/extras/guides/local_llms.ipynb
@@ -0,0 +1,807 @@
+{
+ "cells": [
+ {
+ "cell_type": "markdown",
+ "id": "b8982428",
+ "metadata": {},
+ "source": [
+ "# Private, local, open source LLMs\n",
+ "\n",
+ "## Use case\n",
+ "\n",
+ "The popularity of projects like [PrivateGPT](https://github.com/imartinez/privateGPT), [llama.cpp](https://github.com/ggerganov/llama.cpp), and [GPT4All](https://github.com/nomic-ai/gpt4all) underscore the demand to run LLMs locally (on your own device).\n",
+ "\n",
+ "This has at least two important benefits:\n",
+ "\n",
+ "1. `Privacy`: Your data is not sent to a third party, and it is not subject to the terms of service of a commercial service\n",
+ "2. `Cost`: There is no inference fee, which is important for token-intensive applications (e.g., [long-running simulations](https://twitter.com/RLanceMartin/status/1691097659262820352?s=20), summarization)\n",
+ "\n",
+ "## Overview\n",
+ "\n",
+ "Running an LLM locally requires a few things:\n",
+ "\n",
+ "1. `Open source LLM`: An open source LLM that can be freely modified and shared \n",
+ "2. `Inference`: Ability to run this LLM on your device w/ acceptable latency\n",
+ "\n",
+ "### Open Source LLMs\n",
+ "\n",
+ "Users can now gain access to a rapidly growing set of [open source LLMs](https://cameronrwolfe.substack.com/p/the-history-of-open-source-llms-better). \n",
+ "\n",
+ "These LLMs can be assessed across at least two dimentions (see figure):\n",
+ " \n",
+ "1. `Base model`: What is the base-model and how was it trained?\n",
+ "2. `Fine-tuning approach`: Was the base-model fine-tuned and, if so, what [set of instructions](https://cameronrwolfe.substack.com/p/beyond-llama-the-power-of-open-llms#%C2%A7alpaca-an-instruction-following-llama-model) was used?\n",
+ "\n",
+ "\n",
+ "\n",
+ "The relative performance of these models can be assessed using several leaderboards, including:\n",
+ "\n",
+ "1. [LmSys](https://chat.lmsys.org/?arena)\n",
+ "2. [GPT4All](https://gpt4all.io/index.html)\n",
+ "3. [HuggingFace](https://huggingface.co/spaces/lmsys/chatbot-arena-leaderboard)\n",
+ "\n",
+ "### Inference\n",
+ "\n",
+ "A few frameworks for this have emerged to support inference of open source LLMs on various devices:\n",
+ "\n",
+ "1. [`llama.cpp`](https://github.com/ggerganov/llama.cpp): C++ implementation of llama inference code with [weight optimization / quantization](https://finbarr.ca/how-is-llama-cpp-possible/)\n",
+ "2. [`gpt4all`](https://docs.gpt4all.io/index.html): Optimized C backend for inference\n",
+ "3. [`Ollama`](https://ollama.ai/): Bundles model weights and environment into an app that runs on device and serves the LLM \n",
+ "\n",
+ "In general, these frameworks will do a few things:\n",
+ "\n",
+ "1. `Quantization`: Reduce the memory footprint of the raw model weights\n",
+ "2. `Efficient implementation for inference`: Support inference on consumer hardware (e.g., CPU or laptop GPU)\n",
+ "\n",
+ "In particular, see [this excellent post](https://finbarr.ca/how-is-llama-cpp-possible/) on the importance of quantization.\n",
+ "\n",
+ "\n",
+ "\n",
+ "With less precision, we radically decrease the memory needed to store the LLM in memory.\n",
+ "\n",
+ "In addition, we can see the importance of GPU memory bandwidth [sheet](https://docs.google.com/spreadsheets/d/1OehfHHNSn66BP2h3Bxp2NJTVX97icU0GmCXF6pK23H8/edit#gid=0)!\n",
+ "\n",
+ "A Mac M2 Max is 5-6x faster than a M1 for inference due to the larger GPU memory bandwidth.\n",
+ "\n",
+ "\n",
+ "\n",
+ "## Quickstart\n",
+ "\n",
+ "[`Ollama`](https://ollama.ai/) is one way to easily run inference on macOS.\n",
+ " \n",
+ "The instructions [here](docs/integrations/llms/ollama) provide details, which we summarize:\n",
+ " \n",
+ "* [Download and run](https://ollama.ai/download) the app\n",
+ "* From command line, fetch a model from this [list of options](https://github.com/jmorganca/ollama): e.g., `ollama pull llama2`\n",
+ "* When the app is running, all models are automatically served on `localhost:11434`\n"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 2,
+ "id": "86178adb",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "' The first man on the moon was Neil Armstrong, who landed on the moon on July 20, 1969 as part of the Apollo 11 mission. obviously.'"
+ ]
+ },
+ "execution_count": 2,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "from langchain.llms import Ollama\n",
+ "llm = Ollama(model=\"llama2\")\n",
+ "llm(\"The first man on the moon was ...\")"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "343ab645",
+ "metadata": {},
+ "source": [
+ "Stream tokens as they are being generated."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 40,
+ "id": "9cd83603",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ " The first man to walk on the moon was Neil Armstrong, an American astronaut who was part of the Apollo 11 mission in 1969. февруари 20, 1969, Armstrong stepped out of the lunar module Eagle and onto the moon's surface, famously declaring \"That's one small step for man, one giant leap for mankind\" as he took his first steps. He was followed by fellow astronaut Edwin \"Buzz\" Aldrin, who also walked on the moon during the mission."
+ ]
+ },
+ {
+ "data": {
+ "text/plain": [
+ "' The first man to walk on the moon was Neil Armstrong, an American astronaut who was part of the Apollo 11 mission in 1969. февруари 20, 1969, Armstrong stepped out of the lunar module Eagle and onto the moon\\'s surface, famously declaring \"That\\'s one small step for man, one giant leap for mankind\" as he took his first steps. He was followed by fellow astronaut Edwin \"Buzz\" Aldrin, who also walked on the moon during the mission.'"
+ ]
+ },
+ "execution_count": 40,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "from langchain.callbacks.manager import CallbackManager\n",
+ "from langchain.callbacks.streaming_stdout import StreamingStdOutCallbackHandler \n",
+ "llm = Ollama(model=\"llama2\", \n",
+ " callback_manager = CallbackManager([StreamingStdOutCallbackHandler()]))\n",
+ "llm(\"The first man on the moon was ...\")"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "5cb27414",
+ "metadata": {},
+ "source": [
+ "## Environment\n",
+ "\n",
+ "Inference speed is a chllenge when running models locally (see above).\n",
+ "\n",
+ "To minimize latency, it is desiable to run models locally on GPU, which ships with many consumer laptops [e.g., Apple devices](https://www.apple.com/newsroom/2022/06/apple-unveils-m2-with-breakthrough-performance-and-capabilities/).\n",
+ "\n",
+ "And even with GPU, the available GPU memory bandwidth (as noted above) is important.\n",
+ "\n",
+ "### Running Apple silicon GPU\n",
+ "\n",
+ "`Ollama` will automatically utilize the GPU on Apple devices.\n",
+ " \n",
+ "Other frameworks require the user to set up the environment to utilize the Apple GPU.\n",
+ "\n",
+ "For example, `llama.cpp` python bindings can be configured to use the GPU via [Metal](https://developer.apple.com/metal/).\n",
+ "\n",
+ "Metal is a graphics and compute API created by Apple providing near-direct access to the GPU. \n",
+ "\n",
+ "See the [`llama.cpp`](docs/integrations/llms/llamacpp) setup [here](https://github.com/abetlen/llama-cpp-python/blob/main/docs/install/macos.md) to enable this.\n",
+ "\n",
+ "In particular, ensure that conda is using the correct virtual enviorment that you created (`miniforge3`).\n",
+ "\n",
+ "E.g., for me:\n",
+ "\n",
+ "```\n",
+ "conda activate /Users/rlm/miniforge3/envs/llama\n",
+ "```\n",
+ "\n",
+ "With the above confirmed, then:\n",
+ "\n",
+ "```\n",
+ "CMAKE_ARGS=\"-DLLAMA_METAL=on\" FORCE_CMAKE=1 pip install -U llama-cpp-python --no-cache-dir\n",
+ "```"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "c382e79a",
+ "metadata": {},
+ "source": [
+ "## LLMs\n",
+ "\n",
+ "There are various ways to gain access to quantized model weights.\n",
+ "\n",
+ "1. [`HuggingFace`](https://huggingface.co/TheBloke) - Many quantized model are available for download and can be run with framework such as [`llama.cpp`](https://github.com/ggerganov/llama.cpp)\n",
+ "2. [`gpt4all`](https://gpt4all.io/index.html) - The model explorer offers a leaderboard of metrics and associated quantized models available for download \n",
+ "3. [`Ollama`](https://github.com/jmorganca/ollama) - Several models can be accessed directly via `pull`\n",
+ "\n",
+ "### Ollama\n",
+ "\n",
+ "With [Ollama](docs/integrations/llms/ollama), fetch a model via `ollama pull :`:\n",
+ "\n",
+ "* E.g., for Llama-7b: `ollama pull llama2` will download the most basic version of the model (e.g., smallest # parameters and 4 bit quantization)\n",
+ "* We can also specify a particular version from the [model list](https://github.com/jmorganca/ollama), e.g., `ollama pull llama2:13b`\n",
+ "* See the full set of parameters on the [API reference page](https://api.python.langchain.com/en/latest/llms/langchain.llms.ollama.Ollama.html)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 42,
+ "id": "8ecd2f78",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "' Sure! Here\\'s the answer, broken down step by step:\\n\\nThe first man on the moon was... Neil Armstrong.\\n\\nHere\\'s how I arrived at that answer:\\n\\n1. The first manned mission to land on the moon was Apollo 11.\\n2. The mission included three astronauts: Neil Armstrong, Edwin \"Buzz\" Aldrin, and Michael Collins.\\n3. Neil Armstrong was the mission commander and the first person to set foot on the moon.\\n4. On July 20, 1969, Armstrong stepped out of the lunar module Eagle and onto the moon\\'s surface, famously declaring \"That\\'s one small step for man, one giant leap for mankind.\"\\n\\nSo, the first man on the moon was Neil Armstrong!'"
+ ]
+ },
+ "execution_count": 42,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "from langchain.llms import Ollama\n",
+ "llm = Ollama(model=\"llama2:13b\")\n",
+ "llm(\"The first man on the moon was ... think step by step\")"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "07c8c0d1",
+ "metadata": {},
+ "source": [
+ "### Llama.cpp\n",
+ "\n",
+ "Llama.cpp is compatible with a [broad set of models](https://github.com/ggerganov/llama.cpp).\n",
+ "\n",
+ "For example, below we run inference on `llama2-13b` with 4 bit quantization downloaded from [HuggingFace](https://huggingface.co/TheBloke/Llama-2-13B-GGML/tree/main).\n",
+ "\n",
+ "As noted above, see the [API reference](https://api.python.langchain.com/en/latest/llms/langchain.llms.llamacpp.LlamaCpp.html?highlight=llamacpp#langchain.llms.llamacpp.LlamaCpp) for the full set of parameters. \n",
+ "\n",
+ "From the [llama.cpp docs](https://python.langchain.com/docs/integrations/llms/llamacpp), a few are worth commenting on:\n",
+ "\n",
+ "`n_gpu_layers`: number of layers to be loaded into GPU memory\n",
+ "\n",
+ "* Value: 1\n",
+ "* Meaning: Only one layer of the model will be loaded into GPU memory (1 is often sufficient).\n",
+ "\n",
+ "`n_batch`: number of tokens the model should process in parallel \n",
+ "* Value: n_batch\n",
+ "* Meaning: It's recommended to choose a value between 1 and n_ctx (which in this case is set to 2048)\n",
+ "\n",
+ "`n_ctx`: Token context window .\n",
+ "* Value: 2048\n",
+ "* Meaning: The model will consider a window of 2048 tokens at a time\n",
+ "\n",
+ "`f16_kv`: whether the model should use half-precision for the key/value cache\n",
+ "* Value: True\n",
+ "* Meaning: The model will use half-precision, which can be more memory efficient; Metal only support True."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "id": "5eba38dc",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "pip install llama-cpp-python"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 43,
+ "id": "9d5f94b5",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stderr",
+ "output_type": "stream",
+ "text": [
+ "objc[10142]: Class GGMLMetalClass is implemented in both /Users/rlm/miniforge3/envs/llama/lib/python3.9/site-packages/gpt4all/llmodel_DO_NOT_MODIFY/build/libreplit-mainline-metal.dylib (0x2a0c4c208) and /Users/rlm/miniforge3/envs/llama/lib/python3.9/site-packages/llama_cpp/libllama.dylib (0x2c28bc208). One of the two will be used. Which one is undefined.\n",
+ "llama.cpp: loading model from /Users/rlm/Desktop/Code/llama.cpp/llama-2-13b-chat.ggmlv3.q4_0.bin\n",
+ "llama_model_load_internal: format = ggjt v3 (latest)\n",
+ "llama_model_load_internal: n_vocab = 32000\n",
+ "llama_model_load_internal: n_ctx = 2048\n",
+ "llama_model_load_internal: n_embd = 5120\n",
+ "llama_model_load_internal: n_mult = 256\n",
+ "llama_model_load_internal: n_head = 40\n",
+ "llama_model_load_internal: n_layer = 40\n",
+ "llama_model_load_internal: n_rot = 128\n",
+ "llama_model_load_internal: freq_base = 10000.0\n",
+ "llama_model_load_internal: freq_scale = 1\n",
+ "llama_model_load_internal: ftype = 2 (mostly Q4_0)\n",
+ "llama_model_load_internal: n_ff = 13824\n",
+ "llama_model_load_internal: model size = 13B\n",
+ "llama_model_load_internal: ggml ctx size = 0.09 MB\n",
+ "llama_model_load_internal: mem required = 8953.71 MB (+ 1608.00 MB per state)\n",
+ "llama_new_context_with_model: kv self size = 1600.00 MB\n",
+ "ggml_metal_init: allocating\n",
+ "ggml_metal_init: using MPS\n",
+ "ggml_metal_init: loading '/Users/rlm/miniforge3/envs/llama/lib/python3.9/site-packages/llama_cpp/ggml-metal.metal'\n",
+ "ggml_metal_init: loaded kernel_add 0x47774af60\n",
+ "ggml_metal_init: loaded kernel_mul 0x47774bc00\n",
+ "ggml_metal_init: loaded kernel_mul_row 0x47774c230\n",
+ "ggml_metal_init: loaded kernel_scale 0x47774c890\n",
+ "ggml_metal_init: loaded kernel_silu 0x47774cef0\n",
+ "ggml_metal_init: loaded kernel_relu 0x10e33e500\n",
+ "ggml_metal_init: loaded kernel_gelu 0x47774b2f0\n",
+ "ggml_metal_init: loaded kernel_soft_max 0x47771a580\n",
+ "ggml_metal_init: loaded kernel_diag_mask_inf 0x47774dab0\n",
+ "ggml_metal_init: loaded kernel_get_rows_f16 0x47774e110\n",
+ "ggml_metal_init: loaded kernel_get_rows_q4_0 0x47774e7d0\n",
+ "ggml_metal_init: loaded kernel_get_rows_q4_1 0x13efd7170\n",
+ "ggml_metal_init: loaded kernel_get_rows_q2_K 0x13efd73d0\n",
+ "ggml_metal_init: loaded kernel_get_rows_q3_K 0x13efd7630\n",
+ "ggml_metal_init: loaded kernel_get_rows_q4_K 0x13efd7890\n",
+ "ggml_metal_init: loaded kernel_get_rows_q5_K 0x4744c9740\n",
+ "ggml_metal_init: loaded kernel_get_rows_q6_K 0x4744ca6b0\n",
+ "ggml_metal_init: loaded kernel_rms_norm 0x4744cb250\n",
+ "ggml_metal_init: loaded kernel_norm 0x4744cb970\n",
+ "ggml_metal_init: loaded kernel_mul_mat_f16_f32 0x10e33f700\n",
+ "ggml_metal_init: loaded kernel_mul_mat_q4_0_f32 0x10e33fcd0\n",
+ "ggml_metal_init: loaded kernel_mul_mat_q4_1_f32 0x4744cc2d0\n",
+ "ggml_metal_init: loaded kernel_mul_mat_q2_K_f32 0x4744cc6f0\n",
+ "ggml_metal_init: loaded kernel_mul_mat_q3_K_f32 0x4744cd6b0\n",
+ "ggml_metal_init: loaded kernel_mul_mat_q4_K_f32 0x4744cde20\n",
+ "ggml_metal_init: loaded kernel_mul_mat_q5_K_f32 0x10e33ff30\n",
+ "ggml_metal_init: loaded kernel_mul_mat_q6_K_f32 0x10e340190\n",
+ "ggml_metal_init: loaded kernel_rope 0x10e3403f0\n",
+ "ggml_metal_init: loaded kernel_alibi_f32 0x10e340de0\n",
+ "ggml_metal_init: loaded kernel_cpy_f32_f16 0x10e3416d0\n",
+ "ggml_metal_init: loaded kernel_cpy_f32_f32 0x10e342080\n",
+ "ggml_metal_init: loaded kernel_cpy_f16_f16 0x10e342ca0\n",
+ "ggml_metal_init: recommendedMaxWorkingSetSize = 21845.34 MB\n",
+ "ggml_metal_init: hasUnifiedMemory = true\n",
+ "ggml_metal_init: maxTransferRate = built-in GPU\n",
+ "ggml_metal_add_buffer: allocated 'data ' buffer, size = 6984.06 MB, ( 6986.19 / 21845.34)\n",
+ "ggml_metal_add_buffer: allocated 'eval ' buffer, size = 1032.00 MB, ( 8018.19 / 21845.34)\n",
+ "ggml_metal_add_buffer: allocated 'kv ' buffer, size = 1602.00 MB, ( 9620.19 / 21845.34)\n",
+ "ggml_metal_add_buffer: allocated 'scr0 ' buffer, size = 426.00 MB, (10046.19 / 21845.34)\n",
+ "ggml_metal_add_buffer: allocated 'scr1 ' buffer, size = 512.00 MB, (10558.19 / 21845.34)\n",
+ "AVX = 0 | AVX2 = 0 | AVX512 = 0 | AVX512_VBMI = 0 | AVX512_VNNI = 0 | FMA = 0 | NEON = 1 | ARM_FMA = 1 | F16C = 0 | FP16_VA = 1 | WASM_SIMD = 0 | BLAS = 1 | SSE3 = 0 | VSX = 0 | \n"
+ ]
+ }
+ ],
+ "source": [
+ "from langchain.llms import LlamaCpp\n",
+ "llm = LlamaCpp(\n",
+ " model_path=\"/Users/rlm/Desktop/Code/llama.cpp/llama-2-13b-chat.ggmlv3.q4_0.bin\",\n",
+ " n_gpu_layers=1,\n",
+ " n_batch=512,\n",
+ " n_ctx=2048,\n",
+ " f16_kv=True, \n",
+ " callback_manager=CallbackManager([StreamingStdOutCallbackHandler()]),\n",
+ " verbose=True,\n",
+ ")"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "f56f5168",
+ "metadata": {},
+ "source": [
+ "The console log will show the the below to indicate Metal was enabled properly from steps above:\n",
+ "```\n",
+ "ggml_metal_init: allocating\n",
+ "ggml_metal_init: using MPS\n",
+ "```"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 45,
+ "id": "7890a077",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stderr",
+ "output_type": "stream",
+ "text": [
+ "Llama.generate: prefix-match hit\n"
+ ]
+ },
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ " and use logical reasoning to figure out who the first man on the moon was.\n",
+ "\n",
+ "Here are some clues:\n",
+ "\n",
+ "1. The first man on the moon was an American.\n",
+ "2. He was part of the Apollo 11 mission.\n",
+ "3. He stepped out of the lunar module and became the first person to set foot on the moon's surface.\n",
+ "4. His last name is Armstrong.\n",
+ "\n",
+ "Now, let's use our reasoning skills to figure out who the first man on the moon was. Based on clue #1, we know that the first man on the moon was an American. Clue #2 tells us that he was part of the Apollo 11 mission. Clue #3 reveals that he was the first person to set foot on the moon's surface. And finally, clue #4 gives us his last name: Armstrong.\n",
+ "Therefore, the first man on the moon was Neil Armstrong!"
+ ]
+ },
+ {
+ "name": "stderr",
+ "output_type": "stream",
+ "text": [
+ "\n",
+ "llama_print_timings: load time = 9623.21 ms\n",
+ "llama_print_timings: sample time = 143.77 ms / 203 runs ( 0.71 ms per token, 1412.01 tokens per second)\n",
+ "llama_print_timings: prompt eval time = 485.94 ms / 7 tokens ( 69.42 ms per token, 14.40 tokens per second)\n",
+ "llama_print_timings: eval time = 6385.16 ms / 202 runs ( 31.61 ms per token, 31.64 tokens per second)\n",
+ "llama_print_timings: total time = 7279.28 ms\n"
+ ]
+ },
+ {
+ "data": {
+ "text/plain": [
+ "\" and use logical reasoning to figure out who the first man on the moon was.\\n\\nHere are some clues:\\n\\n1. The first man on the moon was an American.\\n2. He was part of the Apollo 11 mission.\\n3. He stepped out of the lunar module and became the first person to set foot on the moon's surface.\\n4. His last name is Armstrong.\\n\\nNow, let's use our reasoning skills to figure out who the first man on the moon was. Based on clue #1, we know that the first man on the moon was an American. Clue #2 tells us that he was part of the Apollo 11 mission. Clue #3 reveals that he was the first person to set foot on the moon's surface. And finally, clue #4 gives us his last name: Armstrong.\\nTherefore, the first man on the moon was Neil Armstrong!\""
+ ]
+ },
+ "execution_count": 45,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "llm(\"The first man on the moon was ... Let's think step by step\")"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "831ddf7c",
+ "metadata": {},
+ "source": [
+ "### GPT4All\n",
+ "\n",
+ "We can use model weights downloaded from [GPT4All](https://python.langchain.com/docs/integrations/llms/gpt4all) model explorer.\n",
+ "\n",
+ "Similar to what is shown above, we can run inference and use [the API reference](https://api.python.langchain.com/en/latest/llms/langchain.llms.gpt4all.GPT4All.html?highlight=gpt4all#langchain.llms.gpt4all.GPT4All) to set parameters of interest."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "id": "e27baf6e",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "pip install gpt4all"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 46,
+ "id": "b55a2147",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "Found model file at /Users/rlm/Desktop/Code/gpt4all/models/nous-hermes-13b.ggmlv3.q4_0.bin\n",
+ "llama_new_context_with_model: max tensor size = 87.89 MB\n",
+ "llama_new_context_with_model: max tensor size = 87.89 MB\n"
+ ]
+ },
+ {
+ "name": "stderr",
+ "output_type": "stream",
+ "text": [
+ "llama.cpp: using Metal\n",
+ "llama.cpp: loading model from /Users/rlm/Desktop/Code/gpt4all/models/nous-hermes-13b.ggmlv3.q4_0.bin\n",
+ "llama_model_load_internal: format = ggjt v3 (latest)\n",
+ "llama_model_load_internal: n_vocab = 32001\n",
+ "llama_model_load_internal: n_ctx = 2048\n",
+ "llama_model_load_internal: n_embd = 5120\n",
+ "llama_model_load_internal: n_mult = 256\n",
+ "llama_model_load_internal: n_head = 40\n",
+ "llama_model_load_internal: n_layer = 40\n",
+ "llama_model_load_internal: n_rot = 128\n",
+ "llama_model_load_internal: ftype = 2 (mostly Q4_0)\n",
+ "llama_model_load_internal: n_ff = 13824\n",
+ "llama_model_load_internal: n_parts = 1\n",
+ "llama_model_load_internal: model size = 13B\n",
+ "llama_model_load_internal: ggml ctx size = 0.09 MB\n",
+ "llama_model_load_internal: mem required = 9031.71 MB (+ 1608.00 MB per state)\n",
+ "llama_new_context_with_model: kv self size = 1600.00 MB\n",
+ "ggml_metal_init: allocating\n",
+ "ggml_metal_init: using MPS\n",
+ "ggml_metal_init: loading '/Users/rlm/miniforge3/envs/llama/lib/python3.9/site-packages/gpt4all/llmodel_DO_NOT_MODIFY/build/ggml-metal.metal'\n",
+ "ggml_metal_init: loaded kernel_add 0x37944d850\n",
+ "ggml_metal_init: loaded kernel_mul 0x37944f350\n",
+ "ggml_metal_init: loaded kernel_mul_row 0x37944fdd0\n",
+ "ggml_metal_init: loaded kernel_scale 0x3794505a0\n",
+ "ggml_metal_init: loaded kernel_silu 0x379450800\n",
+ "ggml_metal_init: loaded kernel_relu 0x379450a60\n",
+ "ggml_metal_init: loaded kernel_gelu 0x379450cc0\n",
+ "ggml_metal_init: loaded kernel_soft_max 0x379450ff0\n",
+ "ggml_metal_init: loaded kernel_diag_mask_inf 0x379451250\n",
+ "ggml_metal_init: loaded kernel_get_rows_f16 0x3794514b0\n",
+ "ggml_metal_init: loaded kernel_get_rows_q4_0 0x379451710\n",
+ "ggml_metal_init: loaded kernel_get_rows_q4_1 0x379451970\n",
+ "ggml_metal_init: loaded kernel_get_rows_q2_k 0x379451bd0\n",
+ "ggml_metal_init: loaded kernel_get_rows_q3_k 0x379451e30\n",
+ "ggml_metal_init: loaded kernel_get_rows_q4_k 0x379452090\n",
+ "ggml_metal_init: loaded kernel_get_rows_q5_k 0x3794522f0\n",
+ "ggml_metal_init: loaded kernel_get_rows_q6_k 0x379452550\n",
+ "ggml_metal_init: loaded kernel_rms_norm 0x3794527b0\n",
+ "ggml_metal_init: loaded kernel_norm 0x379452a10\n",
+ "ggml_metal_init: loaded kernel_mul_mat_f16_f32 0x379452c70\n",
+ "ggml_metal_init: loaded kernel_mul_mat_q4_0_f32 0x379452ed0\n",
+ "ggml_metal_init: loaded kernel_mul_mat_q4_1_f32 0x379453130\n",
+ "ggml_metal_init: loaded kernel_mul_mat_q2_k_f32 0x379453390\n",
+ "ggml_metal_init: loaded kernel_mul_mat_q3_k_f32 0x3794535f0\n",
+ "ggml_metal_init: loaded kernel_mul_mat_q4_k_f32 0x379453850\n",
+ "ggml_metal_init: loaded kernel_mul_mat_q5_k_f32 0x379453ab0\n",
+ "ggml_metal_init: loaded kernel_mul_mat_q6_k_f32 0x379453d10\n",
+ "ggml_metal_init: loaded kernel_rope 0x379453f70\n",
+ "ggml_metal_init: loaded kernel_alibi_f32 0x3794541d0\n",
+ "ggml_metal_init: loaded kernel_cpy_f32_f16 0x379454430\n",
+ "ggml_metal_init: loaded kernel_cpy_f32_f32 0x379454690\n",
+ "ggml_metal_init: loaded kernel_cpy_f16_f16 0x3794548f0\n",
+ "ggml_metal_init: recommendedMaxWorkingSetSize = 21845.34 MB\n",
+ "ggml_metal_init: hasUnifiedMemory = true\n",
+ "ggml_metal_init: maxTransferRate = built-in GPU\n",
+ "ggml_metal_add_buffer: allocated 'data ' buffer, size = 6984.06 MB, (17542.94 / 21845.34)\n",
+ "ggml_metal_add_buffer: allocated 'eval ' buffer, size = 1024.00 MB, (18566.94 / 21845.34)\n",
+ "ggml_metal_add_buffer: allocated 'kv ' buffer, size = 1602.00 MB, (20168.94 / 21845.34)\n",
+ "ggml_metal_add_buffer: allocated 'scr0 ' buffer, size = 512.00 MB, (20680.94 / 21845.34)\n",
+ "ggml_metal_add_buffer: allocated 'scr1 ' buffer, size = 512.00 MB, (21192.94 / 21845.34)\n",
+ "ggml_metal_free: deallocating\n"
+ ]
+ }
+ ],
+ "source": [
+ "from langchain.llms import GPT4All\n",
+ "llm = GPT4All(model=\"/Users/rlm/Desktop/Code/gpt4all/models/nous-hermes-13b.ggmlv3.q4_0.bin\")"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 47,
+ "id": "e3d4526f",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "\".\\n1) The United States decides to send a manned mission to the moon.2) They choose their best astronauts and train them for this specific mission.3) They build a spacecraft that can take humans to the moon, called the Lunar Module (LM).4) They also create a larger spacecraft, called the Saturn V rocket, which will launch both the LM and the Command Service Module (CSM), which will carry the astronauts into orbit.5) The mission is planned down to the smallest detail: from the trajectory of the rockets to the exact movements of the astronauts during their moon landing.6) On July 16, 1969, the Saturn V rocket launches from Kennedy Space Center in Florida, carrying the Apollo 11 mission crew into space.7) After one and a half orbits around the Earth, the LM separates from the CSM and begins its descent to the moon's surface.8) On July 20, 1969, at 2:56 pm EDT (GMT-4), Neil Armstrong becomes the first man on the moon. He speaks these\""
+ ]
+ },
+ "execution_count": 47,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "llm(\"The first man on the moon was ... Let's think step by step\")"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "6b84e543",
+ "metadata": {},
+ "source": [
+ "## Prompts\n",
+ "\n",
+ "Some LLMs will benefit from specific prompts.\n",
+ "\n",
+ "For example, llama2 can use [special tokens](https://twitter.com/RLanceMartin/status/1681879318493003776?s=20).\n",
+ "\n",
+ "We can use `ConditionalPromptSelector` to set prompt based on the model type."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 57,
+ "id": "d082b10a",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stderr",
+ "output_type": "stream",
+ "text": [
+ "llama.cpp: loading model from /Users/rlm/Desktop/Code/llama.cpp/llama-2-13b-chat.ggmlv3.q4_0.bin\n",
+ "llama_model_load_internal: format = ggjt v3 (latest)\n",
+ "llama_model_load_internal: n_vocab = 32000\n",
+ "llama_model_load_internal: n_ctx = 2048\n",
+ "llama_model_load_internal: n_embd = 5120\n",
+ "llama_model_load_internal: n_mult = 256\n",
+ "llama_model_load_internal: n_head = 40\n",
+ "llama_model_load_internal: n_layer = 40\n",
+ "llama_model_load_internal: n_rot = 128\n",
+ "llama_model_load_internal: freq_base = 10000.0\n",
+ "llama_model_load_internal: freq_scale = 1\n",
+ "llama_model_load_internal: ftype = 2 (mostly Q4_0)\n",
+ "llama_model_load_internal: n_ff = 13824\n",
+ "llama_model_load_internal: model size = 13B\n",
+ "llama_model_load_internal: ggml ctx size = 0.09 MB\n",
+ "llama_model_load_internal: mem required = 8953.71 MB (+ 1608.00 MB per state)\n",
+ "llama_new_context_with_model: kv self size = 1600.00 MB\n",
+ "ggml_metal_init: allocating\n",
+ "ggml_metal_init: using MPS\n",
+ "ggml_metal_init: loading '/Users/rlm/miniforge3/envs/llama/lib/python3.9/site-packages/llama_cpp/ggml-metal.metal'\n",
+ "ggml_metal_init: loaded kernel_add 0x4744d09d0\n",
+ "ggml_metal_init: loaded kernel_mul 0x3781cb3d0\n",
+ "ggml_metal_init: loaded kernel_mul_row 0x37813bb60\n",
+ "ggml_metal_init: loaded kernel_scale 0x474481080\n",
+ "ggml_metal_init: loaded kernel_silu 0x4744d29f0\n",
+ "ggml_metal_init: loaded kernel_relu 0x3781254c0\n",
+ "ggml_metal_init: loaded kernel_gelu 0x47447f280\n",
+ "ggml_metal_init: loaded kernel_soft_max 0x4744cf470\n",
+ "ggml_metal_init: loaded kernel_diag_mask_inf 0x4744cf6d0\n",
+ "ggml_metal_init: loaded kernel_get_rows_f16 0x4744cf930\n",
+ "ggml_metal_init: loaded kernel_get_rows_q4_0 0x4744cfb90\n",
+ "ggml_metal_init: loaded kernel_get_rows_q4_1 0x4744cfdf0\n",
+ "ggml_metal_init: loaded kernel_get_rows_q2_K 0x4744d0050\n",
+ "ggml_metal_init: loaded kernel_get_rows_q3_K 0x4744ce980\n",
+ "ggml_metal_init: loaded kernel_get_rows_q4_K 0x4744cebe0\n",
+ "ggml_metal_init: loaded kernel_get_rows_q5_K 0x4744cee40\n",
+ "ggml_metal_init: loaded kernel_get_rows_q6_K 0x4744cf0a0\n",
+ "ggml_metal_init: loaded kernel_rms_norm 0x474482450\n",
+ "ggml_metal_init: loaded kernel_norm 0x4744826b0\n",
+ "ggml_metal_init: loaded kernel_mul_mat_f16_f32 0x474482910\n",
+ "ggml_metal_init: loaded kernel_mul_mat_q4_0_f32 0x474482b70\n",
+ "ggml_metal_init: loaded kernel_mul_mat_q4_1_f32 0x474482dd0\n",
+ "ggml_metal_init: loaded kernel_mul_mat_q2_K_f32 0x474483030\n",
+ "ggml_metal_init: loaded kernel_mul_mat_q3_K_f32 0x474483290\n",
+ "ggml_metal_init: loaded kernel_mul_mat_q4_K_f32 0x4744834f0\n",
+ "ggml_metal_init: loaded kernel_mul_mat_q5_K_f32 0x474483750\n",
+ "ggml_metal_init: loaded kernel_mul_mat_q6_K_f32 0x4744839b0\n",
+ "ggml_metal_init: loaded kernel_rope 0x474483c10\n",
+ "ggml_metal_init: loaded kernel_alibi_f32 0x474483e70\n",
+ "ggml_metal_init: loaded kernel_cpy_f32_f16 0x4744840d0\n",
+ "ggml_metal_init: loaded kernel_cpy_f32_f32 0x474484330\n",
+ "ggml_metal_init: loaded kernel_cpy_f16_f16 0x474484590\n",
+ "ggml_metal_init: recommendedMaxWorkingSetSize = 21845.34 MB\n",
+ "ggml_metal_init: hasUnifiedMemory = true\n",
+ "ggml_metal_init: maxTransferRate = built-in GPU\n",
+ "ggml_metal_add_buffer: allocated 'data ' buffer, size = 6984.06 MB, ( 6986.94 / 21845.34)\n",
+ "ggml_metal_add_buffer: allocated 'eval ' buffer, size = 1032.00 MB, ( 8018.94 / 21845.34)\n",
+ "ggml_metal_add_buffer: allocated 'kv ' buffer, size = 1602.00 MB, ( 9620.94 / 21845.34)\n",
+ "ggml_metal_add_buffer: allocated 'scr0 ' buffer, size = 426.00 MB, (10046.94 / 21845.34)\n",
+ "ggml_metal_add_buffer: allocated 'scr1 ' buffer, size = 512.00 MB, (10558.94 / 21845.34)\n",
+ "AVX = 0 | AVX2 = 0 | AVX512 = 0 | AVX512_VBMI = 0 | AVX512_VNNI = 0 | FMA = 0 | NEON = 1 | ARM_FMA = 1 | F16C = 0 | FP16_VA = 1 | WASM_SIMD = 0 | BLAS = 1 | SSE3 = 0 | VSX = 0 | \n"
+ ]
+ }
+ ],
+ "source": [
+ "# Set our LLM\n",
+ "llm = LlamaCpp(\n",
+ " model_path=\"/Users/rlm/Desktop/Code/llama.cpp/llama-2-13b-chat.ggmlv3.q4_0.bin\",\n",
+ " n_gpu_layers=1,\n",
+ " n_batch=512,\n",
+ " n_ctx=2048,\n",
+ " f16_kv=True, \n",
+ " callback_manager=CallbackManager([StreamingStdOutCallbackHandler()]),\n",
+ " verbose=True,\n",
+ ")"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "66656084",
+ "metadata": {},
+ "source": [
+ "Set the associated prompt."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 58,
+ "id": "8555f5bf",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "PromptTemplate(input_variables=['question'], output_parser=None, partial_variables={}, template='<> \\n You are an assistant tasked with improving Google search results. \\n <> \\n\\n [INST] Generate THREE Google search queries that are similar to this question. The output should be a numbered list of questions and each should have a question mark at the end: \\n\\n {question} [/INST]', template_format='f-string', validate_template=True)"
+ ]
+ },
+ "execution_count": 58,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "from langchain import PromptTemplate, LLMChain\n",
+ "from langchain.chains.prompt_selector import ConditionalPromptSelector\n",
+ "\n",
+ "DEFAULT_LLAMA_SEARCH_PROMPT = PromptTemplate(\n",
+ " input_variables=[\"question\"],\n",
+ " template=\"\"\"<> \\n You are an assistant tasked with improving Google search \\\n",
+ "results. \\n <> \\n\\n [INST] Generate THREE Google search queries that \\\n",
+ "are similar to this question. The output should be a numbered list of questions \\\n",
+ "and each should have a question mark at the end: \\n\\n {question} [/INST]\"\"\",\n",
+ ")\n",
+ "\n",
+ "DEFAULT_SEARCH_PROMPT = PromptTemplate(\n",
+ " input_variables=[\"question\"],\n",
+ " template=\"\"\"You are an assistant tasked with improving Google search \\\n",
+ "results. Generate THREE Google search queries that are similar to \\\n",
+ "this question. The output should be a numbered list of questions and each \\\n",
+ "should have a question mark at the end: {question}\"\"\",\n",
+ ")\n",
+ "\n",
+ "QUESTION_PROMPT_SELECTOR = ConditionalPromptSelector(\n",
+ " default_prompt=DEFAULT_SEARCH_PROMPT,\n",
+ " conditionals=[\n",
+ " (lambda llm: isinstance(llm, LlamaCpp), DEFAULT_LLAMA_SEARCH_PROMPT)\n",
+ " ],\n",
+ " )\n",
+ "\n",
+ "prompt = QUESTION_PROMPT_SELECTOR.get_prompt(llm)\n",
+ "prompt"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 59,
+ "id": "d0aedfd2",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ " Sure! Here are three similar search queries with a question mark at the end:\n",
+ "\n",
+ "1. Which NBA team did LeBron James lead to a championship in the year he was drafted?\n",
+ "2. Who won the Grammy Awards for Best New Artist and Best Female Pop Vocal Performance in the same year that Lady Gaga was born?\n",
+ "3. What MLB team did Babe Ruth play for when he hit 60 home runs in a single season?"
+ ]
+ },
+ {
+ "name": "stderr",
+ "output_type": "stream",
+ "text": [
+ "\n",
+ "llama_print_timings: load time = 14943.19 ms\n",
+ "llama_print_timings: sample time = 72.93 ms / 101 runs ( 0.72 ms per token, 1384.87 tokens per second)\n",
+ "llama_print_timings: prompt eval time = 14942.95 ms / 93 tokens ( 160.68 ms per token, 6.22 tokens per second)\n",
+ "llama_print_timings: eval time = 3430.85 ms / 100 runs ( 34.31 ms per token, 29.15 tokens per second)\n",
+ "llama_print_timings: total time = 18578.26 ms\n"
+ ]
+ },
+ {
+ "data": {
+ "text/plain": [
+ "' Sure! Here are three similar search queries with a question mark at the end:\\n\\n1. Which NBA team did LeBron James lead to a championship in the year he was drafted?\\n2. Who won the Grammy Awards for Best New Artist and Best Female Pop Vocal Performance in the same year that Lady Gaga was born?\\n3. What MLB team did Babe Ruth play for when he hit 60 home runs in a single season?'"
+ ]
+ },
+ "execution_count": 59,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "# Chain\n",
+ "llm_chain = LLMChain(prompt=prompt,llm=llm)\n",
+ "question = \"What NFL team won the Super Bowl in the year that Justin Bieber was born?\"\n",
+ "llm_chain.run({\"question\":question})"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "6ba66260",
+ "metadata": {},
+ "source": [
+ "## Use cases\n",
+ "\n",
+ "Given an `llm` created from one of the models above, you can use it for [many use cases](docs/use_cases).\n",
+ "\n",
+ "For example, here is a guide to [RAG](docs/use_cases/question_answering/how_to/local_retrieval_qa) with local LLMs.\n",
+ "\n",
+ "In general, use cases for local model can be driven by at least two factors:\n",
+ "\n",
+ "* `Privacy`: private data (e.g., journals, etc) that a user does not want to share \n",
+ "* `Cost`: text preprocessing (extraction/tagging), summarization, and agent simulations are token-use-intensive tasks\n",
+ "\n",
+ "There are a few approach to support specific use-cases: \n",
+ "\n",
+ "* Fine-tuning (e.g., [gpt-llm-trainer](https://github.com/mshumer/gpt-llm-trainer), [Anyscale](https://www.anyscale.com/blog/fine-tuning-llama-2-a-comprehensive-case-study-for-tailoring-models-to-unique-applications)) \n",
+ "* [Function-calling](https://github.com/MeetKai/functionary/tree/main) for use-cases like extraction or tagging\n",
+ "\n"
+ ]
+ }
+ ],
+ "metadata": {
+ "kernelspec": {
+ "display_name": "Python 3 (ipykernel)",
+ "language": "python",
+ "name": "python3"
+ },
+ "language_info": {
+ "codemirror_mode": {
+ "name": "ipython",
+ "version": 3
+ },
+ "file_extension": ".py",
+ "mimetype": "text/x-python",
+ "name": "python",
+ "nbconvert_exporter": "python",
+ "pygments_lexer": "ipython3",
+ "version": "3.9.16"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 5
+}
diff --git a/docs/extras/guides/pydantic_compatibility.md b/docs/extras/guides/pydantic_compatibility.md
new file mode 100644
index 00000000000..15518c5e23e
--- /dev/null
+++ b/docs/extras/guides/pydantic_compatibility.md
@@ -0,0 +1,121 @@
+# Pydantic Compatibility
+
+- Pydantic v2 was released in June, 2023 (https://docs.pydantic.dev/2.0/blog/pydantic-v2-final/)
+- v2 contains has a number of breaking changes (https://docs.pydantic.dev/2.0/migration/)
+- Pydantic v2 and v1 are under the same package name, so both versions cannot be installed at the same time
+
+
+## LangChain Pydantic Migration Plan
+
+Langchain will carry out the migration to pydantic v2 in two steps:
+
+1. 2023-08-17: LangChain will allow users to install either Pydantic V1 or V2.
+ * Internally LangChain will continue to [use V1](https://docs.pydantic.dev/latest/migration/#continue-using-pydantic-v1-features).
+ * During this time, users can pin their pydantic version to v1 to avoid breaking changes, or start a partial
+ migration using pydantic v2 throughout their code, but avoiding mixing v1 and v2 code for LangChain (see below).
+
+2. 2023-08-25: Langchain will migrate internally to using V2 code.
+ * Users will have to upgrade to V2 as well to use LangChain.
+ * Users should stop using the `pydantic.v1` namespace when using LangChain.
+ * See the [bump-pydantic package](https://github.com/pydantic/bump-pydantic) to help with the upgrade process.
+
+## Between 2023-08-17 and 2023-08-25 releases
+
+User can either pin to pydantic v1, and upgrade their code in one go once LangChain has migrated to v2 internally, or they can start a partial migration to v2, but must avoid mixing v1 and v2 code for LangChain.
+
+Below are two examples of showing how to avoid mixing pydantic v1 and v2 code in
+the case of inheritance and in the case of passing objects to LangChain.
+
+**Example 1: Extending via inheritance**
+
+**YES**
+
+```python
+from pydantic.v1 import root_validator, validator
+
+class CustomTool(BaseTool): # BaseTool is v1 code
+ x: int = Field(default=1)
+
+ def _run(*args, **kwargs):
+ return "hello"
+
+ @validator('x') # v1 code
+ @classmethod
+ def validate_x(cls, x: int) -> int:
+ return 1
+
+
+CustomTool(
+ name='custom_tool',
+ description="hello",
+ x=1,
+)
+```
+
+Mixing Pydantic v2 primitives with Pydantic v1 primitives can raise cryptic errors
+
+**NO**
+
+```python
+from pydantic import Field, field_validator # pydantic v2
+
+class CustomTool(BaseTool): # BaseTool is v1 code
+ x: int = Field(default=1)
+
+ def _run(*args, **kwargs):
+ return "hello"
+
+ @field_validator('x') # v2 code
+ @classmethod
+ def validate_x(cls, x: int) -> int:
+ return 1
+
+
+CustomTool(
+ name='custom_tool',
+ description="hello",
+ x=1,
+)
+```
+
+**Example 2: Passing objects to LangChain**
+
+**YES**
+
+```python
+from langchain.tools.base import Tool
+from pydantic.v1 import BaseModel, Field # <-- Uses v1 namespace
+
+class CalculatorInput(BaseModel):
+ question: str = Field()
+
+Tool.from_function( # <-- tool uses v1 namespace
+ func=lambda question: 'hello',
+ name="Calculator",
+ description="useful for when you need to answer questions about math",
+ args_schema=CalculatorInput
+)
+```
+
+**NO**
+
+```python
+from langchain.tools.base import Tool
+from pydantic import BaseModel, Field # <-- Uses v2 namespace
+
+class CalculatorInput(BaseModel):
+ question: str = Field()
+
+Tool.from_function( # <-- tool uses v1 namespace
+ func=lambda question: 'hello',
+ name="Calculator",
+ description="useful for when you need to answer questions about math",
+ args_schema=CalculatorInput
+)
+```
+
+## After 2023-08-25 release
+
+* Users must upgrade to v2
+* Users should not pass `pydantic.v1` derived objects to LangChain or rely on `pydantic.v1` when extending functionality
+
diff --git a/docs/extras/integrations/callbacks/argilla.ipynb b/docs/extras/integrations/callbacks/argilla.ipynb
index 7a78b3198c6..ff46507151a 100644
--- a/docs/extras/integrations/callbacks/argilla.ipynb
+++ b/docs/extras/integrations/callbacks/argilla.ipynb
@@ -147,7 +147,7 @@
" api_key=os.environ[\"ARGILLA_API_KEY\"],\n",
")\n",
"\n",
- "dataset.push_to_argilla(\"langchain-dataset\")"
+ "dataset.push_to_argilla(\"langchain-dataset\");"
]
},
{
diff --git a/docs/extras/integrations/callbacks/context.ipynb b/docs/extras/integrations/callbacks/context.ipynb
index c1ad8cb10db..50e422562e5 100644
--- a/docs/extras/integrations/callbacks/context.ipynb
+++ b/docs/extras/integrations/callbacks/context.ipynb
@@ -7,12 +7,12 @@
"source": [
"# Context\n",
"\n",
- "\n",
+ "\n",
"\n",
- "[Context](https://getcontext.ai/) provides product analytics for AI chatbots.\n",
+ "[Context](https://context.ai/) provides user analytics for LLM powered products and features.\n",
"\n",
- "Context helps you understand how users are interacting with your AI chat products.\n",
- "Gain critical insights, optimise poor experiences, and minimise brand risks.\n"
+ "With Context, you can start understanding your users and improving their experiences in less than 30 minutes.\n",
+ "\n"
]
},
{
@@ -55,7 +55,7 @@
"\n",
"To get your Context API token:\n",
"\n",
- "1. Go to the settings page within your Context account (https://go.getcontext.ai/settings).\n",
+ "1. Go to the settings page within your Context account (https://with.context.ai/settings).\n",
"2. Generate a new API Token.\n",
"3. Store this token somewhere secure."
]
@@ -207,7 +207,7 @@
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
- "version": "3.11.3"
+ "version": "3.9.1"
},
"vscode": {
"interpreter": {
diff --git a/docs/extras/integrations/callbacks/labelstudio.ipynb b/docs/extras/integrations/callbacks/labelstudio.ipynb
new file mode 100644
index 00000000000..927db2d639a
--- /dev/null
+++ b/docs/extras/integrations/callbacks/labelstudio.ipynb
@@ -0,0 +1,382 @@
+{
+ "cells": [
+ {
+ "cell_type": "markdown",
+ "metadata": {
+ "collapsed": true,
+ "pycharm": {
+ "name": "#%% md\n"
+ }
+ },
+ "source": [
+ "# Label Studio\n",
+ "\n",
+ "\n",
+ "

\n",
+ "
\n",
+ "\n",
+ "Label Studio is an open-source data labeling platform that provides LangChain with flexibility when it comes to labeling data for fine-tuning large language models (LLMs). It also enables the preparation of custom training data and the collection and evaluation of responses through human feedback.\n",
+ "\n",
+ "In this guide, you will learn how to connect a LangChain pipeline to Label Studio to:\n",
+ "\n",
+ "- Aggregate all input prompts, conversations, and responses in a single LabelStudio project. This consolidates all the data in one place for easier labeling and analysis.\n",
+ "- Refine prompts and responses to create a dataset for supervised fine-tuning (SFT) and reinforcement learning with human feedback (RLHF) scenarios. The labeled data can be used to further train the LLM to improve its performance.\n",
+ "- Evaluate model responses through human feedback. LabelStudio provides an interface for humans to review and provide feedback on model responses, allowing evaluation and iteration."
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {
+ "pycharm": {
+ "name": "#%% md\n"
+ }
+ },
+ "source": [
+ "## Installation and setup"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {
+ "pycharm": {
+ "name": "#%% md\n"
+ }
+ },
+ "source": [
+ "First install latest versions of Label Studio and Label Studio API client:"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "pycharm": {
+ "name": "#%%\n"
+ }
+ },
+ "outputs": [],
+ "source": [
+ "!pip install -U label-studio label-studio-sdk openai"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {
+ "pycharm": {
+ "name": "#%% md\n"
+ }
+ },
+ "source": [
+ "Next, run `label-studio` on the command line to start the local LabelStudio instance at `http://localhost:8080`. See the [Label Studio installation guide](https://labelstud.io/guide/install) for more options."
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {
+ "pycharm": {
+ "name": "#%% md\n"
+ }
+ },
+ "source": [
+ "You'll need a token to make API calls.\n",
+ "\n",
+ "Open your LabelStudio instance in your browser, go to `Account & Settings > Access Token` and copy the key.\n",
+ "\n",
+ "Set environment variables with your LabelStudio URL, API key and OpenAI API key:"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "pycharm": {
+ "name": "#%%\n"
+ }
+ },
+ "outputs": [],
+ "source": [
+ "import os\n",
+ "\n",
+ "os.environ['LABEL_STUDIO_URL'] = '' # e.g. http://localhost:8080\n",
+ "os.environ['LABEL_STUDIO_API_KEY'] = ''\n",
+ "os.environ['OPENAI_API_KEY'] = ''"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {
+ "pycharm": {
+ "name": "#%% md\n"
+ }
+ },
+ "source": [
+ "## Collecting LLMs prompts and responses"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "The data used for labeling is stored in projects within Label Studio. Every project is identified by an XML configuration that details the specifications for input and output data. \n",
+ "\n",
+ "Create a project that takes human input in text format and outputs an editable LLM response in a text area:\n",
+ "\n",
+ "```xml\n",
+ "\n",
+ "\n",
+ "\n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ "\n",
+ "\n",
+ "\n",
+ "```\n",
+ "\n",
+ "1. To create a project in Label Studio, click on the \"Create\" button. \n",
+ "2. Enter a name for your project in the \"Project Name\" field, such as `My Project`.\n",
+ "3. Navigate to `Labeling Setup > Custom Template` and paste the XML configuration provided above."
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {
+ "pycharm": {
+ "name": "#%% md\n"
+ }
+ },
+ "source": [
+ "You can collect input LLM prompts and output responses in a LabelStudio project, connecting it via `LabelStudioCallbackHandler`:"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "pycharm": {
+ "name": "#%%\n"
+ }
+ },
+ "outputs": [],
+ "source": [
+ "from langchain.llms import OpenAI\n",
+ "from langchain.callbacks import LabelStudioCallbackHandler\n",
+ "\n",
+ "llm = OpenAI(\n",
+ " temperature=0,\n",
+ " callbacks=[\n",
+ " LabelStudioCallbackHandler(\n",
+ " project_name=\"My Project\"\n",
+ " )]\n",
+ ")\n",
+ "print(llm(\"Tell me a joke\"))"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {
+ "pycharm": {
+ "name": "#%% md\n"
+ }
+ },
+ "source": [
+ "In the Label Studio, open `My Project`. You will see the prompts, responses, and metadata like the model name. "
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {
+ "pycharm": {
+ "name": "#%% md\n"
+ }
+ },
+ "source": [
+ "## Collecting Chat model Dialogues"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "You can also track and display full chat dialogues in LabelStudio, with the ability to rate and modify the last response:\n",
+ "\n",
+ "1. Open Label Studio and click on the \"Create\" button.\n",
+ "2. Enter a name for your project in the \"Project Name\" field, such as `New Project with Chat`.\n",
+ "3. Navigate to Labeling Setup > Custom Template and paste the following XML configuration:\n",
+ "\n",
+ "```xml\n",
+ "\n",
+ "\n",
+ " \n",
+ " \n",
+ " \n",
+ "\n",
+ "\n",
+ "\n",
+ "```"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "pycharm": {
+ "name": "#%%\n"
+ }
+ },
+ "outputs": [],
+ "source": [
+ "from langchain.chat_models import ChatOpenAI\n",
+ "from langchain.schema import HumanMessage, SystemMessage\n",
+ "from langchain.callbacks import LabelStudioCallbackHandler\n",
+ "\n",
+ "chat_llm = ChatOpenAI(callbacks=[\n",
+ " LabelStudioCallbackHandler(\n",
+ " mode=\"chat\",\n",
+ " project_name=\"New Project with Chat\",\n",
+ " )\n",
+ "])\n",
+ "llm_results = chat_llm([\n",
+ " SystemMessage(content=\"Always use a lot of emojis\"),\n",
+ " HumanMessage(content=\"Tell me a joke\")\n",
+ "])"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "In Label Studio, open \"New Project with Chat\". Click on a created task to view dialog history and edit/annotate responses."
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {
+ "pycharm": {
+ "name": "#%% md\n"
+ }
+ },
+ "source": [
+ "## Custom Labeling Configuration"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {
+ "pycharm": {
+ "name": "#%% md\n"
+ }
+ },
+ "source": [
+ "You can modify the default labeling configuration in LabelStudio to add more target labels like response sentiment, relevance, and many [other types annotator's feedback](https://labelstud.io/tags/).\n",
+ "\n",
+ "New labeling configuration can be added from UI: go to `Settings > Labeling Interface` and set up a custom configuration with additional tags like `Choices` for sentiment or `Rating` for relevance. Keep in mind that [`TextArea` tag](https://labelstud.io/tags/textarea) should be presented in any configuration to display the LLM responses.\n",
+ "\n",
+ "Alternatively, you can specify the labeling configuration on the initial call before project creation:"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "pycharm": {
+ "name": "#%%\n"
+ }
+ },
+ "outputs": [],
+ "source": [
+ "ls = LabelStudioCallbackHandler(project_config='''\n",
+ "\n",
+ "\n",
+ "\n",
+ "''')"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "Note that if the project doesn't exist, it will be created with the specified labeling configuration."
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {
+ "pycharm": {
+ "name": "#%% md\n"
+ }
+ },
+ "source": [
+ "## Other parameters"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {
+ "pycharm": {
+ "name": "#%% md\n"
+ }
+ },
+ "source": [
+ "The `LabelStudioCallbackHandler` accepts several optional parameters:\n",
+ "\n",
+ "- **api_key** - Label Studio API key. Overrides environmental variable `LABEL_STUDIO_API_KEY`.\n",
+ "- **url** - Label Studio URL. Overrides `LABEL_STUDIO_URL`, default `http://localhost:8080`.\n",
+ "- **project_id** - Existing Label Studio project ID. Overrides `LABEL_STUDIO_PROJECT_ID`. Stores data in this project.\n",
+ "- **project_name** - Project name if project ID not specified. Creates a new project. Default is `\"LangChain-%Y-%m-%d\"` formatted with the current date.\n",
+ "- **project_config** - [custom labeling configuration](#custom-labeling-configuration)\n",
+ "- **mode**: use this shortcut to create target configuration from scratch:\n",
+ " - `\"prompt\"` - Single prompt, single response. Default.\n",
+ " - `\"chat\"` - Multi-turn chat mode.\n",
+ "\n"
+ ]
+ }
+ ],
+ "metadata": {
+ "kernelspec": {
+ "display_name": "labelops",
+ "language": "python",
+ "name": "labelops"
+ },
+ "language_info": {
+ "codemirror_mode": {
+ "name": "ipython",
+ "version": 3
+ },
+ "file_extension": ".py",
+ "mimetype": "text/x-python",
+ "name": "python",
+ "nbconvert_exporter": "python",
+ "pygments_lexer": "ipython3",
+ "version": "3.9.16"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 1
+}
diff --git a/docs/extras/integrations/chat/ernie.ipynb b/docs/extras/integrations/chat/ernie.ipynb
new file mode 100644
index 00000000000..b887991f576
--- /dev/null
+++ b/docs/extras/integrations/chat/ernie.ipynb
@@ -0,0 +1,88 @@
+{
+ "cells": [
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "# ERNIE-Bot Chat\n",
+ "\n",
+ "[ERNIE-Bot](https://cloud.baidu.com/doc/WENXINWORKSHOP/s/jlil56u11) is a large language model developed by Baidu, covering a huge amount of Chinese data.\n",
+ "This notebook covers how to get started with ErnieBot chat models."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 7,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "from langchain.chat_models import ErnieBotChat\n",
+ "from langchain.schema import HumanMessage"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 13,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "chat = ErnieBotChat(ernie_client_id='YOUR_CLIENT_ID', ernie_client_secret='YOUR_CLIENT_SECRET')"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "or you can set `client_id` and `client_secret` in your environment variables\n",
+ "```bash\n",
+ "export ERNIE_CLIENT_ID=YOUR_CLIENT_ID\n",
+ "export ERNIE_CLIENT_SECRET=YOUR_CLIENT_SECRET\n",
+ "```"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 15,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "AIMessage(content='Hello, I am an artificial intelligence language model. My purpose is to help users answer questions or provide information. What can I do for you?', additional_kwargs={}, example=False)"
+ ]
+ },
+ "execution_count": 15,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "chat([\n",
+ " HumanMessage(content='hello there, who are you?')\n",
+ "])"
+ ]
+ }
+ ],
+ "metadata": {
+ "kernelspec": {
+ "display_name": "Python 3 (ipykernel)",
+ "language": "python",
+ "name": "python3"
+ },
+ "language_info": {
+ "codemirror_mode": {
+ "name": "ipython",
+ "version": 3
+ },
+ "file_extension": ".py",
+ "mimetype": "text/x-python",
+ "name": "python",
+ "nbconvert_exporter": "python",
+ "pygments_lexer": "ipython3",
+ "version": "3.11.4"
+ },
+ "orig_nbformat": 4
+ },
+ "nbformat": 4,
+ "nbformat_minor": 2
+}
diff --git a/docs/extras/integrations/chat/litellm.ipynb b/docs/extras/integrations/chat/litellm.ipynb
new file mode 100644
index 00000000000..977f5f15546
--- /dev/null
+++ b/docs/extras/integrations/chat/litellm.ipynb
@@ -0,0 +1,185 @@
+{
+ "cells": [
+ {
+ "attachments": {},
+ "cell_type": "markdown",
+ "id": "bf733a38-db84-4363-89e2-de6735c37230",
+ "metadata": {},
+ "source": [
+ "# 🚅 LiteLLM\n",
+ "\n",
+ "[LiteLLM](https://github.com/BerriAI/litellm) is a library that simplifies calling Anthropic, Azure, Huggingface, Replicate, etc. \n",
+ "\n",
+ "This notebook covers how to get started with using Langchain + the LiteLLM I/O library. "
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 1,
+ "id": "d4a7c55d-b235-4ca4-a579-c90cc9570da9",
+ "metadata": {
+ "tags": []
+ },
+ "outputs": [],
+ "source": [
+ "from langchain.chat_models import ChatLiteLLM\n",
+ "from langchain.prompts.chat import (\n",
+ " ChatPromptTemplate,\n",
+ " SystemMessagePromptTemplate,\n",
+ " AIMessagePromptTemplate,\n",
+ " HumanMessagePromptTemplate,\n",
+ ")\n",
+ "from langchain.schema import AIMessage, HumanMessage, SystemMessage"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 2,
+ "id": "70cf04e8-423a-4ff6-8b09-f11fb711c817",
+ "metadata": {
+ "tags": []
+ },
+ "outputs": [],
+ "source": [
+ "chat = ChatLiteLLM(model=\"gpt-3.5-turbo\")"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 3,
+ "id": "8199ef8f-eb8b-4253-9ea0-6c24a013ca4c",
+ "metadata": {
+ "tags": []
+ },
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "AIMessage(content=\" J'aime la programmation.\", additional_kwargs={}, example=False)"
+ ]
+ },
+ "execution_count": 3,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "messages = [\n",
+ " HumanMessage(\n",
+ " content=\"Translate this sentence from English to French. I love programming.\"\n",
+ " )\n",
+ "]\n",
+ "chat(messages)"
+ ]
+ },
+ {
+ "attachments": {},
+ "cell_type": "markdown",
+ "id": "c361ab1e-8c0c-4206-9e3c-9d1424a12b9c",
+ "metadata": {},
+ "source": [
+ "## `ChatLiteLLM` also supports async and streaming functionality:"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 4,
+ "id": "93a21c5c-6ef9-4688-be60-b2e1f94842fb",
+ "metadata": {
+ "tags": []
+ },
+ "outputs": [],
+ "source": [
+ "from langchain.callbacks.manager import CallbackManager\n",
+ "from langchain.callbacks.streaming_stdout import StreamingStdOutCallbackHandler"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 5,
+ "id": "c5fac0e9-05a4-4fc1-a3b3-e5bbb24b971b",
+ "metadata": {
+ "tags": []
+ },
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "LLMResult(generations=[[ChatGeneration(text=\" J'aime programmer.\", generation_info=None, message=AIMessage(content=\" J'aime programmer.\", additional_kwargs={}, example=False))]], llm_output={}, run=[RunInfo(run_id=UUID('8cc8fb68-1c35-439c-96a0-695036a93652'))])"
+ ]
+ },
+ "execution_count": 5,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "await chat.agenerate([messages])"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 6,
+ "id": "025be980-e50d-4a68-93dc-c9c7b500ce34",
+ "metadata": {
+ "tags": []
+ },
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ " J'aime la programmation."
+ ]
+ },
+ {
+ "data": {
+ "text/plain": [
+ "AIMessage(content=\" J'aime la programmation.\", additional_kwargs={}, example=False)"
+ ]
+ },
+ "execution_count": 6,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "chat = ChatLiteLLM(\n",
+ " streaming=True,\n",
+ " verbose=True,\n",
+ " callback_manager=CallbackManager([StreamingStdOutCallbackHandler()]),\n",
+ ")\n",
+ "chat(messages)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "id": "c253883f",
+ "metadata": {},
+ "outputs": [],
+ "source": []
+ }
+ ],
+ "metadata": {
+ "kernelspec": {
+ "display_name": "Python 3 (ipykernel)",
+ "language": "python",
+ "name": "python3"
+ },
+ "language_info": {
+ "codemirror_mode": {
+ "name": "ipython",
+ "version": 3
+ },
+ "file_extension": ".py",
+ "mimetype": "text/x-python",
+ "name": "python",
+ "nbconvert_exporter": "python",
+ "pygments_lexer": "ipython3",
+ "version": "3.9.1"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 5
+}
diff --git a/docs/extras/integrations/document_loaders/arcgis.ipynb b/docs/extras/integrations/document_loaders/arcgis.ipynb
new file mode 100644
index 00000000000..9420d4c4e0c
--- /dev/null
+++ b/docs/extras/integrations/document_loaders/arcgis.ipynb
@@ -0,0 +1,309 @@
+{
+ "cells": [
+ {
+ "cell_type": "markdown",
+ "id": "62359e08-cf80-4210-a30c-f450000e65b9",
+ "metadata": {},
+ "source": [
+ "# ArcGIS\n",
+ "\n",
+ "This notebook demonstrates the use of the `langchain.document_loaders.ArcGISLoader` class.\n",
+ "\n",
+ "You will need to install the ArcGIS API for Python `arcgis` and, optionally, `bs4.BeautifulSoup`.\n",
+ "\n",
+ "You can use an `arcgis.gis.GIS` object for authenticated data loading, or leave it blank to access public data."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 1,
+ "id": "b782cab5-0584-4e2a-9073-009fb8dc93a3",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "from langchain.document_loaders import ArcGISLoader\n",
+ "\n",
+ "\n",
+ "url = \"https://maps1.vcgov.org/arcgis/rest/services/Beaches/MapServer/7\"\n",
+ "\n",
+ "loader = ArcGISLoader(url)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 2,
+ "id": "aa3053cf-4127-43ea-bf56-e378b348091f",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "CPU times: user 7.86 ms, sys: 0 ns, total: 7.86 ms\n",
+ "Wall time: 802 ms\n"
+ ]
+ }
+ ],
+ "source": [
+ "%%time\n",
+ "\n",
+ "docs = loader.load()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 3,
+ "id": "a2444519-9117-4feb-8bb9-8931ce286fa5",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "{'accessed': '2023-08-15T04:30:41.689270+00:00Z',\n",
+ " 'name': 'Beach Ramps',\n",
+ " 'url': 'https://maps1.vcgov.org/arcgis/rest/services/Beaches/MapServer/7',\n",
+ " 'layer_description': '(Not Provided)',\n",
+ " 'item_description': '(Not Provided)',\n",
+ " 'layer_properties': {\n",
+ " \"currentVersion\": 10.81,\n",
+ " \"id\": 7,\n",
+ " \"name\": \"Beach Ramps\",\n",
+ " \"type\": \"Feature Layer\",\n",
+ " \"description\": \"\",\n",
+ " \"geometryType\": \"esriGeometryPoint\",\n",
+ " \"sourceSpatialReference\": {\n",
+ " \"wkid\": 2881,\n",
+ " \"latestWkid\": 2881\n",
+ " },\n",
+ " \"copyrightText\": \"\",\n",
+ " \"parentLayer\": null,\n",
+ " \"subLayers\": [],\n",
+ " \"minScale\": 750000,\n",
+ " \"maxScale\": 0,\n",
+ " \"drawingInfo\": {\n",
+ " \"renderer\": {\n",
+ " \"type\": \"simple\",\n",
+ " \"symbol\": {\n",
+ " \"type\": \"esriPMS\",\n",
+ " \"url\": \"9bb2e5ca499bb68aa3ee0d4e1ecc3849\",\n",
+ " \"imageData\": \"iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IB2cksfwAAAAlwSFlzAAAOxAAADsQBlSsOGwAAAJJJREFUOI3NkDEKg0AQRZ9kkSnSGBshR7DJqdJYeg7BMpcS0uQWQsqoCLExkcUJzGqT38zw2fcY1rEzbp7vjXz0EXC7gBxs1ABcG/8CYkCcDqwyLqsV+RlV0I/w7PzuJBArr1VB20H58Ls6h+xoFITkTwWpQJX7XSIBAnFwVj7MLAjJV/AC6G3QoAmK+74Lom04THTBEp/HCSc6AAAAAElFTkSuQmCC\",\n",
+ " \"contentType\": \"image/png\",\n",
+ " \"width\": 12,\n",
+ " \"height\": 12,\n",
+ " \"angle\": 0,\n",
+ " \"xoffset\": 0,\n",
+ " \"yoffset\": 0\n",
+ " },\n",
+ " \"label\": \"\",\n",
+ " \"description\": \"\"\n",
+ " },\n",
+ " \"transparency\": 0,\n",
+ " \"labelingInfo\": null\n",
+ " },\n",
+ " \"defaultVisibility\": true,\n",
+ " \"extent\": {\n",
+ " \"xmin\": -81.09480168806815,\n",
+ " \"ymin\": 28.858349245353473,\n",
+ " \"xmax\": -80.77512908572814,\n",
+ " \"ymax\": 29.41078388840041,\n",
+ " \"spatialReference\": {\n",
+ " \"wkid\": 4326,\n",
+ " \"latestWkid\": 4326\n",
+ " }\n",
+ " },\n",
+ " \"hasAttachments\": false,\n",
+ " \"htmlPopupType\": \"esriServerHTMLPopupTypeNone\",\n",
+ " \"displayField\": \"AccessName\",\n",
+ " \"typeIdField\": null,\n",
+ " \"subtypeFieldName\": null,\n",
+ " \"subtypeField\": null,\n",
+ " \"defaultSubtypeCode\": null,\n",
+ " \"fields\": [\n",
+ " {\n",
+ " \"name\": \"OBJECTID\",\n",
+ " \"type\": \"esriFieldTypeOID\",\n",
+ " \"alias\": \"OBJECTID\",\n",
+ " \"domain\": null\n",
+ " },\n",
+ " {\n",
+ " \"name\": \"Shape\",\n",
+ " \"type\": \"esriFieldTypeGeometry\",\n",
+ " \"alias\": \"Shape\",\n",
+ " \"domain\": null\n",
+ " },\n",
+ " {\n",
+ " \"name\": \"AccessName\",\n",
+ " \"type\": \"esriFieldTypeString\",\n",
+ " \"alias\": \"AccessName\",\n",
+ " \"length\": 40,\n",
+ " \"domain\": null\n",
+ " },\n",
+ " {\n",
+ " \"name\": \"AccessID\",\n",
+ " \"type\": \"esriFieldTypeString\",\n",
+ " \"alias\": \"AccessID\",\n",
+ " \"length\": 50,\n",
+ " \"domain\": null\n",
+ " },\n",
+ " {\n",
+ " \"name\": \"AccessType\",\n",
+ " \"type\": \"esriFieldTypeString\",\n",
+ " \"alias\": \"AccessType\",\n",
+ " \"length\": 25,\n",
+ " \"domain\": null\n",
+ " },\n",
+ " {\n",
+ " \"name\": \"GeneralLoc\",\n",
+ " \"type\": \"esriFieldTypeString\",\n",
+ " \"alias\": \"GeneralLoc\",\n",
+ " \"length\": 100,\n",
+ " \"domain\": null\n",
+ " },\n",
+ " {\n",
+ " \"name\": \"MilePost\",\n",
+ " \"type\": \"esriFieldTypeDouble\",\n",
+ " \"alias\": \"MilePost\",\n",
+ " \"domain\": null\n",
+ " },\n",
+ " {\n",
+ " \"name\": \"City\",\n",
+ " \"type\": \"esriFieldTypeString\",\n",
+ " \"alias\": \"City\",\n",
+ " \"length\": 50,\n",
+ " \"domain\": null\n",
+ " },\n",
+ " {\n",
+ " \"name\": \"AccessStatus\",\n",
+ " \"type\": \"esriFieldTypeString\",\n",
+ " \"alias\": \"AccessStatus\",\n",
+ " \"length\": 50,\n",
+ " \"domain\": null\n",
+ " },\n",
+ " {\n",
+ " \"name\": \"Entry_Date_Time\",\n",
+ " \"type\": \"esriFieldTypeDate\",\n",
+ " \"alias\": \"Entry_Date_Time\",\n",
+ " \"length\": 8,\n",
+ " \"domain\": null\n",
+ " },\n",
+ " {\n",
+ " \"name\": \"DrivingZone\",\n",
+ " \"type\": \"esriFieldTypeString\",\n",
+ " \"alias\": \"DrivingZone\",\n",
+ " \"length\": 50,\n",
+ " \"domain\": null\n",
+ " }\n",
+ " ],\n",
+ " \"geometryField\": {\n",
+ " \"name\": \"Shape\",\n",
+ " \"type\": \"esriFieldTypeGeometry\",\n",
+ " \"alias\": \"Shape\"\n",
+ " },\n",
+ " \"indexes\": null,\n",
+ " \"subtypes\": [],\n",
+ " \"relationships\": [],\n",
+ " \"canModifyLayer\": true,\n",
+ " \"canScaleSymbols\": false,\n",
+ " \"hasLabels\": false,\n",
+ " \"capabilities\": \"Map,Query,Data\",\n",
+ " \"maxRecordCount\": 1000,\n",
+ " \"supportsStatistics\": true,\n",
+ " \"supportsAdvancedQueries\": true,\n",
+ " \"supportedQueryFormats\": \"JSON, geoJSON\",\n",
+ " \"isDataVersioned\": false,\n",
+ " \"ownershipBasedAccessControlForFeatures\": {\n",
+ " \"allowOthersToQuery\": true\n",
+ " },\n",
+ " \"useStandardizedQueries\": true,\n",
+ " \"advancedQueryCapabilities\": {\n",
+ " \"useStandardizedQueries\": true,\n",
+ " \"supportsStatistics\": true,\n",
+ " \"supportsHavingClause\": true,\n",
+ " \"supportsCountDistinct\": true,\n",
+ " \"supportsOrderBy\": true,\n",
+ " \"supportsDistinct\": true,\n",
+ " \"supportsPagination\": true,\n",
+ " \"supportsTrueCurve\": true,\n",
+ " \"supportsReturningQueryExtent\": true,\n",
+ " \"supportsQueryWithDistance\": true,\n",
+ " \"supportsSqlExpression\": true\n",
+ " },\n",
+ " \"supportsDatumTransformation\": true,\n",
+ " \"dateFieldsTimeReference\": null,\n",
+ " \"supportsCoordinatesQuantization\": true\n",
+ " }}"
+ ]
+ },
+ "execution_count": 3,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "docs[0].metadata"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 4,
+ "id": "1d132b7d-5a13-4d66-98e8-785ffdf87af0",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "{\"OBJECTID\": 4, \"AccessName\": \"BEACHWAY AV\", \"AccessID\": \"NS-106\", \"AccessType\": \"OPEN VEHICLE RAMP\", \"GeneralLoc\": \"1400 N ATLANTIC AV\", \"MilePost\": 1.57, \"City\": \"NEW SMYRNA BEACH\", \"AccessStatus\": \"CLOSED\", \"Entry_Date_Time\": 1692039947000, \"DrivingZone\": \"YES\"}\n",
+ "{\"OBJECTID\": 5, \"AccessName\": \"SEABREEZE BLVD\", \"AccessID\": \"DB-051\", \"AccessType\": \"OPEN VEHICLE RAMP\", \"GeneralLoc\": \"500 BLK N ATLANTIC AV\", \"MilePost\": 14.24, \"City\": \"DAYTONA BEACH\", \"AccessStatus\": \"CLOSED\", \"Entry_Date_Time\": 1692039947000, \"DrivingZone\": \"BOTH\"}\n",
+ "{\"OBJECTID\": 6, \"AccessName\": \"27TH AV\", \"AccessID\": \"NS-141\", \"AccessType\": \"OPEN VEHICLE RAMP\", \"GeneralLoc\": \"3600 BLK S ATLANTIC AV\", \"MilePost\": 4.83, \"City\": \"NEW SMYRNA BEACH\", \"AccessStatus\": \"CLOSED\", \"Entry_Date_Time\": 1692039947000, \"DrivingZone\": \"BOTH\"}\n",
+ "{\"OBJECTID\": 11, \"AccessName\": \"INTERNATIONAL SPEEDWAY BLVD\", \"AccessID\": \"DB-059\", \"AccessType\": \"OPEN VEHICLE RAMP\", \"GeneralLoc\": \"300 BLK S ATLANTIC AV\", \"MilePost\": 15.27, \"City\": \"DAYTONA BEACH\", \"AccessStatus\": \"CLOSED\", \"Entry_Date_Time\": 1692039947000, \"DrivingZone\": \"BOTH\"}\n",
+ "{\"OBJECTID\": 14, \"AccessName\": \"GRANADA BLVD\", \"AccessID\": \"OB-030\", \"AccessType\": \"OPEN VEHICLE RAMP\", \"GeneralLoc\": \"20 BLK OCEAN SHORE BLVD\", \"MilePost\": 10.02, \"City\": \"ORMOND BEACH\", \"AccessStatus\": \"CLOSED\", \"Entry_Date_Time\": 1692039947000, \"DrivingZone\": \"BOTH\"}\n",
+ "{\"OBJECTID\": 27, \"AccessName\": \"UNIVERSITY BLVD\", \"AccessID\": \"DB-048\", \"AccessType\": \"OPEN VEHICLE RAMP\", \"GeneralLoc\": \"900 BLK N ATLANTIC AV\", \"MilePost\": 13.74, \"City\": \"DAYTONA BEACH\", \"AccessStatus\": \"CLOSED\", \"Entry_Date_Time\": 1692039947000, \"DrivingZone\": \"BOTH\"}\n",
+ "{\"OBJECTID\": 38, \"AccessName\": \"BEACH ST\", \"AccessID\": \"PI-097\", \"AccessType\": \"OPEN VEHICLE RAMP\", \"GeneralLoc\": \"4890 BLK S ATLANTIC AV\", \"MilePost\": 25.85, \"City\": \"PONCE INLET\", \"AccessStatus\": \"CLOSED\", \"Entry_Date_Time\": 1692039947000, \"DrivingZone\": \"BOTH\"}\n",
+ "{\"OBJECTID\": 42, \"AccessName\": \"BOTEFUHR AV\", \"AccessID\": \"DBS-067\", \"AccessType\": \"OPEN VEHICLE RAMP\", \"GeneralLoc\": \"1900 BLK S ATLANTIC AV\", \"MilePost\": 16.68, \"City\": \"DAYTONA BEACH SHORES\", \"AccessStatus\": \"CLOSED\", \"Entry_Date_Time\": 1692039947000, \"DrivingZone\": \"YES\"}\n",
+ "{\"OBJECTID\": 43, \"AccessName\": \"SILVER BEACH AV\", \"AccessID\": \"DB-064\", \"AccessType\": \"OPEN VEHICLE RAMP\", \"GeneralLoc\": \"1000 BLK S ATLANTIC AV\", \"MilePost\": 15.98, \"City\": \"DAYTONA BEACH\", \"AccessStatus\": \"CLOSED\", \"Entry_Date_Time\": 1692039947000, \"DrivingZone\": \"YES\"}\n",
+ "{\"OBJECTID\": 45, \"AccessName\": \"MILSAP RD\", \"AccessID\": \"OB-037\", \"AccessType\": \"OPEN VEHICLE RAMP\", \"GeneralLoc\": \"700 BLK S ATLANTIC AV\", \"MilePost\": 11.52, \"City\": \"ORMOND BEACH\", \"AccessStatus\": \"CLOSED\", \"Entry_Date_Time\": 1692039947000, \"DrivingZone\": \"YES\"}\n",
+ "{\"OBJECTID\": 56, \"AccessName\": \"3RD AV\", \"AccessID\": \"NS-118\", \"AccessType\": \"OPEN VEHICLE RAMP\", \"GeneralLoc\": \"1200 BLK HILL ST\", \"MilePost\": 3.25, \"City\": \"NEW SMYRNA BEACH\", \"AccessStatus\": \"CLOSED\", \"Entry_Date_Time\": 1692039947000, \"DrivingZone\": \"YES\"}\n",
+ "{\"OBJECTID\": 64, \"AccessName\": \"DUNLAWTON BLVD\", \"AccessID\": \"DBS-078\", \"AccessType\": \"OPEN VEHICLE RAMP\", \"GeneralLoc\": \"3400 BLK S ATLANTIC AV\", \"MilePost\": 20.61, \"City\": \"DAYTONA BEACH SHORES\", \"AccessStatus\": \"CLOSED\", \"Entry_Date_Time\": 1692039947000, \"DrivingZone\": \"YES\"}\n",
+ "{\"OBJECTID\": 69, \"AccessName\": \"EMILIA AV\", \"AccessID\": \"DBS-082\", \"AccessType\": \"OPEN VEHICLE RAMP\", \"GeneralLoc\": \"3790 BLK S ATLANTIC AV\", \"MilePost\": 21.38, \"City\": \"DAYTONA BEACH SHORES\", \"AccessStatus\": \"CLOSED\", \"Entry_Date_Time\": 1692039947000, \"DrivingZone\": \"BOTH\"}\n",
+ "{\"OBJECTID\": 94, \"AccessName\": \"FLAGLER AV\", \"AccessID\": \"NS-110\", \"AccessType\": \"OPEN VEHICLE RAMP\", \"GeneralLoc\": \"500 BLK FLAGLER AV\", \"MilePost\": 2.57, \"City\": \"NEW SMYRNA BEACH\", \"AccessStatus\": \"CLOSED\", \"Entry_Date_Time\": 1692039947000, \"DrivingZone\": \"YES\"}\n",
+ "{\"OBJECTID\": 96, \"AccessName\": \"CRAWFORD RD\", \"AccessID\": \"NS-108\", \"AccessType\": \"OPEN VEHICLE RAMP - PASS\", \"GeneralLoc\": \"800 BLK N ATLANTIC AV\", \"MilePost\": 2.19, \"City\": \"NEW SMYRNA BEACH\", \"AccessStatus\": \"CLOSED\", \"Entry_Date_Time\": 1692039947000, \"DrivingZone\": \"YES\"}\n",
+ "{\"OBJECTID\": 124, \"AccessName\": \"HARTFORD AV\", \"AccessID\": \"DB-043\", \"AccessType\": \"OPEN VEHICLE RAMP\", \"GeneralLoc\": \"1890 BLK N ATLANTIC AV\", \"MilePost\": 12.76, \"City\": \"DAYTONA BEACH\", \"AccessStatus\": \"CLOSED\", \"Entry_Date_Time\": 1692039947000, \"DrivingZone\": \"YES\"}\n",
+ "{\"OBJECTID\": 127, \"AccessName\": \"WILLIAMS AV\", \"AccessID\": \"DB-042\", \"AccessType\": \"OPEN VEHICLE RAMP\", \"GeneralLoc\": \"2200 BLK N ATLANTIC AV\", \"MilePost\": 12.5, \"City\": \"DAYTONA BEACH\", \"AccessStatus\": \"CLOSED\", \"Entry_Date_Time\": 1692039947000, \"DrivingZone\": \"YES\"}\n",
+ "{\"OBJECTID\": 136, \"AccessName\": \"CARDINAL DR\", \"AccessID\": \"OB-036\", \"AccessType\": \"OPEN VEHICLE RAMP\", \"GeneralLoc\": \"600 BLK S ATLANTIC AV\", \"MilePost\": 11.27, \"City\": \"ORMOND BEACH\", \"AccessStatus\": \"CLOSED\", \"Entry_Date_Time\": 1692039947000, \"DrivingZone\": \"YES\"}\n",
+ "{\"OBJECTID\": 229, \"AccessName\": \"EL PORTAL ST\", \"AccessID\": \"DBS-076\", \"AccessType\": \"OPEN VEHICLE RAMP\", \"GeneralLoc\": \"3200 BLK S ATLANTIC AV\", \"MilePost\": 20.04, \"City\": \"DAYTONA BEACH SHORES\", \"AccessStatus\": \"CLOSED\", \"Entry_Date_Time\": 1692039947000, \"DrivingZone\": \"YES\"}\n",
+ "{\"OBJECTID\": 230, \"AccessName\": \"HARVARD DR\", \"AccessID\": \"OB-038\", \"AccessType\": \"OPEN VEHICLE RAMP\", \"GeneralLoc\": \"900 BLK S ATLANTIC AV\", \"MilePost\": 11.72, \"City\": \"ORMOND BEACH\", \"AccessStatus\": \"CLOSED\", \"Entry_Date_Time\": 1692039947000, \"DrivingZone\": \"YES\"}\n",
+ "{\"OBJECTID\": 232, \"AccessName\": \"VAN AV\", \"AccessID\": \"DBS-075\", \"AccessType\": \"OPEN VEHICLE RAMP\", \"GeneralLoc\": \"3100 BLK S ATLANTIC AV\", \"MilePost\": 19.6, \"City\": \"DAYTONA BEACH SHORES\", \"AccessStatus\": \"CLOSED\", \"Entry_Date_Time\": 1692039947000, \"DrivingZone\": \"YES\"}\n",
+ "{\"OBJECTID\": 234, \"AccessName\": \"ROCKEFELLER DR\", \"AccessID\": \"OB-034\", \"AccessType\": \"OPEN VEHICLE RAMP\", \"GeneralLoc\": \"400 BLK S ATLANTIC AV\", \"MilePost\": 10.9, \"City\": \"ORMOND BEACH\", \"AccessStatus\": \"CLOSED\", \"Entry_Date_Time\": 1692039947000, \"DrivingZone\": \"YES\"}\n",
+ "{\"OBJECTID\": 235, \"AccessName\": \"MINERVA RD\", \"AccessID\": \"DBS-069\", \"AccessType\": \"OPEN VEHICLE RAMP\", \"GeneralLoc\": \"2300 BLK S ATLANTIC AV\", \"MilePost\": 17.52, \"City\": \"DAYTONA BEACH SHORES\", \"AccessStatus\": \"CLOSED\", \"Entry_Date_Time\": 1692039947000, \"DrivingZone\": \"YES\"}\n"
+ ]
+ }
+ ],
+ "source": [
+ "for doc in docs:\n",
+ " print(doc.page_content)"
+ ]
+ }
+ ],
+ "metadata": {
+ "kernelspec": {
+ "display_name": "Python 3 (ipykernel)",
+ "language": "python",
+ "name": "python3"
+ },
+ "language_info": {
+ "codemirror_mode": {
+ "name": "ipython",
+ "version": 3
+ },
+ "file_extension": ".py",
+ "mimetype": "text/x-python",
+ "name": "python",
+ "nbconvert_exporter": "python",
+ "pygments_lexer": "ipython3",
+ "version": "3.9.13"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 5
+}
diff --git a/docs/extras/integrations/document_loaders/async_chromium.ipynb b/docs/extras/integrations/document_loaders/async_chromium.ipynb
new file mode 100644
index 00000000000..ddb220913ca
--- /dev/null
+++ b/docs/extras/integrations/document_loaders/async_chromium.ipynb
@@ -0,0 +1,101 @@
+{
+ "cells": [
+ {
+ "cell_type": "markdown",
+ "id": "ad553e51",
+ "metadata": {},
+ "source": [
+ "# Async Chromium\n",
+ "\n",
+ "Chromium is one of the browsers supported by Playwright, a library used to control browser automation. \n",
+ "\n",
+ "By running `p.chromium.launch(headless=True)`, we are launching a headless instance of Chromium. \n",
+ "\n",
+ "Headless mode means that the browser is running without a graphical user interface.\n",
+ "\n",
+ "`AsyncChromiumLoader` load the page, and then we use `Html2TextTransformer` to trasnform to text."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "id": "1c3a4c19",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "! pip install -q playwright beautifulsoup4\n",
+ "! playwright install"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 2,
+ "id": "dd2cdea7",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "'