AI_GENERATE_TABLE_DESC¶
Génère et renvoie une description pour une table ou une vue. En option, la procédure stockée peut également générer des descriptions pour les colonnes de la table ou de la vue.
La procédure stockée utilise la :doc:` fonction COMPLETE Snowflake Cortex </sql-reference/functions/complete-snowflake-cortex>` pour générer automatiquement des descriptions.
Syntaxe¶
AI_GENERATE_TABLE_DESC(
<table_name>
[ , <config_object> ] )
Arguments obligatoires¶
table_nameSpécifie la table ou la vue pour laquelle vous souhaitez générer une description.
Arguments facultatifs¶
config_objectUn OBJECT qui spécifie si vous souhaitez générer des descriptions de colonnes et utiliser des échantillons de données pour ces descriptions. Vous pouvez utiliser une constante OBJECT pour spécifier cet objet.
La valeur OBJECT a la structure suivante :
{ 'describe_columns': <boolean>, 'use_table_data': <boolean> {
describe_columnsSi défini sur TRUE, la procédure stockée génère des descriptions pour toutes les colonnes de la table.
use_table_dataSi défini sur TRUE, la procédure stockée utilise des données d’échantillon de la table pour générer des descriptions de colonnes, ce qui peut améliorer la précision des descriptions. Si FALSE, la procédure stockée s’appuie sur les métadonnées pour générer les descriptions.
Renvoie¶
Renvoie une chaîne JSON avec les champs suivants :
COLUMNSContient un tableau de colonnes pour lesquelles des descriptions ont été générées. Ce champ n’est renvoyé que si des descriptions ont été générées pour les colonnes.
Le tableau contient les champs suivants pour chaque colonne de la table :
database_nameBase de données qui contient la colonne.
descriptionDescription de la colonne qui a été générée par la procédure stockée.
nameNom de la colonne.
schema_nameSchéma qui contient la colonne.
table_nameTable ou vue qui contient la colonne.
TABLEContient un tableau qui inclut la description de la table ainsi que des informations générales sur la table. Le tableau se compose des champs suivants :
database_nameBase de données qui contient la table.
descriptionDescription de la table générée par la procédure stockée.
nameNom de la table ou de la vue.
schema_nameSchéma qui contient la table.
Exigences en matière de contrôle d’accès¶
Les utilisateurs doivent disposer des privilèges et des rôles suivants pour appeler la procédure stockée AI_GENERATE_TABLE_DESCRIPTION :
Privilège SELECT sur la table ou la vue.
Rôle de la base de données SNOWFLAKE.CORTEX_USER.
Notes sur l’utilisation¶
Votre région doit prendre en charge le LLM utilisé par Snowflake Cortex pour générer les descriptions. Vérifiez la disponibilité de la fonction COMPLETE. Si la fonction COMPLETE n’est pas prise en charge dans votre région, vous devez activer l”inférence interrégionale pour utiliser la fonctionnalité.
Exemples¶
Générer une description pour la vue v1.
CALL AI_GENERATE_TABLE_DESC( 'v1');
{
"TABLE": [
{
"database_name": "mydb",
"description": " The table contains records of customer addresses. Each record includes a name and zip code.",
"name": "v1",
"schema_name": "sch1"
}
]
}
Générer des descriptions pour la table hr_data et toutes ses colonnes. Utilisez uniquement des métadonnées pour générer les descriptions.
CALL AI_GENERATE_TABLE_DESC(
'mydb.sch1.hr_data',
{
'describe_columns': true,
'use_table_data': false
});
{
"COLUMNS": [
{
"database_name": "mydb",
"description": "A column holding data of type DecimalType representing age values.",
"name": "AGE",
"schema_name": "sch1",
"table_name": "hr_data"
},
{
"database_name": "mydb",
"description": "The first name of the employee.",
"name": "FNAME",
"schema_name": "sch1",
"table_name": "hr_data"
}
],
"TABLE": [
{
"database_name": "mydb",
"description": " The table contains records of employee data, specifically demographic information. Each record includes an employee's age and name.",
"name": "hr_data",
"schema_name": "sch1"
}
]
}