Descripción general de las estrategias de instrucciones

Si bien no hay una manera correcta o incorrecta de diseñar instrucciones, hay estrategias comunes que puedes usar para afectar las respuestas del modelo. Realizar pruebas y evaluaciones exhaustivas sigue siendo fundamental para optimizar el rendimiento del modelo.

Los modelos de lenguaje grande (LLM) se entrenan con grandes cantidades de datos de texto para aprender los patrones y las relaciones entre las unidades de idioma. Cuando se proporciona texto (la instrucción), los modelos de lenguaje pueden predecir lo que viene a continuación, como una herramienta de autocompletado sofisticada. Por lo tanto, cuando diseñes instrucciones, ten en cuenta los diferentes factores que pueden influir en lo que predice un modelo.

Flujo de trabajo de ingeniería de instrucciones

La ingeniería de instrucciones es un proceso iterativo y basado en pruebas que puede mejorar el rendimiento del modelo. Cuando creas instrucciones, es importante definir con claridad los objetivos y los resultados esperados para cada instrucción y probarlos de forma sistemática para identificar áreas de mejora.

En el siguiente diagrama, se muestra el flujo de trabajo de ingeniería de instrucciones:

Diagrama del flujo de trabajo de ingeniería de instrucciones

Cómo crear una instrucción eficaz

Hay dos aspectos de una instrucción que, en última instancia, afectan su eficacia: el contenido y la estructura.

  • Contenido:

    Para completar una tarea, el modelo necesita toda la información relevante asociada con la tarea. Esta información puede incluir instrucciones, ejemplos, información contextual y demás. Para obtener detalles, consulta Componentes de una instrucción.

  • Estructura:

    Incluso cuando se brinda toda la información requerida en la instrucción, proporcionar la estructura de la información ayuda al modelo a analizar la información. Aspectos como el orden, el etiquetado y el uso de delimitadores pueden afectar la calidad de las respuestas. Para ver un ejemplo de estructura de la instrucción, consulta Plantilla de instrucción de muestra.

Componentes de una instrucción

En la siguiente tabla, se muestran los componentes esenciales y opcionales de una instrucción:

Componente Descripción Ejemplo
Objetivo Qué quieres que logre el modelo. Sé específico y, además, incluye todos los objetivos generales. También se denomina "objetivo" o "misión". Tu objetivo es ayudar a los estudiantes con problemas matemáticos sin darles la respuesta directamente.
Instrucciones Instrucciones paso a paso sobre cómo realizar la tarea en cuestión. También se denominan "tarea", "pasos" o “indicaciones”.
  1. Comprende qué plantea el problema.
  2. Comprende dónde está detenido el alumno.
  3. Proporciona una pista para el siguiente paso del problema.
Componentes opcionales
Instrucciones del sistema

Directivas técnicas o ambientales que pueden implicar controlar o alterar el comportamiento del modelo en un conjunto de tareas. Para muchas APIs de modelos, las instrucciones del sistema se especifican en un parámetro dedicado.

Las instrucciones del sistema solo están disponibles en Gemini 1.5 Pro.

Eres un experto en programación que se especializa en la renderización de código para interfaces de frontend. Cuando describo un componente de un sitio web que quiero compilar, muestra el HTML y el CSS necesarios para hacerlo. No des una explicación para este código. También ofrece algunas sugerencias de diseño de la IU.
Persona ficticia Como quién o qué actúa el modelo. También se conoce como "rol" o "visión". Eres un tutor de matemáticas que ayuda a los alumnos con sus tareas de matemáticas.
Restricciones Restricciones sobre lo que el modelo debe cumplir cuando se genera una respuesta, incluido lo que el modelo puede y no puede hacer. También se denominan "barreras", "límites" o "controles". No le des la respuesta al alumno directamente. En cambio, brinda pistas en el siguiente paso para resolver el problema. Si el estudiante está completamente perdido, proporciónale los pasos detallados para resolver el problema.
Tono El tono de la respuesta. También puedes influir en el estilo y el tono si especificas una persona. También se denominan "estilo", "voz" o "modo". Responde de manera informal y técnica.
Contexto Cualquier información que el modelo necesite consultar para realizar la tarea en cuestión. También se denominan "segundo plano", "documentos" o "datos de entrada". Una copia de los planes de las lecciones del alumno para matemáticas.
Ejemplos con muestras Ejemplos de cómo debería ser la respuesta para una instrucción determinada. También se denominan "ejemplares" o "muestras". input: Estoy intentando calcular cuántas pelotas de golf pueden caber en una caja que tiene un volumen de un metro cúbico. Convertí un metro cúbico en centímetros cúbicos y lo dividí por el volumen de una pelota de golf en centímetros cúbicos, pero el sistema indica que mi respuesta es incorrecta.
output: Las bolas de golf son esferas y no se pueden empaquetar en un espacio con una eficiencia perfecta. Tus cálculos tienen en cuenta la eficiencia máxima del empaquetado de las esferas.
Pasos de razonamiento Indícale al modelo que explique su razonamiento. A veces, esto puede mejorar la capacidad de razonamiento del modelo. También se conoce como "pasos del pensamiento". Explica tu razonamiento pasa a paso.
Formato de la respuesta El formato en el que deseas que tenga la respuesta. Por ejemplo, puedes indicarle al modelo que genere la respuesta en JSON, tabla, Markdown, párrafo, lista con viñetas, palabras clave, presentación breve y demás. También se denomina "estructura", "presentación" o "diseño". Da formato a tu respuesta en Markdown.
Resumen Repite de forma concisa los puntos clave de la instrucción, en especial las restricciones y el formato de respuesta, al final de la instrucción. No des la respuesta y, en su lugar, proporciona pistas. Siempre formatea tu respuesta en formato Markdown.
Protecciones Fundamenta las preguntas en la misión del bot. También se denominan "reglas de seguridad". N/A

Según las tareas específicas en cuestión, puedes optar por incluir o excluir algunos de los componentes opcionales. También puedes ajustar el orden de los componentes y verificar cómo eso puede afectar a la respuesta.

Plantilla de instrucción de muestra

En la siguiente plantilla de instrucción, se muestra un ejemplo de cómo podría verse una instrucción bien estructurada:

      <OBJECTIVE_AND_PERSONA>
      You are a [insert a persona, such as a "math teacher" or "automotive expert"]. Your task is to...
      </OBJECTIVE_AND_PERSONA>

      <INSTRUCTIONS>
      To complete the task, you need to follow these steps:
      1.
      2.
      ...
      </INSTRUCTIONS>

      ------------- Optional Components ------------

      <CONSTRAINTS>
      Dos and don'ts for the following aspects
      1. Dos
      2. Don'ts
      </CONSTRAINTS>

      <CONTEXT>
      The provided context
      </CONTEXT>

      <OUTPUT_FORMAT>
      The output format must be
      1.
      2.
      ...
      </OUTPUT_FORMAT>

      <FEW_SHOT_EXAMPLES>
      Here we provide some examples:
      1. Example #1
          Input:
          Thoughts:
          Output:
      ...
      </FEW_SHOT_EXAMPLES>

      <RECAP>
      Re-emphasize the key aspects of the prompt, especially the constraints, output format, etc.
      </RECAP>
    

prácticas recomendadas

Las prácticas recomendadas para el diseño de instrucciones incluyen lo siguiente:

¿Qué sigue?