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.
StartDocumentClassificationJob
Úselo con una AWS SDK o CLI
En los siguientes ejemplos de código, se muestra cómo utilizar StartDocumentClassificationJob
.
Los ejemplos de acciones son extractos de código de programas más grandes y deben ejecutarse en contexto. Puede ver esta acción en contexto en el siguiente ejemplo de código:
- CLI
-
- AWS CLI
-
Para empezar un trabajo de clasificación de documentos
El siguiente ejemplo de
start-document-classification-job
inicia un trabajo de clasificación de documentos con un modelo personalizado en todos los archivos de la dirección especificada en la etiqueta--input-data-config
. En este ejemplo, el bucket de S3 de entrada contieneSampleSMStext1.txt
,SampleSMStext2.txt
ySampleSMStext3.txt
. El modelo se entrenó previamente en la clasificación de los documentos de los mensajes spam y no spam, o mensajes «falsos». SMS Cuando se completa el trabajo,output.tar.gz
se coloca en la ubicación especificada por la etiqueta--output-data-config
.output.tar.gz
contienepredictions.jsonl
, que enumera la clasificación de cada documento. La salida Json se imprime en una sola línea por archivo, pero se formatea aquí para que sea legible.aws comprehend start-document-classification-job \ --job-name
exampleclassificationjob
\ --input-data-config"S3Uri=s3://amzn-s3-demo-bucket-INPUT/jobdata/"
\ --output-data-config"S3Uri=s3://amzn-s3-demo-destination-bucket/testfolder/"
\ --data-access-role-arnarn:aws:iam::111122223333:role/service-role/AmazonComprehendServiceRole-example-role
\ --document-classifier-arnarn:aws:comprehend:us-west-2:111122223333:document-classifier/mymodel/version/12
Contenido de
SampleSMStext1.txt
:"CONGRATULATIONS! TXT 2155550100 to win $5000"
Contenido de
SampleSMStext2.txt
:"Hi, when do you want me to pick you up from practice?"
Contenido de
SampleSMStext3.txt
:"Plz send bank account # to 2155550100 to claim prize!!"
Salida:
{ "JobId": "e758dd56b824aa717ceab551fEXAMPLE", "JobArn": "arn:aws:comprehend:us-west-2:111122223333:document-classification-job/e758dd56b824aa717ceab551fEXAMPLE", "JobStatus": "SUBMITTED" }
Contenido de
predictions.jsonl
:{"File": "SampleSMSText1.txt", "Line": "0", "Classes": [{"Name": "spam", "Score": 0.9999}, {"Name": "ham", "Score": 0.0001}]} {"File": "SampleSMStext2.txt", "Line": "0", "Classes": [{"Name": "ham", "Score": 0.9994}, {"Name": "spam", "Score": 0.0006}]} {"File": "SampleSMSText3.txt", "Line": "0", "Classes": [{"Name": "spam", "Score": 0.9999}, {"Name": "ham", "Score": 0.0001}]}
Para obtener más información, consulte Clasificación personalizada en la Guía para desarrolladores de Amazon Comprehend.
-
Para API obtener más información, consulte la Referencia StartDocumentClassificationJob
de AWS CLI comandos.
-
- Python
-
- SDKpara Python (Boto3)
-
nota
Hay más información. GitHub Busque el ejemplo completo y aprenda a configurar y ejecutar en el Repositorio de ejemplos de código de AWS
. class ComprehendClassifier: """Encapsulates an Amazon Comprehend custom classifier.""" def __init__(self, comprehend_client): """ :param comprehend_client: A Boto3 Comprehend client. """ self.comprehend_client = comprehend_client self.classifier_arn = None def start_job( self, job_name, input_bucket, input_key, input_format, output_bucket, output_key, data_access_role_arn, ): """ Starts a classification job. The classifier must be trained or the job will fail. Input is read from the specified Amazon S3 input bucket and written to the specified output bucket. Output data is stored in a tar archive compressed in gzip format. The job runs asynchronously, so you can call `describe_document_classification_job` to get job status until it returns a status of SUCCEEDED. :param job_name: The name of the job. :param input_bucket: The Amazon S3 bucket that contains input data. :param input_key: The prefix used to find input data in the input bucket. If multiple objects have the same prefix, all of them are used. :param input_format: The format of the input data, either one document per file or one document per line. :param output_bucket: The Amazon S3 bucket where output data is written. :param output_key: The prefix prepended to the output data. :param data_access_role_arn: The Amazon Resource Name (ARN) of a role that grants Comprehend permission to read from the input bucket and write to the output bucket. :return: Information about the job, including the job ID. """ try: response = self.comprehend_client.start_document_classification_job( DocumentClassifierArn=self.classifier_arn, JobName=job_name, InputDataConfig={ "S3Uri": f"s3://{input_bucket}/{input_key}", "InputFormat": input_format.value, }, OutputDataConfig={"S3Uri": f"s3://{output_bucket}/{output_key}"}, DataAccessRoleArn=data_access_role_arn, ) logger.info( "Document classification job %s is %s.", job_name, response["JobStatus"] ) except ClientError: logger.exception("Couldn't start classification job %s.", job_name) raise else: return response
-
Para API obtener más información, consulte StartDocumentClassificationJobla AWS SDKreferencia de Python (Boto3). API
-
Para obtener una lista completa de guías para AWS SDK desarrolladores y ejemplos de código, consulte. Uso de Amazon Comprehend con un SDK AWS En este tema también se incluye información sobre cómo empezar y detalles sobre SDK las versiones anteriores.