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> ]
Copy

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
Copy

Où :

internalStage ::=
    @[<namespace>.]<int_stage_name>[/<path>]
  | @[<namespace>.]%<table_name>[/<path>]
  | @~[/<path>]
Copy

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.