> ## Documentation Index
> Fetch the complete documentation index at: https://cndoc-langchain.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Databricks 集成

> 使用 LangChain Python 与 Databricks 集成。

> [Databricks](https://www.databricks.com/) 提供了一个数据和 AI 平台（通常称为 Databricks Lakehouse），用于分析、机器学习和生成式 AI 工作负载。

Databricks 以多种方式拥抱 LangChain 生态系统：

1. 🚀 **模型服务** - 通过高可用、低延迟的推理端点，访问最先进的 LLM，例如 DBRX、Llama3、Mixtral 或您在 [Databricks 模型服务](https://www.databricks.com/product/model-serving) 上微调的模型。LangChain 提供了 LLM (`Databricks`)、聊天模型 (`ChatDatabricks`) 和嵌入 (`DatabricksEmbeddings`) 实现，简化了将您托管在 Databricks 模型服务上的模型与 LangChain 应用程序集成的过程。
2. 📃 **向量搜索** - [Databricks 向量搜索](https://www.databricks.com/product/machine-learning/vector-search) 是一个无服务器向量数据库，无缝集成在 Databricks 平台中。使用 `DatabricksVectorSearch` 类将 LangChain 连接到您 Databricks 账户中的向量搜索索引。
3. 📊 **MLflow** - [MLflow](https://mlflow.org/) 是一个开源平台，用于管理完整的 ML 生命周期，包括实验管理、评估、跟踪、部署等。[MLflow 的 LangChain 集成](/oss/python/integrations/providers/mlflow_tracking) 简化了开发和运营现代复合 ML 系统的过程。
4. 🌐 **SQL 数据库** - [Databricks SQL](https://www.databricks.com/product/databricks-sql) 与 LangChain 中的 `SQLDatabase` 集成，允许您访问自动优化、性能卓越的数据仓库。
5. 💡 **开放模型** - Databricks 开源模型，例如 [DBRX](https://www.databricks.com/blog/introducing-dbrx-new-state-art-open-llm)，可通过 [Hugging Face Hub](https://huggingface.co/databricks/dbrx-instruct) 获取。这些模型可以直接与 LangChain 一起使用，利用其与 `transformers` 库的集成。

## 安装

第一方 Databricks 集成现已在 databricks-langchain 合作伙伴包中提供。

<CodeGroup>
  ```bash pip theme={"theme":{"light":"catppuccin-latte","dark":"catppuccin-mocha"}}
  pip install databricks-langchain
  ```

  ```bash uv theme={"theme":{"light":"catppuccin-latte","dark":"catppuccin-mocha"}}
  uv add databricks-langchain
  ```
</CodeGroup>

旧版 langchain-databricks 合作伙伴包仍然可用，但即将弃用。

## 聊天模型

`ChatDatabricks` 是一个聊天模型类，用于访问托管在 Databricks 上的聊天端点，包括最先进的模型（如 Llama3、Mixtral 和 DBRX）以及您自己微调的模型。

```
from databricks_langchain import ChatDatabricks

chat_model = ChatDatabricks(endpoint="databricks-meta-llama-3-70b-instruct")
```

有关如何在 LangChain 应用程序中使用它的更多指导，请参阅[使用示例](/oss/python/integrations/chat/databricks)。

## LLM

`Databricks` 是一个 LLM 类，用于访问托管在 Databricks 上的补全端点。

<Warning>
  文本补全模型已被弃用，最新且最受欢迎的模型是[聊天补全模型](/oss/python/langchain/models)。请改用 `ChatDatabricks` 聊天模型来使用这些模型以及工具调用等高级功能。
</Warning>

```
from langchain_community.llm.databricks import Databricks

llm = Databricks(endpoint="your-completion-endpoint")
```

有关如何在 LangChain 应用程序中使用它的更多指导，请参阅[使用示例](/oss/python/integrations/llms/databricks)。

## 嵌入

`DatabricksEmbeddings` 是一个嵌入类，用于访问托管在 Databricks 上的文本嵌入端点，包括最先进的模型（如 BGE）以及您自己微调的模型。

```
from databricks_langchain import DatabricksEmbeddings

embeddings = DatabricksEmbeddings(endpoint="databricks-bge-large-en")
```

有关如何在 LangChain 应用程序中使用它的更多指导，请参阅[使用示例](/oss/python/integrations/embeddings/databricks)。

## 向量搜索

Databricks 向量搜索是一个无服务器相似性搜索引擎，允许您将数据的向量表示（包括元数据）存储在向量数据库中。通过向量搜索，您可以从由 [Unity Catalog](https://www.databricks.com/product/unity-catalog) 管理的 [Delta](https://docs.databricks.com/en/introduction/delta-comparison.html) 表创建自动更新的向量搜索索引，并使用简单的 API 查询它们以返回最相似的向量。

```
from databricks_langchain import DatabricksVectorSearch

dvs = DatabricksVectorSearch(
    endpoint="<YOUT_ENDPOINT_NAME>",
    index_name="<YOUR_INDEX_NAME>",
    index,
    text_column="text",
    embedding=embeddings,
    columns=["source"]
)
docs = dvs.similarity_search("What is vector search?)
```

有关如何设置向量索引并将其与 LangChain 集成，请参阅[使用示例](/oss/python/integrations/vectorstores/databricks_vector_search)。

## MLflow 集成

在 LangChain 集成的背景下，MLflow 提供以下功能：

* **实验跟踪**：跟踪和存储来自您 LangChain 实验的模型、工件和跟踪信息。
* **依赖管理**：自动记录依赖库，确保开发、预生产和生产环境之间的一致性。
* **模型评估**：提供评估 LangChain 应用程序的原生功能。
* **跟踪**：可视化跟踪数据流经您的 LangChain 应用程序。

请参阅 [MLflow LangChain 集成](/oss/python/integrations/providers/mlflow_tracking)，通过大量代码示例和指南了解使用 MLflow 与 LangChain 的全部功能。

## SQLDatabase

要连接到 Databricks SQL 或查询结构化数据，请参阅 [Databricks 结构化检索器工具文档](https://docs.databricks.com/en/generative-ai/agent-framework/structured-retrieval-tools.html#table-query-tool)，要使用上述创建的 SQL UDF 创建代理，请参阅 [Databricks UC 集成](https://docs.unitycatalog.io/ai/integrations/langchain/)。

## 开放模型

要直接集成托管在 HuggingFace 上的 Databricks 开放模型，您可以使用 LangChain 的 [HuggingFace 集成](/oss/python/integrations/providers/huggingface)。

```
from langchain_huggingface import HuggingFaceEndpoint

llm = HuggingFaceEndpoint(
    repo_id="databricks/dbrx-instruct",
    task="text-generation",
    max_new_tokens=512,
    do_sample=False,
    repetition_penalty=1.03,
)
llm.invoke("What is DBRX model?")
```

***

<div className="source-links">
  <Callout icon="terminal-2">
    [将这些文档](/use-these-docs)通过 MCP 连接到 Claude、VSCode 等，以获取实时答案。
  </Callout>

  <Callout icon="edit">
    [在 GitHub 上编辑此页面](https://github.com/langchain-ai/docs/edit/main/src/oss/python/integrations/providers/databricks.mdx) 或 [提交问题](https://github.com/langchain-ai/docs/issues/new/choose)。
  </Callout>
</div>
