ML のContainer Runtime

概要

Container Runtime for ML は、 Snowpark Container Services 上の機械学習用に構築された、設定済みのカスタマイズ可能な環境のセットであり、モデルのトレーニング、ハイパーパラメータのチューニング、バッチ推論、ファインチューニングなどのインタラクティブな実験やバッチ ML ワークロードをカバーします。これらのフレームワークには、最も人気のある機械学習やディープラーニングのフレームワークが含まれています。Snowflakeノートブックと併用することで、エンド・ツー・エンドで ML のエクスペリエンスを提供します。

実行環境

Container Runtime for ML は、Snowflake内で ML のさまざまな開発作業をサポートするパッケージとライブラリで構成された環境を提供します。プリインストールされているパッケージに加えて、公開されている PyPI リポジトリや、組織内での使用を承認されたパッケージのリストを提供する内部でホストされているパッケージリポジトリなどの外部ソースからパッケージをインポートすることができます。

カスタムPython ML ワークロードおよびサポートされるトレーニング APIs の実行は、 Snowpark Container Services 内で行われ、 CPU または GPU プール上で実行できます。Snowflake ML APIs を使用する場合、Container Runtime for ML は利用可能なリソースに処理を分散します。

分散前処理

Snowflake ML モデリングとデータのロード APIs は、Snowflake ML の分散処理フレームワークの上に構築されており、利用可能なコンピュートパワーをフルに活用することで、リソースの利用率を最大化します。デフォルトでは、このフレームワークはマルチ-GPU ノードのすべての GPUs を使用し、オープンソースパッケージと比較してパフォーマンスが大幅に向上し、全体的な実行時間が短縮されます。

ML 処理における作業負荷の分散を示す図。

データロードを含む機械学習ワークロードは、Snowflakeが管理するコンピュート環境で実行されます。このフレームワークは、モデルのトレーニングやデータのロードなど、手元のタスクの特定の要件に基づいてリソースを動的にスケーリングすることができます。各タスクの GPU 、メモリ割り当てを含むリソース数は、提供される APIs を使って簡単に設定できます。

Container Runtime・イメージ仕様

Container Runtime上で実行するノートブックを作成する際、 CPU または GPU のイメージタイプを選択できます。どちらのイメージにも、scikit-learn や PyTorch のような ML の人気フレームワークがプリインストールされています。また、Snowpark ML とそれに付随するすべてのものを使うことができます。

CPU v1イメージの全リスト

この表は CPU v1 イメージにプリインストールされている Python パッケージの全リストです。

パッケージ

バージョン

absl-py

1.4.0

aiobotocore

2.7.0

aiohttp

3.9.5

aiohttp-cors

0.7.0

aioitertools

0.12.0

aiosignal

1.2.0

aiosignal

1.3.1

altair

5.4.1

annotated-types

0.6.0

anyio

3.5.0

appdirs

1.4.4

arviz

0.17.1

asn1crypto

1.5.1

asttokens

2.0.5

async-timeout

4.0.3

async-timeout

4.0.3

atpublic

4.0

attrs

23.1.0

attrs

23.2.0

backoff

2.2.1

bayesian-optimization

1.5.1

blinker

1.6.2

botocore

1.31.64

bottleneck

1.3.7

brotli

1.0.9

cachetools

5.3.3

causalpy

0.4.0

certifi

2024.8.30

cffi

1.16.0

charset-normalizer

3.3.2

click

8.1.7

clikit

0.6.2

cloudpickle

2.2.1

cmdstanpy

1.2.4

colorama

0.4.6

colorful

0.5.4

cons

0.4.6

contourpy

1.2.0

crashtest

0.3.1

cryptography

42.0.8

cycler

0.11.0

datasets

2.16.1

decorator

5.1.1

deprecated

1.2.13

dill

0.3.7

distlib

0.3.8

etuples

0.3.9

評価する

0.4.2

exceptiongroup

1.2.0

executing

0.8.3

filelock

3.13.1

flask

3.0.3

fonttools

4.51.0

frozenlist

1.4.0

frozenlist

1.4.1

fsspec

2023.10.0

gitdb

4.0.7

gitpython

3.1.41

gmpy2

2.1.2

google-api-core

2.19.1

google-auth

2.29.0

googleapis-common-protos

1.63.2

graphviz

0.20.1

grpcio

1.66.1

grpcio-tools

1.62.3

gunicorn

22.0.0

h5netcdf

1.2.0

h5py

3.11.0

holidays

0.57

httpstan

4.13.0

huggingface-hub

0.24.6

idna

3.6

idna

