Prompt engineering se refiere al proceso de diseñar y refinar los prompts (instrucciones) para modelos de IA generativa, con el objetivo de producir respuestas de alta calidad conscientes del contexto. Esto implica elaborar indicaciones claras, específicas y relevantes, ajustadas a la tarea o a la aplicación, para optimizar el resultado del modelo. A medida que las LLM evolucionan, particularmente con las llegada de los modelos de razonamiento, las prácticas del prompt engineering deben ser adaptadas. Basados en nuestra experiencia con la generación de código con IA, hemos observado que los prompts con pocos ejemplos pueden ofrecer un menor rendimiento comparado con prompts sin ejemplos al trabajar con modelos de razonamiento. Además, la técnica ampliamente usada de cadena de razonamiento o chain-of-thought (CoT) puede degradar el desempeño de los modelos de razonamiento, probablemente debido a que el aprendizaje por refuerzo ya ha afinado su mecanismo interno de CoT.
Nuestra experiencia práctica se alinea con lo que señala la investigación académica, que sugiere que “los modelos más avanzados podrían eliminar la necesidad del prompt engineering en el desarrollo de software”. No obstante, las técnicas tradicionales del prompt engineering seguirán teniendo un rol crucial en reducir alucinaciones y mejorar la calidad de las respuestas, especialmente considerando las diferencias en tiempos de respuestas y costos de tokens entre los modelos de razonamiento y los LLM generales. Al crear aplicaciones con agentes autónomos, recomendamos elegir los modelos estratégicamente, con base en las necesidades y seguir refinando tanto las plantillas de prompts cómo sus técnicas correspondientes. Encontrar el equilibrio entre la calidad, el tiempo de respuesta y el costo de los tokens sigue siendo clave para maximizar la efectividad de los LLM.
Prompt engineering se refiere al proceso de diseñar y refinar prompts para modelos generativos de IA para obtener respuestas de alta calidad del modelo. Esto implica elaborar cuidadosamente prompts que sean específicos, claros y relevantes para la tarea o aplicación deseada a fin de obtener resultados útiles del modelo. Prompt engineering tiene como objetivo mejorar las capacidades del modelo de lenguaje de gran tamaño o LLM (Large Language Model) en tareas como responder preguntas, razonamiento aritmético o en contextos específicos de algún dominio. Para la creación de software, puedes usar prompt engineering para obtener un LLM para escribir una historia, una API o un conjunto de pruebas basado en una breve conversación con un stakeholder o incluso algunas notas. El desarrollo de técnicas de prompting efectivas se está convirtiendo en una habilidad valiosa para trabajar con sistemas de IA. Existe un debate sobre si prompt engineering es un arte o una ciencia, y se deben considerar los posibles riesgos de seguridad, como los "ataques de prompt injection".
