了解配方参数 - 亚马逊 SageMaker AI
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

了解配方参数

运行配置

以下是常规运行配置和所涉及参数的说明。

run: name: eval_job_name model_type: amazon.nova-micro-v1:0:128k model_name_or_path: nova-micro/prod replicas: 1 data_s3_path: "" output_s3_path: s3://output_path mlflow_tracking_uri: "" mlflow_experiment_name : "" mlflow_run_name : ""
  • name:(必填)评估作业的描述性名称。这有助于在Amazon控制台中识别您的作业。

  • model_type:(必填)指定要使用的 Amazon Nova 模型变体。请勿手动修改此字段。选项包括:

    • amazon.nova-micro-v1:0:128k

    • amazon.nova-lite-v1:0:300k

    • amazon.nova-pro-v1:0:300k

    • amazon.nova-2-lite-v1:0:256k

  • model_name_or_path:(必填)基本模型的路径或训练后检查点的 S3 路径。选项包括:

    • nova-micro/prod

    • nova-lite/prod

    • nova-pro/prod

    • nova-lite-2/prod

    • (训练后检查点的 S3 路径)s3://<escrow bucket>/<job id>/outputs/checkpoints

  • replicas:(必填)要在分布式训练中使用的计算实例数。您必须将此值设置为 1,因为不支持多节点。

  • data_s3_path:(必填)输入数据集的 S3 路径。除非您使用自带数据集LLM-as-a-Judge 配方,否则请将此参数留空。

  • output_s3_path:(必填)存储输出评估构件的 S3 路径。请注意,输出 S3 存储桶必须由创建作业的账户创建。

  • mlflow_tracking_uri:(可选) MLflow 跟踪服务器 ARN,用于跟踪 MLFlow 运行/实验。请确保您有权通过 SageMaker AI 执行角色访问跟踪服务器

评估配置

以下是模型评测配置和所涉及参数的说明。

evaluation: task: mmlu strategy: zs_cot subtask: mathematics metric: accuracy
  • task:(必填)指定要使用的评估基准测试或任务。

    支持的任务列表:

    • mmlu

    • mmlu_pro

    • bbh

    • gpqa

    • math

    • strong_reject

    • gen_qa

    • ifeval

    • llm_judge

    • humaneval

    • mm_llm_judge

    • rubric_llm_judge

    • aime_2024

    • 日历日程安排

    • humaneval

  • strategy:(必填)定义评估方法:

    • zs_cot:Zero Chain-of-Thought-shot-一种无需明确示例即可鼓励 step-by-step推理的大型语言模型的方法。

    • zs:零样本,该方法事先无需任何训练示例即可解决问题。

    • gen_qa:一种专门用于自带数据集配方的策略。

    • judge:一种专门针对作为评委和 mm_llm_judge 的 Amazon Nova LLM 的策略。

  • subtask:(可选且可移除)为某些评估任务指定具体的子任务。如果您的任务没有任何子任务,请将其从配方中移除。

  • metric:(必填)要使用的评估指标。

    • accuracy:正确答案的百分比

    • exact_match:(对于 math 基准测试),返回输入预测字符串与其引用完全匹配的速率。

    • deflection:(对于 strong reject 基准测试),返回基本模型的相对偏差和差异显著性指标。

    • pass@1:(对于 humaneval 基准测试),该指标用于衡量模型的最高置信度预测与正确答案相匹配的情况所占的百分比。

    • all:返回以下指标:

      • 对于 gen_qa 和自带数据集基准测试,返回以下指标:

        • rouge1:衡量生成的文本和参考文本之间的一元(单个词)重叠度。

        • rouge2:衡量生成的文本和参考文本之间的二元(两个连续的词)重叠度。

        • rougeL:衡量文本之间的最长公共子序列,匹配中可以存在间隙。

        • exact_match:二进制分数(0 或 1),用于指示生成的文本是否与参考文本逐个字符完全匹配。

        • quasi_exact_match:与精确匹配类似,但更加宽松,通常忽略大小写、标点符号和空格差异。

        • f1_score:精度和查全率之间的调和平均数,衡量预测答案和参考答案之间的词语重叠度。

        • f1_score_quasi:与 f1_score 类似,但匹配更为宽松,使用忽略细微差异的标准化文本比较。

        • bleu:衡量生成的文本和参考文本之间 n-gram 匹配的精确度,通常用于翻译评估。

      • 对于llm_judgemm_llm_judge,请自带数据集基准测试,返回以下指标:

        • a_scores:前向和反向评估传递中 response_A 的获胜次数。

        • a_scores_stderr:成对判断中 response_A scores 的标准误差。

        • b_scores:前向和反向评估传递中 response_B 的获胜次数。

        • b_scores_stderr:成对判断中 response_B scores 的标准误差。

        • tiesresponse_Aresponse_B 被评估为相等的判断数量。

        • ties_stderr:成对判断中平局的标准误差。

        • inference_error:无法适当评估的判断数量。

        • inference_error_stderr:判断中推理错误的标准误差。

        • score:基于 response_B 在前向和反向传递中的获胜次数得出的总分。

        • score_stderr:成对判断中总分的标准误差。

        • winrate:使用 Bradley-Terry 概率模型计算的 response_B 比 response_A 更受欢迎的概率。

        • lower_rate:自动采样预估胜率的下限(第 2.5 百分位)。

推理配置

以下是推理配置和所涉及参数的说明。所有参数都是可选的。

inference: max_new_tokens: 200 top_k: -1 top_p: 1.0 temperature: 0 top_logprobs: 10 reasoning_effort: null # options: low/high to enable reasoning or null to disable reasoning
  • max_new_tokens:要生成的最大词元数。必须是整数。

  • top_k:要考虑的最高概率词元的数量。必须是整数。

  • top_p:词元采样的累积概率阈值。此值必须是介于 0.0 到 1.0 之间的浮点数(含两端值)。

  • temperature:词元选择的随机性。值越大,随机性越大。使用 0 以使结果具有确定性。此值必须是最小值为 0 的浮点数。

  • top_logprobs:推理响应中要返回的排名靠前的日志探测器的数量。此值必须是介于 0 到 20 之间的整数。Logprobs 包含考虑的输出标记,以及消息内容中返回的每个输出令牌的日志概率。

  • reasoning_effort: 控制具有推理能力的模型的推理行为。reasoning_effort仅在model_type指定具有推理功能的模型时才设置(当前amazon.nova-2-lite-v1:0:256k)。可用选项有null(如果未设置,则为默认值;禁用推理)low、或high

请注意,对于 humaneval,建议使用以下推理配置:

inference: top_k: 1 max_new_tokens: 1600 temperature: 0.0
MLFlow 配置

以下是 MLFlow 配置和所涉及参数的解释。所有参数都是可选的。

run: mlflow_tracking_uri: "" mlflow_experiment_name: "" mlflow_run_name: ""
  • mlflow_tracking_uri: 可选) MLflow 跟踪服务器的位置(仅在 SMHP 上需要)

  • mlflow_experiment_name:(可选)将相关机器学习组合在一起的实验名称

  • mlflow_run_name:(可选)在实验中运行的特定训练的自定义名称