在制造业日益变化的背景下,AI与机器学习(ML)的变革力量显而易见,正在推动一场数字革命,简化运营并提升生产力。然而,这种进展也给企业在数据驱动解决方案上带来了独特的挑战。工业设施面临着大量的非结构化数据,这些数据来自于生产线各处的传感器、遥测系统和设备。实时数据对于预测性维护和异常检测等应用至关重要,但针对如此时间序列数据每个工业用例开发定制的 ML 模型需要大量的数据科学家时间和资源,从而阻碍了大规模的广泛应用。
使用 和大型预训练基础模型(FMs),如 ,可以快速根据简单的文本提示生成多样的内容,包括对话文本和计算机代码,这种称之为 的方法,省去了数据科学家为每个用例手动开发特定 ML 模型的需要,从而使 AI访问更加民主化,甚至小型制造商也能受益。工作人员通过 AI生成的洞察提升了生产力,工程师能够主动检测异常,供应链管理者优化库存,工厂领导做出基于数据的明智决策。
然而,独立的 FMs 在处理复杂工业数据时,会面临上下文大小限制的挑战(通常 ),这导致了一些困难。为了应对这一点,可以利用 FMs 根据自然语言查询(NLQs)生成代码的能力。类似于
的代理开始发挥作用,它在高分辨率时间序列数据上运行此代码,同时利用 FMs 处理错误。PandasAI 是一个 Python 库,它将生成式 AI能力添加到流行的数据分析和处理工具 pandas。
复杂的 NLQs,比如时间序列数据处理、多级聚合以及透视或联接表操作,可能在采用零次提示时生成不一致的 Python 脚本准确性。
为了提高代码生成的准确性,我们建议动态构建 来处理 NLQs。多次提示通过向模型展示多个相似提示的预期输出,提供额外的上下文,从而提高准确性和一致性。在这篇文章中,提取出成功 Python 代码的多次提示包含于一个嵌入中,该嵌入用于类似数据类型(如来自物联网设备的高分辨率时间序列数据)。动态构造的多次提示为 FMs提供了最相关的上下文,并增强了 FMs在高级数学计算、时间序列数据处理和数据首字母缩略词理解上的能力。这种改善后的响应使企业员工和运营团队能够与数据互动,获取洞察而不需要广泛的数据科学技能。
除了时间序列数据分析,FMs 在多种工业应用中都显示出价值。维护团队可以评估资产健康,捕获 的功能汇总图像,以及利用智能搜索进行异常根因分析。为了简化这些工作流程,AWS 推出了 ,使您能够构建和扩展生成式 AI 应用,使用像 的最新预训练 FMs。借助 ,您可以简化 RAG开发过程,为工厂工人提供更准确的异常根因分析。我们的文章展示了一个为工业用例提供的智能助手,利用 Amazon Bedrock 解决 NLQ挑战,从图像生成零件摘要,并通过 RAG 方法增强设备诊断的 FM 响应。
下图展示了解决方案的架构。
工作流包括三个不同的用例:
时间序列数据的 NLQ 工作流包含以下步骤:
我们的摘要生成用例包含以下步骤:
我们的根因诊断用例包含以下步骤:
要遵循本文,您应满足以下前提条件:
要设置您的解决方案资源,请按照以下步骤操作:
genai-sagemaker
。接下来,您将为 Amazon S3 中的文档创建知识库。
Titan 嵌入模型将自动被选中。
下一步是在 PC 或 EC2 实例(Ubuntu Server 22.04 LTS)上部署所需库包的应用。
git clone https://github.com/aws-samples/unlocking-the-potential-of- generative-ai-in-industrial-operations
unlocking-the-potential-of-generative-ai-in-industrial-operations/src
,并在此文件夹中运行 setup.sh
脚本来安装所需的包,包括 LangChain 和 PandasAI:cd unlocking-the-potential-of-generative-ai-in-industrial-operations/srcchmod +x ./setup.sh ./setup.sh
source monitron-genai/bin/activate python3 -m streamlit run app_bedrock.py <REPLACE WITH YOUR BEDROCK KNOWLEDGEBASE ARN>
提供您从上一步在 Amazon Bedrock 中创建的 OpenSearch Service 集合 ARN。
完成端到端的部署后,您可以通过 localhost:8501 访问应用,这将打开带有 Web 界面的浏览器窗口。如果您在 EC2 实例上部署了应用,请 。您可以在不同的选项卡中导航以处理不同的用例。
要探索第一个用例,请选择 数据洞察和图表 。首先上传您的时间序列数据。如果您没有现有的时间序列数据文件,可以上传以下 其中包含匿名的 AmazonMonitron 项目数据。如果您已经有 Amazon Monitron 项目,请参阅 将您的 Amazon Monitron 数据流式传输至 AmazonS3,并使用您的数据与此应用。
上传完成后,输入查询以启动与数据的对话。左侧边栏提供多种示例问题供您参考。以下屏幕截图展示在输入像“告诉我每个地点的警告或警报的传感器唯一编号的数量?”(一个难度高的问题)或“对于显示温度信号为不健康的传感器,您能计算每个显示异常振动信号的传感器的天数持续时间吗?”(挑战性问题)的提问时生成的响应和 Python 代码。


如果您对答案感到满意,您可以将其标记为 有用 ,并将 NLQ 和 Claude 生成的 Python 代码保存在 OpenSearchService 索引中。
![](https://d2908q01
Leave a Reply