技术深度解析
Databricks 将 Apps 与 MLflow 的集成在架构上意义重大,因为它重新定义了单一治理边界内的 Agent 生命周期。传统上,AI Agent 技术栈如下所示:
- 数据层:数据湖中的原始数据(如 S3、ADLS)+ 独立向量数据库中的向量嵌入(如 Pinecone、Weaviate)。
- 编排层:LangChain、LlamaIndex 或自定义代码,用于将 LLM 调用与工具调用串联起来。
- 服务层:通过专用端点进行模型推理(如 Anyscale、Together AI)。
- 监控层:独立的可观测性工具(如 LangSmith、Weights & Biases)。
Databricks 将这一切压缩为一个统一的技术栈,其中湖仓既充当数据源,又充当运行时环境。其核心技术创新在于 MLflow Agent Tracking 能力。MLflow 早已是实验跟踪的事实标准,现在它能够记录 Agent 的每一个原子操作:输入提示、模型的原始响应、工具调用(如 SQL 查询、API 调用)、工具输出以及最终的 Agent 输出。这创建了一个完整的审计轨迹,以 Delta Lake 表的形式存储,支持时间点回放和调试。
在底层,Databricks Apps 提供了一个基于 Streamlit 类组件的低代码前端,但与 Unity Catalog 紧密集成以实现访问控制。当用户通过 App 与 Agent 交互时,请求会经过 MLflow 的跟踪中间件,该中间件以结构化格式捕获整个链路。这不仅仅是日志记录——这是一个反馈循环。跟踪数据可用于通过 Databricks 的模型训练功能微调底层模型,或调整检索参数。
一个具体示例:一位金融分析师向 Agent 提问:“请展示第二季度所有超过投资组合价值 10% 的交易。”Agent 会:
1. 解析意图。
2. 针对湖仓生成 SQL 查询。
3. 通过 Databricks SQL 执行查询。
4. 返回结果。
5. MLflow 记录查询、结果集和延迟。
如果查询返回错误或空集,跟踪功能允许开发人员精确检查失败发生的位置,而无需复制环境。这对于调试复杂的多步骤 Agent 来说是一个颠覆性的改进。
相关开源仓库:开源 MLflow 项目(GitHub: mlflow/mlflow,18k+ 星标)现已包含 `mlflow.tracing` 模块。开发人员可以在本地试验 Agent 跟踪,然后再部署到 Databricks。该仓库的最新版本(v2.14+)重点聚焦 Agent 可观测性,包括对 LangChain 和 LlamaIndex 集成的支持。
数据表:Agent 可观测性对比
| 特性 | Databricks + MLflow | LangSmith | Weights & Biases Prompts |
|---|---|---|---|
| 原生数据血缘 | 是(Delta Lake) | 部分(外部数据库) | 否 |
| 审计轨迹存储 | 湖仓(ACID) | 外部数据库 | 外部数据库 |
| 低代码应用构建器 | 是(Databricks Apps) | 否 | 否 |
| Unity Catalog 集成 | 原生 | 无 | 无 |
| 每 100 万跟踪步骤成本 | 包含在工作区内 | ~0.50 美元 | ~0.30 美元 |
| 开源核心 | 是(MLflow) | 否 | 否 |
数据要点:Databricks 的优势在于与数据层的深度集成。虽然 LangSmith 和 W&B 提供跟踪功能,但它们无法将跟踪数据存储在与源数据相同的 ACID 兼容湖仓中并进行治理,这使得 Databricks 成为唯一能够提供从原始数据到 Agent 输出端到端血缘的解决方案。
关键参与者与案例研究
Databricks 并非这一领域的唯一玩家,但其方法独树一帜。企业级 Agent 平台竞赛中的关键参与者包括:
- Databricks:利用其现有的湖仓客户群(超过 10,000 家客户,包括 50% 的财富 500 强企业)。其策略是从数据分析向上销售至 Agent 编排,以 Unity Catalog 作为治理支柱。
- Snowflake:推出了 Cortex AI,包括 Snowflake Notebooks 和用于检索增强生成(RAG)的 Cortex Search。然而,Snowflake 缺乏原生的低代码应用构建器,其 MLflow 集成也尚不成熟。Snowflake 的 Agent 故事更多是关于基于 SQL 的 Agent,而非通用工具调用型 Agent。
- Microsoft:通过 Copilot Studio 和 Azure AI 提供了广泛的 Agent 生态系统。但数据层是碎片化的(Azure SQL、Cosmos DB、Fabric)。Microsoft 的优势在于 Office 365 集成,而非数据湖仓。
- LangChain:这个开源编排框架已转向 LangSmith 和 LangGraph 用于生产监控。然而,LangChain 仍然是一个中间件层,而非数据平台。使用 LangChain 的企业仍需自行管理数据基础设施。
案例研究:一家大型医疗保健提供商
一家美国大型医疗系统(名称保密)最近试点使用 Databricks 构建临床试验匹配 Agent。该 Agent 从湖仓中摄取患者记录,查询微调后的 LLM 以匹配资格标准,并生成一份候选名单。