关闭

在现代医疗保健、金融服务、公共部门等各行业,许多 AWS 客户使用 Amazon Simple Storage Service (Amazon S3) 储存数十亿个影像或 PDF 文件。然而,直到现在这些客户都一直无法有效地从这些文件中提取信息。

如何使用 AWS Textract 解决大量文件处理问题?

AWS 提供了一项名为智慧文件处理 (IDP) 的解决方案,使用了 Amazon Textract 等人工智慧服务。这使得客户能够利用机器学习技术,快速且准确地处理 PDF 或文件影像中的资料。透过此解决方案,您可以提取文件中的文字,进而微调模型、汇总资料或将其传送到资料库。

此文章将介绍两种解决方案,将大量文件处理成原始文字档案并储存在 Amazon S3 中。第一种方法是使用 Python 脚本,允许从任何伺服器或实例运行。这是最快速的入门方式。第二种方法则是使用 AWS 云端开发套件 (AWS CDK) 建构对各种基础设施元件进行交钥匙部署。AWS CDK 提供了一个有弹性且灵活的框架,可用来处理文件并建立端对端的 IDP 管道,同时还能扩充功能以满足特定业务需求。

解决方案 1:使用 Python 脚本

这个解决方案使用 Amazon Textract 以最快速度处理原始文字文档,并期望在脚本故障时能从中断处继续。脚本利用 Amazon S3、Amazon DynamoDB 和 Amazon Textract 三种不同的服务。在这个解决方案中,我们建立了 DynamoDB 表,存储 Amazon S3 中文件的物件引用清单。脚本会枚举这个清单,并使用 Amazon Textract 非同步 API 以最大限度提高服务吞吐量。

下图说明了脚本中的事件顺序。脚本结束时,完成状态以及所用时间将返回 SageMaker studio 控制台。

如何使用 AWS Textract 解决大量文件处理问题?

解决方案 2:使用无伺服器 AWS CDK 构造

这个解决方案使用 AWS Step Functions 和 Lambda 函数来编排 IDP 管道。我们使用 IDP AWS CDK 构造,利用 Step Functions 分散式映射迭代 S3 储存桶中的所有档案。这个解决方案还包含两个 Lambda 函数,用于解析和储存从 Amazon Textract 提取的文字。

下图说明了 Step Functions 工作流程。
如何使用 AWS Textract 解决大量文件处理问题?


无论您选择哪种解决方案,都能够快速处理数百万页的文件。在实际运行解决方案之前,建议使用文件子集进行测试,以确保结果符合预期。

总之,这些解决方案使得客户能够轻松地将大量文件转换为可用于生成人工智慧和搜寻的文本资料。



资料来源:https://aws.amazon.com/tw/blogs/machine-learning/create-a-document-lake-using-large-scale-text-extraction-from-documents-with-amazon-textract/