Text-to-SQL en producció: 5 errors que maten la precisió
20 de maig del 2025 · 10 min
El 94% de precisió no surt del prompt màgic
Quan venem D4ta Oracle, no prometem que un LLM “entengui el teu negoci”. Prometem que un operador pot preguntar “quantes unitats del SKU X hi ha al magatzem de Barcelona?” i obtenir la xifra correcta en segons.
Això requereix enginyeria. Aquests són els cinc errors que més sovint trencen projectes Text-to-SQL en producció.
1. Schema cru sense context de negoci
Enviar el CREATE TABLE complet al model és insuficient. Els noms de columna (qty_avail, wh_loc_cd) no signifiquen res per al LLM ni per a l’usuari.
Solució: capa semàntica amb descripcions de negoci, sinònims (“estoc” = qty_avail, “Barcelona” = warehouse_id = 3) i exemples de preguntes freqüents indexats amb pgvector.
2. Sense permisos per rol
Un xat que pot executar SELECT * sobre taules de costos o nòmines és un incident de seguretat esperant a passar.
Solució: polítiques per rol abans de generar SQL. El model només veu taules i columnes permeses per a aquell usuari. La validació passa després de generar i abans d’executar.
3. Confondre llenguatge natural amb llenguatge legal
“Pendent d’enviament” pot significar coses diferents segons l’ERP: comanda confirmada, picking iniciat, o albarà generat sense sortida de magatzem.
Solució: definicions de negoci explícites al RAG. Si hi ha ambigüitat, el sistema ha de preguntar, no endevinar.
4. No validar SQL abans d’executar
Un DELETE mal generat o un JOIN cartesià pot tombar el rendiment o exposar dades.
Solució: allowlist de statements (només SELECT), LIMIT per defecte, timeout de query, i revisió de plans d’execució per a consultes costoses.
5. Mesurar “respostes boniques” en lloc de “respostes correctes”
Una resposta fluida en català que cita un número inventat és pitjor que un error visible.
Solució: golden set de preguntes amb respostes esperades. Regression tests en cada canvi de schema o de model. Mètrica principal: exactitud numèrica, no perplexity.
Stack de referència (D4ta Oracle)
Pregunta → Embedding → Recuperació de context (pgvector)
→ Generació SQL amb schema acotat
→ Validació + permisos
→ Execució PostgreSQL
→ Resposta en llenguatge natural + traçabilitat
Quan té sentit Oracle per a la teva empresa?
- Tens dades a ERP/PostgreSQL però l’equip consulta en Excel
- Més de 10h/mes en preguntes repetitives d’estoc, comandes o rotació
- Necessites autoservei sense formar cada usuari en SQL
Si encara no tens la dada digitalitzada, Oracle no és el primer pas — primer cal construir el pipeline de dades.