CREATE MODEL¶
Crée un nouveau modèle de machine learning dans le schéma actuel/spécifié ou remplace un modèle existant.
Note
Utilisez l’API Python du Snowflake Model Registry pour créer des modèles à partir de zéro. Dans SQL, vous ne pouvez créer des modèles qu’à partir d’autres modèles.
Les modèles ont plusieurs versions. Tous les modèles doivent avoir au moins une version, et une version doit être désignée comme version par défaut. Pour ajouter une version à un modèle, utilisez ALTER MODEL … ADD VERSION.
Certaines propriétés d’un modèle peuvent être modifiées (voir ALTER MODEL) et plusieurs versions peuvent être ajoutées.
Cette commande prend également en charge la variante suivante :
CREATE MODEL. .. FROM internalStage (crée un modèle à partir de fichiers dans une zone de préparation externe)
- Voir aussi :
ALTER MODEL, ALTER MODEL … ADD VERSION, DROP MODEL, SHOW MODELS
Syntaxe¶
CREATE [ OR REPLACE ] MODEL [ IF NOT EXISTS ] <name> [ WITH VERSION <version_name> ]
FROM MODEL <source_model_name> [ VERSION <source_version_or_alias_name> ]
Syntaxe des variantes¶
Cette variante est utilisée l’API Python Snowflake Model Registry. Il n’est pas possible de créer des modèles à partir de zéro dans SQL.
CREATE [ OR REPLACE ] MODEL [ IF NOT EXISTS ] <name> FROM internalStage
Où :
internalStage ::=
@[<namespace>.]<int_stage_name>[/<path>]
| @[<namespace>.]%<table_name>[/<path>]
| @~[/<path>]
Pour plus de détails sur les zones de préparation internes, voir Sélection d’une zone de préparation interne pour les fichiers locaux.
Paramètres requis¶
name
Chaîne qui indique l’identificateur (c’est-à-dire le nom) du nouveau modèle ; doit être unique pour le schéma dans lequel le modèle est créé.
De plus, l’identificateur doit commencer par un caractère alphabétique et ne peut pas contenir d’espaces ou de caractères spéciaux à moins que toute la chaîne d’identificateur soit délimitée par des guillemets doubles (par exemple,
"My object"
). Les identificateurs entre guillemets doubles sont également sensibles à la casse.Pour plus d’informations, voir Exigences relatives à l’identificateur.
FROM MODEL source_model_name
- Obligatoire si la variante internalStage FROM n’est pas utilisée
Spécifie le nom du modèle à partir duquel créer le modèle.
FROM internalStage
- Obligatoire si vous utilisez la valeur internalStage FROM
Spécifie la zone de préparation interne qui contient les fichiers du modèle. La présentation requise de ces fichiers n’est pas documentée à l’heure actuelle.
Paramètres facultatifs¶
WITH VERSION version_name
- À utiliser avec la variante FROM MODEL
Spécifie le nom de la version à créer dans le nouveau modèle.
VERSION source_version_or_alias_name
- À utiliser avec la variante FROM MODEL
Spécifie le nom ou l’alias de la version à copier à partir du modèle source. Si non spécifié, utilise la version par défaut du modèle source.
Exigences en matière de contrôle d’accès¶
Un rôle utilisé pour exécuter cette commande SQL doit avoir les privilèges suivants définis au minimum ainsi :
Privilège |
Objet |
Remarques |
---|---|---|
CREATE MODEL |
Schéma |
Impliqué par USAGE sur le schéma |
OWNERSHIP |
Modèle |
Un rôle doit se voir accorder le privilège OWNERSHIP ou en hériter sur l’objet pour créer un objet temporaire portant le même nom que l’objet qui existe déjà dans le schéma. |
Notez que l’exploitation d’un objet dans un schéma requiert également le privilège USAGE sur la base de données et le schéma parents.
Pour obtenir des instructions sur la création d’un rôle personnalisé avec un ensemble spécifique de privilèges, voir Création de rôles personnalisés.
Pour des informations générales sur les rôles et les privilèges accordés pour effectuer des actions SQL sur des objets sécurisables, voir Aperçu du contrôle d’accès.