Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Usługa SynapseML (synapse Machine Learning) jest wstępnie zainstalowana w Microsoft Fabric. Jeśli potrzebujesz konkretnej wersji, możesz ją nadpisać za pomocą polecenia magic %%configure w notesie Fabric.
Szybki start
| Krok | Action | Szacowanie czasu |
|---|---|---|
| 1 | Sprawdź wymagania wstępne (obszar roboczy, notatnik) | 2 minuty |
| 2 | Dodaj komórkę %%configure, aby zainstalować wersję SynapseML, której potrzebujesz. |
1 min |
| 3 | Weryfikowanie zainstalowanej wersji | 1 min |
Prerequisites
Przed rozpoczęciem upewnij się, że masz następujące zasoby:
| Wymaganie | Details |
|---|---|
| obszar roboczy Microsoft Fabric | Obszar roboczy z pojemnością Fabric (F2 lub nowszą) lub wersją próbną Fabric. |
| Notebook z tkaniny | Utwórz nowy notesnik w środowisku Fabric Data Science lub Data Engineering. |
| wersja środowiska uruchomieniowego Fabric | Poznaj wersję środowiska uruchomieniowego swojego obszaru roboczego. Wersje JAR usług SynapseML i Spark Avro muszą być zgodne z wersją platformy Spark w środowisku uruchomieniowym. Zobacz wersje środowiska uruchomieniowego Fabric. |
Ważna
Polecenie %%configure uruchamia ponownie sesję platformy Spark z nowymi ustawieniami. Uruchom ją jako pierwszą komórkę w notesie przed innym kodem. Jeśli uruchomisz go po uruchomieniu sesji platformy Spark, flaga -f wymusza ponowne uruchomienie sesji, a wszystkie zmienne i stan zostaną utracone.
Uwaga
Polecenie magic %%configure w notesach usługi Fabric ma ograniczone oficjalne wsparcie. Nie ma gwarancji umowy dotyczącej poziomu usług (SLA) ani przyszłej zgodności z oficjalnymi wersjami. Aby skorzystać z obsługiwanego rozwiązania, rozważ zastosowanie dostosowywania środowiska Fabric do zarządzania bibliotekami.
Zgodność środowisk uruchomieniowych SynapseML i Fabric
Wybierz wersję SynapseML i plik JAR Spark Avro, które odpowiadają wersji środowiska uruchomieniowego Spark w usłudze Fabric:
| środowisko uruchomieniowe Fabric | Wersja platformy Spark | Wersja usługi SynapseML | Spark Avro JAR |
|---|---|---|---|
| Środowisko uruchomieniowe 1.1 | 3.3 | od 0.11.1 do 0.11.4 | spark-avro_2.12:3.3.1 |
| Środowisko uruchomieniowe 1.2 | 3.4 | Od 1.0.4 do 1.0.8 | spark-avro_2.12:3.4.1 |
| Środowisko uruchomieniowe 1.3 | 3.5 | Od 1.0.4 do 1.0.8 | spark-avro_2.12:3.5.1 |
Dostępne wersje usługi SynapseML można znaleźć w usłudze Maven Central.
Instalowanie usługi SynapseML przy użyciu %%configure
Polecenie %%configure -f konfiguruje właściwości sesji platformy Spark, w tym współrzędne pakietu Maven. Flaga -f wymusza ponowne uruchomienie istniejącej sesji.
Przykład Fabric Runtime 1.2 (Spark 3.4)
Wklej ten kod do pierwszej komórki nowego notesu Fabric i uruchom komórkę:
%%configure -f
{
"name": "synapseml",
"conf": {
"spark.jars.packages": "com.microsoft.azure:synapseml_2.12:1.0.8,org.apache.spark:spark-avro_2.12:3.4.1",
"spark.jars.repositories": "https://mmlspark.azureedge.net/maven",
"spark.jars.excludes": "org.scala-lang:scala-reflect,org.apache.spark:spark-tags_2.12,org.scalactic:scalactic_2.12,org.scalatest:scalatest_2.12,com.fasterxml.jackson.core:jackson-databind",
"spark.yarn.user.classpath.first": "true",
"spark.sql.parquet.enableVectorizedReader": "false",
"spark.sql.legacy.replaceDatabricksSparkAvro.enabled": "true"
}
}
Aby zainstalować inną wersję, zastąp numery wersji w pliku spark.jars.packages:
-
synapseml_2.12:<version>: odpowiednią wersję usługi SynapseML (na przykład1.0.4). -
spark-avro_2.12:<spark-version>: musi być zgodny z wersją środowiska uruchomieniowego Spark usługi Fabric (zobacz tabelę zgodności).
Przykład Fabric Runtime 1.1 (Spark 3.3)
%%configure -f
{
"name": "synapseml",
"conf": {
"spark.jars.packages": "com.microsoft.azure:synapseml_2.12:0.11.4,org.apache.spark:spark-avro_2.12:3.3.1",
"spark.jars.repositories": "https://mmlspark.azureedge.net/maven",
"spark.jars.excludes": "org.scala-lang:scala-reflect,org.apache.spark:spark-tags_2.12,org.scalactic:scalactic_2.12,org.scalatest:scalatest_2.12,com.fasterxml.jackson.core:jackson-databind",
"spark.yarn.user.classpath.first": "true",
"spark.sql.parquet.enableVectorizedReader": "false",
"spark.sql.legacy.replaceDatabricksSparkAvro.enabled": "true"
}
}
Weryfikowanie konfiguracji platformy Spark
Po uruchomieniu komórki sprawdź, czy sesja platformy Spark zaakceptowała konfigurację. Uruchom ten kod w nowej komórce:
print(spark.conf.get("spark.jars.packages"))
Oczekiwane dane wyjściowe (przykład środowiska uruchomieniowego 1.2):
com.microsoft.azure:synapseml_2.12:1.0.8,org.apache.spark:spark-avro_2.12:3.4.1
Sprawdzanie wersji usługi SynapseML
Aby zweryfikować instalację, uruchom następujący kod w nowej komórce. Numer wersji powinien być zgodny z zainstalowaną wersją.
import synapse.ml.lightgbm
print(f"SynapseML version: {synapse.ml.lightgbm.__version__}")
Oczekiwane dane wyjściowe (przykład środowiska uruchomieniowego 1.2):
SynapseML version: 1.0.8
Uwaga
W SynapseML w wersji 1.0 i nowszych moduł synapse.ml.cognitive jest przestarzały. Zamiast tego użyj synapse.ml.services, aby uzyskać dostęp do integracji z usługami AI.
Przywróć wersję domyślną
Aby przywrócić preinstalowaną wersję SynapseML, usuń komórkę %%configure i uruchom ponownie sesję notatnika:
- Usuń lub oznacz jako komentarz komórkę
%%configure. - Wybierz Sesja>Zatrzymaj sesję na pasku narzędzi notesu.
- Uruchom dowolną komórkę, aby rozpocząć nową sesję z konfiguracją domyślną.
Dokumentacja konfiguracji
Blok %%configure zawiera następujące właściwości platformy Spark:
| Majątek | Purpose |
|---|---|
spark.jars.packages |
Współrzędne Maven dla pliku JAR SynapseML i pliku JAR Spark Avro. |
spark.jars.repositories |
Adres URL dodatkowego repozytorium Maven dla artefaktów SynapseML. |
spark.jars.excludes |
Wyklucza przejściowe zależności, które powodują konflikt ze wstępnie zainstalowanymi bibliotekami Fabric. |
spark.yarn.user.classpath.first |
Nadaje priorytet plikom JAR dostarczonym przez użytkownika przed tymi wstępnie zainstalowanymi. |
spark.sql.parquet.enableVectorizedReader |
Wyłącza wektoryzowany czytnik Parquet, aby uniknąć problemów ze zgodnością. |
spark.sql.legacy.replaceDatabricksSparkAvro.enabled |
Umożliwia zgodność ze starszym czytnikiem Avro. |
Troubleshooting
komórka %%configure nie działa
Przyczyna: Komórka %%configure nie została uruchomiona jako pierwsza lub sesja Spark była już aktywna.
Poprawka: Wybierz Sesja>Zatrzymaj sesję, a następnie najpierw uruchom komórkę %%configure.
Pobieranie pliku JAR nie powodzi się lub przekracza limit czasu
Przyczyna: Repozytorium Maven jest niedostępne lub współrzędne wersji są nieprawidłowe.
Poprawka: Sprawdź, czy wersja usługi SynapseML istnieje w usłudze Maven Central. Sprawdź, czy wersja jest zgodna spark-avro z wersją środowiska uruchomieniowego platformy Spark.
ClassNotFoundException lub NoSuchMethodError w czasie działania
Przyczyna: Wersja usługi SynapseML nie jest zgodna z wersją platformy Spark środowiska uruchomieniowego Fabric.
Poprawka: użyj tabeli zgodności , aby wybrać poprawną kombinację wersji.
ImportError: brak modułu o nazwie "synapse.ml"
Przyczyna: pakiet otoki języka Python dla SynapseML nie jest zainstalowany w środowisku notesnika.
Poprawka: W nowej komórce uruchom polecenie:
%pip install synapseml==1.0.8
Zastąp 1.0.8 element wersją zgodną z zainstalowanym plikiem JAR.
Numer wersji jest niezgodny z zainstalowaną wersją
Przyczyna: atrybut Python __version__ pochodzi z synapseml pakietu pip, który może różnić się od wersji JAR zainstalowanej przez %%configureprogram .
Poprawka: Sprawdź zarówno konfigurację platformy Spark, jak i wersję pakietu pip:
# Check the JAR version from Spark config
print("JAR packages:", spark.conf.get("spark.jars.packages"))
# Check the pip package version
import synapse.ml.lightgbm
print("Pip package version:", synapse.ml.lightgbm.__version__)
Jeśli wersje nie są zgodne, zainstaluj pasujący pakiet pip:
%pip install synapseml==1.0.8