Asenna Eri synapseML-versio Fabriciin

SynapseML (Synapse Automaattianalyysipalvelut) on esiasennettu Microsoft Fabric -ohjelmistoon. Jos tarvitset tietyn version, voit ohittaa sen käyttämällä Fabric-muistikirjan %%configure taikakomentoa.

Pika-aloitus

Osavaihe Toiminto Aikaarvio
1 Varmista ennakkovaatimukset (työtila, muistikirja) 2 min
2 Lisää %%configure solu asentaaksesi tarvitsemasi SynapseML-version 1 min
3 Tarkista asennettu versio 1 min

Edellytykset

Ennen kuin aloitat, varmista, että sinulla on seuraavat resurssit:

Vaatimus Yksityiskohdat
Microsoft Fabric workspace Työtila, jossa on Fabric-kapasiteetti (F2 tai enemmän) tai Fabric-kokeilu.
Fabric muistikirja Luo uusi muistikirja Fabric Data Science- tai Data Engineering -kokemukseen.
Fabric-ajonaikainen versio Tunne työtilasi ajonaikainen versio. SynapseML- ja Spark Avro JAR -versioiden täytyy vastata Spark-versiota suoritusaikanasi. Katso Fabric-ajonaikaiset versiot.

Tärkeää

Komento %%configure käynnistää Spark-istunnon uudelleen uusilla asetuksilla. Aja se ensimmäisenä soluna muistikirjassasi, ennen kuin mitään muuta koodia. Jos käynnistät sen Spark-session alkamisen jälkeen, lippu -f pakottaa istunnon uudelleenkäynnistykseen ja kaikki muuttujat sekä tila katoavat.

Huomautus

Fabric-muistikirjojen %%configure taikakomento tarjoaa rajallisen virallisen tuen. Palvelutasosopimuksesta (SLA) tai tulevasta yhteensopivuudesta virallisten julkaisujen kanssa ei ole takeita. Tuettua lähestymistapaa varten harkitse Fabric-ympäristön räätälöintiä kirjastojen hallintaan.

SynapseML- ja Fabric-yhteensopivuus ajonaikaisesti

Valitse SynapseML-versio ja Spark Avro JAR, jotka vastaavat Fabric-runtime-Spark-versiotasi:

Fabric-ajonaika Spark-versio SynapseML-versio Spark Avro JAR
Suoritusaika 1.1 3.3 0.11.1–0.11.4 spark-avro_2.12:3.3.1
Kestoaika 1.2 3.4 1.0.4–1.0.8 spark-avro_2.12:3.4.1
Suoritusaika 1.3 3,5 1.0.4–1.0.8 spark-avro_2.12:3.5.1

Saatavilla olevat SynapseML-versiot löytyvät Maven Centralista.

SynapseML:n asentaminen %%configure avulla

Komento %%configure -f määrittää Spark-istunnon ominaisuudet, mukaan lukien Maven-pakettikoordinaatit. Lippu -f pakottaa nykyisen istunnon uudelleenkäynnistykseen.

Esimerkki Fabric Runtime 1.2:sta (Spark 3.4)

Liitä tämä koodi uuden Fabric-muistikirjan ensimmäiseen soluun ja suorita solu:

%%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"
  }
}

Eri version asentamiseksi vaihda versionumerot :spark.jars.packages

  • synapseml_2.12:<version>: haluamasi SynapseML-version (esimerkiksi ). 1.0.4
  • spark-avro_2.12:<spark-version>: täytyy vastata Fabric Runtime Spark -versiotasi (katso yhteensopivuustaulukko).

Esimerkki Fabric Runtime 1.1:stä (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"
  }
}

Varmista Spark-asetus

Kun solu on käynnissä, varmista, että Spark-istunto hyväksyi konfiguraation. Suorita tämä koodi uudessa solussa:

print(spark.conf.get("spark.jars.packages"))

Odotettu tulos (Runtime 1.2 -esimerkille):

com.microsoft.azure:synapseml_2.12:1.0.8,org.apache.spark:spark-avro_2.12:3.4.1

Tarkista SynapseML-versio

Asennuksen varmistamiseksi suorita seuraava koodi uudessa solussa. Versionumeron pitäisi vastata asentamaasi versiota.

import synapse.ml.lightgbm
print(f"SynapseML version: {synapse.ml.lightgbm.__version__}")

Odotettu tulos (Runtime 1.2 -esimerkille):

SynapseML version: 1.0.8

Huomautus

SynapseML 1.0:ssa ja uudemmissa versioissa moduuli synapse.ml.cognitive on vanhentunut. Käytä synapse.ml.services sen sijaan tekoälypalveluintegraatioiden avaamiseen.

Palauta oletusversioon

Palauttaaksesi esiasennettuun SynapseML-versioon, poista solu %%configure ja käynnistä muistikirjan istunto uudelleen:

  1. Poista tai kommentoi solu %%configure .
  2. Valitse Session>Stop -istunto muistikirjan työkalupalkista.
  3. Aja mikä tahansa solu aloittaaksesi uuden istunnon oletusasetuksilla.

Määritysviittaus

Lohko %%configure sisältää seuraavat Spark-kiinteistöt:

Ominaisuus Tarkoitus
spark.jars.packages Maven koordinoi SynapseML JAR:ia ja Spark Avro JAR:ia.
spark.jars.repositories Lisä Maven-repositorion URL SynapseML-artefaktien osalta.
spark.jars.excludes Sulkee pois transitiiviset riippuvuudet, jotka ovat ristiriidassa esiasennettujen Fabric-kirjastojen kanssa.
spark.yarn.user.classpath.first Priorisoi käyttäjän toimittamat JAR:t valmiiksi asennettujen sijaan.
spark.sql.parquet.enableVectorizedReader Poistaa vektoroidun Parquet-lukijan käytöstä yhteensopivuusongelmien välttämiseksi.
spark.sql.legacy.replaceDatabricksSparkAvro.enabled Mahdollistaa vanhan Avro-lukijan yhteensopivuuden.

Vianetsintä

%%configure solu ei vaikuta

Syy: Solu %%configure ei ollut ensimmäinen solu, joka toimi, tai Spark-sessio oli jo aktiivinen.

Korjaus: Valitse Session>Stop -istunto ja käynnistä ensin solu %%configure .

JAR-lataus epäonnistuu tai aikakatkaisee

Syy: Maven-tietovarastoon ei pääse tai versiokoordinaatit ovat virheellisiä.

Korjaus: Varmista, että SynapseML-versio on olemassa Maven Centralissa. Tarkista, että versio spark-avro vastaa Spark-runtime-versiotasi.

ClassNotFoundException tai NoSuchMethodError ajonaikaisesti

Syy: SynapseML-versio ei ole yhteensopiva Fabric-runtime Spark-version kanssa.

Korjaus: Käytäyhteensopivuustaulukkoa valitaksesi oikean versioyhdistelmän.

ImportError: Ei moduulia nimeltä 'synapse.ml'

Syy: SynapseML Python -käärepakettia ei ole asennettu notebook-ympäristöön.

Korjaus: Uudessa solussa suorita:

%pip install synapseml==1.0.8

Korvaa 1.0.8 versio, joka vastaa asentamaasi JAR:ia.

Versionumero ei täsmää asennettuun versioon

Syy: Python-attribuutti tulee synapseml pip-paketista, joka saattaa poiketa JAR-versiosta, jonka __version__ on asentanut %%configure.

Korjaus: Varmista sekä Spark-konfiguraatio että pip-pakettiversio:

# 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__)

Jos versiot eivät täsmää, asenna vastaava pip-paketti:

%pip install synapseml==1.0.8