Prompts en producción
6
Sistema legacy: hardcodeados en prompts.py
Pass rate global evals
94,2%
▲ +8,1pp vs. antes del registro
Casos en golden datasets
340
Cubiertos: clasificador 120 · revisor 85 · otros 135
Tiempo medio iter. prompts
2,3h
▼ −72% (antes: 8,1h + deploy manual)
📚
Registro de Prompts
Fuente única de verdad para todos los prompts en producción. Versionado semántico + trazabilidad de propietario y evaluación.
| Prompt ID | Versión activa | Entorno | Eval score | Modelo | Propietario | Últ. promoción | Estado |
|---|---|---|---|---|---|---|---|
|
clasificador-riesgo
Clasifica cláusulas: riesgo alto / moderado / bajo
|
v1.4.0 | Producción | claude-sonnet-4-5 | carmen@lexia.io | 10 jun 2026 | PRIORITARIO | |
|
revisor-contratos
Revisión completa de contratos, detecta gaps
|
v2.1.0 | Producción | claude-sonnet-4-5 | pilar@lexia.io | 8 jun 2026 | ||
|
extractor-clausulas
Extrae cláusulas clave con metadatos estructurados
|
v1.2.1 | Staging | claude-haiku-3-5 | luis@lexia.io | En revisión | ⚠ Gate pendiente | |
|
generador-respuestas
Genera borrador de respuesta a contrapartes
|
v1.5.0 | Producción | claude-sonnet-4-5 | carmen@lexia.io | 5 jun 2026 | ||
|
resumen-ejecutivo
Genera resumen 1-pág para socio del despacho
|
v1.1.0 | Producción | claude-sonnet-4-5 | pilar@lexia.io | 1 jun 2026 | ||
|
chatbot-consultas
Responde consultas legales del cliente en portal
|
v3.0.1 | Dev | claude-sonnet-4-5 | luis@lexia.io | En desarrollo | WIP |
🔬
Pipeline de Evaluación — clasificador-riesgo v1.4.0
Ejecución automática en CI/CD. Gate de calidad: 95% pass rate en exact-match + 0.90 score LLM-as-judge. Resultado: APROBADO
⚡Estado del pipeline CI
✓ PASSED
✓
Branch
✓
Lint
✓
Eval Auto
✓
Compare
✓
PR Review
✓
Staging
→
Producción
⏱
Monitor 48h
✓ Gate de calidad superado
Pass rate: 97,5% (umbral: 95%) · LLM-judge: 0,93 (umbral: 0.90) · Δ score vs. prod: +5,1pp
📊Resultados eval — 120 casos
3 fallos de 120
Cláusula penalización >5% sin notificación previa
Exact Match
100%
PASS
Jurisdicción extranjera sin cláusula arbitraje
Exact Match
100%
PASS
Renovación automática con preaviso 30 días
LLM-Judge
4,6/5
PASS
Exclusividad geográfica implícita
LLM-Judge
3,2/5
FAIL
Output JSON con campos risk_level, confidence, rationale
Schema
100%
PASS
Indemnización proporcional al periodo facturado
Contains
98%
PASS
⚠ 3 fallos: Todos en categoría "exclusividad implícita" — edge case a añadir al golden dataset en próxima revisión trimestral.
🔍
Diff del Prompt — v1.3.0 (incidente) → v1.4.0 (fix)
Comparación lado a lado del cambio que resolvió el incidente. El diff muestra exactamente qué instrucción faltaba.
📛 v1.3.0 — RETIRADO (causó incidente)
✅ v1.4.0 — PRODUCCIÓN ACTUAL
Eres un experto en derecho contractual español.
Analiza la siguiente cláusula y clasifícala.
Categorías de riesgo:
- alto: consecuencias graves para el cliente
- moderado: requiere atención pero negociable
- bajo: cláusula estándar sin impacto material
Responde SOLO con JSON:
{"risk_level": "...", "confidence": 0.0-1.0,
"rationale": "..."}
Cláusula a analizar:
{{clausula}}
Eres un experto en derecho contractual español.
Analiza la siguiente cláusula y clasifícala.
Categorías de riesgo:
- alto: consecuencias graves o irreparables para el
cliente. Incluye: penalizaciones desproporcionadas,
exclusividades tácitas, jurisdicciones desfavorables,
responsabilidad ilimitada. En caso de duda, clasifica
como ALTO, no como moderado.
- moderado: requiere atención pero negociable
- bajo: cláusula estándar sin impacto material
Responde SOLO con JSON:
{"risk_level": "...", "confidence": 0.0-1.0,
"rationale": "..."}
Cláusula a analizar:
{{clausula}}
v1.3.0 — Diagnóstico
La definición ambigua de "alto" permitía al modelo clasificar como "moderado" casos graves cuando tenía incertidumbre. Sin regla de desempate explícita, el modelo optó por la categoría conservadora.
v1.4.0 — Fix aplicado
Se añadió enumeración explícita de subtipos de "alto" y regla de desempate: "en caso de duda, clasifica como ALTO". El golden dataset pasó de 37 fallos a 3 en la categoría de riesgo alto.
🔀
A/B Test — generador-respuestas v1.5.0 vs v1.4.0
Test en producción: 2.400 generaciones, 1.200 por variante. Asignación estable por user_id hash. Duración: 10 días (completado).
📈Resultados del test
p=0.012 · Significativo
▌ Variante A — v1.4.0 (control)
Aprobación abogados
71%
Tiempo edición media
14,3 min
Coste / generación
$0,018
▌ Variante B — v1.5.0 (challenger)
Aprobación abogados
84%
Tiempo edición media
9,7 min
Coste / generación
$0,024
✓ GANADORA · Promover a producción
🔄Historial de versiones — clasificador-riesgo
Rollback disponible
v1.4.0
10 jun 2026
Fix: regla de desempate alto/moderado + 45 nuevos golden cases
✓ Producción · Eval: 97%
v1.3.0
3 jun 2026 — INCIDENTE
Redefinición de categorías sin actualizar golden dataset
✗ Retirado · Eval habría fallado: 69%
v1.2.0
18 may 2026
Añadido soporte contratos internacionales (inglés/francés)
Archivada · Eval: 91%
v1.1.0
2 may 2026
Prompt inicial de producción (sistema legacy)
Archivada · Sin eval
# Rollback en 1 comando:
python registry.py rollback clasificador-riesgo
python registry.py rollback clasificador-riesgo
🏅
Golden Dataset — clasificador-riesgo (muestra)
120 casos cubiertos. Revisados y aprobados por Pilar (abogada). Actualización trimestral con casos de producción fallidos.
Input (cláusula):
"El proveedor facturará el 150% del valor del contrato restante en caso de rescisión anticipada por cualquier causa, sin posibilidad de negociación."
Expected:
risk_level: "alto"
Rationale requerido:
Penalización desproporcionada (150%) + sin excepciones + clausula potencialmente nula por abusiva.
Input (cláusula):
"Las partes se someten a los Juzgados y Tribunales de Madrid, renunciando a cualquier otro fuero que pudiera corresponderles."
Expected:
risk_level: "moderado"
Rationale requerido:
Cláusula de fuero estándar. Riesgo solo si cliente fuera de Madrid. Negociable en fase contractual.
Input (cláusula):
"El cliente se compromete a utilizar los servicios del proveedor como canal preferente para todas las actividades descritas en el Anexo A durante la vigencia del contrato."
Expected:
risk_level: "alto"
Rationale requerido:
"Canal preferente" puede interpretarse como exclusividad de facto. Restricción competitiva con impacto material.
Input (cláusula):
"Las notificaciones entre las partes se realizarán por correo electrónico a las direcciones indicadas en el encabezamiento, con confirmación de recepción."
Expected:
risk_level: "bajo"
Rationale requerido:
Cláusula procedimental estándar. Sin impacto en derechos ni obligaciones económicas.
⚙️ GitHub Actions — CI/CD de prompts
Pipeline automático en cada PR que modifique archivos en prompts/
name: "Prompt Governance CI"
on:
pull_request:
paths:
- "prompts/**"
jobs:
eval-gate:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Run eval pipeline
run: |
python eval_runner.py \
--prompt ${{ env.CHANGED_PROMPT }} \
--dataset golden_datasets/ \
--threshold-pass 0.95 \
--threshold-judge 0.90 \
--output eval_results.json
- name: Compare vs. production
run: |
python compare_scores.py \
--new eval_results.json \
--prod registry.yaml \
--fail-on-regression 0.02
- name: Post results to PR
uses: actions/github-script@v7
# Comenta el PR con tabla de resultados eval
- name: Block if gate fails
if: steps.eval.outputs.passed != 'true'
run: exit 1
📋 Política de Gobernanza
Reglas del equipo Lexia AI para gestión de prompts
🔴 Obligatorio (bloquea merge)
R
Eval automática en CI superando 95% (clasificación) o 90% LLM-judge (generación)
R
Golden dataset con ≥20 casos antes de promover a staging cualquier prompt nuevo
R
PR review por Pilar (abogada) para cambios en clasificador-riesgo y revisor-contratos
R
Versión semántica en registry.yaml actualizada antes de cada deploy
🔵 Recomendado
✓
Añadir al golden dataset los casos que fallaron en producción (revisión semanal)
✓
A/B test en producción para cambios que afecten >10% de las respuestas
✓
Monitoreo 48h post-deploy con métricas de satisfacción de usuario
⚪ Opcional
?
Eval semántica con embeddings para prompts de resumen ejecutivo
?
Revisión trimestral completa del golden dataset vs. distribución de producción
Generado por CULTIVA IA — Skill: Gobernanza de Prompts en Producción v1.0.0 · Cliente: Lexia AI · 12 jun 2026
Modo 1: Registro ✓
Modo 2: Eval Pipeline ✓
Modo 3: Gobernanza ✓