Snowflake ML Python-Versionshinweise¶
Dieser Artikel enthält die Versionshinweise für Snowflake ML Python, einschließlich der folgenden, sofern zutreffend:
Verhaltensänderungen
Neue Features
Fehlerkorrekturen für Kunden
Bemerkung
Diese Hinweise enthalten keine Änderungen an Features, die noch nicht angekündigt wurden. Solche Features können im Quellcode von Snowflake ML Python erscheinen, aber nicht in der öffentlichen Dokumentation.
Siehe Snowflake ML: Umfassendes maschinelles Lernen für die Dokumentation.
Überprüfen Sie das snowflake-ml-python-Paket¶
Alle Snowflake-Pakete sind signiert, sodass Sie ihre Herkunft überprüfen können. Um das Paket snowflake.ml.python zu überprüfen, führen Sie die folgenden Schritte aus:
Installieren Sie
cosign. Dieses Beispiel verwendet die Go-Installation: Installation von cosign mit Go.Laden Sie die Datei von einem Repository wie PyPi herunter.
Laden Sie eine
.sig-Datei für dieses Release von der GitHub Releases-Seite herunter.Überprüfen Sie die Signatur mit
cosign. Beispiel:
cosign verify-blob snowflake_ml_python-1.27.0.tar.gz --key snowflake-ml-python-1.27.0.pub --signature resources.linux.snowflake_ml_python-1.27.0.tar.gz.sig
cosign verify-blob snowflake_ml_python-1.27.0.tar.gz --key snowflake-ml-python-1.27.0.pub --signature resources.linux.snowflake_ml_python-1.27.0.tar.gz.sig
Bemerkung
This example uses the library and signature for version 1.27.0 of the package. Use the filenames of the version you are verifying.
Hinweise zum Veralten¶
snowflake.ml.fileset.FileSetist veraltet und wird in einer zukünftigen Version entfernt werden. Verwenden Sie stattdessen snowflake.ml.dataset.Dataset und snowflake.ml.data.DataConnector.Die „CamelCase“-Funktionsnamen in
snowflake.ml.cortexsind veraltet und werden in einer zukünftigen Version entfernt. Verwenden Sie stattdessen die „snake_case“-Namen für diese Funktionen. Verwenden Sie zum Beispielclassify_textanstelle vonClassifyText.Der
partitioned_inference_api-Decorator ist veraltet und wird in einem zukünftigen Release entfernt. Verwenden Sie stattdessencustom_model.partitioned_api.Das
additional_payloads-Argument derMLJob.submit_*-Methoden ist veraltet und wird in einem zukünftigen Release entfernt werden. Verwenden Sie stattdessen dasimports-Argument.Die
snowflake.ml.model.models.huggingface_pipeline.HuggingfacePipelineModel-Klasse ist veraltet und wird in einem zukünftigen Release entfernt.
Version 1.27.0 (2026-02-12)¶
Fehlerkorrekturen¶
Fehlerkorrekturen an der Modell-Registry:
Fehler
model_version.runwurde behoben, verursacht durch die Anforderung der READ-Berechtigung für das Modell anstelle von USAGE, wenn die Rolle des Benutzenden nur die USAGE-Berechtigung hatte.
Feature store bug fixes:
Fehler
register_feature_viewwurde durchoverwrite=Truebehoben, wenn die bestehende Feature-Ansicht extern ist und die neue Feature-Ansicht verwaltet wird oder umgekehrt.
Version 1.26.0 (2026-02-05)¶
Neue Features¶
Neue Features der Modell-Registry:
Modellsignaturen können jetzt Inferenzparameter über
ParamSpecenthalten und ermöglicht es Ihnen, konstante Parameter zu definieren, die zur Inferenzzeit übergeben werden, ohne sie in die Eingabedaten aufnehmen zu müssen. Beispiel:import pandas as pd from snowflake.ml.model import custom_model, model_signature from snowflake.ml.registry import Registry # Define a custom model with inference parameters class MyModelWithParams(custom_model.CustomModel): @custom_model.inference_api def predict( self, input_df: pd.DataFrame, *, temperature: float = 1.0, # keyword-only param with default ) -> pd.DataFrame: return pd.DataFrame({"output": input_df["feature"] * temperature}) # Create sample data model = MyModelWithParams(custom_model.ModelContext()) sample_input = pd.DataFrame({"feature": [1.0, 2.0, 3.0]}) sample_output = model.predict(sample_input, temperature=1.0) # Define ParamSpec for the inference parameter params = [ model_signature.ParamSpec( name="temperature", dtype=model_signature.DataType.FLOAT, default_value=1.0, ), ] # Infer signature with params sig = model_signature.infer_signature( input_data=sample_input, output_data=sample_output, params=params, ) # Log model with the signature registry = Registry(session) mv = registry.log_model( model=model, model_name="my_model_with_params", version_name="v1", signatures={"predict": sig}, ) # Run inference with custom parameter value result = mv.run(sample_input, function_name="predict", params={"temperature": 2.0})
Neue Funktionen im Feature Store:
Neuer Parameter
auto_prefixundwith_name-Methode zur Vermeidung von Spaltennamen-Kollisionen bei der Verknüpfung mehrerer Feature-Ansichten bei der Datenset-Erstellung.Dynamische Iceberg-Tabellen können jetzt als Unterstützungsspeicher für Feature-Ansichten verwendet werden. Verwenden Sie
StorageConfigmitStorageFormat.ICEBERG, um Daten im Apache Iceberg-Format auf einem externen Cloudspeicher zu speichern. Ein neuer Parameterdefault_iceberg_external_volumeist unterFeatureStoreverfügbar, um ein externes Standardvolume für Iceberg-Feature-Ansichten festzulegen.
Version 1.25.1 (2026-02-03)¶
Keine öffentlich zugänglichen Änderungen. Dieses Release enthält Änderungen an einem Vorschau-Feature, das noch nicht öffentlich angekündigt wurde.
Version 1.25.0 (2026-01-28)¶
Neue Features¶
New Model Serving features:
Die
create_service-Methode akzeptiert ein neuesautocapture-Argument, um anzugeben, ob Inferenzdaten erfasst werden sollen (siehe Automatische Erfassung von Inferenzprotokollen für Echtzeit-Inferenz).Die Methoden
create_serviceundlog_model_and_create_serviceakzeptieren jetzt ein optionalesmin_instances-Argument, um die Mindestanzahl von Instanzen für den Dienst anzugeben. Der Dienst skaliert automatisch zwischen den angegebenen minimalen und maximalen Instanzen, basierend auf Datenverkehr und Hardware-Auslastung. Wennmin_instances0 ist, wird der Dienst automatisch angehalten, wenn für einen bestimmten Zeitraum kein Datenverkehr festgestellt wird. Der Standardwert fürmin_instancesist 0.
Version 1.24.0 (22.01.2026)¶
Neue Features¶
Neue Funktionen im Feature Store:
Tile-based aggregation support using a new
FeatureAPI for efficient and point-in-time correct time-series feature computation using pre-computed tiles.
Neue Features der Modell-Registry:
SentenceTransformer-Modelle unterstützen jetzt die automatische Signaturableitung. Beim Protokollieren eines SentenceTransformer-Modells ist
sample_input_dataoptional. Die Signatur wird automatisch aus der Einbettungsdimension des Modells abgeleitet, wenn keine Beispiel-Eingabedaten bereitgestellt werden. Die Methodenencode,encode_query,encode_document,encode_queries,encode_documentswerden unterstützt.import sentence_transformers from snowflake.ml.registry import Registry # Create model model = sentence_transformers.SentenceTransformer("all-MiniLM-L6-v2") # Log model without sample_input_data - signature is auto-inferred registry = Registry(session) mv = registry.log_model( model=model, model_name="my_sentence_transformer", version_name="v1", ) # Run inference with auto-inferred signature (input: "text", output: "output") import pandas as pd result = mv.run(pd.DataFrame({"text": ["Hello world"]}))
Version 1.23.0 (2026-01-165)¶
Neue Features¶
Neue ML-Job-Features:
ML-Jobs unterstützen jetzt Python 3.11 und Python 3.12. Jobs wählen automatisch eine Laufzeitumgebung aus, die der Python-Version des Clients entspricht.
Fehlerkorrekturen¶
Fehlerkorrekturen an der Modell-Registry:
Leere Ausgabe in HuggingFace Token-Klassifizierungmodellen (namens Entity Recognition) verursacht keine Fehler mehr.
Fehlerkorrekturen bei der Modellbereitstellung:
Containerstatus wird jetzt korrekt gemeldet und sollte nicht leer sein.
Version 1.22.0 (2026-01-09)¶
Neue Features¶
Neue Features der Modell-Registry:
Sie können jetzt ein Transformer-Pipeline-Modell mithilfe eines Snowpark Container Services (SPCS)-Jobs extern protokollieren.
# 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, )
Version 1.21.0 (2026-01-05)¶
Verhaltensänderungen¶
Das Verhalten der ML-Jobs ändert sich:
Das Verhalten des Parameters
additional_payloadsändert sich Verwenden Sie dasimports-Argument, um zusätzliche Abhängigkeiten zu deklarieren, wie z. B. ZIP-Dateien und Python-Module. Lokale Verzeichnisse und Python-Dateien werden automatisch komprimiert, und ihr internes Layout wird durch den angegebenen Importpfad bestimmt. Der Importpfad gilt nur für lokale Verzeichnisse, Python-Dateien und Python-Stagingdateien. Dies hat keine Auswirkungen auf andere Importtypen. Beim Verweis auf Dateien in einem Stagingbereich werden nur einzelne Dateien unterstützt, keine Verzeichnisse.
Änderungen der Verhaltensweise der Experimentverfolgung:
ExperimentTrackingist jetzt eine Singleton-Klasse.
Fehlerkorrekturen¶
Korrekturen bei der Verfolgung von Experimenten:
Das Erreichen der Größenbeschränkung der Ausführungsmetadaten in
log_metricsoderlog_paramsgibt jetzt eine Warnung aus, anstatt eine Ausnahme auszulösen.
Fehlerkorrekturen an der Modell-Registry:
ModelVersion.runlöst nun einenValueError-Fehler aus, wenn das Modell ein Nur-SPCS-Modell ist undservice_namenicht angegeben wurde.
Neue Vorschau-Features¶
Die
create_service-Methode akzeptiert jetzt das boolesche Argumentautocapture, um anzugeben, ob Inferenzdaten automatisch erfasst werden.
Neue Release-Features¶
Neue Features der Modell-Registry:
Die neue Klasse
snowflake.ml.model.models.huggingface.TransformersPipelinesollsnowflake.ml.model.models.huggingface_pipeline.HuggingfacePipelineModelersetzen, obwohl die ältere Klasse noch nicht veraltet ist. Die neue Klasse kennt Modellsignaturen für allgemeine Aufgaben, sodass Sie diese nicht manuell angeben müssen. Folgende Aufgaben werden derzeit unterstützt:fill-maskquestion-answeringsummarizationtable-question-answeringtext2text-generationtext-classification(Aliassentiment-analysis)text-generationtoken-classification(Aliasner)translationtranslation_xx_to_yyzero-shot-classification(ermöglicht es Ihnen, Modelle zu protokollieren, ohne sie in den Speicher zu laden)
Die
list_servicesAPI zeigt jetzt einen internen Endpunkt an, der von einem anderen SPCS-Knoten oder Notebook ohne Enterprise Application Integration aus aufgerufen werden kann. Außerdem wird angezeigt, ob die automatische Erfassung für den jeweiligen Dienst aktiviert ist.
Neue DataConnector-Features:
Die neue Methode
to_huggingface_datasetkonvertiert Snowflake-Daten in HuggingFace-Datensets. Unterstützt die Modi In-Memory-Dataset(streaming=False) und Streaming vonIterableDataset(streaming=True).
Hinweise zum Veralten¶
Die
snowflake.ml.model.models.huggingface_pipeline.HuggingfacePipelineModel-Klasse ist veraltet und wird in einem zukünftigen Release entfernt.