El encadenamiento de instrucciones es una técnica de procesamiento de lenguaje natural (NLP) , que aprovecha los modelos de lenguaje de gran tamaño (LLM) que implica generar un resultado deseado siguiendo un serial de instrucciones. En este proceso, se proporciona una secuencia de indicaciones a un modelo de PNL, guiándolo para producir la respuesta deseada. El modelo aprende a comprender el contexto y las relaciones entre las instrucciones, lo que le permite generar texto coherente, coherente y contextualmente rico[1].
El concepto es la implementación avanzada de ingeniería rápida. Ganó una atención significativa en el campo de la PNL debido a su capacidad para mejorar la calidad y controlabilidad de la generación de texto. La cadena de instrucciones eficaz se puede implementar como técnica de ingeniería sobre otros enfoques, como zero-shot, few-shot o modelos personalizados ajustados [2]. Al proporcionar una dirección y una estructura claras, el encadenamiento de indicaciones ayuda al modelo a comprender mejor las intenciones del usuario y producir respuestas más precisas y relevantes.
El encadenamiento rápido puede mejorar la eficacia de la asistencia de IA en varios dominios. Al desglosar tareas complejas en instrucciones más pequeñas y encadenarlas, los desarrolladores pueden crear respuestas más personalizadas y precisas adaptadas a las necesidades individuales de los usuarios. Este enfoque no solo mejora la experiencia general del usuario, sino que también permite una mayor personalización y adaptabilidad en respuesta a los cambiantes requisitos del usuario o escenarios de aplicación[3].
Hay dos tipos principales de instrucciones que se generan al trabajar con LLM. Estos son:
Estas son indicaciones básicas que contienen una sola instrucción o pregunta para que el modelo responda. Por lo general, se utilizan para iniciar un conversación o para solicitar información. Un ejemplo de un mensaje simple sería: " ¿Cómo es el clima hoy? "
Estas indicaciones contienen varias instrucciones o preguntas que requieren que el modelo realice un serial de acciones o proporcione una respuesta detallada. A menudo se emplean para facilitar tareas más avanzadas o para entablar conversaciones más profundas. Un ejemplo de un mensaje complejo sería: "Estoy buscando un restaurante que sirva comida vegana y esté abierto hasta las 10 de la noche. ¿Me puedes recomendar uno?"
Convertir una solicitud compleja en un serial de solicitudes simples puede ayudar a dividir una tarea compleja en subtareas más pequeñas. Este enfoque puede facilitar a los usuarios la comprensión de los pasos necesarios para completar una solicitud y reducir el riesgo de errores o malentendidos.
Imaginemos que tenemos información en español. Necesitamos extraer la información de él, pero no entendemos el español. En primer lugar, tenemos que traducir el texto del español al inglés. Luego, necesitamos hacer una pregunta para extraer la información y luego traducir la información extraída del inglés al español nuevamente. Se trata de una tarea compleja, y si intentamos combinar estos pasos en una sola pregunta, resultará demasiado compleja, con el consiguiente aumento de la probabilidad de que se produzcan más errores en la respuesta. Por ello, lo mejor es convertir una pregunta compleja en una secuencia de preguntas sencillas. Algunos pasos para ello son
Aquí nuestro mensaje complejo es: "Considere el texto dado en español. Tradúzcalo al inglés. Encuentre todas las estadísticas y hechos utilizados en este texto y enumérelos como viñetas. Tradúzcalos de nuevo al español".
Para convertir este prompt complejo en prompts sencillos, podemos descomponer el objetivo principal en acciones o tareas más pequeñas, y podemos crear una cadena de avisos como la siguiente:
Una cadena de instrucciones estructurada es un conjunto predefinido de prompts o preguntas diseñadas para guiar a un usuario a través de una conversación específica o una serie de acciones, lo que garantiza un flujo de información consistente y controlado[4]. Se utiliza a menudo en atención al cliente, tutorías y otros sistemas interactivos para mantener la claridad, precisión y eficacia en la interacción. Las instrucciones de una cadena suelen estar vinculadas entre sí, lo que permite que el sistema se base en las respuestas anteriores y mantenga el contexto. Este enfoque puede ayudar a reducir la ambigüedad, mejorar la satisfacción del usuario y permitir una comunicación más eficaz entre humanos y máquinas.
Comience por recopilar una colección de prompts preescritos que se pueden personalizar para varios escenarios. Estas plantillas deben cubrir las tareas, solicitudes y preguntas comunes que los usuarios puedan encontrar.
Identifique las preguntas o instrucciones básicas que deben transmitirse en el prompt chain. Estos prompts deben ser simples, claros y directos, y deben poder funcionar por sí solos como prompts individuales.
Determine la información o las acciones específicas que el usuario debe proporcionar en respuesta a cada prompt. Estas entradas deben estar claramente definidas y ser fáciles de entender, y deben estar vinculadas a las solicitudes correspondientes en el prompt chain.
Utilice la biblioteca de referencia y las solicitudes principales para crear el prompt chain completo. Asegúrese de que cada prompt esté vinculado lógicamente al siguiente y de que se soliciten al usuario las entradas necesarias en los puntos adecuados de la secuencia.
Una vez que se haya creado el prompt chain, pruébelo minuciosamente para asegurarse de que sea fácil de entender y completar. Pida a una muestra de usuarios que completen el prompt chain y recopilen retroalimentación sobre las áreas de mejora.
En función de la retroalimentación recibida durante las pruebas, realice los ajustes o mejoras necesarios en el prompt chain. Esto puede incluir la reescritura de ciertos prompts, la adición o eliminación de prompts, o el cambio del orden en que se presentan los prompts.
Al seguir estos pasos, los representantes de atención al cliente y los programadores pueden crear prompt chains efectivos y eficientes que ayuden a guiar a los usuarios a través de una serie de acciones o tareas.
El prompt ofrece varias ventajas sobre los métodos tradicionales utilizados en la ingeniería rápida. Al guiar el modelo a través de una serie de prompts, el prompt chaining mejora la coherencia y la consistencia en la generación de texto, lo que conduce a resultados más precisos y atractivos.
Al requerir que el modelo siga una serie de instrucciones, el encadenamiento de instrucciones ayuda a mantener la coherencia en la generación de texto . Esto es particularmente importante en aplicaciones en las que mantener un tono, estilo o formato coherentes es crucial, como en la atención al cliente o en funciones editoriales [5].
En la atención al cliente, se puede utilizar el prompt chaining para garantizar una comunicación coherente con los usuarios. Por ejemplo, se le puede pedir al bot que se dirija al usuario con su nombre preferido o que siga un tono de voz específico a lo largo de la conversación.
El encadenamiento de instrucciones proporciona un mayor control sobre la generación de texto, lo que permite a los usuarios especificar los resultados deseado con precisión. Esto es especialmente útil en situaciones donde los datos de entrada son ruidosos o ambiguos, ya que se puede dar una instrucción al modelo que aclare o refine la entrada antes de generar una respuesta[6].
En un sistema de resumen de texto, el prompt chaining permite a los usuarios controlar el nivel de detalle y especificidad en el resumen generado. Por ejemplo, es posible que primero se le pida al usuario que proporcione el contenido que le interesa resumir, como un trabajo de investigación. Podría aparecer un mensaje posterior para formatear ese resumen en un formato o plantilla específicos.
El encadenamiento de instrucciones ayuda a reducir las tasas de error al proporcionar al modelo un mejor contexto y una entrada más enfocada. Un encadenamiento estructurado de instrucciones es útil para reducir los esfuerzos humanos y validar el código y los resultados más rápido. Al desglosar la entrada en instrucciones más pequeñas y manejables, el modelo puede comprender mejor las intenciones del usuario y generar respuestas más precisas y relevantes[7].
En un sistema de traducción automática, antes de traducir una frase, el sistema puede pedir primero al usuario que especifique el idioma de origen, el idioma de destino y cualquier contexto o terminología relevante. Esto ayuda al modelo a comprender mejor el texto de origen y generar una traducción precisa.
Al aprovechar estas ventajas, el prompt chaining tiene el potencial de mejorar significativamente el rendimiento y la eficacia de los modelos de PLN en diversas aplicaciones, desde la atención al cliente hasta la traducción editorial y de idiomas optimizada.
El prompt chaining es una técnica versátil que se puede aplicar a una amplia gama de casos de uso, que se dividen principalmente en dos categorías: respuesta a preguntas y tareas de varios pasos.
Como su nombre indica, las tareas de respuesta a preguntas proporcionan respuestas a preguntas frecuentes planteadas por los humanos. El modelo automatiza la respuesta en función del contexto de los documentos que normalmente se encuentran en una base de conocimiento. Las aplicaciones comunes incluyen:
Como era de esperar, las tareas de varios pasos se componen de una secuencia de pasos para lograr un objetivo determinado. Algunos ejemplos de esto incluyen:
El prompt chaining es una técnica potente que se puede usar en una variedad de aplicaciones en tiempo real para ayudar a guiar a los usuarios y profesionales a través de una serie de acciones o tareas. Al dividir las tareas complejas en una serie de prompts más sencillos, el prompt chaining puede ayudar a garantizar que los usuarios y los profesionales comprendan los pasos necesarios para completar una solicitud y proporcionar una mejor experiencia general. Tanto si se utiliza en la atención al cliente como en programación o educación, el encadenamiento de avisos puede ayudar a simplificar procesos complejos y mejorar la eficacia y la precisión.
Entrene, valide, ajuste y despliegue IA generativa, modelos fundacionales y capacidades de machine learning con IBM watsonx.ai, un estudio empresarial de próxima generación para creadores de IA. Diseñe aplicaciones de IA en menos tiempo y con menos datos.
Ponga la IA a trabajar en su negocio con la experiencia en IA líder en la industria y la cartera de soluciones de IBM a su lado.
Reinvente los flujos de trabajo y las operaciones críticas añadiendo IA para maximizar las experiencias, la toma de decisiones en tiempo real y el valor empresarial.
Descubra cómo los directores ejecutivos (CEO) pueden equilibrar el valor que la IA generativa puede crear con la inversión que exige y los riesgos que representa.
Aprenda los conceptos fundamentales y construya sus habilidades con laboratorios prácticos, cursos, proyectos guiados, ensayos y mucho más.
Aprenda a incorporar con confianza la IA generativa y el aprendizaje automático en su negocio.
¿Quiere rentabilizar mejor sus inversiones en IA? Descubra cómo la IA generativa escalable en áreas clave impulsa el cambio ayudando a sus mejores mentes a crear y ofrecer nuevas soluciones innovadoras.
[1] | Pengfei Liu, W. Y. (2021). Pre-train, Prompt, and Predict: A Systematic Survey of Prompting Methods in Natural Language Processing. ACM Computing Surveys. |
Gunwoo Yong, K. J. (2022). Prompt engineering for zero‐shot and few‐shot defect detection and classification using a visual‐language pretrained model. | |
O. Marchenko, O. R. (2020). Mejora de la generación de texto mediante la introducción de métricas de coherencia. Cibernética y Análisis de Sistemas. | |
Guo Zhifang, YL (2022). Prompttts: Text to Speech controlable con descripciones de texto. Zhifang Guo, Yichong Leng, Yihan Wu, Sheng Zhao, Xuejiao Tan. | |
Jason Wei, X. W. (2022). Chain of Thought Prompting Elicits Reasoning in Large Language Models. | |
Mero, J. (2018). Los efectos de la comunicación bidireccional y el uso del servicio de chat en las actitudes de los consumidores en el sector minorista del comercio electrónico. Mercados electrónicos. | |
Yu Cheng, J. C. (2023). Prompt Sapper: A LLM-Empowered Production Tool for Building AI Chains. ACM Transactions on Software Engineering and Methodology. | |
Tongshuang Sherry Wu, E. J. (2022). PromptChainer: Chaining Large Language Model Prompts through Visual Programming. CHI Conference on Human Factors in Computing Systems Extended Abstracts. | |
Shwetha Sridharan, D. S. (2021). Sistema experto de gestión del aprendizaje adaptativo con base de conocimientos en evolución y capacidad de aprendizaje mejorada. Educación y Tecnologías de la Información. | |
Boshi Wang, X. D. (2022). Iteratively Prompt Pre-trained Language Models for Chain of Thought. Proceedings of the 2022 Conference on Empirical Methods in Natural Language Processing. | |
M. Rice, K. M. (2018). Evaluación de una plataforma de asistencia remota aumentada para soportar aplicaciones industriales. IEEE 4th World Forum on Internet of Things (WF-IoT). | |
Cynthia A. Thompson, M. G. (2011). Un Sistema Personalizado de Recomendaciones Conversacionales. J. Artif. Intel.Res. | |
Qing Huang, JZ (2023). PCR-Chain: Reutilización parcial de código asistida por encadenamiento jerárquico de instrucciones en Frozen Copilot. 45ª Conferencia internacional IEEE/ACM sobre ingeniería de software: Actas complementarias (ICSE-Companion). | |
Yafeng Gu, Y. S. (2023). APICom: Automatic API Completion via Prompt Learning and Adversarial Training-based Data Augmentation. Proceedings of the 14th Asia-Pacific Symposium on Internetware. |