跳到主要内容

·阅读时长2分钟
MLflow maintainers

MLflow 2.8.1 是一个补丁版本,包含一些关键的错误修复,并更新了我们正在进行的文档重写工作。

重要详情

  • API mlflow.llm.log_predictions 已被标记为弃用,因为其功能已集成到 mlflow.log_table 中。此 API 将在 2.9.0 版本中移除。(#10414, @dbczumar)

错误修复

  • [Artifacts] 修复了 2.8.0 中的一个回归错误,该错误导致从注册模型下载单个文件失败 (#10362, @BenWilson2)
  • [Evaluate] 修复了在使用 LLM 评估指标时 mlflow.evaluate 的 Azure OpenAI 集成问题 (#10291, @prithvikannan)
  • [Evaluate] 将 make_genai_metric API 的 Examples 更改为可选参数 (#10353, @prithvikannan)
  • [Evaluate] 在对 LLM 结果使用 mlflow.evaluate 时移除 fastapi 依赖 (#10354, @prithvikannan)
  • [Evaluate] 修复语法问题并改进生成的提示模板的格式 (#10402, @annzhang-db)
  • [Gateway] 修复 Gateway 配置验证器对 OpenAI 的预检查,以执行实例类型验证 (#10379, @BenWilson2)
  • [Tracking] 修复了使用异步日志记录时线程间歇性挂起的问题 (#10374, @chenmoneygithub)
  • [Tracking] 为 mlflow.login() API 添加超时,以捕获无效主机名配置输入错误 (#10239, @chenmoneygithub)
  • [Tracking] 在记录系统指标结束时添加 flush 操作 (#10320, @chenmoneygithub)
  • [Models] 纠正提示工程 UI 中的提示模板生成逻辑,以便这些提示可以在 Python API 中使用 (#10341, @daniellok-db)
  • [Models] 修复 mlflow.shap.log_explanation 中 SHAP 模型可解释性功能的一个问题,避免在日志记录时注册重复或冲突的依赖项 (#10305, @BenWilson2)

文档更新

有关完整的更改列表,请参阅版本更改日志,并在mlflow.org上查阅最新文档。

·阅读时长5分钟
MLflow maintainers

MLflow 2.8.0 包含几项值得注意的新功能和改进

  • MLflow Evaluate API 在此版本中进行了广泛的功能开发,以支持 LLM 工作流程和多种新的评估模式。请参阅新的 MLflow LLM Evaluate 文档、指南和教程以了解更多信息。
  • MLflow 文档现代化工作已经开始。访问文档时,您会看到截然不同的外观和体验,以及一批新的教程和指南。更多文档更改即将推出!
  • 新增了 4 个 LLM 提供商!现在可以在 AI Gateway 中配置和使用 Google PaLM 2、AWS Bedrock、AI21 Labs 和 HuggingFace TGI。请在新的 AI Gateway 文档中了解更多信息!

功能

  • [Gateway] 在 AI Gateway 中添加对 AWS Bedrock 提供商的支持 (#9598, @andrew-christianson)
  • [Gateway] 在 AI Gateway 中添加对 Huggingface Text Generation Inference 提供商的支持 (#10072, @SDonkelaarGDD)
  • [Gateway] 在 AI Gateway 中添加对 Google PaLM 2 提供商的支持 (#9797, @arpitjasa-db)
  • [Gateway] 在 AI Gateway 中添加对 AI21labs 提供商的支持 (#9828, #10168, @zhe-db)
  • [Gateway] 引入通过环境变量设置 AI Gateway 配置文件位置的简化方法 (#9822, @danilopeixoto)
  • [Evaluate] 为 MLflow evaluate 引入默认提供的 LLM 评估指标 (#9913, @prithvikannan)
  • [Evaluate] 在 MLflow evaluate 中添加对评估推理数据集的支持 (#9830, @liangz1)
  • [Evaluate] 在 MLflow evaluate 中添加对评估单参数函数的支持 (#9718, @liangz1)
  • [Evaluate] 在 MLflow evaluate 中添加对 Retriever LLM 模型类型评估的支持 (#10079, @liangz1)
  • [Models] 在 ONNX flavor 中添加外部模型保存的可配置参数以解决回归问题 (#10152, @daniellok-db)
  • [Models] 添加在日志模型输入示例中保存推理参数的支持 (#9655, @serena-ruan)
  • [Models] 在 OpenAI flavor 中添加对 completions 的支持 (#9838, @santiagxf)
  • [Models] 添加对 OpenAI flavor 推理参数的支持 (#9909, @santiagxf)
  • [Models] 引入支持在加载模型时指定配置参数 (#9251, @santiagxf)
  • [Models] 在 OpenAI flavor 中添加对集成 Azure AD 认证的支持 (#9704, @santiagxf)
  • [Models / Scoring] 在模型服务中引入对模型训练谱系的支持 (#9402, @M4nouel)
  • [Model Registry] 引入用于在注册模型之间复制模型版本的 copy_model_version 客户端 API (#9946, #10078, #10140, @jerrylian-db)
  • [Tracking] 将参数值长度限制从 500 扩展到 6000 (#9709, @serena-ruan)
  • [Tracking] 引入对 MLflow 中 Spark 3.5 的 SparkConnect 模式的支持,允许记录使用 Spark 此操作模式创建的模型 (#9534, @WeichenXu123)
  • [Tracking] 向 MLflow fluent API 添加记录系统指标的支持 (#9557, #9712, #9714, @chenmoneygithub)
  • [Tracking] 在 MLflow 中添加 Keras 和 Tensorflow 的回调 (#9454, #9637, #9579, @chenmoneygithub)
  • [Tracking] 在 MLflow 中引入 Databricks 的 fluent login API (#9665, #10180, @chenmoneygithub)
  • [Tracking] 添加通过插件扩展自定义 MLflow 客户端 http 请求认证的支持 (#10049, @lu-ohai)
  • [Tracking] 引入对指标、参数和标签的实验性异步日志记录支持 (#9705, @sagarsumant)
  • [Auth] 修改 MLflow Authentication 中用户创建的行为,以便只有管理员才能创建新用户 (#9700, @gabrielfu)
  • [Artifacts] 添加通过插件扩展使用 xethub 作为 artifact store 的支持 (#9957, @Kelton8Z)

错误修复

  • [Evaluate] 修复了 MLflow evaluate 中使用 Azure OpenAI 配置的一个错误 (#9982, @sunishsheth2009)
  • [Models] 修复了在 transformers flavor 中保存以异构内存配置加载的模型时的数据一致性问题 (#10087, @BenWilson2)
  • [Models] 通过添加动态数据框类型,修复了 transformers flavor 处理复杂输入类型的问题 (#9044, @wamartin-aml)
  • [Models] 修复了 langchain flavor 支持具有多个输出的链的问题 (#9497, @bbqiu)
  • [Docker] 通过将默认的 env-manager 更改为 virtualenv,修复了 Docker 镜像生成的问题 (#9938, @Beramos)
  • [Auth] 修复了 MLflow Auth 处理复杂密码的问题,以支持更丰富的字符集范围 (#9760, @dotdothu)
  • [R] 修复了在 Databricks 中运行 MLflow R 时配置访问的一个错误 (#10117, @zacdav-db)

文档更新

有关完整的更改列表,请参阅版本更改日志,并在mlflow.org上查阅最新文档。

·阅读时长1分钟
MLflow maintainers

MLflow 2.7.1 是一个补丁版本,包含以下功能、错误修复和更改

功能

  • [Gateway / Databricks] 在 Databricks 中为 AI Gateway 路由添加 set_limitsget_limits API (#9516, @zhe-db)
  • [Artifacts / Databricks] 在 Unity Catalog 中添加对并行下载和上传 artifacts 的支持 (#9498, @jerrylian-db)

错误修复

  • [Models / R] 修复了 R 客户端的一个关键错误,该错误阻止模型加载 (#9624, @BenWilson2)
  • [Artifacts / Databricks] 下载模型时,禁用 UC Volumes 本地文件目标的多分段下载功能 (#9631, @BenWilson2)

有关完整的更改列表,请参阅版本更改日志,并在mlflow.org上查阅最新文档。

·阅读时长2分钟
MLflow maintainers

MLflow 2.7.0 包含几项主要功能和改进

  • [UI / Gateway] 我们很高兴宣布推出提示工程 UI。这项新增功能提供了一套工具,专为高效的 LLM 用例提示开发、测试和评估而量身定制。它直接集成到 MLflow AI Gateway 中,为设计、追踪和部署提示模板提供了无缝体验。要了解此新功能,请参阅文档:https://mlflow.org.cn/docs/latest/llms/prompt-engineering.html (#9503, @prithvikannan)

功能

  • [Gateway] 引入 MosaicML 作为 MLflow AI Gateway 支持的提供商 (#9459, @arpitjasa-db)
  • [Models] 在将 transformers 模型加载为 pyfunc 时,添加对使用快照下载位置的支持 (#9362, @serena-ruan)
  • [Server-infra] 为 MLflow Tracking Server 认证引入插件支持 (#9191, @barrywhart)
  • [Artifacts / Model Registry] 添加对使用 R2 后端存储 artifacts 的支持 (#9490, @shichengzhou-db)
  • [Artifacts] 提升 Azure-based artifact stores 的上传和下载性能 (#9444, @jerrylian-db)
  • [Sagemaker] 添加对将模型部署到 Sagemaker Serverless 推理端点的支持 (#9085, @dogeplusplus)

错误修复

  • [Gateway] 通过在每次请求前重新解析 AI Gateway 凭据来修复凭据过期错误 (#9518, @dbczumar)
  • [Gateway] 修复了当 AI Gateway 服务器上未定义任何路由时 search_routes 会引发异常的错误 (#9387, @QuentinAmbard)
  • [Gateway] 修复了 AI gateway 与 pydantic 2.x 的兼容性问题 (#9339, @harupy)
  • [Gateway] 修复了 AI Gateway 的初始化问题,该问题可能导致依赖冲突时 MLflow 在导入时无法工作。(#9337, @BenWilson2)
  • [Artifacts] 修复了在 Databricks 上将大型 artifacts 下载到 fuse mount 路径时的正确性问题 (#9545, @BenWilson2)

文档更新

有关完整的更改列表,请参阅版本更改日志,并在mlflow.org上查阅最新文档。

·阅读时长1分钟
MLflow maintainers

MLflow 2.6.0 包含几项主要功能和改进

功能

  • [Models / Scoring] 添加在 PyFunc 模型推理期间传递额外参数的支持 (#9068, @serena-ruan)
  • [Gateway] 将 MLflow serving 支持添加到 MLflow AI Gateway (#9199, @BenWilson2)
  • [Tracking] 为 mlflow.log_figure 添加 save_kwargs 支持,用于在保存图形时指定额外选项 (#9179, @stroblme)
  • [Artifacts] 上传/下载 artifacts 时显示进度条 (#9195, @serena-ruan)
  • [Models] 添加记录 LangChain retriever 模型 的支持 (#8808, @liangz1)
  • [Tracking] 添加支持将自定义标签记录到 autologging 创建的运行中 (#9114, @thinkall)

错误修复

  • [Models] 修复 transformers TextClassification pipelines 的 text_pair 功能 (#9215, @BenWilson2)
  • [Models] 修复 LangChain 与 SQLDatabase 的兼容性问题 (#9192, @dbczumar)
  • [Tracking] 在 mlflow.sklearn.autolog 中移除对 sklearn.metrics.get_scorer_names 的 patching,以避免重复日志记录 (#9095, @WeichenXu123)

文档更新

  • [Docs / Examples] 添加 MLflow AI Gateway 支持 MLflow 模型服务的示例和文档 (#9281, @BenWilson2)
  • [Docs / Examples] 添加 sentence-transformers 文档和示例 (#9047, @es94129)

弃用

  • [Models] mlflow.mleap 模块已被标记为弃用,并将在未来版本中移除 (#9311, @BenWilson2)

有关完整的更改列表,请参阅版本更改日志,并在mlflow.org上查阅最新文档。

·阅读时长2分钟
MLflow maintainers

MLflow 2.5.0 包含几项主要功能和改进

功能

错误修复

  • [Security] 通过增强路径验证来提高对 Windows 上 LFI 攻击的鲁棒性 (#8999, @serena-ruan)
    • 如果您在 Windows 上使用 mlflow servermlflow ui,建议尽快升级到 MLflow 2.5.0。
  • [Scoring] 支持 nullable array type 值作为 spark_udf 返回值 (#9014, @WeichenXu123)
  • [Models] 撤销将自定义模型代码添加到系统路径时对系统模块的缓存删除 (#8722, @trungn1)
  • [Models] 向 mlflow version pinning 添加微版本 (#8687, @C-K-Loan)
  • [Artifacts] 防止手动删除的 artifacts 导致 artifact 垃圾收集失败 (#8498, @PenHsuanWang)

文档更新

  • [Docs] 更新 .push_model_to_sagemaker 文档 (#8851, @pdifranc)
  • [Docs] 修复 Azure ML 文档的无效链接 (#8800, @dunnkers)
  • [Artifacts / Docs / Models / Projects] 添加了关于 OCI MLflow 插件的信息,以实现与 Oracle Cloud Infrastructure 服务的无缝集成。(#8707, @mrDzurb)

弃用

  • [Models] 弃用 gluon 模型 flavor。mlflow.gluon 模块将在未来版本中移除。(#8968, @harupy)

有关完整的更改列表,请参阅版本更改日志,并在mlflow.org上查阅最新文档。

·阅读时长3分钟
MLflow maintainers

MLflow 2.4.0 包含几项主要功能和改进

功能

  • [Tracking] 引入数据集追踪 API:mlflow.datamlflow.log_input() (#8186, @prithvikannan)
  • [Tracking] 添加用于记录评估表的 mlflow.log_table()mlflow.load_table() API (#8523, #8467, @sunishsheth2009)
  • [Tracking] 引入 mlflow.get_parent_run() fluent API (#8493, @annzhang-db)
  • [Tracking / Model Registry] 在 Databricks 上重新引入更快的 artifact 下载 (#8352, @dbczumar; #8561, @harupy)
  • [UI] 将数据集追踪信息添加到 MLflow Tracking UI (#8602, @prithvikannan, @hubertzub-db)
  • [UI] 引入 Artifact View,用于比较模型之间的输入、输出和元数据 (#8602, @hubertzub-db)
  • [Models] 扩展 mlflow.evaluate() 以支持 LLM 任务 (#8484, @harupy)
  • [Models] 在 mlflow.langchain flavor 中支持记录 ChainLLMChain 的子类 (#8453, @liangz1)
  • [Models] 向 mlflow.langchain flavor 添加对 LangChain Agents 的支持 (#8297, @sunishsheth2009)
  • [Models] 为 SentenceTransformers 添加一个 mlflow.sentence_transformers flavor (#8479, @BenWilson2; #8547, @Loquats)
  • [Models] 为 mlflow.transformers flavor 添加多 GPU 推理和高效权重加载的支持 (#8448, @ankit-db)
  • [Models] 在 mlflow.transformers flavor 中支持 max_shard_size 参数 (#8567, @wenfeiy-db)
  • [Models] 在 mlflow.transformers flavor 中添加对音频转录管道的支持 (#8464, @BenWilson2)
  • [Models] 为 mlflow.transformers flavor 添加音频分类的支持 (#8492, @BenWilson2)
  • [Models] 在使用 mlflow.transformers flavor 记录的音频模型中添加对 URI 输入的支持 (#8495, @BenWilson2)
  • [Models] 在 mlflow.transformers pyfunc 输出中添加返回分类器分数的功能支持 (#8512, @BenWilson2)
  • [Models] 在模型签名中支持可选输入 (#8438, @apurva-koti)
  • [Models] 引入 mlflow.models.set_signature() API,用于设置日志模型的签名 (#8476, @jerrylian-db)
  • [Models] 使用 mlflow.onnx.log_model() 记录模型时保留 ONNX Runtime InferenceSession 选项 (#8433, @leqiao-1)

错误修复

  • [Tracking] 当 Spark Autologging 被禁用或 Spark Session 关闭时,终止 Spark 回调服务器 (#8508, @WeichenXu123)
  • [Tracking] 修复 mlflow serverFlask<2.0 的兼容性 (#8463, @kevingreer)
  • [Models] 在批量推理期间将 mlflow.transformers pyfunc 标量字符串输出转换为字符串列表 (#8546, @BenWilson2)
  • [Models] 修复了一个导致 mlflow models build-docker 安装过时 pyenv 版本的问题 (#8488, @Hellzed)
  • [Model Registry] 删除 Model Version 时,从存储中移除别名 (#8459, @arpitjasa-db)

文档更新

有关完整的更改列表,请参阅版本更改日志,并在mlflow.org上查阅最新文档。

·阅读时长2分钟
MLflow maintainers

MLflow 2.3.2 是一个补丁版本,包含以下功能、错误修复和更改

功能

  • [Models] 为 transformers 模型 pyfunc 推理和 serving 添加 GPU 支持 (#8375, @ankit-db)
  • [Models] 在训练 transformers 模型时,禁用不相关模型的 autologging 功能 (#8405, @BenWilson2)
  • [Models] 在 transformers pipelines 中添加保留和覆盖 torch_dtype 值的支持 (#8421, @BenWilson2)
  • [Models] 在 transformers flavor 中添加对 Feature Extraction pipelines 的支持 (#8423, @BenWilson2)
  • [Tracking] 为用户、注册模型和实验权限添加基础 HTTP auth 支持 (#8286, @gabrielfu)

错误修复

  • [Models] 修复 transformers flavor 中 Text2TextGeneration pipelines 的推断 schema 问题 (#8391, @BenWilson2)
  • [Models] 将日志模型中的 MLflow 依赖 pinning 从范围值更改为精确的主版本和次版本 (#8422, @harupy)

文档更新

有关完整的更改列表,请参阅版本更改日志,并在mlflow.org上查阅最新文档。

·阅读时长1分钟
MLflow maintainers

MLflow 2.3.1 是一个补丁版本,包含错误修复和 GHSA-83fm-w79m-64r5 的安全补丁。如果您在使用 mlflow servermlflow ui,建议尽快升级到 MLflow 2.3.1。

安全补丁

  • [Security] 通过禁用在注册模型源中提供相对路径的功能,修复了严重的 LFI 攻击漏洞 (#8281, @BenWilson2)

错误修复

  • [Tracking] 修复了导致文件和模型上传在 Databricks 上挂起的问题 (#8348, @harupy)
  • [Tracking / Model Registry] 修复了导致文件和模型下载在 Databricks 上挂起的问题 (#8350, @dbczumar)
  • [Scoring] 修复了模型服务在使用输入格式进行推理时 schema enforcing 的回归问题 (#8326, @BenWilson2)
  • [Model Registry] 修复了模型命名解析的回归问题,该问题导致模型名称中不接受特殊字符 (#8322, @arpitjasa-db)
  • [Recipes] 修复了 pandas profiler 卡片渲染问题,以处理包含所有 null 值的列 (#8263, @sunishsheth2009)

·阅读时长3分钟
MLflow maintainers

我们很高兴宣布 MLflow 2.3.0 发布!

MLflow 2.3.0 包含几项主要功能和改进

功能

错误修复

  • [Models] 修复 tensorflow autologging 处理多输入模型的错误 (#8097, @jaume-ferrarons)
  • [Recipes] 修复 Pandas 2.0 更新导致的 profiler 渲染日期时间类型的错误 (#7925, @sunishsheth2009)
  • [Tracking] 防止在记录具有相同值的现有 key 的参数时引发异常 (#8038, @AdamStelmaszczyk)
  • [Tracking] 修复 FileStore backend 中删除实验的问题 (#8178, @mariusschlegel)
  • [Tracking] 修复 UI 错误,该错误导致 Model Version 页面中的“Source Run”字段指向不正确的 artifact 集 (#8156, @WeichenXu123)
  • [Tracking] 修复重命名运行会将其当前生命周期状态恢复为 UNFINISHED 的错误 (#8154, @WeichenXu123)
  • [Tracking] 修复 file URI 可用作模型版本源的错误 (#8126, @harupy)
  • [Projects] 修复包含子模块的 MLflow 项目的问题 (#8050, @kota-iizuka)
  • [Examples] 修复 lightning hyperparameter tuning 示例 (#8039, @BenWilson2)
  • [Server-infra] 修复静态服务器文件的 Cache-Control 标头错误 (#8016, @jmahlik)

文档更新

  • [Examples] 添加新的、详细的自定义模型 flavors 创建示例 (#7867, @benjaminbluhm)

有关完整的更改列表,请参阅版本更改日志,并在mlflow.org上查阅最新文档。