Ir al contenido principal
Laravel, thinking fast.

Los prompts suelen ser la parte más grande y más repetida de lo que envías. Los proveedores los cachean, y el cacheo funciona por prefijo: un tramo inicial idéntico puede reutilizarse entre llamadas, y tú marcas dónde termina ese tramo.

'system' => [
    [
        'type' => 'text',
        'text' => $this->systemPrompt,
        'cache_control' => ['type' => 'ephemeral'],
    ],
],

Dos consecuencias para cómo escribes prompts.

Ordena por estabilidad. Todo lo invariable va primero: rol, reglas, contrato de salida, guía de herramientas. Todo lo que varía por petición va después de la marca. Un prompt que empieza con el nombre del usuario no tiene prefijo cacheable, por largo que sea.

Comprueba que funciona. Los proveedores tienen un tamaño mínimo cacheable, y un prompt cerca de ese umbral puede estar marcado y no cachearse nunca. El bloque de uso te lo dice: si el contador de lecturas de caché sigue en cero turno tras turno, la marca es decorativa y hay que moverla o quitarla. Registrar ese número es cómo te enteras —capítulo 14, y es la diferencia entre creer que tienes cacheo y tenerlo.

Cambiar un prompt es un despliegue

Trátalo como tal, con la misma ceremonia.

Sabe qué versión produjo qué. El contenido generado sobrevive al prompt que lo hizo. Cuando una salida parezca mal seis semanas después, la primera pregunta es bajo qué se generó, así que estampa una versión de esquema o de prompt en el contenido almacenado, como hace el capítulo 2.

Cambia una sola cosa. Las ediciones de prompt no se pueden bisecar a posteriori; si cambiaron tres reglas y el comportamiento empeoró, no tienes forma de atribuirlo. Publica un cambio, obsérvalo y publica el siguiente.

Vigila la señal correcta. Un cambio de prompt rara vez rompe en voz alta. Desplaza una distribución: salidas algo más largas, una llamada más a herramientas por turno, una tasa de negativas que sube poco a poco. Esos son los números que conviene tener en un panel antes de empezar a editar prosa.

El arreglo de las FAQ del capítulo anterior es el caso modelo: un fallo real en producción —precios inventados en sitios publicados— cuyo arreglo fue enteramente una edición de prompt. Pasó por revisión y despliegue, exactamente como habría hecho un arreglo de código, porque eso es lo que era.

Probar prosa

No puedes afirmar que un prompt sea bueno. Sí puedes afirmar muchas cosas sobre lo que contiene, y esas afirmaciones son baratas.

Comprueba estructura, nunca redacción. Una prueba que fija una frase exacta falla en cada edición legítima y enseña al equipo a borrar pruebas. Una prueba que comprueba que el prompt declara cada sección que el esquema exige —la del capítulo anterior— sólo falla cuando algo está realmente mal.

Comprueba la composición. Que la variante de evento contiene las acciones exclusivas de evento, que la de negocio no, y que ambas contienen la base compartida. Tres aserciones, cero tokens, y atrapan una bifurcación que ha empezado a separarse.

Comprueba la interpolación. Que el nombre de un servicio aportado aparece dentro de su propia instrucción de descripción. Eso es el fallo de la peluquería, fijado para siempre.

Ninguna de estas llama a un modelo. Todas se ejecutan en milisegundos. No te dirán que el prompt está bien escrito, y sí te dirán en cuanto deje de decir lo que el resto del sistema da por hecho.

Lo que sostiene este capítulo

  • Un prompt es una función que devuelve comportamiento. Versiónalo, revísalo, despliégalo y ten forma de revertirlo.
  • Guárdalo en una clase como constante nowdoc. Heredoc entrecomillado, para que PHP no interpole las llaves y marcadores del modelo.
  • Compón variantes desde una base compartida. Los prompts bifurcados se separan en silencio; una base más un delta no puede.
  • El texto que ve el modelo va con el esquema, no esparcido por el código de montaje.
  • Nombra la cosa en la instrucción. «Describe esto» deriva hacia la media del sector; «describe X y nada más» no.
  • Resuelve la ambigüedad hacia una salida definida, no hacia el criterio del modelo —y da a las negativas la misma forma que a los aciertos.
  • Un prompt nunca es una frontera de seguridad. Es un badén delante de una.
  • Los prompts de sistema no son tus únicos prompts. Las descripciones de herramientas y parámetros se leen con la misma atención.
  • Ordena el prompt por estabilidad para que su prefijo se cachee —y luego comprueba el contador para demostrarlo.
  • Prueba estructura y composición, nunca redacción.