CREATE MODEL

現在指定のスキーマで新しい機械学習モデルを作成するか、既存のモデルを置き換えます。

注釈

Snowflake Model Registry Python API を使用して、モデルのバージョンをゼロから作成します。SQL では、他のモデルからモデルを作成することしかできません。

モデルはバージョン管理されています。すべてのモデルには最低1つのバージョンがあり、1つのバージョンをデフォルトとして指定する必要があります。モデルにバージョンを追加するには、 ALTER MODEL ... ADD VERSION を使用します。

モデルのいくつかのプロパティを変更したり(ALTER MODEL を参照)、複数のバージョンを追加したりすることができます。

このコマンドは、次のバリアントもサポートしています。

  • CREATE MODEL ... FROM internalStage (外部ステージのファイルからモデルを作成)

こちらもご参照ください。

ALTER MODELALTER MODEL ... ADD VERSIONDROP MODELSHOW MODELS

構文

CREATE [ OR REPLACE ] MODEL [ IF NOT EXISTS ] <name> [ WITH VERSION <version_name> ]
    FROM MODEL <source_model_name> [ VERSION <source_version_or_alias_name> ]
Copy

バリアント構文

このバリアントは Snowflake Model Registry Python API で使用されています。SQL でゼロからモデルを作成することはできません。

CREATE [ OR REPLACE ] MODEL [ IF NOT EXISTS ] <name> FROM internalStage
Copy

条件:

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

その他の内部ステージの詳細については、 ローカルファイルに対する内部ステージの選択 をご参照ください。

必須パラメーター

name

新しいモデルの識別子(つまり、名前)を指定する文字列。モデルが作成されるスキーマに対して一意である必要があります。

また、識別子はアルファベット文字で始まる必要があり、識別子文字列全体が二重引用符で囲まれていない限り、スペースや特殊文字を含めることはできません(例: "My object")。二重引用符で囲まれた識別子も大文字と小文字が区別されます。

詳細については、 識別子の要件 をご参照ください。

FROM MODEL source_model_name
FROM internalStage variant を使用しない場合は必須

新しいモデルを作成する元となるモデルの名前を指定します。

FROM internalStage
FROM internalStage variant を使用する場合は必須です。

モデルのファイルを含む内部ステージを指定します。これらのファイルの必要なレイアウトは、現時点でドキュメント化されていません。

オプションのパラメーター

WITH VERSION version_name
FROM MODEL バリアント用

新しいモデルに作成するバージョンの名前を指定します。

VERSION source_version_or_alias_name
FROM MODEL バリアント用

ソースモデルからコピーするバージョンの名前またはエイリアスを指定します。指定されていない場合は、ソース・モデルのデフォルト・バージョンを使用します。

アクセス制御の要件

この SQL コマンドの実行に使用される ロール には、少なくとも次の 権限 が必要です。

権限

オブジェクト

メモ

CREATE MODEL

スキーマ

スキーマの USAGE による暗示

OWNERSHIP

モデル

スキーマに既存のオブジェクトと同じ名前の仮オブジェクトを作成するには、ロールにオブジェクトの権限(OWNERSHIP)を付与するか継承する必要があります。

スキーマ内の任意のオブジェクトを操作するには、親データベースとスキーマに対する USAGE 権限も必要であることに注意してください。

指定された権限のセットを使用してカスタムロールを作成する手順については、 カスタムロールの作成 をご参照ください。

セキュリティ保護可能なオブジェクト に対して SQL アクションを実行するためのロールと権限付与に関する一般的な情報については、 アクセス制御の概要 をご参照ください。