3.7

importlib-metadata

6.11.0

importlib-resources

6.4.5

ipython

8.27.0

itsdangerous

2.2.0

jedi

0.19.1

jinja2

3.1.4

jmespath

1.0.1

joblib

1.4.2

jsonschema

4.19.2

jsonschema-specifications

2023.7.1

kiwisolver

1.4.4

lightgbm

3.3.5

lightgbm-ray

0.1.9

logical-unification

0.4.6

markdown-it-py

2.2.0

markupsafe

2.1.3

marshmallow

3.22.0

matplotlib

3.8.4

matplotlib-inline

0.1.6

mdurl

0.1.0

minikanren

1.0.3

mkl-fft

1.3.10

mkl-random

1.2.7

mkl-service

2.4.0

mlruntimes-client

0.2.0

mlruntimes-service

0.2.0

modin

0.31.0

mpmath

1.3.0

msgpack

1.0.3

multidict

6.0.4

multidict

6.0.5

multipledispatch

0.6.0

multiprocess

0.70.15

narwhals

1.8.4

networkx

3.3

nltk

3.9.1

numexpr

2.8.7

numpy

1.24.3

opencensus

0.11.3

opencensus-context

0.1.3

opencv-python

4.10.0.84

opentelemetry-api

1.23.0

opentelemetry-exporter-otlp-proto-common

1.23.0

opentelemetry-exporter-otlp-proto-grpc

1.25.0

opentelemetry-proto

1.23.0

opentelemetry-sdk

1.23.0

opentelemetry-semantic-conventions

0.44b0

packaging

23.1

pandas

2.2.3

parso

0.8.3

pastel

0.2.1

patsy

0.5.6

pexpect

4.8.0

pillow

9.5.0

pip

24.2

platformdirs

2.6.2

plotly

5.22.0

ply

3.11

prometheus-client

0.20.0

prompt-toolkit

3.0.43

prophet

1.1.5

proto-plus

1.24.0

protobuf

4.24.4

psutil

5.9.0

ptyprocess

0.7.0

pure-eval

0.2.2

pyarrow

15.0.0

pyarrow-hotfix

0.6

pyasn1

0.4.8

pyasn1-modules

0.2.8

pycparser

2.21

pydantic

2.8.2

pydantic-core

2.20.1

pydeck

0.9.1

pygments

2.15.1

pyjwt

2.8.0

pylev

1.4.0

pymc

5.16.1

pympler

1.1

pyopenssl

24.2.1

pyparsing

3.0.9

pyqt5

5.15.10

pyqt5-sip

12.13.0

pysimdjson

6.0.2

pysocks

1.7.1

pystan

3.10.0

pytensor

2.13.1

pytensor

2.23.0

python-dateutil

2.8.3+snowflake1

pytimeparse

1.1.8

pytz

2024.1

pytz-deprecation-shim

0.1.0.post0

pyyaml

6.0.1

ray

2.10.0

referencing

0.30.2

regex

2024.7.24

requests

2.32.3

retrying

1.3.4

rich

13.7.1

rpds-py

0.10.6

rsa

4.7.2

s3fs

2023.10.0

safetensors

0.4.4

scikit-learn

1.3.0

scipy

1.13.1

seaborn

0.13.2

setproctitle

1.2.2

setuptools

70.0.0

sip

6.7.12

six

1.16.0

smart-open

5.2.1

smmap

4.0.0

sniffio

1.3.0

snowbooks

1.46.0

snowflake

0.12.1

snowflake-connector-python

3.12.0

snowflake-core

0.12.1

snowflake-legacy

0.12.1

snowflake-ml-python

1.6.2

snowflake-snowpark-python

1.18.0

snowflake-telemetry-python

0.5.0

sortedcontainers

2.4.0

sqlparse

0.5.1

stack-data

0.2.0

stanio

0.5.1

statsmodels

0.14.2

Streamlit

1.26.0

sympy

1.13.2

tenacity

8.2.3

tensorboardx

2.6.2.2

threadpoolctl

3.5.0

tokenizers

0.15.1

toml

0.10.2

tomli

2.0.1

tomlkit

0.11.1

toolz

0.12.0

torch

2.3.0

tornado

6.4.1

tqdm

4.66.4

traitlets

5.14.3

transformers

4.36.0

typing-extensions

4.12.2

tzdata

2024.2

tzlocal

4.3.1

unicodedata2

15.1.0

urllib3

2.0.7

validators

0.34.0

virtualenv

20.17.1

watchdog

5.0.3

wcwidth

0.2.5

webargs

8.6.0

werkzeug

