本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
主题建模的异步分析
要确定文档集中的主题,请使用启动异步作业。StartTopicsDetectionJob您可以监控用英语或西班牙语撰写的文档中的主题。
开始之前
在开始之前,请确保您具有:
-
输入和输出存储桶:确定要用于输入和输出的 Amazon S3 存储桶。存储桶必须与所调用的 API 位于同一区域。
-
IAM 服务角色:您必须拥有一个有权访问您的输入和输出存储桶的 IAM 服务角色。有关更多信息,请参阅 异步操作所需的基于角色的权限。
使用 AWS Command Line Interface
以下示例演示了如何在 AWS CLI 中使用 StartTopicsDetectionJob
操作。
此示例的格式适用于 Unix、Linux 和 macOS。对于 Windows,请将每行末尾的反斜杠 (\) Unix 行继续符替换为脱字号 (^)。
aws comprehend start-topics-detection-job \ --number-of-topics
topics to return
\ --job-name "job name
" \ --regionregion
\ --cli-input-json file://path to JSON input file
对于 cli-input-json
参数,请提供包含请求数据的 JSON 文件的路径,如以下示例中所示。
{ "InputDataConfig": { "S3Uri": "s3://
input bucket
/input path
", "InputFormat": "ONE_DOC_PER_FILE" }, "OutputDataConfig": { "S3Uri": "s3://output bucket
/output path
" }, "DataAccessRoleArn": "arn:aws:iam::account ID
:role/data access role
" }
如果启动主题检测作业的请求成功,您将收到以下响应:
{
"JobStatus": "SUBMITTED",
"JobId": "job ID
"
}
使用该ListTopicsDetectionJobs操作可以查看您已提交的主题检测作业的列表。该列表包括有关您使用的输入和输出位置以及每个检测作业状态的信息。此示例的格式适用于 Unix、Linux 和 macOS。对于 Windows,请将每行末尾的反斜杠 (\) Unix 行继续符替换为脱字号 (^)。
aws comprehend list-topics-detection-jobs \--
region
您将得到类似于以下内容的 JSON 响应:
{
"TopicsDetectionJobPropertiesList": [
{
"InputDataConfig": {
"S3Uri": "s3://input bucket
/input path
",
"InputFormat": "ONE_DOC_PER_LINE"
},
"NumberOfTopics": topics to return
,
"JobId": "job ID
",
"JobStatus": "COMPLETED",
"JobName": "job name
",
"SubmitTime": timestamp
,
"OutputDataConfig": {
"S3Uri": "s3://output bucket
/output path
"
},
"EndTime": timestamp
},
{
"InputDataConfig": {
"S3Uri": "s3://input bucket
/input path
",
"InputFormat": "ONE_DOC_PER_LINE"
},
"NumberOfTopics": topics to return
,
"JobId": "job ID
",
"JobStatus": "RUNNING",
"JobName": "job name
",
"SubmitTime": timestamp
,
"OutputDataConfig": {
"S3Uri": "s3://output bucket
/output path
"
}
}
]
}
您可以使用该DescribeTopicsDetectionJob操作来获取现有任务的状态。此示例的格式适用于 Unix、Linux 和 macOS。对于 Windows,请将每行末尾的反斜杠 (\) Unix 行继续符替换为脱字号 (^)。
aws comprehend describe-topics-detection-job --job-id
job ID
您将收到以下 JSON 响应:
{
"TopicsDetectionJobProperties": {
"InputDataConfig": {
"S3Uri": "s3://input bucket
/input path
",
"InputFormat": "ONE_DOC_PER_LINE"
},
"NumberOfTopics": topics to return
,
"JobId": "job ID
",
"JobStatus": "COMPLETED",
"JobName": "job name
",
"SubmitTime": timestamp
,
"OutputDataConfig": {
"S3Uri": "s3://output bucket
/ouput path
"
},
"EndTime": timestamp
}
}
使用适用于 Python 的 SDK 或 AWS SDK for .NET
有关如何启动主题建模作业的 SDK 示例,请参阅 与 AWS SDK或StartTopicsDetectionJob一起使用 CLI。