Snowflake ML Python release notes

This article contains the release notes for the Snowflake ML Python, including the following when applicable:

  • Behavior changes

  • New features

  • Customer-facing bug fixes

Note

These notes do not include changes in features that have not been publicly announced. Such features might appear in the Snowflake ML Python source code but not in the public documentation.

See Snowflake ML: End-to-End Machine Learning for documentation.

Verifying the snowflake-ml-python package

All Snowflake packages are signed, allowing you to verify their origin. To verify the snowflake.ml.python package, follow the steps below:

  1. Install cosign. This example uses the Go installation: Installing cosign with Go.

  2. Download the file from a repository such as PyPi.

  3. Download a .sig file for that release from the GitHub releases page.

  4. Verify the signature using cosign. For example:

cosign verify-blob snowflake_ml_python-1.7.0.tar.gz --key snowflake-ml-python-1.7.0.pub --signature resources.linux.snowflake_ml_python-1.7.0.tar.gz.sig

cosign verify-blob snowflake_ml_python-1.7.0.tar.gz --key snowflake-ml-python-1.7.0.pub --signature resources.linux.snowflake_ml_python-1.7.0
Copy

Note

This example uses the library and signature for version 1.7.0 of the package. Use the filenames of the version you are verifying.

Deprecation notices

  • snowflake.ml.fileset.FileSet has been deprecated and will be removed in a future release. Use snowflake.ml.dataset.Dataset and snowflake.ml.data.DataConnector instead.

  • The “CamelCase” function names in snowflake.ml.cortex have been deprecated and will be removed in a future release. Use the “snake_case” names for these functions instead. For example, use classify_text instead of ClassifyText.

  • The partitioned_inference_api decorator has been deprecated and will be removed in a future release. Use custom_model.partitioned_api instead.

  • The additional_payloads argument of the MLJob.submit_* methods has been deprecated and will be removed in a future release. Use the imports argument instead.

  • The snowflake.ml.model.models.huggingface_pipeline.HuggingfacePipelineModel class has been deprecated and will be removed in a future release.

Version 1.22.0 (2026-01-09)

New features

New Model Registry features:

  • You can now remotely log a transformer pipeline model using a Snowpark Container Services (SPCS) job.

    # create reference to the model
    model = huggingface.TransformersPipeline(
        model="TinyLlama/TinyLlama-1.1B-Chat-v1.0",
        task="text-generation",
    )
    
    # Remotely log the model, a SPCS job will run async and log the model
    mv = registry.log_model(
        model=model,
        model_name="tinyllama_remote_log",
        target_platforms=["SNOWPARK_CONTAINER_SERVICES"],
        signatures=openai_signatures.OPENAI_CHAT_SIGNATURE,
    )
    
    Copy

Version 1.21.0 (2026-01-05)

Behavior changes

ML Jobs behavior changes:

  • The behavior of the additional_payloads parameter is changing. Use the imports argument to declare additional dependencies, such as ZIP files and Python modules. Local directories and Python files are automatically compressed, and their internal layout is determined by the specified import path. The import path applies only to local directories, Python files, and staged python files; it has no effect on other import types. When referencing files in a stage, only individual files are supported, not directories.

Experiment Tracking behavior changes:

  • ExperimentTracking is now a singleton class.

Bug fixes

Experiment Tracking bug fixes:

  • Reaching the run metadata size limit in log_metrics or log_params now issues a warning instead of raising an exception.

Model Registry bug fixes:

  • ModelVersion.run now raises a ValueError if the model is a SPCS-only model and service_name is not provided.

New preview features

  • The create_service method now accepts the Boolean argument autocapture to indicate whether inference data is automatically captured.

New release features

New Model Registry features:

  • The new snowflake.ml.model.models.huggingface.TransformersPipeline class is intended to replace snowflake.ml.model.models.huggingface_pipeline.HuggingfacePipelineModel, although the older class is not yet deprecated. The new class knows model signatures for common tasks so that you do not need to specify them manually. The supported tasks are currently:

    • fill-mask

    • question-answering

    • summarization

    • table-question-answering

    • text2text-generation

    • text-classification (alias sentiment-analysis)

    • text-generation

    • token-classification (alias ner)

    • translation

    • translation_xx_to_yy

    • zero-shot-classification (lets you log models without loading them into memory)

  • The list_services API now shows an internal endpoint that can be called from another SPCS node or notebook without Enterprise Application Integration. It also indicates whether autocapture is enabled for each service.

New DataConnector features:

  • New to_huggingface_dataset method converts Snowflake data to HuggingFace datasets. Supports both in-memory Dataset (streaming=False) and streaming IterableDataset (streaming=True) modes.

Deprecation notices

  • The snowflake.ml.model.models.huggingface_pipeline.HuggingfacePipelineModel class has been deprecated and will be removed in a future release.