← 返回列表

Serie AI Entrevista 12: ¿Cómo optimizar el Prompt?

La optimización de prompts (Prompt Engineering/Optimization) es una habilidad clave para que el modelo de lenguaje grande "obedezca", especialmente en sistemas RAG, ya que determina directamente si el modelo está dispuesto a responder fielmente según el contenido recuperado, evitando alucinaciones y siguiendo un formato de salida estandarizado.


1. Principios fundamentales de la optimización de prompts

  1. Claridad > Complejidad: Las instrucciones simples y directas suelen ser más efectivas que las cadenas de pensamiento elaboradas.
  2. Proporcionar restricciones suficientes: Indica claramente al modelo "qué puede hacer y qué no".
  3. Proporcionar ejemplos: Few-shot es más estable que Zero-shot.
  4. Verificable: Haz que el modelo genere citas o niveles de confianza para facilitar la evaluación posterior.
  5. Optimización iterativa: Comienza desde una línea base, cambia solo una variable a la vez y compara los resultados.

2. Técnicas específicas de optimización (de fácil a difícil)

1. Configuración de rol (System Prompt)

Eres un asistente de atención al cliente profesional. Solo puedes responder preguntas basándote en el siguiente 【Material de referencia】.
Si no sabes la respuesta, di directamente "No hay información relevante en el material", no inventes nada.
  • Función: Establece límites y tono.
  • Punto de optimización: Tono (profesional/amable), intensidad de restricción (estricto/flexible).

2. Instrucciones claras

❌ Malo: "Responde la pregunta del usuario."
✅ Bueno: "Responde solo basándote en el siguiente 【Material de referencia】. Si el material de referencia no contiene la respuesta, responde 'No puedo responder esta pregunta'."

3. Control de formato de salida

Por favor, genera la salida en el siguiente formato JSON:
{
  "answer": "tu respuesta",
  "confidence": "alta/media/baja",
  "sources": [1, 3]
}
  • Uso: Facilita el análisis, citas y depuración posteriores.

4. Ejemplos Few-shot (muy efectivo)

Ejemplo 1:
Pregunta: ¿Cuántos días de vacaciones tengo?
Material de referencia: Reglas de vacaciones: 5 días por 1 año, 10 días por 10 años.
Respuesta: 5 días por 1 año, 10 días por 10 años.

Ejemplo 2:
Pregunta: ¿Cómo se calculan las horas extra?
Material de referencia: Horas extra entre semana: 1.5 veces; fines de semana: 2 veces.
Respuesta: Entre semana 1.5 veces, fines de semana 2 veces.

Ahora responde:
Pregunta: {pregunta del usuario}
Material de referencia: {contenido recuperado}
Respuesta:
  • Consejo: Los ejemplos deben cubrir diferentes dificultades, incluyendo un ejemplo de "no se puede responder".

5. Citación forzada

Al final de la respuesta, marca el número de fuente con [citation:X]. Por ejemplo: "Las vacaciones son de 5 días[citation:1]."
Si se combinan múltiples fuentes, márcalas por separado.

6. Establecer umbral de rechazo

  • Restricción dura: "Si el material de referencia no está relacionado con la pregunta, responde 'El material no es relevante'."
  • Restricción suave: Combinar con la puntuación de confianza de la recuperación; si está por debajo del umbral, se activa automáticamente la rama de rechazo.

7. Cadena de pensamiento (Chain-of-Thought) para razonamiento de múltiples saltos

Pregunta: ¿Quién es el jefe de Zhang San?
Pasos: 1. Primero, encuentra el departamento de Zhang San. 2. Luego, encuentra al responsable de ese departamento. 3. Da la respuesta final.
Piensa paso a paso y luego genera la salida.

8. Instrucción negativa (Negative Prompting)

No inventes respuestas. No uses palabras ambiguas como "quizás" o "tal vez". No generes números que no estén en el material de referencia.

3. ¿Cómo evaluar la calidad de un prompt?

Indicador Significado Cómo medirlo
Fidelidad Si la respuesta se basa estrictamente en el material de referencia Evaluación manual o Faithfulness de RAGAS
Precisión de rechazo Si rechaza responder cuando debe hacerlo Calcular en un conjunto de prueba sin respuesta
Tasa de cumplimiento de formato Si genera la salida según el formato JSON/citas requerido Coincidencia con expresiones regulares
Satisfacción del usuario Si la respuesta es útil Comentarios en línea / pruebas A/B

Sugerencia: Prepara un pequeño conjunto de prueba (20-50 casos límite), ejecútalo después de cada cambio de prompt y registra los cambios.

4. Errores comunes y direcciones de optimización

Problema Posible causa Método de optimización
El modelo ignora el material de referencia y responde por su cuenta Instrucción no lo suficientemente enérgica Cambia a "Solo basándote en el siguiente material" y usa few-shot para mostrar el rechazo
El modelo siempre dice "no sé" Umbral de rechazo demasiado alto Baja el umbral o revisa la calidad de la recuperación
Formato de salida desordenado, no sigue JSON Instrucción poco clara Agrega un ejemplo estricto de formato, o usa function calling
Respuesta demasiado larga/corta No se especificó la longitud "Responde en no más de 3 oraciones"
Error en razonamiento de múltiples saltos Capacidad de razonamiento insuficiente del modelo Pide que muestre el razonamiento paso a paso, o cambia a un modelo más potente
Aparecen números/fechas alucinadas El modelo depende de su propio conocimiento Enfatiza "no uses ningún número que recuerdes, solo mira el material"

评论

暂无已展示的评论。

发表评论(匿名)