用定制的眼镜打造良好架构的IDP解决方案-第4部分:性能效率

个性化眼镜打造高效IDP解决方案-第四部分:性能效率+

当客户具备可供生产使用的智能文档处理(IDP)负载时,我们经常收到关于良好架构设计的请求。为了构建企业解决方案,需要平衡开发资源、成本、时间和用户体验,以达到期望的业务成果。 AWS 良好架构框架 提供了一种系统化的方法,让组织能够学习云上设计和运营可靠、安全、高效、经济有效和可持续负载的操作和架构最佳实践。

IDP 良好架构自定义镜头遵循 AWS 良好架构框架,在特定 AI 或机器学习(ML)用例的粒度上,通过六个支柱对解决方案进行审查,并提供指导以应对常见挑战。 IDP 良好架构自定义镜头在良好架构工具中包含了每个支柱相关的问题。通过回答这些问题,您可以识别潜在风险并按照改进计划加以解决。

本文聚焦于 IDP 负载的性能效率支柱。我们深入探讨了设计和实施解决方案的优化吞吐量、延迟和整体性能的方案。我们首先讨论了一些常见指标,通过这些指标可以判断是否需要进行良好架构审查,并介绍了基本的设计原则。然后我们从技术角度逐一介绍了每个关注领域。

要按照本文进行操作,您应该熟悉此系列的先前文章(第1部分第2部分)以及AWS 上智能文档处理的指导中的准则。这些资源介绍了用于 IDP 负载的常见 AWS 服务和建议的工作流程。有了这些知识,您现在可以了解如何将您的工作负载投入生产环境。

常见指标

以下是您在性能效率支柱方面应进行 AWS 安全架构审查的常见指标:

  • 高延迟 – 光学字符识别(OCR)、实体识别或端到端工作流的延迟超过先前基准,这可能表明架构设计中未涵盖负载测试或错误处理。
  • 频繁限流 – 可能会因为 AWS 服务例如Amazon Textract 的请求限制而受到限流。这意味着架构需要通过审查架构工作流、同步和异步实施、每秒事务数 (TPS) 计算等进行调整。
  • 调试困难 – 当出现文档处理故障时,您可能没有有效的方式来确定故障在工作流中的位置、与之相关的服务以及故障发生的原因。这意味着系统缺乏对日志和故障的可见性。考虑重新审查遥测数据的记录设计,并向解决方案添加基础设施即代码(IaC),例如文档处理流程。
指标 描述 架构缺陷
高延迟 OCR、实体识别或端到端工作流的延迟超过先前基准
  • 负载测试
  • 错误处理
频繁限流 由于请求限制,可能会遇到 Amazon Textract 等 AWS 服务的限流
  • 同步 vs 异步
  • 每秒事务数 (TPS) 计算
调试困难 没有位置查找、故障原因和故障发生原因方面的可见性
  • 记录设计
  • 文档处理流程

设计原则

在本文中,我们讨论了三个设计原则:委派复杂的AI任务、IaC(基础设施即代码)架构和无服务器架构。当在两种实现方案之间需要权衡时,您可以根据组织的业务优先级重新审视设计原则,以便能够做出有效的决策。

  • 委派复杂的AI任务 – 您可以通过将机器学习模型开发生命周期转移到托管服务中,并利用AWS提供的模型开发和基础设施来加快组织中的AI采用速度。与要求数据科学和IT团队构建和维护AI模型不同,您可以使用预训练的AI服务来自动化任务。这样,您的团队就可以专注于能够区分您的业务的高价值工作,而云提供商处理训练、部署和扩展AI模型的复杂性。
  • IaC架构 – 在运行IDP(智能文档处理)解决方案时,该解决方案包括多个AI服务,以按照时间顺序执行端到端工作流程。您可以使用AWS Step Functions构建工作流程管道,以增强容错性、并行处理、可见性和可扩展性。这些优势能够使您优化底层AI服务的使用和成本。
  • 无服务器架构 – IDP通常是一个事件驱动的解决方案,由用户上传或预定的作业触发。通过增加对AI服务、AWS Lambda和其他相关服务的调用速率,可以水平扩展解决方案。无服务器方法提供了可扩展性,而无需过度提供资源,从而防止不必要的开销。无服务器设计背后的监控有助于检测性能问题。
图1 应用设计原则时的效益。作者提供。

图1 应用设计原则的效益。

牢记这三个设计原则,组织可以在云平台上建立有效的AI/ML采纳基础。通过委派复杂性、实施弹性基础设施和实现可扩展性,组织可以优化其AI/ML解决方案。

在接下来的几节中,我们将讨论如何解决与技术关注领域相关的常见挑战。

关注领域

在评估性能效率时,我们从五个关注领域来审查解决方案:架构设计、数据管理、错误处理、系统监控和模型监控。通过这些关注领域,您可以从不同的角度对架构进行审查,以增强AI/ML项目的数据、模型或业务目标的有效性、可观察性和可扩展性。

架构设计

通过对这个关注领域的问题进行审查,您将审查现有的工作流程,以查看它是否遵循最佳实践。建议的工作流程提供了组织可以遵循的共同模式,避免了试错成本。

根据提出的架构,该工作流程按照数据捕获、分类、提取、丰富、审查和验证以及使用的六个阶段进行。我们之前讨论的常见指标中,有三个指标中的两个来自架构设计问题。这是因为当您以即兴的方式开始一个项目时,当尝试将基础设施与解决方案对齐时,您可能会遇到项目限制。通过架构设计审查,即兴设计可以被拆分为各个阶段,并且每个阶段都可以重新评估和重排。

