

# 监控迭代进度
<a name="nova-model-monitor"></a>

您可以通过 MLflow 跟踪指标。

## Nova 自定义 – 为 SageMaker HyperPod 配置 MLflow
<a name="nova-customization-mlflow-setup"></a>

要让 SageMaker HyperPod 环境将指标输出到 MLflow，需要完成一些额外配置。

1. 打开 Amazon SageMaker AI

1. 选择 SageMaker Studio

   1. 如果已创建配置文件，选择“打开 Studio”。

   1. 如果未创建配置文件，选择“创建 SageMaker 域”进行创建

1. 选择 MLflow。如果未创建任何 MLflow 应用程序，请选择“创建 MLflow 应用程序”

1. 在 MLflow 应用程序上点击复制/粘贴按钮或“查看详细信息”菜单项，获取 ARN。提交训练作业时需要用到该 ARN。  
![\[MLflow 应用程序上的“查看详细信息”按钮，显示了 ARN。\]](http://docs.aws.amazon.com/zh_cn/nova/latest/nova2-userguide/images/how-it-works.png)

1. 在 HyperPod 集群的执行角色中，添加以下策略。这将允许 HyperPod 集群调用 MLflow API 来发布指标。

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "sagemaker-mlflow:*",
            "Resource": [
                "arn:aws:sagemaker:us-east-1:372836560492:mlflow-app/*"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "sagemaker:ListMlflowTrackingServers",
                "sagemaker:CallMlflowAppApi"
            ],
            "Resource": "*"
        }
    ]
}
```

### 通过 CLI 提交作业
<a name="submitting-job-cli"></a>

需指定 4 个新增的覆盖参数，可在命令行中指定，也可在 yaml 配方文件中配置。

1. `mlflow_tracking_uri`：MLflow 应用程序的 ARN

1. `mlflow_experiment_name`：本次实验运行的名称

1. `mlflow_experiment_name`：指标在 MLflow 中存储对应的实验名称

1. `mlflow_run_name`：本实验的名称

命令行

```
--override-parameters '{"recipes.run.mlflow_tracking_uri": "arn:aws:sagemaker:us-east-1:925548216816:mlflow-app/app-B6XOUNCHQM4W", "recipes.run.mlflow_experiment_name": "myuser-sft-lora-exp1", "recipes.run.mlflow_run_name": "myuser-sft-lora-exp1-202512181940"}'
```

yaml：

```
## Run config
run:
  mlflow_tracking_uri: "arn:aws:sagemaker:us-east-1:925548216816:mlflow-app/app-B6XOUNCHQM4W" 
  mlflow_experiment_name: "myuser-sft-lora-exp1"
  mlflow_run_name: "myuser-sft-lora-exp1-202512181940"
```

### 通过 SageMaker Studio UI 提交作业
<a name="submitting-job-ui"></a>

MLflow 集成已内置到 SageMaker Studio UI 中。提交训练作业时，只需指明要使用的 MLflow 应用程序实例。

1. 在 SageMaker Studio 中，依次进入：“模型”>“Nova 2.0 Lite”>“自定义”>“通过 UI 自定义”。

1. 展开“高级配置”部分

1. 选择用于接收训练指标的 MLflow 应用程序。您还可以在此设置实验名称和实验运行名称。

![\[MLflow 应用程序。\]](http://docs.aws.amazon.com/zh_cn/nova/latest/nova2-userguide/images/MLFlow-App.png)


### 通过 AWS AWS CLI提交作业
<a name="submitting-job-cli-aws"></a>

如果您使用 AWSAWS CLI，则必须创建一个 MLflow 应用程序，并将其作为输入传递给训练作业 API 请求。

```
mlflow_app_name="<enter your MLflow app name>"
role_arn="<enter your role ARN>"
bucket_name="<enter your bucket name>"
region="<enter your region>"

mlflow_app_arn=$(aws sagemaker create-mlflow-app \
  --name $mlflow_app_name \
  --artifact-store-uri "s3://$bucket_name" \
  --role-arn $role_arn \
  --region $region)
```

## 创建 MLflow 应用程序
<a name="nova-model-monitor-mlflow-create"></a>

**使用 Studio UI**：如果您通过 Studio UI 创建训练作业，系统会自动创建默认 MLflow 应用程序，并在“高级选项”下默认选择该应用程序。

**使用 CLI**：如果您使用 CLI，则必须创建一个 MLflow 应用程序，并将其作为输入传递给训练作业 API 请求。

```
mlflow_app_name="<enter your MLflow app name>"
role_arn="<enter your role ARN>" 
bucket_name="<enter your bucket name>" 
region="<enter your region>"

mlflow_app_arn=$(aws sagemaker create-mlflow-app \
  --name $mlflow_app_name \
  --artifact-store-uri "s3://$bucket_name" \
  --role-arn $role_arn \
  --region $region)
```

## 访问 MLflow 应用程序
<a name="nova-model-monitor-mlflow-access"></a>

**使用 CLI**：创建预签名 URL 以访问 MLflow 应用程序 UI：

```
aws sagemaker create-presigned-mlflow-app-url \
  --arn $mlflow_app_arn \
  --region $region \
  --output text
```

**使用 Studio UI**：Studio UI 会展示存储在 MLflow 中的关键指标，并提供指向 MLflow 应用程序 UI 的链接。

## 要跟踪的关键指标
<a name="nova-model-monitor-mlflow-metircs"></a>

通过迭代监控以下指标，以评测模型优化效果并跟踪作业进度：

**针对 SFT**
+ 训练损失曲线
+ 已处理样本数量及处理耗时
+ 预留测试集上的性能准确率
+ 格式合规性（如有效 JSON 输出率）
+ 领域专属评估数据上的困惑度

**针对 RFT**
+ 训练过程中的平均奖励分数
+ 奖励分布（高奖励响应占比）
+ 验证奖励趋势（关注过拟合情况）
+ 任务专属成功率（如代码执行通过率、数学题准确率）

**一般性问题**
+ 迭代间基准性能变化
+ 代表性样本的人工评估分数
+ 生产环境指标（若采用迭代式部署）

## 停止迭代的判定条件
<a name="nova-model-monitor-mlflow-stop"></a>

满足以下任一情况即可停止迭代：
+ **性能趋于平稳**：继续训练无法显著提升目标指标
+ **切换训练技术有效**：若某一技术效果趋于平稳，可尝试切换（如 SFT → RFT → SFT）以突破性能瓶颈
+ **达到目标指标**：已满足预设的成功标准
+ **检测到性能退化**：新迭代导致模型效果下降（参见下文回滚流程）

有关详细的评估流程，请参阅**评估**部分。