La tecnología de lenguaje natural a SQL (NL2SQL) está avanzando rápidamente, convirtiéndose en una innovación importante en el campo del procesamiento del lenguaje natural (PNL). Esta tecnología permite a los usuarios convertir consultas en lenguaje natural en sentencias de lenguaje de consulta estructurado (SQL), una mejora que facilita enormemente la interacción entre usuarios sin conocimientos técnicos y bases de datos complejas, permitiendo así obtener información valiosa. La tecnología NL2SQL no solo abre nuevas puertas para la exploración de grandes bases de datos en diversas industrias, sino que también mejora la eficiencia del trabajo y la capacidad de toma de decisiones.

image.png

Sin embargo, en la implementación de NL2SQL, existe una compensación entre la precisión y la adaptabilidad de las consultas. Algunos métodos no pueden garantizar la precisión ni adaptarse a diferentes tipos de bases de datos al generar consultas SQL. Algunas soluciones existentes dependen en gran medida de los modelos de lenguaje grandes (LLM), generando múltiples salidas mediante ingeniería de prompts y seleccionando la consulta óptima, pero este método aumenta la carga computacional y no es adecuado para aplicaciones en tiempo real. Al mismo tiempo, el ajuste fino supervisado (SFT) aunque permite la generación de SQL específica, enfrenta dificultades en aplicaciones multidominio y operaciones de bases de datos complejas, por lo que se necesitan urgentemente marcos innovadores.

image.png

El equipo de investigación de Alibaba presentó XiYan-SQL, un marco NL2SQL innovador. Integra una estrategia de integración de múltiples generadores, combinando las ventajas de la ingeniería de prompts y el SFT. Una innovación clave de XiYan-SQL es la introducción de M-Schema, un método de representación de arquitectura semiestructurada que mejora la comprensión del sistema de la jerarquía de la base de datos, incluidos los tipos de datos, las claves primarias y los valores de ejemplo, lo que mejora la capacidad de generar consultas SQL precisas y contextuales.

XiYan-SQL emplea un proceso de tres etapas para generar y optimizar consultas SQL.

Primero, el sistema identifica los elementos de la base de datos relevantes mediante la vinculación de la arquitectura, reduciendo así la información redundante y centrándose en las estructuras clave. Luego, utiliza generadores basados en aprendizaje con ejemplos (ICL) y SFT para generar candidatos SQL. Finalmente, el sistema utiliza un modelo de corrección y un modelo de selección para optimizar y filtrar el SQL generado, asegurando así que se seleccione la consulta óptima. XiYan-SQL integra estos pasos en una canalización eficiente, superando los métodos tradicionales.

Después de rigurosas pruebas de referencia, XiYan-SQL mostró un rendimiento excelente en varios conjuntos de pruebas estándar, como lograr una precisión de ejecución del 89.65% en el conjunto de pruebas Spider, superando claramente a los modelos de vanguardia anteriores.

image.png

Además, en términos de adaptabilidad a conjuntos de datos no relacionales, XiYan-SQL también obtuvo excelentes resultados, alcanzando una precisión del 41.20% en el conjunto de pruebas NL2GQL. Estos resultados muestran que XiYan-SQL posee una flexibilidad y precisión excepcionales en una variedad de escenarios.

github:https://github.com/XGenerationLab/XiYan-SQL

Puntos clave:

🌟 Representación de arquitectura innovadora: M-Schema mejora la comprensión de la jerarquía de la base de datos, aumentando la precisión de las consultas.

📊 Generación avanzada de candidatos: XiYan-SQL utiliza múltiples generadores para producir una variedad de candidatos SQL, mejorando la calidad de las consultas.

✅ Adaptabilidad superior: mediante pruebas de referencia, XiYan-SQL demuestra su excelente rendimiento en diversas bases de datos, estableciendo un nuevo estándar para los marcos NL2SQL.