3.0.3

wheel

0.43.0

wrapt

1.14.1

xarray

2023.6.0

xarray-einstats

0.6.0

xgboost

1.7.6

xgboost-ray

0.1.19

xxhash

2.0.2

yarl

1.11.0

yarl

1.9.4

zipp

3.17.0

GPU v1イメージの全リスト

この表は GPU v1 イメージにプリインストールされている Python パッケージの全リストです。

パッケージ

バージョン

absl-py

1.4.0

accelerate

0.34.2

aiobotocore

2.7.0

aiohttp

3.9.5

aiohttp-cors

0.7.0

aioitertools

0.12.0

aiosignal

1.2.0

aiosignal

1.3.1

altair

5.4.1

annotated-types

0.6.0

anyio

3.5.0

appdirs

1.4.4

arviz

0.17.1

asn1crypto

1.5.1

asttokens

2.0.5

async-timeout

4.0.3

async-timeout

4.0.3

atpublic

4.0

attrs

23.1.0

attrs

23.2.0

backoff

2.2.1

bayesian-optimization

1.5.1

blinker

1.6.2

botocore

1.31.64

bottleneck

1.3.7

brotli

1.0.9

cachetools

5.3.3

causalpy

0.4.0

certifi

2024.8.30

cffi

1.16.0

charset-normalizer

3.3.2

click

8.1.7

clikit

0.6.2

cloudpickle

2.0.0

cmake

3.30.3

cmdstanpy

1.2.4

colorama

0.4.6

colorful

0.5.4

cons

0.4.6

contourpy

1.2.0

crashtest

0.3.1

cryptography

42.0.8

cycler

0.11.0

datasets

2.16.1

decorator

5.1.1

deprecated

1.2.13

dill

0.3.7

diskcache

5.6.3

distlib

0.3.8

distro

1.9.0

etuples

0.3.9

評価する

0.4.2

exceptiongroup

1.2.0

executing

0.8.3

fastapi

0.115.0

filelock

3.13.1

flask

3.0.3

fonttools

4.51.0

frozenlist

1.4.0

frozenlist

1.4.1

fsspec

2023.10.0

gitdb

4.0.7

gitpython

3.1.41

gmpy2

2.1.2

google-api-core

2.19.1

google-auth

2.29.0

googleapis-common-protos

1.63.2

graphviz

0.20.1

grpcio

1.66.1

grpcio-tools

1.62.3

gunicorn

22.0.0

h11

0.14.0

h5netcdf

1.2.0

h5py

3.11.0

holidays

0.57

httpcore

1.0.5

httpstan

4.13.0

httptools

0.6.1

httpx

0.27.2

huggingface-hub

0.24.6

idna

3.6

idna

3.7

importlib-metadata

6.11.0

importlib-resources

6.4.5

interegular

0.3.3

ipython

8.27.0

itsdangerous

2.2.0

jedi

0.19.1

jinja2

3.1.4

jiter

0.5.0

jmespath

1.0.1

joblib

1.4.2

jsonschema

4.19.2

jsonschema-specifications

2023.7.1

kiwisolver

1.4.4

lark

1.2.2

lightgbm

4.5.0

lightgbm-ray

0.1.9

llvmlite

0.43.0

lm-format-enforcer

0.10.3

logical-unification

0.4.6

markdown-it-py

2.2.0

markupsafe

2.1.3

marshmallow

3.22.0

matplotlib

3.8.4

matplotlib-inline

0.1.6

mdurl

0.1.0

minikanren

1.0.3

mkl-fft

1.3.10

mkl-random

1.2.7

mkl-service

2.4.0

mlruntimes-client

0.2.0

mlruntimes-service

0.2.0

modin

0.31.0

mpmath

1.3.0

msgpack

1.0.3

multidict

6.0.4

multidict

6.0.5

multipledispatch

0.6.0

multiprocess

0.70.15

narwhals

1.8.4

nest-asyncio

1.6.0

networkx

3.3

ninja

1.11.1.1

nltk

3.9.1

numba

0.60.0

numexpr

2.8.7

numpy

1.24.3

nvidia-cublas-cu12

12.1.3.1

nvidia-cuda-cupti-cu12

12.1.105

nvidia-cuda-nvrtc-cu12

12.1.105

nvidia-cuda-runtime-cu12

12.1.105

nvidia-cudnn-cu12

8.9.2.26

nvidia-cufft-cu12

11.0.2.54

nvidia-curand-cu12

10.3.2.106

nvidia-cusolver-cu12

11.4.5.107

nvidia-cusparse-cu12

