

# 受限模型包
<a name="nova-rmp"></a>

## 什么是受限模型包？
<a name="nova-rmp-overview"></a>

受限模型包 (RMP) 是一种 SageMaker AI 模型包，它将专有模型构件封装在安全的、由服务管理的存储中，客户无法直接访问该存储。RMP 让您可以通过 IAM 策略授权和控制这些模型的使用，而无需授予对底层构件的直接访问权限。无法直接下载、导出或查看模型数据。该数据仅可在授权的 AWS 服务中使用。RMP 只能由受信任的 SageMaker AI 平台主体创建，并存在于标记为“`StorageType: "Restricted"`”的模型包组中。

目前，RMP 是通过在 SageMaker Training Jobs Serverless 上进行多轮强化学习 (MTRL) 训练生成的。一旦 RMP 存在，您就可以使用其 ARN 来评估底层模型。计划于 2026 年第三季度支持将 RMP 作为后续训练作业的输入——例如，将 MTRL 运行串联成迭代训练工作流。

RMP 与标准的 SageMaker AI 模型包的不同之处在于，其底层模型构件始终保存在安全且由服务托管的存储中。客户通过模型的 ARN 与模型交互，而不是直接访问 Amazon S3 中的检查点文件。

## 支持的使用案例
<a name="nova-rmp-support-status"></a>

下表总结了目前可用的 RMP 用例以及计划在未来版本中推出的用例。


| 使用案例 | 可用性 | 
| --- | --- | 
| 训练输出 — 从 MTRL 训练作业中获取 RMP 作为训练后的模型构件 | 正式发布 | 
| 评估输入 — 引用 RMP 作为待评估的模型 | 正式发布 | 
| 训练输入 — 将 RMP 用作后续训练作业的源模型（例如，迭代 MTRL 工作流） | 2026 年第三季度 | 

## MTRL 训练输出
<a name="nova-rmp-mtrl-output"></a>

当您在 SageMaker Training Jobs Serverless 上使用多轮强化学习 (MTRL) 训练模型时，训练结果将以 RMP 格式交付，而非 Amazon S3 检查点路径。生成的 RMP 会自动创建，并注册到您在配置运行时管理器时指定的模型包组中。您无需直接创建 RMP——它们是由平台作为训练作业的输出自动生成的。

在 SageMaker Training Jobs Serverless 上运行 MTRL 时，必须指定 `model_package_group_name` 参数。您必须指定一个已存在的、标记为“`StorageType: "Restricted"`”的模型包组，用于注册输出的 RMP。如果没有此参数，训练作业将失败。为运行时配置一个 `model_package_group_name`，以接收训练输出：

```
from amzn_nova_forge.manager.runtime_manager import SMTJServerlessRuntimeManager
from amzn_nova_forge.trainer.forge_trainer import ForgeTrainer
from amzn_nova_forge.model.model_enums import Model, TrainingMethod
from amzn_nova_forge.core import ForgeConfig

# Configure runtime with the output Model Package Group
runtime = SMTJServerlessRuntimeManager(
    model_package_group_name="my-rmp-model-package-group",  # Required for MTRL
    execution_role="arn:aws:iam::123456789012:role/my-role",
    agent_core_arn="arn:aws:bedrock-agentcore:us-east-1:123456789012:runtime/my-agent",  # AgentCore runtime for MTRL execution
)

# Train with MTRL
trainer = ForgeTrainer(
    model=Model.NOVA_LITE_2,
    method=TrainingMethod.RFT_MULTITURN_LORA,
    infra=runtime,
    training_data_s3_path="s3://your-bucket/prompts/train.parquet",
    config=ForgeConfig(output_s3_path="s3://your-bucket/output/"),
)

result = trainer.train(job_name="my-mtrl-job")

# Wait for completion and retrieve the output RMP ARN
result.wait()
print(result.model_artifacts.output_model_arn)
```

训练完成后，生成的模型将作为新版本注册到指定的模型包组中。

## 使用 RMP 进行评估
<a name="nova-rmp-evaluation"></a>

您可以通过引用其 ARN 来评估以 RMP 格式存储的模型。SageMaker AI 平台会在内部将 RMP 解析为底层模型构件，因此您的评估工作流无需直接处理模型检查点。

有关对 Amazon Nova 模型进行评估的详细信息，请参阅 [评估经过 SageMaker AI 训练的模型](nova-model-evaluation.md)。

## 将 RMP 用作训练输入（2026 年第三季度）
<a name="nova-rmp-future-training-input"></a>

计划于2026年第三季度将 RMP 用作训练作业的源模型，目前尚不可用。一旦该功能上线，您将能够使用 `ModelPackageConfig.SourceModelPackageArn` 来指定一个 RMP ARN 作为源模型。SageMaker AI 平台会在内部将 ARN 解析为实际的模型检查点，因此您的训练代码将接收模型构件，就像这些构件是从 Amazon S3 加载的一样。

这将支持迭代式 MTRL 训练工作流：一个训练作业生成的 RMP 可以作为源模型传递给后续的 MTRL 作业，从而使每次运行都能基于前一次的输出进行构建，同时完全不会暴露底层的模型检查点。