本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
Hugging Face 是自然语言处理 (NLP) 模型的开源提供商。Amaz SageMaker on Python 软件开发工具包HuggingFaceProcessor
中的让你能够使用 Hugging Face 脚本运行处理作业。在使用 HuggingFaceProcessor
时,您可以利用 Amazon 构建的 Docker 容器和托管的 Hugging Face 环境,这样您便无需自带容器。
以下代码示例显示了如何使用 SageMaker AI 提供和维护的 Docker 镜像来运行处理作业。HuggingFaceProcessor
请注意,当你运行作业时,你可以在source_dir
参数中指定一个包含脚本和依赖关系的目录,也可以在你的source_dir
目录中有一个requirements.txt
文件来指定处理脚本的依赖关系。 SageMaker 处理会为您在容器requirements.txt
中安装依赖项。
from sagemaker.huggingface import HuggingFaceProcessor
from sagemaker.processing import ProcessingInput, ProcessingOutput
from sagemaker import get_execution_role
#Initialize the HuggingFaceProcessor
hfp = HuggingFaceProcessor(
role=get_execution_role(),
instance_count=1,
instance_type='ml.g4dn.xlarge',
transformers_version='4.4.2',
pytorch_version='1.6.0',
base_job_name='frameworkprocessor-hf'
)
#Run the processing job
hfp.run(
code='processing-script.py
',
source_dir='scripts
',
inputs=[
ProcessingInput(
input_name='data',
source=f's3://{BUCKET}/{S3_INPUT_PATH}
',
destination='/opt/ml/processing/input/data/'
)
],
outputs=[
ProcessingOutput(output_name='train', source='/opt/ml/processing/output/train/', destination=f's3://{BUCKET}/{S3_OUTPUT_PATH}
'),
ProcessingOutput(output_name='test', source='/opt/ml/processing/output/test/', destination=f's3://{BUCKET}/{S3_OUTPUT_PATH}
'),
ProcessingOutput(output_name='val', source='/opt/ml/processing/output/val/', destination=f's3://{BUCKET}/{S3_OUTPUT_PATH}
')
]
)
如果您有 requirements.txt
文件,它应该是您要在容器中安装的库的列表。source_dir
的路径可以是相对路径、绝对路径或 Amazon S3 URI 路径。但是,如果您使用 Amazon S3 URI,则路径必须指向 tar.gz 文件。在您为 source_dir
指定的目录中可以有多个脚本。要了解有关该HuggingFaceProcessor
课程的更多信息,请参阅亚马逊 A SageMaker I Python SD K 中的 Hugging Fac