You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用MLflow保存记录PyTorch模型?代码路径报错相关疑问

MLflow PyTorch模型保存:code_paths配置问题解答

疑问1:是否需要设置code_paths和extra_files参数?

  • 如果你的PyTorch模型依赖models目录下的自定义模块(比如模型结构定义、训练工具函数等),加载模型时必须依赖这些代码才能正常实例化或运行,必须设置code_paths。MLflow默认只会保存模型权重和基础配置,不会自动打包依赖的自定义代码,不设置的话加载时会因找不到模块报错。
  • extra_files仅用于打包非代码类额外文件(如配置文件、预处理字典等),没有这类需求的话完全不需要设置。

疑问2:正确配置code_paths目录的方式?

先修正代码里的语法错误:log_model方法中code_paths="./models"后面多了一个],这会直接触发语法报错,需先删除这个多余符号。

路径配置的正确方式:

  • 路径要以当前运行的main.py(根目录)为基准,./models是正确的相对路径,前提是根目录下确实存在models目录。
  • code_paths支持单个路径字符串,或多个路径组成的列表。比如要同时打包models和utils目录,可写成code_paths=["./models", "./utils"]。
  • 如果是目录,MLflow会递归打包目录下所有文件;如果是单个特定文件,直接写文件路径即可(如code_paths="./models/model_def.py")。
  • 确保运行main.py的进程有访问models目录的权限,否则会出现目录未找到的错误。

参考文档(翻译自MLflow官方文档)

code_paths:字符串或字符串列表,可选参数
指定需要与模型一同保存的额外代码文件或目录路径。这些文件会被打包到模型工件中,当模型被加载时,会被添加到Python的sys.path路径中,确保模型依赖的自定义代码能够被正确导入和使用。


内容的提问来源于stack exchange,提问作者Rishav Raj

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.20 18:22:54