Por qué sus indicaciones no pertenecen a Git

Publique después de un tiempo, y quiero comenzar con algo que me mordió desde el principio.

Cuando estaba construyendo y enviando mi primera IA generativa Producto, hice lo que la mayoría de nosotros hacemos. Codé duro las indicaciones. Funcionó hasta que no lo hizo. Cada vez que quería modificar el tono, mejorar la redacción o arreglar una alucinación, significaba presionar el código y volver a implementar el servicio.

Esto hizo que la iteración rápida fuera casi imposible y dejó a la gente del producto completamente fuera del circuito. Finalmente, me di cuenta de que las indicaciones deberían tratarse como contenido, no código.


Lo que se rompe cuando se indica en vivo en el código

Al principio se siente como otra cadena en tu backend. Pero las indicaciones no son configuración estática. Son el comportamiento y el comportamiento necesitan espacio para evolucionar.

En el momento en que sus indicaciones se envían con su código, cada pequeño cambio se convierte en un proceso. Necesitas crear una rama.

Hacer un compromiso. Abra una solicitud de extracción. Espere a que se ejecute las tuberías de CI. Unir. Luego redistribuir. Toda esta fricción por lo que podría ser un cambio de una palabra en la forma en que su asistente habla con los usuarios.

Pierdes la capacidad de iterar rápidamente. Bolpea a la gente del producto o no los ingenieros que contribuyan. Y lo peor de todo, sus indicaciones terminan heredando toda la fricción de su proceso de implementación de backend.

También se vuelve casi imposible entender qué cambió y por qué. Git puede mostrarle la diferencia, pero no el resultado.

  • ¿Eso cambió para reducir las alucinaciones?
  • ¿Hizo que las terminaciones sean más cortas?
  • ¿Son más felices los usuarios?

Sin el seguimiento y la experimentación, estás adivinando. No codificaría las respuestas de atención al cliente en su código fuente o en su copia de marketing. Las indicaciones merecen el mismo nivel de flexibilidad.


¿Cómo se ve realmente la gestión rápida?

La gestión rápida no es una nueva práctica elegante.

Simplemente está aplicando los mismos principios que ya usamos para otras partes dinámicas del producto, como contenido de CMS, indicadores o traducciones.

Una buena configuración de gestión rápida le brinda un lugar fuera de su base de código donde las indicaciones pueden vivir, evolucionar y ser rastreado con el tiempo.

No tiene que ser complejo. Solo necesita una forma simple de almacenar, versiones y actualizar las indicaciones sin tocar su código de aplicación.

Una vez que decouple las indicaciones del código, todo se vuelve más fácil. Puede actualizar un mensaje sin redistribuir. Puede volver a una versión anterior si algo se rompe.

Puede dejar que los no ingenieros realicen cambios de manera segura, y puede comenzar a conectar versiones inmediatas a los resultados, para que pueda aprender qué funciona y qué no.

Algunas herramientas ofrecen versiones incorporadas y análisis rápidos. Otros se conectan a su pila existente. Lo importante es no Qué herramienta usa, pero que deja de tratar las indicaciones como cadenas estáticas enterradas en el código.


Uso de Langfuse para la gestión rápida

Una herramienta que he usado y recomiendo es Langfuse. Es de código abierto, amigable para los desarrolladores y está construido para apoyar a los equipos que trabajan con aplicaciones con motor LLM en producción.

La gestión rápida es solo una de las cosas con las que ayuda. Langfuse también le brinda una visibilidad total sobre las huellas, la latencia y el costo de su aplicación.

Pero para mí, es el enfoque para administrar e iterarse en las indicaciones que fue un punto de inflexión.

Langfuse le brinda una interfaz limpia donde puede crear y actualizar las indicaciones fuera de su base de código.

Puede versión, rastrear los cambios con el tiempo y retroceder si algo sale mal.

También puede probar diferentes versiones del mismo aviso y ver cómo se desempeña cada uno en producción y puede hacer todo esto sin volver a desplegar su aplicación.

Esta no es una mención patrocinada. Solo una recomendación personal basada en lo que ha funcionado bien en mis propios proyectos.

También facilita que los no ingenieros contribuyan.

La consola Langfuse permite a los equipos de productos o escritores ajustar de manera segura, sin tocar la base de código o esperar una versión. Encaja bien en las pilas de IA generativas modernas.

Puedes usarlo con Langchain, Llamadoo su propia configuración personalizada y, dado que es de código abierto, puede anular la autoestima si desea un control total.


Un vistazo rápido a cómo funciona

Solo para darle una idea de ello, aquí hay un ejemplo básico de cómo funciona la gestión rápida con el fusible Lang en la práctica.

Simplemente podemos crear un nuevo mensaje con variables, a través de la interfaz de usuario (puede Crear o actualizar las indicaciones programadas paratambién).

Nota el production y latest Etiquetas asignadas a la versión rápida específica. Puede usar etiquetas para recuperar versiones específicas de las indicaciones.

Esto hace que sea muy fácil probar nuevas versiones rápidas en entornos de puesta en escena o desarrollo, así como realizar pruebas A/B.

Ahora podemos extraer la última versión de un aviso y usarla en una tubería de generación simple con Genai SDK de Google.


Lo que haría de manera diferente hoy

Si empiecía de nuevo, nunca codificaría las indicaciones en mi aplicación. Te ralentiza, esconde las cosas de las personas que podrían ayudar y convierte cada pequeño cambio en una liberación.

La gestión rápida suena como una agradable hasta su primer cuello de botella de iteración.

Entonces se vuelve obvio. Desacople sus indicaciones temprano. Te moverás más rápido, construirás mejor y mantendrás a tu equipo al tanto.