跳到主要内容

MLflow 3.4.0

·4 分钟阅读
MLflow maintainers
MLflow 维护者

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

文档更新

有关更改的完整列表,请参阅发布更改日志,并访问mlflow.org查看最新文档。

MLflow 3.4.0rc0

·4 分钟阅读
MLflow maintainers
MLflow 维护者

MLflow 3.4.0rc0 是 3.4.0 的候选发布版本。要安装,请运行以下命令

pip install mlflow==3.4.0rc0

MLflow 3.4.0rc0 包含多项重大功能和改进

主要新特性

  • 📊 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

功能

  • [评估] 在 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

文档更新

请试用并向问题跟踪器报告任何问题。

MLflow 3.3.2

·阅读一分钟
MLflow maintainers
MLflow 维护者

MLflow 3.3.2 是一个补丁版本,包含多项小改进和错误修复

功能

错误修复

文档更新

有关更改的完整列表,请参阅发布更改日志,并访问mlflow.org查看最新文档。

MLflow 3.3.1

·阅读一分钟
MLflow maintainers
MLflow 维护者

MLflow 3.3.1 包含多项重大功能和改进

错误修复

小型错误修复和文档更新

#17295@gunsodo#17272@bbqiu

有关更改的完整列表,请参阅发布更改日志,并访问mlflow.org查看最新文档。

MLflow 3.3.0

·2 分钟阅读
MLflow maintainers
MLflow 维护者

MLflow 3.3.0 包含多项重大功能和改进

Eval UI

