AWS Marketplace
针对 AWS Marketplace 提供商的用户指南
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

示例输入数据和示例笔记本的最佳实践

开发人员以及机器学习从业人员会发现尝试模型和算法很简单,这一点很重要。强烈建议您在产品中提供以下信息。

  1. 理想情况下,应在产品附加信息部分下附加十个输入文件,但至少包含一个示例输入文件。如果您的模型执行多类分类,则应为每个类别至少提供一个示例输入文件。这可以帮助您的客户了解模型/算法所需的输入格式。能够查看更多示例输入文件,可以帮助用户在进行推理之前对其数据进行任何必要的转换,从而为他们提供模型中的最佳结果

  2. 至少一个与您提供的输入文件之一相对应的示例输出文件将附加在产品的“附加信息”部分下。这可以帮助您的客户在进行订阅过程之前了解预期的输出结果,并提高列表的可用性。

  3. 为您的算法提供以下信息:训练数据格式、必要的预处理代码段,并指定用户可以提供的可选和强制性功能。还要指定列表是否支持 PIPE 输入模式及其所需的输入格式。指定是否支持分布式训练(超过 1 个CPU/GPU 实例)。对于调整,提供建议的超参数。

  4. 在模型的使用信息部分中,提供一个代码段,此代码段显示数据准备步骤以及使用端点 (CLI/Python) API 调用对从模型创建的终端节点执行推理的过程。这对于您的客户确切了解发送负载的方式至关重要。

    示例模型使用信息

    • 支持的内容类型:image/jpeg、image/png、image/bmp

    • 支持的响应类型:application/json(默认值)、image/jpeg

    • 示例 CLI 命令:

      aws sagemaker-runtime invoke-endpoint --endpoint-name "endpoint_name" --body fileb:///img_name.jpeg --accept image/jpeg outfile.jpeg

    如果您的模型需要数据预处理,请提供必要的 Python 代码段。

    示例数据预处理信息

    import base64 image = open('image.jpeg', 'rb') image_64_encode = base64.b64encode(image.read()).decode('utf-8') #Prepare payload for prediction payload="{\"source\": \""+str(image_64_encode)+"\"}"
  5. 在产品的“附加信息”部分下附加一个示例笔记本,以演示端到端的工作流程。我们建议您在示例笔记本中使用 Python 开发工具包,而不是 Boto3 API。请记住,精心开发的示例笔记本将使您的客户轻松尝试并成功地使用您的列表。请牢记以下示例笔记本最佳实践:

    • 对于算法,示例笔记本应演示端到端训练、调整、模型创建、建立终端节点以及如何对模型执行推理和批量转换作业。

    • 对于模型,示例笔记本应演示实时推理、批量转换作业推理,并明确提供模型所预期的数据类型。

    有关可在所有区域中使用而无需输入任何参数或无需查找示例数据的示例笔记本示例,请参阅 GitHub 上的 amazon_demo_product

    注意

    缺少训练数据会阻止您的客户成功运行笔记本。欠开发的示例笔记本可能阻止您的客户使用它并妨碍采用。