snowflake-ml-python
The machine learning client library that is used for interacting with Snowflake to build machine learning solutions.
What it is and what it does
Snowflake ML Python is an official SDK for building end-to-end machine learning workflows within Snowflake's data warehouse. It spans model development (preprocessing, feature engineering, training with sklearn/xgboost/lightgbm), MLOps infrastructure (model registry, feature store, versioned datasets), and experiment tracking. The package runs computations directly on Snowflake's infrastructure, letting you train models on large datasets without moving data out of the warehouse.
The SDK is tightly integrated with Snowflake's ecosystem: it uses snowflake-connector-python and snowflake-snowpark-python for data access, and includes framework connectors for PyTorch and TensorFlow. It is pre-installed in Snowflake Container Runtime notebooks and can be installed via conda (from Snowflake's or conda-forge channels) or pip for use in external Python environments. The package is production-stable and actively developed.
Use it for:
- Train sklearn or xgboost models on large Snowflake tables without exporting data to a local machine
- Build and manage a feature store within Snowflake with automated incremental refresh from batch or streaming sources
- Log, version, and deploy trained models using the Snowflake Model Registry with MLflow 3.x support
- Perform experiment tracking and run management with automatic source provenance capture for reproducibility
- Preprocess and transform large datasets using Snowpark Optimized High Memory Warehouses for scalable feature engineering
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Snowflake ML Python provides SDKs and infrastructure to build, train, manage, and deploy machine learning models directly within Snowflake, covering data preprocessing, feature engineering, model development, experiment tracking, and model registry.
Yes, if you use Snowflake and want to build ML workflows without exporting data. The package is production-stable, actively maintained, and Apache 2.0 licensed. Install friction is low and there are no known vulnerabilities. Requires a Snowflake account and familiarity with the Snowflake ecosystem; not suitable for standalone ML work outside Snowflake.
Install
snowflake-ml-python on PyPI
pip
pip install snowflake-ml-pythonuv
uv add snowflake-ml-pythonpoetry
poetry add snowflake-ml-pythonInstalling snowflake-ml-python
Before you install
Low install friction with a pure-Python wheel distribution. Actively maintained with a release 2 days old. Supports Python 3.9 through 3.12. Brings 26 runtime dependencies including numpy, pandas, scikit-learn, xgboost, and snowflake-connector-python, which is expected for an ML platform integration.
License in practice
Licensed under Apache 2.0 (permissive). You may use, modify, and distribute the package freely in commercial and private projects, provided you include a copy of the license and document any modifications.
Quickstart
# Install
pip install snowflake-ml-python
# Basic usage
from snowflake.ml.modeling.preprocessing import StandardScaler
from snowflake.ml.modeling.ensemble import RandomForestClassifier
from snowflake.snowpark.session import Session
session = Session.builder.config("connection_name", "my_connection").create()
scaler = StandardScaler(input_cols=["feature1"], output_cols=["feature1_scaled"])
model = RandomForestClassifier(input_cols=["feature1_scaled"], label_cols=["target"])
Requires an active Snowflake account and valid connection credentials. Python 3.9–3.12 only. snowflake-connector-python and snowflake-snowpark-python must be available in your environment.
Verify before relying
- Whether the package works equally well outside Snowflake Container Runtime notebooks or if performance/features differ significantly in standard environments
- Whether all 26 dependencies are always required or if some are optional for specific use cases
Package facts
| License | Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION 1. Definitions. "License" shall mean the terms and conditions for… (full text in the JSON record) (permissive) |
| Python support | supports the current Python release (<3.14,>=3.9) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 26 — anyio, cachetools, cloudpickle, fsspec, h2, importlib_resources, jinja2, numpy, packaging, pandas, platformdirs, pyarrow, pydantic, pyjwt, pytimeparse, pyyaml, retrying, scikit-learn, scipy, shap, snowflake-connector-python, snowflake-snowpark-python, sqlparse, tqdm, typing-extensions, xgboost |
| Maintenance | actively maintained — 2 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 993,985/month — #4,555 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: snowflake_ml_python-1.51.0-py3-none-any.whl
Tags
More Software Development packages
Provides backported and experimental type hints…
permissive · top 100 on PyPI
numpyNumPy provides an N-dimensional array object…
permissive · top 100 on PyPI
fastapiFastAPI is a Python web framework for building…
permissive · top 100 on PyPI
annotated-docProvides a way to document function parameters,…
permissive · top 100 on PyPI
typerTyper builds command-line applications from…
permissive · top 1,000 on PyPI
distlibDistlib provides low-level packaging utilities…
permissive · top 1,000 on PyPI
snowflakeUnified Python API for Snowflake workloads,…
permissive · top 5,000 on PyPI
snowflake-snowpark-pythonSnowpark Python provides APIs to query and…
permissive · top 1,000 on PyPI
snowflake.coreProvides Python access to Snowflake entity…
permissive · top 5,000 on PyPI
meltanolabs-target-snowflakeA Singer target that loads data into Snowflake…
permissive · top 15,000 on PyPI
mlflowMLflow is an open-source platform for managing…
permissive · top 1,000 on PyPI
model-indexMaintains a structured index of machine…
permissive · top 15,000 on PyPI
azureml-mlflowIntegrates MLflow experiment tracking and model…
permissive · top 5,000 on PyPI
kumoaiKumo SDK provides a Python interface to…
permissive · top 15,000 on PyPI
hopsworksPython SDK for connecting to Hopsworks clusters…
permissive · top 15,000 on PyPI
azureml-coreProvides core APIs and utilities for managing…
unclear · top 5,000 on PyPI