制造组织在整个产品生命周期中都有大量知识分散的知识,这可能会导致可见度,知识差距和无法持续改进。数字线程提供了一种集成的方法,可以将跨企业系统的不同数据源相结合,以驱动可追溯性,可访问性,协作和敏捷性。
在此示例项目中,了解如何根据整个产品生命周期中生成的数据及其相互联系的关系来使用知识图和生成AI技术的组合来创建智能制造数字线程。探索用例并发现可行的步骤,以使用AWS上的图和生成AI启动您的智能数字线程旅程。

要执行本文中概述的步骤,您将需要以下内容:
将存储库克隆到您的环境中
git clone https://github.com/aws-solutions-library-samples/guidance-for-digital-thread-using-graph-and-generative-ai-on-aws.git
cd guidance-for-digital-thread-using-graph-and-generative-ai-on-aws
要部署此应用,请运行:
chmod +x deploy-script.sh
./deploy-script.sh
Deploy-Script.sh将在您的帐户中设置以下资源:
- 带有演示用户帐户的Amazon Cognito用户池
- Amazon Neptune无服务器集群
- Amazon Neptune Workbench SageMaker笔记本
- VPC
- 子网/安全组
- 应用负载平衡器
- 亚马逊ECR存储库
- ECS集群和服务在AWS Fargate上运行
如果询问您有关AWS凭据,如下所示。请阅读配置AWS凭据。
Which credentials would you like to use to create demo? [Use arrows to move, type to filter, ? for more help]
> Enter temporary credentials
[profile default]
在AWS副作用部署后,请访问URL与数字线程聊天。
✔ Deployed service genai-chatbot-app.
Recommended follow-up action:
- Your service is accessible at http://genai--Publi-xxxxxxx-111111111.xx-xxxx-x.elb.amazonaws.com over the internet.
新部署的Amazon Neptune群集不包含任何数据。要展示基于Amazon Bedrock Gen AI和基于Neptune知识图的数字线程之间的相互作用,请按以下步骤从SRC/知识图/数据/数据库中导入示例数据中。
在BASH脚本下运行以创建S3桶并将SRC/知识图/数据/文件上传到Amazon S3
ACCOUNT_ID=$(aws sts get-caller-identity --query "Account" --output text)
S3_BUCKET_NAME="mfg-digitalthread-data-${ACCOUNT_ID}"
aws s3 mb "s3://$S3_BUCKET_NAME"
aws s3 cp ./src/knowledge-graph/data/ s3://$S3_BUCKET_NAME/sample_data/ --recursive
访问Neptune Workbench笔记本jupyter笔记本。
来自AWS控制台:
deploy-script.sh的笔记本从云形式堆栈中的URL:
mfg-dt-neptuneNeptuneSagemakerNotebook键,以找到Neptune Sagemaker笔记本的URL。 (例如https://aws-neptune-notebook-for-neptunedbcluster-xxxxxxxxxxxxxx x.notebook.xx-xxxx-x.sagemaker.aws/)进入Jupyter笔记本后,单击右上角的Upload按钮,然后上传SRC/知识图/MFG-Neptune-bulk-import.ipynb文件到Neptune Notebook中。 (PS:单击upload蓝色按钮以确认上传)
进入mfg-neptune-bulk-import.ipynb ,然后按照笔记本内的步骤加载样本数据到Neptune数据库中。
成功的数据导入将生成以下知识图。

您将被要求使用Cognito用户登录。在此演示中,将使用临时密码temppassw0rd创建示例用户demo_user TempPassw0rd! 。 
首次登录时需要重置密码。请确保您遵循密码指南。

主页将显示,您可以与数字线程Gen AI和Graph Application聊天。

示例问题可以通过扩展Example questions菜单找到。
注意:清理后,亚马逊海王星中的所有数据都将丢失。
由于此演示会在您的帐户中设置资源,因此让我们删除它们,以免收费。
clearup-script.sh将在您的帐户中删除以下资源:> * Amazon cognito用户池,带有演示> * Amazon Neptune无服务器群集> * Amazon Neptune Workbrench sagemaker笔记本> * vpc> * subnets/subnets> * subnets/security> * subly> *应用程序> *应用程序负载balancer>
chmod +x cleanup-script.sh
./cleanup-script.sh
输入“ y”确认清理:
This script is to clean up the Manufacturing Digital thread (Graph and Generative AI) demo application.
Are you sure to delete the demo application? (y/n): y
Are you sure you want to delete application genai-chatbot-app? [? for help] (y/N) y
Finally, You will get a message "CloudFormation is being deleted. It will be removed in minutes. Please check the CloudFormation console https://console.aws.amazon.com/cloudformation/home".
It will take 10-15 minutes to cleanup the resources in your account.

有关更多信息,请参见贡献。
有关AWS指南,请在AWS上使用图形和生成AI访问数字线程指南
博客将于2024年4月发布。
如果Neptune群集处于停止状态,我可以执行clearup-script.sh吗?
否。CloudFormation删除将失败,而“ DB群集NeptunedBcluster处于停止状态”。在进行清理之前,请通过AWS控制台或CLI命令启动Neptune群集。
当云形式未能创建Neptune群集使用错误“以下资源未能创建:[Elasticip3,Elasticip1,Elasticip2]”时该怎么办?
在运行Neptune CloudFormation模板之前,请确保您有足够的能力来创建3个弹性IP。验证AWS控制台中的弹性IP的数量https://console.aws.amazon.com/ec2/home?#addresses:部署脚本之前。
除了demo_user,我可以创建一个新用户吗?
是的。您可以导航到AWS Cognito用户池,并使用AWS控制台或通过CLI创建新用户。
在运行deploy-script.sh时,我收到了错误的“ JQ:命令”。如何修复?
请访问安装JQ页面以获取更多信息。
如果我收到警告,该怎么办”请求的图像平台(Linux/ARM64/V8)与检测到的主机平台(Linux/AMD64)不匹配,并且不要求使用特定的平台”,然后在Copilot部署期间发生故障?
可以通过从基于ARM64的实例中部署脚本来解决此错误。请参阅copilot/genai-chatbot-app下的subtest.yml文件中的平台属性。平台属性设置为Linux/ARM64。
该解决方案是否可以在其他域中使用,如果是,该过程是什么?
步骤1:确定特定域的客户问题。
步骤2:确定相关的利益相关者。
步骤3:了解问题并创建问题。
步骤4:确定相关系统和数据。
步骤5:创建边缘和顶点CSV文件,并将其放在知识图/数据/边缘以及知识图/数据/Vertices文件夹中。
步骤6:使用S3加载器加载文件,并使用SRC/知识图/MFG-Neptune-bulk-import.ipynb运行Neptune统计信息
步骤7:与图形聊天。
步骤8:如果响应不准确,请通过提供示例查询和相应的答案来更新提示模板。
与客户互动以了解他们的需求时,请使用以下模板。

我通过添加新的边缘和顶点对现有图进行了较小的调整,但是聊天应用程序似乎无法识别更改。这个问题的原因是什么?
Langchain Neptune图从Neptune统计摘要中获取节点和边缘标签。当您图表中的数据中有超过10%的数据发生变化或最新统计数据超过10天以上时,目前将重新生成Neptune统计数据。要解决问题,请在加载任何其他更改后立即运行统计命令“%统计信息 - 模式刷新”(请参阅MFG-Neptune-bulk-import.ipynb)。
我如何重置海王星DB?
请按照此博客中概述的“工作台魔术命令”。
停止海王星群集和笔记本以避免成本的程序是什么?
当您不使用时,这是停止Neptune群集和笔记本的最佳做法。按照以下概述的步骤操作。


亚马逊海王星和亚马逊基岩的价格是多少?
请参阅Neptune无服务器定价和Amazon Bedrock定价,以获取拟人型号。
在哪些AWS地区可以使用亚马逊基岩?
请参考此页面以获取更多详细信息。
我需要更多地了解亚马逊海王星和亚马逊基岩。
有关更多信息,请参阅Amazon Bedrock和Amazon Neptune产品页面。
该图书馆已获得MIT-0许可证的许可。请参阅许可证文件。