通过在工作流程中实施分类,您可以节省时间、金钱和人力,并根据文档类型使文档流向下游应用程序和API。这增强了文档流程的可观察性,并在添加新的文档类型时使解决方案维护流程更加直观。

数据管理

IDP解决方案的性能包括延迟、吞吐量和端到端用户体验。如何在解决方案中管理文档及其提取的信息是确保数据一致性、安全性和隐私性的关键。此外,解决方案必须处理高数据量、低延迟和高吞吐量。

在浏览这个重点领域的问题时,您将会审查文档工作流程。这包括数据摄取、数据预处理、将文档转换为亚马逊Textract可接受的文档类型、处理传入的文档流、按类型路由文档以及实施访问控制和保留策略。

例如,通过在不同的处理阶段存储文档,如果需要的话,可以将处理过程逆转到上一步。数据生命周期确保了工作负载的可靠性和合规性。通过使用Amazon Textract服务配额计算器(请参见下面的截图)、亚马逊Textract上的异步功能、Lambda、Step Functions、亚马逊简单队列服务(Amazon SQS)以及亚马逊简单通知服务(Amazon SNS),组织可以自动化和扩展文档处理任务,以满足特定的工作负载需求。

图2. Amazon Textract服务配额计算器。作者提供。

图2. Amazon Textract服务配额计算器。

错误处理

强大的错误处理对于跟踪文档处理状态至关重要,并且它为运营团队提供了在出现异常行为(如意外的文档数量、新的文档类型或来自第三方服务的其他计划外问题)时作出反应的时间。从组织的角度来看,适当的错误处理可以提高系统的正常运行时间和性能。

您可以将错误处理分为两个关键方面:

  • AWS服务配置 – 您可以实现指数回退的重试逻辑,以处理像限流等瞬态错误。当您通过调用异步的Start*操作(如StartDocumentTextDetection)开始处理时,您可以指定将请求的完成状态发布到在NotificationChannel配置中的SNS主题。这有助于避免由于轮询Get* API而导致的API调用限流。您还可以在Amazon CloudWatch中实施警报和触发器,以在发生异常错误峰值时进行提醒。
  • 错误报告增强 – 这包括有关错误类型的详细消息,并描述错误处理响应的适当详细级别。通过适当的错误处理设置,系统可以通过实施自动重试间歇性错误、使用断路器处理级联故障以及监视服务获取错误的见解,从而更加具有弹性。这允许解决方案在重试限制和避免无休止电路循环之间取得平衡。

模型监控

ML模型的性能会随着时间的推移进行衰退监控。随着数据和系统条件的变化,模型的性能和效率指标被跟踪以确保在需要时执行重新训练。

IDP工作流程中的ML模型可以是OCR模型、实体识别模型或分类模型。该模型可以来自于AWS AI服务、Amazon SageMaker上的开源模型、Amazon Bedrock或其他第三方服务。为了提高模型的性能并得到人工反馈以及随着时间的推移不断增强服务性能,您必须了解每个服务的限制和使用案例。

常见的方法是使用服务日志来了解不同级别的准确性。这些日志可以帮助数据科学团队识别和理解模型重新训练的需求。您的组织可以选择重新训练机制,可以是季度性、每月性或基于科学指标,如准确度低于给定阈值时。

监控的目标不仅是检测问题,还包括不断完善模型,使IDP解决方案在外部环境发展变化时保持良好的性能。

系统监控

在将IDP解决方案部署到生产环境后,重要的是监控关键指标和自动化性能,以识别改进的领域。这些指标应包括业务指标和技术指标。这使公司能够评估系统的性能,发现问题,并随着时间的推移改进模型、规则和工作流程,以提高自动化率、了解运营影响。

在业务方面,提取关键字段的准确率、整体自动化率(指无人工干预处理的文档比例)和每个文档的平均处理时间等指标至关重要。这些业务指标有助于量化终端用户体验和运营效率提升。

从工程角度来看,跟踪工作流程中发生的错误和异常率等技术指标至关重要。这些技术指标还可以从端到端的每个级别进行监控,并提供复杂工作负载的全面视图。您可以将这些指标分解为不同的级别,例如解决方案级别、端到端工作流程级别、文档类型级别、文档级别、实体识别级别和OCR级别。

现在您已经审查了这个部分中的所有问题,您可以评估其他部分,并为您的IDP工作负载制定改进计划。

结论

在本文中,我们讨论了您可能需要为IDP工作负载执行完善架构框架审查的常见指标。然后,我们通过设计原则提供了一个高级概述,并讨论了解决方案目标。通过遵循IDP完善架构自定义镜头的建议,并参考重点领域的问题,您现在应该有一个项目改进计划。

要了解更多关于IDP完善架构自定义镜头的内容,请参阅本系列中的以下帖子:

可靠性](https://aws.amazon.com/blogs/machine-learning/build-w ell-architected-idp-solutions-with-a-custom-lens-part-3-reliability/) – 使用自定义镜头构建可靠的IDP解决方案-第4部分:性能效率 – 使用自定义镜头构建高效的IDP解决方案-第5部分:成本优化使用自定义镜头构建可持续的IDP解决方案-第6部分