12.1.0.106

nvidia-ml-py

12.560.30

nvidia-nccl-cu12

2.20.5

nvidia-nvjitlink-cu12

12.6.68

nvidia-nvtx-cu12

12.1.105

openai

1.50.1

opencensus

0.11.3

opencensus-context

0.1.3

opencv-python

4.10.0.84

opentelemetry-api

1.23.0

opentelemetry-exporter-otlp-proto-common

1.23.0

opentelemetry-exporter-otlp-proto-grpc

1.25.0

opentelemetry-proto

1.23.0

opentelemetry-sdk

1.23.0

opentelemetry-semantic-conventions

0.44b0

outlines

0.0.46

packaging

23.1

pandas

2.2.3

parso

0.8.3

pastel

0.2.1

patsy

0.5.6

peft

0.5.0

pexpect

4.8.0

pillow

9.5.0

pip

24.2

platformdirs

2.6.2

plotly

5.22.0

ply

3.11

prometheus-client

0.20.0

prometheus-fastapi-instrumentator

7.0.0

prompt-toolkit

3.0.43

prophet

1.1.5

proto-plus

1.24.0

protobuf

4.24.4

psutil

5.9.0

ptyprocess

0.7.0

pure-eval

0.2.2

py-cpuinfo

9.0.0

pyairports

2.1.1

pyarrow

15.0.0

pyarrow-hotfix

0.6

pyasn1

0.4.8

pyasn1-modules

0.2.8

pyairports

24.6.1

pycparser

2.21

pydantic

2.8.2

pydantic-core

2.20.1

pydeck

0.9.1

pygments

2.15.1

pyjwt

2.8.0

pylev

1.4.0

pymc

5.16.1

pympler

1.1

pyopenssl

24.2.1

pyparsing

3.0.9

pyqt5

5.15.10

pyqt5-sip

12.13.0

pysimdjson

6.0.2

pysocks

1.7.1

pystan

3.10.0

pytensor

2.13.1

pytensor

2.23.0

python-dateutil

2.8.3+snowflake1

python-dotenv

1.0.1

pytimeparse

1.1.8

pytz

2024.1

pytz-deprecation-shim

0.1.0.post0

pyyaml

6.0.1

pyzmq

26.2.0

ray

2.10.0

referencing

0.30.2

regex

2024.7.24

requests

2.32.3

retrying

1.3.4

rich

13.7.1

rpds-py

0.10.6

rsa

4.7.2

s3fs

2023.10.0

safetensors

0.4.4

scikit-learn

1.3.0

scipy

1.9.3

seaborn

0.13.2

pyairports

0.1.99

setproctitle

1.2.2

setuptools

70.0.0

sip

6.7.12

six

1.16.0

smart-open

5.2.1

smmap

4.0.0

sniffio

1.3.0

snowbooks

1.46.0

snowflake

0.12.1

snowflake-connector-python

3.12.0

snowflake-core

0.12.1

snowflake-legacy

0.12.1

snowflake-ml-python

1.6.2

snowflake-snowpark-python

1.18.0

snowflake-telemetry-python

0.5.0

sortedcontainers

2.4.0

sqlparse

0.5.1

stack-data

0.2.0

stanio

0.5.1

starlette

0.38.6

statsmodels

0.14.2

Streamlit

1.26.0

sympy

1.13.2

tenacity

8.2.3

tensorboardx

2.6.2.2

threadpoolctl

3.5.0

tiktoken

0.7.0

tokenizers

0.20.0

toml

0.10.2

tomli

2.0.1

tomlkit

0.11.1

toolz

0.12.0

torch

2.3.1

torchvision

0.18.1

tornado

6.4.1

tqdm

4.66.4

traitlets

5.14.3

transformers

4.45.1

triton

2.3.1

typing-extensions

4.12.2

tzdata

2024.2

tzlocal

4.3.1

unicodedata2

15.1.0

urllib3

2.0.7

uvicorn

0.31.0

uvloop

0.20.0

validators

0.34.0

virtualenv

20.17.1

vllm

0.5.3.post1

vllm-flash-attn

2.5.9.post1

watchdog

5.0.3

watchfiles

0.24.0

wcwidth

0.2.5

webargs

8.6.0

websockets

13.1

werkzeug

3.0.3

wheel

0.43.0

wrapt

1.14.1

xarray

2023.6.0

xarray-einstats

0.6.0

xformers

0.0.27

xgboost

1.7.6

xgboost-ray

0.1.19

xxhash

2.0.2

yarl

1.11.0

yarl

1.9.4

zipp

3.17.0

次のステップ