Las organizaciones de fabricación tienen grandes cantidades de conocimiento dispersas en todo el ciclo de vida del producto, lo que puede dar lugar a una visibilidad limitada, brechas de conocimiento y la incapacidad de mejorar continuamente. Un hilo digital ofrece un enfoque integrado para combinar fuentes de datos dispares en los sistemas empresariales para impulsar la trazabilidad, la accesibilidad, la colaboración y la agilidad.
En este proyecto de muestra, aprenda cómo crear un hilo digital de fabricación inteligente utilizando una combinación de gráfico de conocimiento y tecnologías generativas de IA basadas en datos generados en todo el ciclo de vida del producto y su relación interconectada. Explore los casos de uso y descubra los pasos procesables para comenzar su viaje de hilo digital inteligente usando gráfico y IA generativa en AWS.

Para ejecutar los pasos descritos en esta publicación, necesitará lo siguiente:
Clonar el repositorio en su entorno
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
Para implementar esta aplicación, ejecute:
chmod +x deploy-script.sh
./deploy-script.sh
El implement-script.sh configurará los siguientes recursos en su cuenta:
- Amazon Cognito User Pool con una cuenta de usuario de demostración
- Clúster sin servidor de Amazon Neptuno
- Amazon Neptune Workbench Sagemaker cuaderno
- Un VPC
- Subredes/grupos de seguridad
- Balancador de carga de la aplicación
- Repositorio de Amazon ECR
- ECS Cluster & Service que se ejecuta en AWS Fargate
En caso de que se le pregunte sobre las credenciales de AWS como se muestra a continuación. Lea Configurar las credenciales de 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]
Visite la URL después de la implementación de copilot de AWS para chatear con el hilo digital.
✔ 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.
Los clústeres de Amazon Neptune recientemente implementados no contienen ningún dato. Para mostrar la interacción entre Amazon Bedrock Gen AI y el hilo digital basado en el gráfico de conocimiento de Neptune, siga los pasos a continuación para importar los datos de muestra de SRC/Knowledge-Graph/Data/en la base de datos de gráficos.
Ejecute el script Bash a continuación para crear un cubo S3 y cargar Src/Knowledge-Graph/Data/archivos en 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
Visite el cuaderno de Neptune Workbench Jupyter.
De la consola de AWS :
deploy-script.sh nubeFormationDe URL en la pila de CloudFormation :
mfg-dt-neptuneNeptuneSagemakerNotebook para encontrar la URL del cuaderno de Sagemaker de Neptuno. (por ejemplo, https://aws-neptune-notebook-for-neptunedbcluster-xxxxxxxx.notebook.xx-xxxx-x.sagemaker.aws/) Después de entrar en el cuaderno de Jupyter, haga clic en el botón Upload en la esquina superior derecha y cargue el archivo SRC/Knowledge-Graph/MFG-Neptune-Bulk-Import.ipynb en el cuaderno de Neptune. (PD: haga clic en upload el botón Azul para confirmar la carga)
Vaya a mfg-neptune-bulk-import.ipynb y siga los pasos dentro del cuaderno para cargar los datos de muestra en la base de datos de Neptuno.
La importación de datos exitosa generará el siguiente gráfico de conocimiento.

Se le pedirá que inicie sesión con el usuario de Cognito. En esta demostración, se creará una muestra de usuario demo_user con la contraseña temporal TempPassw0rd! . 
Restablecer la contraseña es necesaria cuando inicia sesión por primera vez. Asegúrese de seguir las pautas de contraseña.

Se mostrará la página principal y puede chatear con la aplicación Digital Thread Gen AI y Graph.

Las preguntas de muestra se pueden encontrar expandiendo el menú Example questions .
Atención: Todos los datos en Amazon Neptuno se perderán después de limpiar.
Dado que esta demostración establece recursos en su cuenta, eliminémonos para que no se le cobre.
Cleanup-script.sh eliminará los siguientes recursos en su cuenta:> * Amazon Cognito User Pool con una Demo> * Amazon Neptune Cluster sin servidor> * Amazon Neptune WorkBorkBrench Sagemaker Notebook> * A VPC> * Subresta/Grupos de seguridad> * Aplicación Balancer de carga> * Amazon ECR Repositories> * ECS Cluster & Service en AWS Fargate AWS Fargate
chmod +x cleanup-script.sh
./cleanup-script.sh
Entrada 'Y' para confirmar la limpieza:
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.

Ver contribuyendo para más información.
Para obtener orientación de AWS, visite la guía para el hilo digital utilizando gráfico y la IA generativa en AWS
El blog se lanzará en abril de 2024.
¿Puedo ejecutar el cleanup-script.sh si el clúster Neptuno está en estado detenido?
No. CloudFormation Deletion fallará con el error "El clúster DB Neptunedbcluster está en estado detenido". Inicie el clúster Neptuno a través de la consola AWS o el comando CLI antes de continuar con la limpieza.
¿Qué hacer cuando CloudFormation no pudo crear el clúster Neptuno con el error "Los siguientes recursos no lograron crear: [Elasticip3, elasticip1, elasticip2]"?
Antes de ejecutar la plantilla de Neptuno CloudFormation, asegúrese de tener suficiente capacidad para la creación de 3 IP elásticas. Verifique el número de IP elásticas en la consola AWS https://console.aws.amazon.com/ec2/home?#addresses: antes de implementar el script.
¿Puedo crear un nuevo usuario aparte de Demo_user?
Sí. Puede navegar hasta el grupo de usuarios de AWS Cognito y crear un nuevo usuario utilizando la consola AWS o a través de CLI.
Recibí el error "JQ: comando no encontrado" al ejecutar el implement-script.sh. ¿Cómo solucionar?
Visite la página Instalar JQ para obtener más información.
¿Qué hago si obtengo una advertencia 'La plataforma de la imagen solicitada (Linux/ARM64/V8) no coincide con la plataforma de host detectada (Linux/AMD64) y no se solicitó ninguna plataforma específica' seguido de una falla durante el despliegue de copilotos?
Este error se puede resolver implementando el script desde la instancia basada en ARM64. Consulte el atributo de plataforma en el archivo Manifest.yml presente en Copilot/Genai-Chatbot-App. El atributo de la plataforma está configurado en Linux/ARM64.
¿Se puede adaptar esta solución para su uso en otros dominios y, de ser así, cuál es el proceso?
Paso 1: Identifique el problema del cliente específico del dominio.
Paso 2: Identificar a las partes interesadas relevantes.
Paso 3: Comprenda el problema y cree preguntas.
Paso 4: Identifique el sistema y los datos relevantes.
Paso 5: Cree los archivos CSV de bordes y vértices y colóquelo en el conocimiento de conocimiento/datos/bordes y carpetas de gráfico de conocimiento/datos/vértices.
Paso 6: Cargue los archivos usando el cargador S3 y ejecute las estadísticas de Neptuno usando SRC/Knowledge-Graph/MFG-Neptune-Bulk-Import.ipynb
Paso 7: Chatea con el gráfico.
Paso 8: Si la respuesta es inexacta, actualice la plantilla de solicitud proporcionando una consulta de ejemplo y la respuesta correspondiente.
Cuando se involucre con los clientes para comprender sus necesidades, use la siguiente plantilla.

Hice ajustes menores en el gráfico existente agregando nuevos bordes y vértices, pero la aplicación de chat no parece reconocer los cambios. ¿Cuál podría ser la razón de este problema?
Langchain Neptune Graph obtiene las etiquetas de nodo y borde del resumen de estadísticas de Neptuno. Las estadísticas de Neptuno actualmente se vuelven a generar cada vez que más del 10% de los datos en su gráfico han cambiado o cuando las últimas estadísticas tienen más de 10 días. Para resolver el problema, ejecute el comando de estadísticas "%estadísticas: actualización" inmediatamente después de cargar cualquier cambio adicional (consulte MFG-Neptuno-Bulk-Import.ipynb).
¿Cómo reinicio Neptuno DB?
Siga los "Comandos de Magia de Workbench" descritos en este blog.
¿Cuál es el procedimiento para detener el clúster y el cuaderno de Neptuno para evitar incurrir en costos?
Es una mejor práctica para detener el clúster y el cuaderno de Neptuno cuando no lo usa. Siga los pasos descritos a continuación.


¿Cuánto cuestan Amazon Neptuno y Amazon Bedrock?
Consulte el precio sin servidor de Neptuno y el precio de la roca madre de Amazon para los modelos antrópicos.
¿En qué regiones de AWS está disponible en Amazon Bedrock?
Consulte esta página para obtener más detalles.
Necesito saber más sobre Amazon Neptuno y Amazon Bedrock.
Consulte la página del producto de Amazon Bedrock y Amazon Neptune para obtener más información.
Esta biblioteca tiene licencia bajo la licencia MIT-0. Ver el archivo de licencia.