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

如何将作为输入的MLflow模型关联至运行且无需重新记录完整模型

解决MLflow评估运行关联输入模型的问题

核心思路

无需重新记录完整模型,通过关联现有模型的元数据到评估运行,让UI的「已记录模型」标签识别到输入模型的关联关系。

具体实现方案

方案1:记录模型元数据文件(推荐)

直接获取训练运行中模型的核心元数据文件,将其记录到评估运行的artifact目录,UI会自动识别为已关联模型:

from mlflow.tracking import MlflowClient

client = MlflowClient()
# 训练运行的ID和模型存储路径
train_run_id = "你的训练运行ID"
model_artifact_path = "模型在训练运行中的artifact路径(如'model')"

# 下载模型的核心元文件到临时目录
client.download_artifacts(train_run_id, f"{model_artifact_path}/MLmodel", "./temp_model")
client.download_artifacts(train_run_id, f"{model_artifact_path}/conda.yaml", "./temp_model")

# 在评估运行中记录这些元文件
mlflow.log_artifact("./temp_model/MLmodel", artifact_path="input_model")
mlflow.log_artifact("./temp_model/conda.yaml", artifact_path="input_model")

完成后,评估运行的「已记录模型」标签会显示input_model,点击可关联到原训练模型的完整内容。

方案2:关联已注册的模型版本

如果模型已注册到MLflow模型仓库,可直接在评估运行中记录版本关联信息:

from mlflow.tracking import MlflowClient

client = MlflowClient()
registered_model_name = "你的模型名称"
train_run_id = "你的训练运行ID"
model_uri = f"runs:/{train_run_id}/model"

# 注册模型(若未注册)
client.create_model_version(name=registered_model_name, source=model_uri, run_id=train_run_id)

# 在评估运行中记录关联参数
mlflow.log_param("input_model_name", registered_model_name)
mlflow.log_param("input_model_version", "1")  # 替换为实际版本号
# 同时记录模型元文件确保UI识别
client.download_artifacts(train_run_id, "model/MLmodel", "./temp")
mlflow.log_artifact("./temp/MLmodel", artifact_path="input_model")

方案3:通过运行标签标记关联

给评估运行添加自定义标签,明确标记输入模型的来源,配合元文件记录实现UI关联:

client = MlflowClient()
eval_run_id = "你的评估运行ID"
train_run_id = "你的训练运行ID"

# 添加标签标记输入模型信息
client.set_tag(eval_run_id, "input_model_run_id", train_run_id)
client.set_tag(eval_run_id, "input_model_path", "model")

# 记录模型元文件
client.download_artifacts(train_run_id, "model/MLmodel", "./temp")
client.log_artifact(eval_run_id, "./temp/MLmodel", "input_model")

关于mlflow.set_active_model()失效的原因

mlflow.set_active_model()是高层上下文API,仅作用于当前MLflow上下文环境;而MlflowClient是底层直接调用接口,不共享高层上下文状态,因此无法通过该方法实现Client层面的模型关联。

内容的提问来源于stack exchange,提问作者Anita Lalayan_

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.12 06:42:36