Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Prueba de las funciones de Lambda previas y posteriores a la anotación
Puede probar las funciones de Lambda preanotación y postanotación en la consola de Lambda. Si es un usuario nuevo de Lambda, puede aprender a probar, o invocar, sus funciones de Lambda en la consola mediante el tutorial Crear una función de Lambda con la consola en la Guía para desarrolladores de AWS Lambda . Puedes usar las secciones de esta página para aprender a probar las plantillas de anotación previa y posterior a la anotación de Ground Truth que se proporcionan a través de un AWS Serverless Application Repository (SAR).
Temas
Requisitos previos
Debe hacer lo siguiente para utilizar las pruebas que se describen en esta página.
-
Necesita acceso a la consola de Lambda y permiso para crear e invocar funciones de Lambda. Para saber cómo configurar estos permisos, consulte Otorgue permiso para crear y seleccionar una función AWS Lambda
-
Si no ha implementado la receta de SAR de Ground Truth, utilice el procedimiento Creación de funciones de Lambda mediante las plantillas de Ground Truth para hacerlo.
-
Para probar la función de Lambda postanotación, debe tener un archivo de datos en Amazon S3 con ejemplos de datos de anotación. Para realizar una prueba sencilla, puede copiar y pegar el siguiente código en un archivo, guardarlo como
sample-annotations.json
y subirlo a Amazon S3. Anote el URI de S3 de este archivo; necesita esta información para configurar la prueba de Lambda postanotación.[{"datasetObjectId":"0","dataObject":{"content":"To train a machine learning model, you need a large, high-quality, labeled dataset. Ground Truth helps you build high-quality training datasets for your machine learning models."},"annotations":[{"workerId":"private.us-west-2.0123456789","annotationData":{"content":"{\"crowd-entity-annotation\":{\"entities\":[{\"endOffset\":8,\"label\":\"verb\",\"startOffset\":3},{\"endOffset\":27,\"label\":\"adjective\",\"startOffset\":11},{\"endOffset\":33,\"label\":\"object\",\"startOffset\":28},{\"endOffset\":51,\"label\":\"adjective\",\"startOffset\":46},{\"endOffset\":65,\"label\":\"adjective\",\"startOffset\":53},{\"endOffset\":74,\"label\":\"adjective\",\"startOffset\":67},{\"endOffset\":82,\"label\":\"adjective\",\"startOffset\":75},{\"endOffset\":102,\"label\":\"verb\",\"startOffset\":97},{\"endOffset\":112,\"label\":\"verb\",\"startOffset\":107},{\"endOffset\":125,\"label\":\"adjective\",\"startOffset\":113},{\"endOffset\":134,\"label\":\"adjective\",\"startOffset\":126},{\"endOffset\":143,\"label\":\"object\",\"startOffset\":135},{\"endOffset\":169,\"label\":\"adjective\",\"startOffset\":153},{\"endOffset\":176,\"label\":\"object\",\"startOffset\":170}]}}"}}]},{"datasetObjectId":"1","dataObject":{"content":"Sift 3 cups of flour into the bowl."},"annotations":[{"workerId":"private.us-west-2.0123456789","annotationData":{"content":"{\"crowd-entity-annotation\":{\"entities\":[{\"endOffset\":4,\"label\":\"verb\",\"startOffset\":0},{\"endOffset\":6,\"label\":\"number\",\"startOffset\":5},{\"endOffset\":20,\"label\":\"object\",\"startOffset\":15},{\"endOffset\":34,\"label\":\"object\",\"startOffset\":30}]}}"}}]},{"datasetObjectId":"2","dataObject":{"content":"Jen purchased 10 shares of the stock on Janurary 1st, 2020."},"annotations":[{"workerId":"private.us-west-2.0123456789","annotationData":{"content":"{\"crowd-entity-annotation\":{\"entities\":[{\"endOffset\":3,\"label\":\"person\",\"startOffset\":0},{\"endOffset\":13,\"label\":\"verb\",\"startOffset\":4},{\"endOffset\":16,\"label\":\"number\",\"startOffset\":14},{\"endOffset\":58,\"label\":\"date\",\"startOffset\":40}]}}"}}]},{"datasetObjectId":"3","dataObject":{"content":"The narrative was interesting, however the character development was weak."},"annotations":[{"workerId":"private.us-west-2.0123456789","annotationData":{"content":"{\"crowd-entity-annotation\":{\"entities\":[{\"endOffset\":29,\"label\":\"adjective\",\"startOffset\":18},{\"endOffset\":73,\"label\":\"adjective\",\"startOffset\":69}]}}"}}]}]
-
Debe seguir las instrucciones para dar permiso Otorgue permisos de Lambda postanotación para acceder a la anotación a la función de ejecución de la función Lambda posterior a la anotación para que asuma la función de ejecución de SageMaker IA que utiliza para crear el trabajo de etiquetado. La función Lambda posterior a la anotación utiliza la función de ejecución de SageMaker IA para acceder al archivo de datos de la anotación, en S3.
sample-annotations.json
Pruebe la función de Lambda preanotación
Utilice el siguiente procedimiento para probar la función Lambda previa a la anotación creada al implementar la receta Ground Truth AWS Serverless Application Repository (SAR).
Pruebe la función de Lambda preanotación de la receta de SAR de Ground Truth
-
Abra la página Funciones
en la consola de Lambda. -
Seleccione la función preanotación que se implementó a partir de la receta de SAR de Ground Truth. El nombre de esta función es similar a
serverlessrepo-aws-sagema-GtRecipePreHumanTaskFunc-
.<id>
-
En la sección Código fuente, selecciona la flecha situada junto a Probar.
-
Seleccione Configurar un evento de prueba.
-
Mantenga seleccionada la opción Crear un evento de prueba nuevo.
-
En Plantilla de evento, selecciona SageMakerGround Truth PreHumanTask.
-
Asigne un Nombre de evento a su prueba.
-
Seleccione Crear.
-
Seleccione la flecha situada junto a Probar otra vez y verá que está seleccionada la prueba que ha creado, que se indica con un punto junto al nombre del evento. Si no está seleccionada, selecciónela.
-
Seleccione Probar para ejecutar la prueba.
Después de ejecutar la prueba, podrá ver los Resultados de la ejecución. En Registros de la función, debería ver una respuesta similar a la siguiente:
START RequestId: cd117d38-8365-4e1a-bffb-0dcd631a878f Version: $LATEST Received event: { "version": "2018-10-16", "labelingJobArn": "arn:aws:sagemaker:us-east-2:123456789012:labeling-job/example-job", "dataObject": { "source-ref": "s3://sagemakerexample/object_to_annotate.jpg" } } {'taskInput': {'taskObject': 's3://sagemakerexample/object_to_annotate.jpg'}, 'isHumanAnnotationRequired': 'true'} END RequestId: cd117d38-8365-4e1a-bffb-0dcd631a878f REPORT RequestId: cd117d38-8365-4e1a-bffb-0dcd631a878f Duration: 0.42 ms Billed Duration: 1 ms Memory Size: 128 MB Max Memory Used: 43 MB
En esta respuesta, podemos ver que el resultado de la función de Lambda coincide con la sintaxis de respuesta preanotación requerida:
{'taskInput': {'taskObject': 's3://sagemakerexample/object_to_annotate.jpg'}, 'isHumanAnnotationRequired': 'true'}
Pruebe la función de Lambda postanotación
Utilice el siguiente procedimiento para probar la función Lambda posterior a la anotación creada al implementar la receta Ground Truth AWS Serverless Application Repository (SAR).
Pruebe la función de Lambda postanotación de la receta de SAR de Ground Truth
-
Abra la página Funciones
en la consola de Lambda. -
Seleccione la función postanotación que se implementó a partir de la receta de SAR de Ground Truth. El nombre de esta función es similar a
serverlessrepo-aws-sagema-GtRecipeAnnotationConsol-
.<id>
-
En la sección Código fuente, selecciona la flecha situada junto a Probar.
-
Seleccione Configurar un evento de prueba.
-
Mantenga seleccionada la opción Crear un evento de prueba nuevo.
-
En Plantilla de evento, selecciona SageMakerGround Truth AnnotationConsolidation.
-
Asigne un Nombre de evento a su prueba.
-
Modifique el código de la plantilla de la siguiente manera:
-
Sustituya el nombre del recurso de Amazon (ARN) por el
roleArn
ARN de la función de ejecución de SageMaker IA que utilizó para crear el trabajo de etiquetado. -
Sustituya el URI de S3 en
s3Uri
por el URI del archivo
que ha añadido a Amazon S3.sample-annotations.json
Después de realizar estas modificaciones, la prueba debería tener un aspecto similar al siguiente:
{ "version": "2018-10-16", "labelingJobArn": "arn:aws:sagemaker:us-east-2:123456789012:labeling-job/example-job", "labelAttributeName": "example-attribute", "roleArn": "arn:aws:iam::
222222222222
:role/sm-execution-role
", "payload": { "s3Uri": "s3://your-bucket
/sample-annotations.json" } } -
-
Seleccione Crear.
-
Seleccione la flecha situada junto a Probar otra vez y verá que está seleccionada la prueba que ha creado, que se indica con un punto junto al nombre del evento. Si no está seleccionada, selecciónela.
-
Seleccione Probar para ejecutar la prueba.
Tras ejecutar la prueba, debería ver una sección -- Consolidated Output
--
en los Registros de las funciones, que contiene una lista de todas las anotaciones incluidas en sample-annotations.json
.