Tan ubicua como parece ser la IA en estos días, hay una cantidad igual de confusión sobre cómo aprovechar mejor la tecnología. En artículos como Usando ChatGPT para Analizar Tus Datos de Prueba y Usando IA Generativa para Escribir y Ejecutar Código Embebido, hemos visto cómo la IA, como ChatGPT, puede ayudarnos no solo a analizar datos sino también a escribir código por nosotros. Para los ingenieros eléctricos, los componentes de análisis y escritura de código de la IA Generativa pueden ser útiles pero no siempre cambian las reglas del juego. En este artículo vamos a construir un GPT personalizado que nos permita "tener una conversación con nuestro diseño". Crearemos un "Gemelo Digital" de la placa de evaluación Arty A7 en ChatGPT, dándonos la capacidad de diseñar, solucionar problemas y trabajar con la placa usando un asistente de IA.
Un gemelo digital es un modelo virtual que refleja un objeto de la vida real. Al crear este contraparte digital, podemos simular y probar el comportamiento del objeto sin necesidad del ítem físico. Para la placa de evaluación Arty A7, tener un gemelo digital significa que puedes solucionar problemas, diseñar y trabajar con la placa virtualmente, sin tener que manejar primero el hardware real. Esto hace que el proceso sea más eficiente, permitiendo pruebas exhaustivas y ajustes de diseño. Obviamente, el límite está en cuán preciso es tu modelo y cuán fácil es interactuar con él. Por razones de brevedad y simplicidad, vamos a construir un gemelo digital bastante primitivo del Arty A7 que puede asistirnos con preguntas de diseño y solución de problemas
Generación Mejorada por Recuperación (RAG, por sus siglas en inglés), más conocida por el artículo titulado Generación Mejorada por Recuperación para Tareas de PNL Intensivas en Conocimiento, es una metodología donde se utiliza un modelo de lenguaje grande (LLM) en conjunto con datos disponibles (versus datos aprendidos dentro del modelo). Por ejemplo, si le pregunto a un LLM cuál es el precio de mi casa, puede que pueda o no responder esa pregunta con precisión. Si le proporciono "contexto" con, digamos, mi factura de impuestos de propiedad más reciente, debería poder averiguarlo bastante fácilmente (ya que, más o menos, solo está utilizando el procesamiento de lenguaje natural). En resumen, RAG utiliza el mismo concepto al proporcionar contexto al LLM para generar una respuesta de mayor calidad. Aunque es difícil saber exactamente qué sistemas propietarios están utilizando como su backend, es bastante seguro asumir que un enfoque similar a RAG es bastante común para construir un gemelo digital con IA.
Como hemos visto en Construyendo un Asistente de Laboratorio con IA y Usando IA Generativa para Escribir y Ejecutar Código Embebido, puedes escribir GPTs personalizados para interactuar con servidores web y controlar instrumentos, pero también pueden contener contexto para actuar como gemelos digitales. La configuración es realmente muy simple. Usando la versión de pago plus de ChatGPT puedo crear un GPT personalizado haciendo clic en "Explorar GPTs" en la barra lateral izquierda y luego clic en el botón "Crear" en la esquina superior derecha. Nota: Al momento de escribir este artículo, la navegación para crear un GPT personalizado había cambiado casi 3 veces en los últimos 6 meses. Puede que quieras consultar la documentación de OpenAI sobre cómo crear un GPT personalizado si estas instrucciones están desactualizadas.
Una vez que he navegado a la página que me da la opción de crear un GPT personalizado, estoy listo para ingresar todos mis parámetros y proporcionar mi "contexto".
Figura 1: Configuración del GPT Personalizado
Notarás que he dado a mi GPT personalizado un nombre, descripción, un conjunto de instrucciones básicas y un conjunto de "Conocimiento" de archivos. Estos archivos están compuestos por mi Arty A7:
Por supuesto, puedo proporcionar aún más datos como la lista de materiales, otros documentos de diseño, y aún más hojas de datos, pero esto parecía suficiente para demostrar mi concepto.
Para realizar una consulta rápida de referencia desde nuestro gemelo digital, puedo ahorrar un par de segundos aquí y allá preguntándole sobre los componentes en la placa. Por ejemplo:
Figura 2: Consultando una hoja de datos
Y los datos que extrajo de la hoja de datos parecen coincidir (aunque a veces puede interpretar incorrectamente las tablas en PDFs):
Figura 3: Especificaciones tomadas de la hoja de datos
Aunque es trivial, esto sí ahorra algo de tiempo, especialmente si estás usando la versión de voz de ChatGPT. También podemos decirle a nuestro GPT personalizado que el oscilador no está funcionando correctamente y pedirle sugerencias de solución de problemas adaptadas a la pieza específica:
Figura 4: Solución de problemas del Oscilador
Dependiendo de tu nivel de habilidad, esta información puede ser útil o no para ti. Podemos profundizar un poco más y pedirle ayuda, por ejemplo, para diagnosticar por qué la memoria flash no responde. Una respuesta más compleja involucrará las especificaciones del datasheet (similar al oscilador) pero también referencias al código y restricciones de los pines. Proporcionar al prompt aún más contexto, como tu código modificado, le dará una mejor oportunidad de descubrir tu problema. Estos ejemplos, aunque algo triviales, demuestran la capacidad y el poder de usar LLMs y RAG para construir muy rápidamente un gemelo digital. El proceso de configurar el GPT personalizado literalmente tomó 5 minutos (y la mayor parte de eso fue debido a los tiempos de carga). Esto es solo el comienzo de la era del gemelo digital y estoy seguro de que veremos muchos más avances en los próximos años.
En este artículo, exploramos el concepto de gemelos digitales y cómo crear un GPT personalizado para trabajar y solucionar problemas con la placa de evaluación Arty A7. Al aprovechar la IA, podemos interactuar virtualmente con nuestros diseños, ahorrando tiempo y aumentando la eficiencia. Los pasos para configurar tu propio GPT personalizado son sencillos y se pueden realizar rápidamente. Ahora que comprendes los conceptos básicos, es momento de experimentar y ver los beneficios por ti mismo. ¡Sumérgete, crea tu gemelo digital y comienza a optimizar tu diseño y proceso de puesta en marcha hoy!