Databricks AI Agent(Databricks AI 智能体) 节点
使用 Databricks AI Agent 节点,构建运行记录可在 Databricks 工作区的 MLflow Tracing 中查看的 AI 智能体1。此节点运行的智能体与 AI Agent 节点相同:接受相同的聊天模型、记忆、工具2和输出解析器子节点,并提供相同的选项。它额外提供 Export Traces to MLflow(将追踪导出到 MLflow)功能。开启后,每次运行都会在 MLflow 实验中创建一条追踪,并为每次模型调用和工具调用创建一个跨度(span),方便 Databricks 工作区运维团队将 n8n 智能体与其他 AI 系统一并检查。
本页介绍前置条件、设置步骤、节点参数、追踪包含的内容,以及发生故障时的导出行为。
凭据
身份验证设置指南,请参阅 Databricks 凭据。此节点的凭据为可选项。智能体使用所连接聊天模型子节点的凭据运行;此节点自己的 Databricks OAuth2 API 凭据仅用于导出追踪,因此开启 Export Traces to MLflow(将追踪导出到 MLflow)时需要选择此凭据。
预览状态
Databricks AI Agent 节点从 n8n 2.45.0 起处于预览阶段,未来版本中可能发生变化。请避免在生产工作流中依赖此节点。
前置条件
运行智能体需要一个具有自身凭据的聊天模型子节点,例如 Databricks Chat Model 节点。导出追踪还需要:
- n8n 中通过服务主体或用户登录配置的 Databricks OAuth2 凭据。服务主体必须是工作区成员,并具有 Workspace access(工作区访问)授权。
- 对接收追踪的实验具有 CAN EDIT 权限。CAN READ 权限不足:导出会失败,并返回
403,说明该身份没有编辑实验的权限。 - 节点在
/Shared下创建的默认实验不需要额外授权。默认情况下,Databricks 为所有工作区用户授予/Shared文件夹内对象的 CAN MANAGE 权限,因此该身份可以创建实验并向其写入数据。这也意味着每个工作区用户都可以打开和删除这些追踪。对于处理个人或机密数据的工作流,请将 Experiment(实验)设置为你控制的文件夹中的路径。也可先创建实验并设置权限,再开启导出。
权限变更需要一分钟或更长时间才能传递到追踪服务。变更后立即运行,可能仍使用旧权限。
设置节点
- 向工作流添加 Databricks AI Agent 节点,例如放在 Chat Trigger 节点之后。
- 点击 Chat Model(聊天模型)连接器上的 +,添加聊天模型,例如 Databricks Chat Model 节点。按照与 AI Agent 节点相同的方式,添加记忆、工具和输出解析器。Databricks Vector Store 节点和 Databricks Genie One MCP 服务器均可用作工具。
- 设置 Source for Prompt (User Message)(提示词来源,用户消息)和节点选项。
- 如需导出追踪,在 Credential to connect with(连接凭据)中选择 Databricks OAuth2 凭据,并开启 Export Traces to MLflow(将追踪导出到 MLflow)。
- 在 Experiment(实验)中,将名称留空,让节点为工作流创建实验;也可输入现有实验的路径或 ID。请参阅节点参数。
- 运行工作流。在 Databricks 中,打开侧边栏的 Experiments(实验),选择实验,再打开 Traces(追踪)选项卡。每次智能体运行显示为一条追踪,并提供问题和答案预览。
节点参数
- Source for Prompt (User Message)(提示词来源,用户消息):用户消息的来源,可选 Connected Chat Trigger Node(已连接的聊天触发器节点)或 Define below(在下方定义)。其行为与 AI Agent 节点的同名字段相同。此节点不提供 Connected Guardrails Node(已连接的 Guardrails 节点)来源。
- Require Specific Output Format(要求指定输出格式):开启后可连接输出解析器子 节点,规定智能体的输出格式。
- Enable Fallback Model(启用备用模型):开启后可连接第二个聊天模型,主模型失败时由智能体使用。
- Export Traces to MLflow(将追踪导出到 MLflow):是否将每次运行发送到此节点所选凭据对应工作区的 MLflow Tracing。默认关闭。
- Experiment(实验):追踪的存储位置。开启 Export Traces to MLflow(将追踪导出到 MLflow)时显示。
- By Name(按名称):实验路径,例如
/Shared/my-agent-traces。实验不存在时,节点会创建实验。留空则使用/Shared/n8n-workflows-<workflow-id>,每个工作流对应一个实验。 - By ID(按 ID):现有实验的数字 ID,可在 Databricks 中该实验的 URL 中找到。ID 不存在不会导致运行失败:智能体会作答,随后导出失败,并在 n8n 日志中记录警告。
- By Name(按名称):实验路径,例如
节点选项
这些选项与 AI Agent 节点相同。System Message(系统消息)、Max Iterations(最大迭代次数,默认 10)、Return Intermediate Steps(返回中间步骤)、Automatically Passthrough Binary Images(自动透传二进制图像)、Tracing Metadata(追踪元数据)和 Enable Streaming(启用流式输出)的说明,请参阅 Tools Agent。另有两个选项:
- Automatically Passthrough Binary PDFs(自动透传二进制 PDF):是否将输入中的二进制 PDF 文档作为消息的一部分传给模型。默认关闭。请搭配支持 PDF 输入的模型使用。
- Batch Processing(批量处理):Batch Size(批次大小)设置智能体一次处理的输入项数量(默认
1);Delay Between Batches(批次间延迟)设置批次之间等待的毫秒数(默认0)。可用此功能避免超过按 token 计费的模型服务的速率限制。
节点导出的内容
节点处理的每个数据项对应一条追踪。追踪包含由跨度组成的树:
- 顶层是智能体运行,以用户消息为输入,以最终答案为输出。
- 每次模型调用对应一个跨度,包含发送给模型的完整消息列表,以及 OpenAI 格式的模型补全结果。消息列表包含系统消息、从记忆加载的对话历史,以及以 base64 传给模型的图像或 PDF。跨度还记录工具调用和本次调用的 token 用量。
- 每次工具调用对应一个跨度,包含参数和结果。向量存储工具的跨度会显示其返回的文档。
- 当 Vector Store Question Answer Tool 等工具通过检索器查询向量存储时,每次检索器调用对应一个跨度。
每个跨度都包含开始和结束时间。追踪本身包含:
client_request_id:n8n 执行 ID,用于将工作区中的追踪对应到 n8n 中的一次执行。- 标签
n8n.source(n8n)、n8n.workflowId和n8n.node(节点名称)。 - 请求预览和响应预览,即问题和答案的前 1,000 个字符,显示为追踪列表中的两列。
- 本次运行的总 token 用量,使追踪列表无需打开跨度即可显示每次运行的成本。
- 状态:
OK,或运行失败时的ERROR。模型调用失败时,追踪变为ERROR,模型跨度中包含 Databricks 错误消息。工具抛出异常时,记录为ERROR工具跨度;如果智能体恢复并作答,追踪仍保持OK。
流式运行会导出相同的跨度,并填入结束时间和 token 数。取消运行时,导出也随之停止。实验中可能没有本次运行的追踪,也可能有一条不含跨度的追踪。无论哪种情况,n8n 都会记录导出失败。模型跨度命名为 ChatOpenAI,而非模型服务名称,因为 Databricks Chat Model 节点通过兼容 OpenAI 的客户端调用网关。
追踪包含你的数据
追踪导出会将每次运行的真实提示词(包括系统消息和记忆)、模型输出、工具结果以及检索到的文档,发送到所选凭据对应的 Databricks 工作区。在跨度内,n8n 仅对已知 token 格式和 password=... 等带标签的秘密信息进行脱敏,不会脱敏其他内容。 追踪列表中的问题和答案预览不会脱敏。导出默认关闭,数据仅发送到你自己的工作区,不会发送给 n8n 或第三方。对于处理个人或机密数据的工作流,开启此功能前,请与安全团队确认设置。
导出失败时的行为
追踪导出用于可观测性,因此不会改变运行结果:
- 因凭据不可用、实验查找失败或身份权限不足,导致节点无法准备导出时,智能体仍会运行并作答。n8n 会将
Databricks AI Agent: could not prepare MLflow trace export及其原因写入日志。 - 运行结束后追踪写入失败时,运行输出仍有效,n8n 会记录
Databricks AI Agent: MLflow trace export failed及 Databricks 错误。此警告仅显示在 n8n 服务器日志中,不会显示在执行中。 - 可能发生部分导出:Databricks 可以注册追踪,但拒绝上传其跨度,此时列表中会出现不含跨度的追踪。
- 唯一会直接导致失败的情况是缺少凭据。开启 Export Traces to MLflow(将追踪导出到 MLflow)却未选择凭据时,节点会在调用任何模型之前失败,返回
Select a Databricks credential to export traces to MLflow。
每条追踪的导出包含三次调用:在实验中注册追踪、请求带签名的上传 URL、将跨度上传到该 URL。上传 URL 自带短期有效的凭据,因此工作区 token 不会发送到该 URL。
相关资源
- 智能体选项和常见问题,请参阅 AI Agent 和 Tools Agent
- Databricks Chat Model
- Databricks Vector Store,包括智能体根据 Databricks 索引作答的完整示例
- Embeddings Databricks
- Databricks Genie One MCP 服务器
- Databricks 凭据
- 从社区包迁移:请参阅从 n8n-nodes-databricks 社区包迁移
- Databricks 文档中的 MLflow Tracing 和 MLflow 实验权限
查看 n8n 的高级 AI 文档。
常见问题
Select a Databricks credential to export traces to MLflow(请选择 Databricks 凭据以将追踪导出到 MLflow)
已开启 Export Traces to MLflow(将追踪导出到 MLflow),但节点没有凭据。请在 Credential to connect with(连接凭据)中选择 Databricks OAuth2 凭据,或关闭该选项。
实验中未出现追踪
运行成功但实验仍为空。请检查 n8n 服务器日志中以 Databricks AI Agent: 开头的日志行,其中会说明原因:403 表示该身份没有实验的 CAN EDIT 权限;404 且包含 RESOURCE_DOES_NOT_EXIST 表示 By ID(按 ID)指定的实验不存在;token 错误则表示凭据无法访问工作区。授予权限后,请等待一分钟再运行。
追踪不含跨度
Databricks 注册了追踪,但拒绝上传跨度,因此追踪列表显示该运行却没有跨度树。请检查 n8n 服务器日志中的上传错误,以及该身份是否具有实验的 CAN EDIT 权限。
智能体问题
模型不调用工具或触发速率限制等智能体本身的问题,请参阅 Databricks Chat Model 页面的为智能体选择模型和 AI Agent 的常见问题。