MLflow 3.4.0
MLflow 3.4.0 包含多项重大功能和改进
主要新特性
- 📊 OpenTelemetry 指标导出:MLflow 现在将 span 级别统计信息导出为 OpenTelemetry 指标,为被跟踪的应用提供增强的可观测性和监控功能。(#17325,@dbczumar)
- 🤖 MCP 服务器集成:为 MLflow 引入模型上下文协议 (MCP) 服务器,使 AI 助手和 LLM 能够以编程方式与 MLflow 进行交互。(#17122,@harupy)
- 🧑⚖️ 自定义评估器 API:新的
make_judge
API 支持创建自定义评估器,以基于特定于域的标准来评估 LLM 输出。(#17647,@BenWilson2,@dbczumar,@alkispoly-db,@smoorjani) - 📈 相关性后端:实现了后端基础设施,用于使用 NPMI(标准化点互信息)存储和计算实验指标之间的相关性。(#17309,#17368,@BenWilson2)
- 🗂️ 评估数据集:MLflow 现在支持直接在实验中存储和版本化评估数据集,以实现可复现的模型评估。(#17447,@BenWilson2)
- 🔗 MLflow 服务器的 Databricks 后端:MLflow 服务器现在可以使用 Databricks 作为后端,从而实现与 Databricks 工作区的无缝集成。(#17411,@nsthorat)
- 🤖 Claude 自动日志记录:Claude AI 交互的自动跟踪支持,捕获对话和模型响应。(#17305,@smoorjani)
- 🌊 Strands Agent 跟踪:添加了对 Strands 代理的全面跟踪支持,包括对代理工作流和交互的自动检测。(#17151,@joelrobin18)
- 🧪 UI 中的实验类型:MLflow 现在引入了实验类型,有助于减少经典 ML/DL 和 GenAI 功能之间的混乱。MLflow 会自动检测类型,但您可以通过实验名称旁边的选择器轻松进行调整。(#17605,@daniellok-db)
功能
- [评估] 在 mlflow.genai.evaluate 中添加通过 DataFrame 传递标签的能力(#17549,@smoorjani)
- [评估] 为 Safety 和 RetrievalRelevance 内置评分器添加自定义评估器模型支持(#17526,@dbrx-euirim)
- [跟踪] 将 AI 命令添加为 MCP 提示,用于 LLM 交互(#17608,@nsthorat)
- [跟踪] 添加 MLFLOW_ENABLE_OTLP_EXPORTER 环境变量(#17505,@dbczumar)
- [跟踪] 支持 OTel 和 MLflow 双重导出(#17187,@dbczumar)
- [跟踪] 使用 ContextVar 进行 set_destination,以实现线程安全(#17219,@B-Step62)
- [CLI] 为公开提示命令到 LLM 添加 MLflow 命令 CLI(#17530,@nsthorat)
- [CLI] 添加 'mlflow runs link-traces' 命令(#17444,@nsthorat)
- [CLI] 添加 'mlflow runs create' 命令以进行程序化运行创建(#17417,@nsthorat)
- [CLI] 添加具有全面搜索和管理功能的 MLflow traces CLI 命令(#17302,@nsthorat)
- [CLI] 将 --env-file 标志添加到所有 MLflow CLI 命令(#17509,@nsthorat)
- [跟踪] 用于在 MLflow 实验中存储评分器的后端(#17090,@WeichenXu123)
- [模型注册表] 允许在 WMR 和 UC 之间跨工作区复制模型版本(#17458,@arpitjasa-db)
- [模型] 为 GenAI 应用添加基于 Git 的自动模型版本控制(#17076,@harupy)
- [模型] 提高 WheeledModel._download_wheels 的安全性(#17004,@serena-ruan)
- [项目] 支持 Optuna 超参数优化的 resume run(#17191,@lu-wang-dl)
- [评分] 添加 MLFLOW_DEPLOYMENT_CLIENT_HTTP_REQUEST_TIMEOUT 环境变量(#17252,@dbczumar)
- [UI] 添加隐藏/取消隐藏图表视图中所有已完成运行的能力(#17143,@joelrobin18)
- [遥测] 为 invoke_custom_judge_model 添加 MLflow OSS 遥测(#17585,@dbrx-euirim)
错误修复
- [评估] 为默认 Databricks 模型服务实现 DSPy LM 接口(#17672,@smoorjani)
- [评估] 修复了将聚合错误地应用于旧评分器接口(#17596,@BenWilson2)
- [评估] 为 mlflow.evaluate 添加 Unity Catalog 表源支持(#17546,@BenWilson2)
- [评估] 修复自定义提示评估器与自定义评估器模型的编码问题(#17584,@dbrx-euirim)
- [跟踪] 修复 OpenAI 自动日志记录,以便从流式事件正确重建 Response 对象(#17535,@WeichenXu123)
- [跟踪] 在 TypeScript SDK 中添加基本身份验证支持(#17436,@kevin-lyn)
- [跟踪] 将评分器端点更新至 v3.0 API 规范(#17409,@WeichenXu123)
- [跟踪] 修复 MLflow 跟踪后端中的评分器状态处理(#17379,@WeichenXu123)
- [跟踪] 修复 UI 中丢失的源运行信息(#16682,@WeichenXu123)
- [评分] 修复 spark_udf 以始终使用 stdin_serve 进行模型服务(#17580,@WeichenXu123)
- [评分] 修复 Spark UDF 使用 uv 作为环境管理器时的错误(#17489,@WeichenXu123)
- [模型注册表] 在模型版本迁移期间从 run_link 提取源工作区 ID(#17600,@arpitjasa-db)
- [模型] 通过减少临时目录创建中的写入权限来提高安全性(#17544,@BenWilson2)
- [Server-infra] 修复 --env-file 标志与 --dev 模式的兼容性(#17615,@nsthorat)
- [Server-infra] 修复 Uvicorn 服务器的基本身份验证(#17523,@kevin-lyn)
- [UI] 修复 UI 中的实验比较功能(#17550,@Flametaa)
- [UI] 修复 compareExperimentsSearch 路由定义(#17459,@WeichenXu123)
文档更新
- [文档] 为评分器文档添加跟踪要求说明(#17542,@BenWilson2)
- [文档] 添加 Claude 代码自动跟踪文档(#17521,@smoorjani)
- [文档] 删除 MPU/MPD 功能的实验状态消息(#17486,@BenWilson2)
- [文档] 从文档中删除有问题页面(#17453,@BenWilson2)
- [文档] 添加 Databricks 注册模型更新签名的文档(#17450,@arpitjasa-db)
- [文档] 更新评分器 API 文档(#17298,@WeichenXu123)
- [文档] 添加评分器全面文档(#17258,@B-Step62)
有关更改的完整列表,请参阅发布更改日志,并访问mlflow.org查看最新文档。