¿Qué es la ingeniería de indicaciones?
La ingeniería de peticiones es el proceso por el que se guían las soluciones de inteligencia artificial generativa (IA generativa) para generar los resultados deseados. Aunque la IA generativa intenta imitar a los humanos, requiere instrucciones detalladas para crear resultados relevantes y de alta calidad. En la ingeniería de indicaciones, usted elige los formatos, frases, palabras y símbolos más adecuados que guían a la IA para interactuar con los usuarios de manera más significativa. Los ingenieros de indicaciones recurren a la creatividad y al método de prueba y error para crear una colección de textos de entrada, de modo que la IA generativa de una aplicación funcione como se espera.
¿Qué es una indicación?
Una indicación es un texto en lenguaje natural que solicita a la IA generativa que realice una tarea específica. La IA generativa es una solución de inteligencia artificial que crea contenido nuevo, como historias, conversaciones, videos, imágenes y música. Se basa en modelos de machine learning (ML) de gran tamaño que utilizan redes neuronales profundas entrenadas previamente con grandes cantidades de datos.
Los modelos de lenguaje grandes (LLM) son muy flexibles y pueden realizar diversas tareas. Por ejemplo, pueden resumir documentos, completar oraciones, responder preguntas y traducir idiomas. Para una entrada específica del usuario, los modelos funcionan prediciendo la mejor salida que determinan a partir de entrenamientos anteriores.
Sin embargo, como son tan abiertos, sus usuarios pueden interactuar con soluciones de IA generativas a través de innumerables combinaciones de datos de entrada. Los modelos de lenguaje de IA son muy eficaces y no requieren mucho para empezar a crear contenido. Una sola palabra es suficiente para que el sistema cree una respuesta detallada.
Dicho esto, no todos los tipos de entradas generan resultados útiles. Los sistemas de IA generativa requieren contexto e información detallada para producir respuestas precisas y pertinentes. Cuando diseña indicaciones de forma sistemática, obtiene creaciones más significativas y utilizables. En la ingeniería de indicaciones, las indicaciones se perfeccionan continuamente hasta que se obtienen los resultados deseados del sistema de IA.
Más información sobre la IA generativa »
Más información sobre los modelos de lenguaje de gran tamaño (LLM) »
¿Por qué es importante la ingeniería de indicaciones?
Los empleos de la ingeniería de indicaciones han aumentado significativamente desde el lanzamiento de la IA generativa. Los ingenieros de indicaciones son el puente entre los usuarios finales y el modelo de lenguaje grande. Identifican los scripts y las plantillas que los usuarios pueden personalizar y completar para obtener el mejor resultado de los modelos de lenguaje. Estos ingenieros experimentan con diferentes tipos de datos proporcionados para crear una biblioteca de indicaciones que los desarrolladores de aplicaciones pueden volver a utilizar en diferentes escenarios.
La ingeniería de indicaciones hace que las aplicaciones de IA sean más eficientes y efectivas. Los desarrolladores de aplicaciones suelen encapsular los datos proporcionados indefinidos del usuario en una indicación antes de pasarlos al modelo de IA.
Por ejemplo, consideremos los chatbots de IA. Un usuario puede escribir un enunciado incompleto sobre un problema, como el siguiente: “Dónde comprar una camisa”. Internamente, el código de la aplicación utiliza una indicación diseñada que dice lo siguiente: “Eres asistente de ventas de una empresa de ropa. Un usuario, ubicado en Alabama, Estados Unidos, te pregunta dónde puede comprar una camisa. Responde con las tres tiendas más cercanas que tienen una camisa disponible en este momento”. Luego, el chatbot genera información más pertinente y precisa.
A continuación, se analizan algunos beneficios de la ingeniería de indicaciones.
Mayor control para los desarrolladores
La ingeniería de indicaciones brinda a los desarrolladores un mayor control sobre las interacciones de los usuarios con la IA. Las indicaciones eficaces proporcionan la intención y establecen el contexto para los modelos de lenguaje grandes. Ayudan a la IA a refinar el resultado y presentarlo de forma concisa en el formato requerido.
También evitan que los usuarios hagan un mal uso de la IA o soliciten algo que la IA no sabe o no puede manejar correctamente. Por ejemplo, es posible que se quiera limitar la generación de contenido inadecuado por parte de los usuarios en una aplicación de IA empresarial.
Experiencia de usuario mejorada
Los usuarios evitan el método de prueba y error y, aun así, reciben respuestas coherentes, precisas y pertinentes de las herramientas de IA. La ingeniería de indicaciones facilita a los usuarios la obtención de resultados pertinentes en la primera indicación. Ayuda a mitigar los prejuicios que pueden estar presentes debido a los prejuicios humanos que haya en los datos de entrenamiento de los modelos de lenguaje grandes.
Además, mejora la interacción entre el usuario y la IA, para que esta comprenda la intención del usuario, incluso con datos proporcionados mínimos. Por ejemplo, las solicitudes para resumir un documento legal y un artículo periodístico obtienen resultados diferentes ajustados según el estilo y el tono. Esto es cierto incluso si ambos usuarios simplemente le dicen a la aplicación: “Haz un resumen de este documento”.
Mayor flexibilidad
Los niveles más altos de abstracción mejoran los modelos de IA y permiten a las organizaciones crear herramientas más flexibles a escala. Un ingeniero de indicaciones puede crear indicaciones con instrucciones independientes del dominio que resalten los enlaces lógicos y los patrones generales. Las organizaciones pueden volver a utilizar rápidamente las indicaciones en la empresa para ampliar sus inversiones en IA.
Por ejemplo, para encontrar oportunidades de optimización de procesos, el ingeniero de indicaciones puede crear indicaciones diferentes que entrenen al modelo de IA para detectar ineficiencias mediante señales amplias en lugar de datos específicos del contexto. Luego, las indicaciones se pueden utilizar para diversos procesos y unidades de negocio.
¿Cuáles son algunos casos de uso de la ingeniería de indicaciones?
Las técnicas de ingeniería de indicaciones se utilizan en sistemas de IA sofisticados para mejorar la experiencia del usuario con el modelo de aprendizaje del lenguaje. A continuación, se indican varios ejemplos.
Experiencia en la materia
La ingeniería de indicaciones desempeña un papel clave en las aplicaciones que requieren que la IA responda con experiencia en la materia. Un ingeniero de indicaciones con experiencia en el campo puede guiar a la IA para que consulte las fuentes correctas y formule la respuesta de manera adecuada en función de la pregunta formulada.
Por ejemplo, en el campo de la medicina, un médico podría utilizar un modelo de lenguaje de ingeniería de indicaciones para generar diagnósticos diferenciales para un caso complejo. El profesional médico solo necesita ingresar los síntomas y la información detallada del paciente. La aplicación utiliza indicaciones diseñadas para guiar primero a la IA a enumerar las posibles enfermedades asociadas a los síntomas indicados. Luego, reduce la lista en función de la información adicional del paciente.
Pensamiento crítico
Las aplicaciones de pensamiento crítico necesitan el modelo de lenguaje para resolver problemas complejos. Para ello, el modelo analiza la información desde diferentes ángulos, evalúa su credibilidad y toma decisiones razonadas. La ingeniería de indicaciones mejora las funcionalidades de análisis de datos de un modelo.
Por ejemplo, en los escenarios de toma de decisiones, puede indicar a un modelo que enumere todas las opciones posibles, evalúe cada una y recomiende la mejor solución.
Creatividad
La creatividad implica generar nuevas ideas, conceptos o soluciones. La ingeniería de indicaciones se puede utilizar para mejorar las habilidades creativas de un modelo en diversos escenarios.
Por ejemplo, en escenarios de escritura, un escritor podría utilizar un modelo de ingeniería de indicaciones para generar ideas para una historia. El escritor puede indicar al modelo que enumere los posibles personajes, escenarios y puntos de la trama y, luego, desarrolle una historia con esos elementos. O bien, un diseñador gráfico podría indicar al modelo que genere una lista de paletas de colores que evoquen una emoción determinada y, luego, cree un diseño con esa paleta.
¿Qué son las técnicas de ingeniería de indicaciones?
La ingeniería de indicaciones es un campo dinámico y en evolución. Se requieren habilidades lingüísticas y expresión creativa para ajustar las indicaciones y obtener la respuesta deseada de las herramientas de IA generativa.
A continuación, se muestran algunos ejemplos de técnicas que utilizan los ingenieros de indicaciones para mejorar las tareas de procesamiento de lenguaje natural (NLP) de modelos de IA.
Indicaciones en cadena de pensamiento
Las indicaciones en cadena de pensamiento son una técnica que divide una pregunta compleja en partes lógicas más pequeñas que imitan una línea de pensamiento. Esto ayuda al modelo a resolver problemas en una serie de pasos intermedios en lugar de responder directamente a la pregunta. Esto mejora su capacidad de razonamiento.
Puede realizar varias implementaciones de cadena de pensamiento para tareas complejas y elegir la conclusión a la que se llegue con más frecuencia. Si las implementaciones difieren significativamente, se puede consultar a una persona para corregir la cadena de pensamiento.
Por ejemplo, si la pregunta es “¿Cuál es la capital de Francia?”, el modelo podría implementar varias versiones y obtener respuestas como “París”, “La capital de Francia es París” y “París es la capital de Francia”. Dado que todas las implementaciones llevan a la misma conclusión, se seleccionaría “París” como respuesta final.
Indicaciones de árbol de pensamientos
La técnica del árbol de pensamientos generaliza las indicaciones en cadena de pensamiento. Solicita al modelo que genere uno o más posibles pasos siguientes. Luego ejecuta el modelo en cada posible siguiente paso utilizando un método de búsqueda en árbol.
Por ejemplo, si la pregunta es “¿Cuáles son los efectos del cambio climático?”, el modelo podría generar primero los posibles próximos pasos, como “Enumerar los efectos ambientales” y “Enumerar los efectos sociales”. Luego, explicaría con más detalle cada uno de ellos en pasos posteriores.
Indicaciones mayéuticas
Las indicaciones mayéuticas son similares a las indicaciones de árbol de pensamientos. Se indica al modelo que responda a una pregunta con una explicación. Luego, se le indica que explique partes de la explicación. Los árboles de explicaciones incoherentes se podan o desechan. Esto mejora el rendimiento del razonamiento complejo del sentido común.
Por ejemplo, si la pregunta es “¿Por qué el cielo es azul?”, el modelo podría responder primero: “El cielo parece azul para el ojo humano, porque los gases y las partículas de la atmósfera terrestre dispersan las ondas cortas de luz azul en todas direcciones”. Luego, podría ampliar partes de esta explicación, como por qué la luz azul se dispersa más que otros colores y de qué está compuesta la atmósfera terrestre.
Indicaciones basadas en la complejidad
Esta técnica de ingeniería de indicaciones implica hacer varias implementaciones por cadena de pensamiento. Elige las implementaciones con las cadenas de pensamiento más largas y, luego, elige la conclusión a la que se llega en la mayoría de los casos.
Por ejemplo, si la pregunta es un problema matemático complejo, el modelo puede hacer varias implementaciones, cada una de las cuales implique varios pasos de cálculos. Consideraría las implementaciones con la cadena de pensamiento más larga, que para este ejemplo sería el mayor número de pasos de cálculos. Las implementaciones que llegasen a una conclusión común con otras implementaciones se seleccionarían como respuesta final.
Indicaciones de conocimientos generados
Esta técnica consiste en indicar al modelo que genere primero los datos pertinentes necesarios para completar la indicación. Luego, procede a completarla. Esto a menudo se traduce en una mayor calidad de finalización, ya que el modelo está condicionado por datos pertinentes.
Por ejemplo, imagine que un usuario indica al modelo que escriba un ensayo sobre los efectos de la deforestación. El modelo podría generar primero los datos siguientes: “la deforestación contribuye al cambio climático” y “la deforestación da lugar a la pérdida de biodiversidad”. Luego, explicaría con más detalle los puntos del ensayo.
Indicaciones de mínimo a máximo
En esta técnica de ingeniería de indicaciones, primero se indica al modelo que enumere los subproblemas de un problema y, luego, que los resuelva en secuencia. Este enfoque garantiza que los subproblemas posteriores se puedan resolver con la ayuda de las respuestas a los subproblemas anteriores.
Por ejemplo, imagine que un usuario indica al modelo el problema matemático siguiente: “Resuelve x en la ecuación 2x + 3 = 11”. El modelo podría enumerar primero los subproblemas de la manera siguiente: “Restar 3 de ambos lados” y “Dividir entre 2”. Luego, los resolvería en secuencia para obtener la respuesta final.
Indicaciones de refinamiento automático
En el caso de esta técnica, se indica al modelo que solucione el problema, critique su solución y, luego, lo resuelva tras considerar el problema, la solución y la crítica. El proceso de resolución de problemas se repite hasta que alcanza un motivo predeterminado para detenerse. Por ejemplo, podría quedarse sin tokens o sin tiempo, o el modelo podría generar un token de parada.
Por ejemplo, imagine que un usuario indica a un modelo “Escribe un ensayo corto sobre literatura”. El modelo podría redactar un ensayo, criticarlo por falta de ejemplos específicos y volver a escribirlo para incluir ejemplos específicos. Este proceso se repetiría hasta que el ensayo se considerara satisfactorio o se cumpliera un criterio para detenerse.
Indicaciones de estímulos direccionales
En esta técnica de ingeniería de indicaciones se incluye una sugerencia o pista, como las palabras clave deseadas, para guiar el modelo de lenguaje hacia el resultado deseado.
Por ejemplo, si la indicación es escribir un poema sobre el amor, el ingeniero de indicaciones puede crear indicaciones que incluyan “corazón”, “pasión” y “eterno”. Al modelo se le podría indicar lo siguiente: “Escribe un poema sobre el amor que incluya las palabras ‘corazón’, ‘pasión’ y ‘eterno’”. Esto guiaría al modelo para elaborar un poema con estas palabras clave.
¿Cuáles son algunas de las prácticas recomendadas de la ingeniería de indicaciones?
Una buena ingeniería de indicaciones requiere que comunique las instrucciones con el contexto, el alcance y la respuesta esperada. A continuación, compartimos algunas de las prácticas recomendadas.
Indicaciones inequívocas
Defina claramente la respuesta deseada en su indicación para evitar una mala interpretación por parte de la IA. Por ejemplo, si está solicitando un resumen innovador, indique claramente que quiere un resumen, no un análisis detallado. Esto ayuda a la IA a centrarse solo en su solicitud y a proporcionar una respuesta que se alinee con su objetivo.
Contexto adecuado en la indicación
Proporcione el contexto adecuado en la indicación, incluya los requisitos de salida en la entrada de la indicación y limítela a un formato específico. Por ejemplo, supongamos que quiere una lista de las películas más populares de la década de 1990 en una tabla. Para obtener el resultado exacto, debe indicar explícitamente cuántas películas desea que aparezcan en la lista y solicitar el formato de tabla.
Equilibrio entre la información objetivo y los resultados deseados
Equilibre la simplicidad y la complejidad en su indicación para evitar respuestas vagas, no relacionadas o inesperadas. Una indicación demasiado simple puede carecer de contexto, mientras que una demasiado compleja puede confundir a la IA. Esto es especialmente importante para los temas complejos o el lenguaje específico de un dominio, que pueden resultar menos familiares para la IA. En su lugar, use un lenguaje sencillo y reduzca el tamaño de la indicación para que la pregunta sea más comprensible.
Experimentar con la indicación y perfeccionarlo
La ingeniería de indicaciones es un proceso iterativo. Es esencial experimentar con diferentes ideas y probar las indicaciones de la IA para ver los resultados. Es posible que necesite varios intentos para optimizar la precisión y la relevancia. Las pruebas y la iteración continuas reducen el tamaño de la indicación y ayudan al modelo a generar mejores resultados. No hay reglas fijas sobre cómo la IA genera la información, por lo que la flexibilidad y la adaptabilidad son esenciales.
¿Cómo puede AWS satisfacer sus requisitos de IA generativa?
Amazon Web Services (AWS) ofrece una amplia gama de herramientas para crear con la IA generativa y emplearla. Por ejemplo, puede usar estos servicios:
- Amazon Q Developer para generar sugerencias de código que van desde fragmentos hasta funciones completas en tiempo real, según los comentarios y el código existente.
- Amazon Bedrock para acelerar el desarrollo de aplicaciones de IA generativa mediante modelos de lenguaje a través de una API, sin administrar la infraestructura.
- Amazon SageMaker JumpStart para descubrir, explorar e implementar modelos de lenguaje de código abierto. Por ejemplo, puede trabajar con modelos como OpenLLaMA, RedPajama, MPT-7B de MosaicML, FLAN-T5, GPT-NeoX-20B y BLOOM.
Si prefiere crear sus propios modelos, utilice Amazon SageMaker. Proporciona infraestructuras y herramientas administradas para acelerar la creación, el entrenamiento y la implementación de modelos escalables, fiables y seguros.
Cree una cuenta y comience a trabajar con la ingeniería de peticiones de AWS.
Siguientes pasos en AWS
Obtenga acceso instantáneo al nivel Gratuito de AWS.
Comience a crear en la consola de administración de AWS.