Skip to main content

SynapseML

Simple and Distributed Machine Learning

Coming from MMLSpark? We have been renamed to SynapseML!
from synapse.ml.cognitive import *
sentiment_df = (TextSentiment()
.setTextCol("text")
.setLocation("eastus")
.setSubscriptionKey(key)
.setOutputCol("sentiment")
.setErrorCol("error")
.setLanguageCol("language")
.transform(input_df))
Read more
Simple

Simple

Quickly create, train, and use distributed machine learning tools in only a few lines of code.

Scalable

Scalable

Scale ML workloads to hundreds of machines on your Apache Spark cluster.

Multilingual

Multilingual

Use SynapseML from any Spark compatible language including Python, Scala, R, Java, .NET and C#.

Open

Open

SynapseML is Open Source and can be installed on supported Spark 3.5 and Spark 4 infrastructure, including your local machine, Databricks, Synapse Analytics, and others.

Installation

SynapseML's Python package supplies language wrappers; Spark must also load the JVM artifact matching its Scala binary version. Open source and cloud native.

Code lineSparkScalaPython baselineRelease tagMaven coordinate
master3.5.x2.123.11v1.1.3com.microsoft.azure:synapseml_2.12:1.1.3
spark4.04.0.1+ (<4.1)2.133.12v1.1.3-spark4.0com.microsoft.azure:synapseml_2.13:1.1.3-spark4.0
spark4.14.1.x2.133.13v1.1.3-spark4.1com.microsoft.azure:synapseml_2.13:1.1.3-spark4.1

All released Python variants use synapseml==1.1.3. To try the latest successful master build instead of the release, use the copy-ready snapshot command in the installation guide.

SynapseML is preinstalled on Fabric. Before overriding it, check the runtime's Spark and Scala versions. This example selects the published Spark 4.1 / Scala 2.13 artifact:

%%configure -f
{
"name": "synapseml",
"conf": {
"spark.jars.packages": "com.microsoft.azure:synapseml_2.13:1.1.3-spark4.1",
"spark.jars.repositories": "https://mmlspark.blob.core.windows.net/maven",
"spark.jars.excludes": "org.scala-lang:scala-reflect,org.apache.spark:spark-tags_2.13,org.scalactic:scalactic_2.13,org.scalatest:scalatest_2.13,com.fasterxml.jackson.core:jackson-databind",
"spark.yarn.user.classpath.first": "true",
"spark.sql.parquet.enableVectorizedReader": "false"
}
}