主要新功能:

  • 🪝 模型注册表 Webhooks:MLflow 现在支持模型注册表事件的 Webhooks,可实现自动通知和与外部系统的集成。(#16583@harupy
  • 🧭 Agno 跟踪集成:添加了 Agno 跟踪集成,以增强 AI 代理工作流的可观测性。(#16995@joelrobin18
  • 🧪 GenAI 评估(OSS 版本):MLflow 开源了 LLM 应用的新评估功能。该套件可实现 LLM 应用质量的系统化测量和改进,并与 MLflow 的可观测性、反馈收集和实验跟踪功能紧密集成。(#17161#17159@B-Step62
  • 🖥️ 改进的跟踪表视图:MLflow UI 中的新跟踪视图提供了一个简化的界面,用于探索、过滤和监控跟踪,并增强了搜索功能,包括跨请求的全文搜索。(#17092@daniellok-db
  • FastAPI + Uvicorn 服务器:MLflow 跟踪服务器现在默认使用 FastAPI + Uvicorn 以提高性能,同时保持 Flask 兼容性。(#17038@dbczumar

新功能

  • [跟踪] 添加 Docker compose 文件,以便快速启动具有推荐最低设置的本地 MLflow 服务器(#17065@joelrobin18
  • [跟踪] 添加 memory span 类型,用于代理工作流(#17034@B-Step62
  • [提示] 在 optimize_prompt 中启用自定义提示优化器,包括 DSPy 支持(#17052@TomeHirata
  • [模型注册表 / 提示] 正确支持 @latest 别名(#17146@B-Step62
  • [指标] 允许在 token_count 函数中使用自定义分词器编码(#16253@joelrobin18

错误修复

  • [跟踪] 修复 Databricks 密钥范围检查,以减少审计日志错误(#17166@harupy
  • [跟踪] 修复 Databricks SDK 错误代码映射在重试逻辑中(#17095@harupy
  • [跟踪] 修复 Databricks 密钥范围检查,以降低错误率(#17166@harupy
  • [跟踪] 从 CrewAI 跟踪中删除 API 密钥,以防止凭证泄露(#17082@diy2learn
  • [跟踪] 通过使回调同步来修复 LiteLLM span 关联问题(#16982@B-Step62
  • [跟踪] 修复 OpenAI Agents 跟踪(#17227@B-Step62
  • [评估] 修复 get_label_schema 没有属性的问题(#17163@smoorjani
  • [文档] 通过添加缺失的 CSS 类和 versions.json 生成来修复 API 参考页面上的版本选择器(#17247@copilot-swe-agent

文档更新

有关更改的完整列表,请参阅发布更改日志,并访问mlflow.org查看最新文档。

MLflow 3.2.0

·5分钟阅读
MLflow maintainers
MLflow 维护者

MLflow 3.2.0 包含多项重大功能和改进

主要新特性

📊 使用情况跟踪(3.2.0 新增)

功能

错误修复

  • [跟踪 / UI] 为新浏览器客户端请求(GraphQL 和记录的模型)添加缺失的默认标头并替换绝对 URL(#16840@danilopeixoto
  • [跟踪] 修复 artifact repositories 中 tracking_uri 位置参数错误(#16878@copilot-swe-agent
  • [模型] 修复 UnionType 对 Python 3.10 风格 union 语法的支持(#16882@harupy
  • [跟踪 / 跟踪] 修复 OpenAI 自动日志 Pydantic 对枚举值的验证(#16862@mohammadsubhani
  • [跟踪] 修复 Anthropic 和 Langchain 组合的跟踪(#15151@maver1ck
  • [模型] 修复 OpenAI 多模态消息日志记录支持(#16795@mohammadsubhani
  • [跟踪] 避免对 Azure Databricks 跟踪导出使用嵌套线程(#16733@TomeHirata
  • [评估] 错误修复:Databricks GenAI 评估数据集源返回字符串,而不是 DatasetSource 实例(#16712@dbczumar
  • [模型] 修复 get_model_info 以提供记录的模型信息(#16713@harupy
  • [评估] 修复 Python 评分器的序列化和反序列化(#16688@connorchenn
  • [UI] 修复 GraphQL handler 在 NaN 指标值时出错(#16628@daniellok-db
  • [UI] 恢复视频 artifact 预览(#16620@daniellok-db
  • [跟踪] 从 OAI 流式响应正确重建聊天消息(#16519@B-Step62
  • [跟踪] 将 search_traces() 响应中的跟踪列转换为 JSON 字符串(#16523@B-Step62
  • [评估] 修复 mlflow.evaluate 在 _get_binary_classifier_metrics 中因...而崩溃(#16485@mohammadsubhani
  • [评估] 修复 mlflow.genai.evaluate 的跟踪检测逻辑(#16932@B-Step62
  • [评估] 支持使用 make_genai_metric_from_prompt 进行 mlflow.evaluate(#16960@TomeHirata
  • [模型] 为解码流式 Responses 添加显式编码(#16855@aravind-segu
  • [跟踪] 防止跟踪 DSPy 模型 API 密钥(#17021@czyzby
  • [跟踪] 修复 pytorch 日期时间问题(#17030@serena-ruan
  • [跟踪] 修复带有预发布版本的 predict(#16998@serena-ruan

文档更新

有关更改的完整列表,请参阅发布更改日志,并访问mlflow.org查看最新文档。

MLflow 3.1.1

·阅读一分钟
MLflow maintainers
MLflow 维护者

MLflow 3.1.1 包含多项重大功能和改进

功能

  • [模型注册表 / Sqlalchemy] 将提示文本限制从 5K 增加到 100K(#16377@harupy
  • [跟踪] 支持 FileStore 和 SqlAlchemyStore 的 get-history 的分页(#16325@TomeHirata

错误修复

  • [Artifacts] 支持下载记录的模型 artifact(#16356@TomeHirata
  • [模型] 修复 bedrock provider,配置推理配置文件兼容性(#15604@lloydhamilton
  • [跟踪] 在 search_traces 过滤 run_id 时,指定 attribute.run_id(#16295@artjen
  • [跟踪] 修复 graphql 批量攻击(#16227@serena-ruan
  • [模型注册表] 使 DatabricksSDKModelsArtifactRepository 中的块大小可配置(#16247@TomeHirata

文档更新

有关更改的完整列表,请参阅发布更改日志,并访问mlflow.org查看最新文档。

MLflow 3

·4 分钟阅读
MLflow maintainers
MLflow 维护者

开源 MLflow 社区已达到一个重要里程碑。今天,我们发布了 MLflow 3,它为数百万开发者信赖的 ML 操作平台带来了生产级的生成式 AI 功能。

这不仅仅是又一次功能更新。MLflow 3 从根本上扩展了开源机器学习工具的可能性,解决了生成式AI部署中可观测性和质量方面的挑战,这些挑战曾让部署感觉像是一次冒险。

主要更新

🎯 MLflow LoggedModel

MLflow 3 引入了一个改进的架构,以新的 LoggedModel 实体作为一流公民,超越了传统的以运行为中心的方法。这使得跨实验更好地组织和比较 GenAI 代理、深度学习检查点和模型变体。

在文档中了解有关 MLflow LoggedModel 的更多信息。

🔗 强大的 lineage 支持

增强的模型跟踪提供了模型、运行、跟踪、提示和评估指标之间的全面 lineage。新的以模型为中心的设计允许您将来自交互式查询和自动化评估作业的跟踪和指标分组,从而能够对模型版本进行丰富的比较。

新的 GenAI 评估套件

MLflow 的评估和监控功能可帮助您在 GenAI 应用的整个生命周期中系统地测量、改进和维护其质量。从开发到生产,使用相同的质量评分器来确保您的应用程序提供准确、可靠的响应,同时管理成本和延迟。

在文档中了解有关新 GenAI 评估套件的更多信息。

信息

新的评估套件仅在 Databricks 上的托管 MLflow 中可用,开源支持即将推出。有兴趣尝试吗?开始免费 Databricks 试用,即可立即探索这些功能。

⚡ 提示优化

MLflow 提示注册表现在包含提示优化功能,允许您使用评估反馈和标记的数据集自动改进提示。这包括版本控制、跟踪和系统化的提示工程工作流。

在文档中了解有关 提示优化的更多信息。

📚 重构的文档

MLflow 文档已完全重新设计,以支持两个主要用户旅程:GenAI 开发和经典机器学习工作流。新结构为 GenAI 功能(包括 LLM、提示工程和跟踪)以及传统 ML 功能(如实验跟踪、模型注册表、部署和评估)提供了专用部分。

访问新的 MLflow 3 文档,探索更新的内容和指南。

其他功能

ResponsesAgent 的流式 API:通过 ResponsesAgent 类和 predict_stream 方法实现新的流式响应功能,为 GenAI 应用提供实时流式传输(文档

PydanticAIsmolagents 的自动跟踪支持:对新兴 GenAI 框架的增强自动跟踪集成,开箱即用提供无缝可观测性(PydanticAI 文档smolagents 文档)。

为提示注册表添加 search_prompts API:用于在注册表中搜索和发现提示的新 API 功能,使提示管理更高效(API 文档:search_prompts)。

支持 OpenAI/LangChain 自动跟踪的 token 跟踪:增强的跟踪功能现在捕获详细的 token 使用量和成本信息,以实现更好的可观测性和成本管理。

在跟踪中记录环境元数据:MLflow 自动捕获标准环境元数据,如源名称、Git 提交哈希和执行类型,作为跟踪上的标签(文档)。

UI 支持视频 artifacts:MLflow UI 现在支持直接在 artifact 查看器中查看视频文件,超越了传统的 ML artifacts。

以及更多:跟踪、模型注册表和 UI 组件的众多其他增强功能,以提高可用性、性能和开发者体验。

重大变更

MLflow 3 包含多项重大变更,旨在提高框架的一致性和性能。主要变更包括移除 MLflow Recipes、fastai 和 mleap flavors,以及各种已弃用的 API 参数。

有关重大变更的完整列表,请访问 MLflow 3 重大变更文档

升级建议

我们建议在将生产工作流升级之前,在单独的环境中测试 MLflow 3,以确保与现有设置的兼容性。

开始使用

pip install 'mlflow>=3.1'

探索新的 MLflow 3 文档,并通过我们更新的快速入门指南试用增强的 GenAI 功能。以模型为中心的架构和改进的跟踪功能使构建、评估和部署生产级 AI 应用比以往任何时候都更容易。访问 MLflow 3 文档,了解有关新功能以及如何开始的更多信息。

完整变更日志

有关 MLflow 3 中所有更改、错误修复和改进的完整列表,请访问 GitHub 上的完整变更日志

MLflow 2.22.1

·阅读一分钟
MLflow maintainers
MLflow 维护者

MLflow 2.22.1 带来了重要的错误修复和改进。

功能

  • [评分] 对于 DBConnect 客户端,使 spark_udf 支持 DBR 15.4 和 DBR 专用集群(#15938@WeichenXu123

错误修复

  • [模型注册表] 在 CreateModelVersion 中记录 SystemAuthPolicy 的资源(#15485@aravind-segu
  • [跟踪] Trace search:如果 include_spans=False,则避免为 span 获取生成线程(#15635@dbczumar

有关更改的完整列表,请参阅发布更改日志,并访问mlflow.org查看最新文档。