La fonctionnalité Natural Language to SQL (NL2SQL) du service d'analyse de requêtes convertit les requêtes en langage naturel en instructions SQL. Cette rubrique décrit comment configurer le service NL2SQL.
Exemples
|
Requête : Qui sont les élèves modèles de la classe 3 de 10e année ?
|
Requête : Quelles sont les 5 principales causes d'action ayant enregistré le plus grand nombre de dossiers clôturés en 2024 ?
|
Procédure de configuration
La fonctionnalité NL2SQL transforme les requêtes en langage naturel en instructions SQL. Pour utiliser le service NL2SQL, configurez les éléments suivants :
Informations de base sur les tables : configurez les tables de données métier utilisées par le service NL2SQL. Cette configuration inclut les noms de champs, les types de champs, les valeurs d'énumération, les descriptions de champs, les mappages de champs et les jointures de tables.
Échantillons d'apprentissage : ajoutez des questions fréquemment posées, des requêtes complexes et leurs instructions SQL correspondantes afin d'améliorer la précision du service NL2SQL. Si une instruction SQL générée ne correspond pas à vos attentes, ajoutez également ici la requête ainsi que l'instruction SQL correcte.
-
Règles personnalisées (Glossaire) : les requêtes des utilisateurs contiennent souvent des termes et des concepts spécifiques au domaine métier. Pour aider le modèle à comprendre ces requêtes, ajoutez les termes, les concepts et leurs définitions au glossaire.
Par exemple :
Quel est l'état de la gestion des accumulations d'eau pour la semaine dernière ? Informations connexes : la gestion des accumulations d'eau comprend les événements liés aux couvercles de regards et aux inondations routières.
Les « élèves modèles » sont les étudiants dont l'ID est inférieur ou égal à 10, et les « athlètes étudiants » sont ceux dont l'ID est supérieur à 11.
Étapes
-
Dans la plateforme ouverte AI Search, sélectionnez Model Service > Service Configuration, puis cliquez sur Create.
Conservez les paramètres par défaut pour Service Category et Configuration Type. Saisissez un Configuration Name, par exemple student_info_analysis (pour l'analyse des données d'information sur les étudiants).
-
Cliquez sur Save and Next et configurez les informations de table de données pour le service NL2SQL en utilisant le format suivant.
-
Configuration de base de la table
[ { "table":"schools", "columns": [ { "column": "class", "description": "Class", "type": "string", "example": ["Grade 10 Class 3", "Advanced Class"], "value_mapping": [] }, { "column": "school", "description": "School", "type": "string", "example": ["City A No. 1 B Middle School", "AA No. 5 Middle School"], "value_mapping": [] } ] }, { "table":"students", "columns": [ { "column": "id", "description": "Student ID", "type": "int", "example": [1, 2], "value_mapping": [ [1,"Zhang San"], [2,"Li Si"] ] }, { "column": "class", "description": "Class", "type": "string", "example": ["Grade 10 Class 3", "Advanced Class"], "value_mapping": [] } ] } ]Le nom de table dans
tabledoit commencer par une lettre minuscule, contenir uniquement des lettres minuscules, des chiffres ou des traits de soulignement (_), et ne pas dépasser 30 caractères.Le nom de champ dans
columndoit commencer par une lettre minuscule, contenir uniquement des lettres minuscules, des chiffres ou des traits de soulignement (_), et ne pas dépasser 30 caractères.Le type de champ dans
typepeut être l'un des suivants : text, string, int8, uint8, int16, uint16, int32, int, uint32, int64, uint64, float, double, location, date, time et timestamp. -
Configuration de la jointure de tables
["students.class=schools.class"]
-
-
Cliquez sur Next. Configurez les règles personnalisées et les échantillons d'apprentissage pour améliorer la précision du service NL2SQL.
-
Configuration des échantillons d'apprentissage : ajoutez des questions fréquemment posées, des requêtes complexes et leurs instructions SQL correspondantes afin d'améliorer la précision du service NL2SQL. Si une instruction SQL générée ne correspond pas à vos attentes, ajoutez également ici la requête ainsi que l'instruction SQL correcte.
[ { "query":"Which class is Zhang San in?", "sql" : "SELECT class FROM students WHERE name = 'Zhang San'" } ] -
Configuration des règles personnalisées (Glossaire) : les requêtes des utilisateurs contiennent souvent des termes et des concepts spécifiques au domaine métier. Pour aider le modèle à comprendre ces requêtes, ajoutez les termes, les concepts et leurs définitions au glossaire.
Par exemple : les « Model students » sont les étudiants dont l'ID (id) <= 10, et les « Student athletes » sont ceux dont l'ID (id) > 11.
[ { "key":"Model student", "value":"students.id <= 10" }, { "key":"Student athlete", "value":"students with an ID greater than 11" } ]
-
-
Cliquez sur OK, puis sur Activate Now. Vous êtes redirigé vers la liste de configuration des services et le statut d'activation passe à Activating pendant que le système valide le format de votre configuration.
Lorsque le statut d'activation passe à Activated, la configuration du service est prête. Vous pouvez alors tester le service NL2SQL dans le Centre d'expérience.
Étapes suivantes
Pour plus d'informations sur l'intégration du service NL2SQL dans votre application, consultez l'API NL2SQL.

