Publicado: 23 de abril de 2024
Colaboradores: Vrunda Gadesha, Eda Kavlakoglu
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 indicaciones eficaz se puede implementar como técnica de ingeniería sobre otros enfoques, como modelos personalizados de disparo cero, de disparos pocos o 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].
Descubra por qué la IA es una prioridad para el servicio al cliente, cómo desarrollar una IA responsable y su papel en la optimización de los centros de contacto y la mejora de la experiencia del cliente.
Aplicar una copia de la guía del CEO para la IA generativa
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 instrucción compleja en un serial de instrucciones sencillas 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:
Un prompt chain estructurado 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 indicaciones 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 prompts, el prompt chaining ayuda a mantener la coherencia en la generación de texto. Esto es particularmente importante en aplicaciones donde mantener un tono, estilo o formato consistente es crucial, como en atención al cliente o roles 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 prompt chaining proporciona un mayor control sobre la generación de texto, lo que permite a los usuarios especificar el resultado deseado con precisión. Esto es especialmente útil en situaciones en las que los datos de entrada son ruidosos o ambiguos, ya que se puede solicitar 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 prompt chaining ayuda a reducir las tasas de error al proporcionar al modelo un mejor contexto y una entrada más centrada. Un prompt chaining estructurado ayuda a reducir el esfuerzo humano y a validar el código y las salidas con mayor rapidez. Al desglosar la entrada en prompts más pequeños y manejables, el modelo puede entender 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.
Obtenga información sobre LangChain, un marco de código abierto, que se usa comúnmente para el desarrollo de aplicaciones con LLM.
Aprenda a encadenar modelos para generar una secuencia para un sistema genérico de preguntas y respuestas.
Descubra cómo la IA generativa está transformando las compañías y cómo preparar su organización para el futuro.
Mejores prácticas para la ingeniería rápida con Llama 2.
Pengfei Liu, W. Y. (2021). Pre-train, Prompt, and Predict: A Systematic Survey of Prompting Methods in Natural Language Processing. Encuestas de ACM Computing. | |
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). Improving Text Generation Through Introducing Coherence Metrics. Cybernetics and Systems Analysis. | |
Zhifang Guo, Y. L. (2022). Prompttts: Controllable Text-To-Speech With Text Descriptions. 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). The effects of two-way communication and chat service usage on consumer attitudes in the e-commerce retailing sector. Electronic Markets. | |
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). Adaptive learning management expert system with evolving knowledge base and enhanced learnability. Education and Information Technologies. | |
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). Evaluating an augmented remote assistance platform to support industrial applications. IEEE 4th World Forum on Internet of Things (WF-IoT). | |
Cynthia A. Thompson, M. G. (2011). Un sistema personalizado de recomendaciones conversacionales. J. Artif. Intell. Res. | |
Qing Huang, J. Z. (2023). PCR-Chain: Partial Code Reuse Assisted by Hierarchical Chaining of Prompts on Frozen Copilot. IEEE/ACM 45th International Conference on Software Engineering: Companion Proceedings (ICSE-Companion). | |
Yafeng Gu, Y. S. (2023). APICom: Automatic API Completion via Prompt Learning and Adversarial Training-based Data Augmentatio. Proceedings of the 14th Asia-Pacific Symposium on Internetware. | |