本指南可帮助您深入了解客户在 Twitter 等社交媒体网站上对您的产品和服务的评价。您可以构建一个近乎实时的警报系统,使用来自 Twitter 的数据,并且使用 Hugging Face Hub 中的预训练模型对推文进行分类,而不是手动筛选 Twitter 数据。
架构图
第 1 步
Amazon Elastic Container Service(Amazon ECS)任务在 AWS Fargate 管理的无服务器基础设施上运行,并维护与 Twitter API 的开放连接。
第 2 步
Twitter Bearer 令牌安全地存储在 AWS Systems Manager Parameter Store 中,容器映像托管在 Amazon Elastic Container Registry(Amazon ECR)上。
第 3 步
当新推文到达时,它会被放入 Amazon Simple Queue Service(SQS)队列中。
第 4 步
该解决方案的逻辑驻留在 AWS Lambda 函数微服务中,由 AWS Step Functions 协调。
第 5 步
Hugging Face 分类模型托管在 Amazon SageMaker 无服务器端点上。
第 6 步
Amazon Comprehend 会提取情感、关键短语和实体。如果可能,Amazon Comprehend 也会提取位置。
第 7 步
Amazon Location Service 将位置名称转换为坐标。
第 8 步
推文和元数据发送到 Amazon Simple Storage Service(Amazon S3),Amazon Athena 使用标准 SQL 查询处理后的推文。
第 9 步
Amazon Lookout for Metrics 会查找每个类别提及量的异常情况。当检测到异常时,Amazon Simple Notification Service(Amazon SNS)会向用户发送警报。
第 10 步
我们建议设置 Amazon QuickSight 控制面板,以便企业用户可以轻松可视化见解。
Well-Architected 支柱
当您在云中构建系统时,AWS Well-Architected Framework 可以帮助您了解所做决策的利弊。框架的六大支柱使您能够学习设计和操作可靠、安全、高效、经济高效且可持续的系统的架构最佳实践。使用 AWS 管理控制台中免费提供的 AWS Well-Architected Tool,您可以通过回答每个支柱的一组问题,根据这些最佳实践来检查您的工作负载。
上面的架构图是按照 Well-Architected 最佳实践创建的解决方案示例。要做到完全的良好架构,您应该遵循尽可能多的 Well-Architected 最佳实践。
-
卓越运营
您可以使用 AWS CloudFormation 模板回滚对架构所做的更改。如果 Fargate 和 Lambda 中的部署失败,它们可以自动回滚到以前的版本。
-
安全性
要部署此架构,您必须设置具有适当服务权限的 Identity and Access Management(IAM)用户或角色。此外,存储在 Amazon S3 中的数据使用 AWS Key Management Service(AWS KMS)密钥进行加密。
-
可靠性
数据存储在 Amazon S3 中,这是一种提供 99.999999999% 持久性的对象存储服务。如果您的数据对业务至关重要,则可以实施 S3 跨区域复制(CRR)将数据复制到其他 AWS 区域以实现灾难恢复。当发生超过特定阈值的异常时,Amazon SNS 会向您发送警报,以便您可以快速解决问题。
-
性能效率
AWS 可处理托管服务的管理任务(例如补丁和更新),以帮助保持性能效率。Lookout for Metrics 和 Amazon Location 等服务专门用于检测异常情况和向应用程序添加位置数据。
-
成本优化
在本指南中,大部分数据通过 Athena 和 QuickSight 直接在 AWS 中使用,从而减少了数据传输费用。仅当异常情况超出用户定义的阈值时,才会通过 Amazon SNS 传出数据。此外,该架构使用无服务器服务,因此您只需为所消耗的资源付费。
-
可持续性
无服务器服务可随使用量的增加而扩展,因此您不必运行闲置的基础设施来满足需求的增长。
相关内容
使用 Twitter、Amazon SageMaker 和 Hugging Face 构建基于新闻的实时警报系统
免责声明
示例代码;软件库;命令行工具;概念验证;模板;或其他相关技术(包括由我方人员提供的任何前述项)作为 AWS 内容按照《AWS 客户协议》或您与 AWS 之间的相关书面协议(以适用者为准)向您提供。您不应将这些 AWS 内容用在您的生产账户中,或用于生产或其他关键数据。您负责根据特定质量控制规程和标准测试、保护和优化 AWS 内容,例如示例代码,以使其适合生产级应用。部署 AWS 内容可能会因创建或使用 AWS 可收费资源(例如,运行 Amazon EC2 实例或使用 Amazon S3 存储)而产生 AWS 费用。