Supported software specifications
In IBM Watson Machine Learning, you can use popular tools, libraries, and frameworks to train and deploy machine learning models and functions. The environment for these models and functions is made up of specific hardware and software specifications.
Software specifications define the language and version that you use for a model or function. You can use software specifications to configure the software that is used for running your models and functions. By using software specifications, you
can precisely define the software version to be used and include your own extensions (for example, by using conda .yml files or custom libraries).
You can get a list of available software and hardware specifications and then use their names and IDs for use with your deployment. For more information, see Python client or Data and AI Common Core API.
Supported software specifications for machine learning frameworks
You can use popular tools, libraries, and frameworks to train and deploy machine learning models and functions.
The following table lists the predefined (base) model types and software specifications.
All software specifications are FIPS compliant. For more information, see Services that support FIPS.
From release 2.3.1, software specifications that are based on Runtime 24.1 are deprecated and will be removed in a future release.
From release 2.3.1 Patch 2, software specifications for Apache Spark 3.4 are deprecated.
The deprecated software specifications are marked with D.
| Framework | Versions | Model Type | Default Software specification |
Supported platforms |
|---|---|---|---|---|
| AI Service | NA | NA | runtime-24.1-py3.11 |
x86 |
| AI Service | NA | NA | runtime-25.1-py3.12 |
x86 |
| AI Service | NA | NA | genai-A25-py3.12 |
x86 |
| Decision Optimization | 20.1 | do-docplex_20.1do-opl_20.1do-cplex_20.1do-cpo_20.1 |
do_20.1 |
x86, PPC |
| Decision Optimization | 22.1 | do-docplex_22.1do-opl_22.1do-cplex_22.1do-cpo_22.1 |
do_22.1 |
x86, PPC |
| onnx or onnxruntime | 1.16 | onnxruntime_1.16 |
onnxruntime_opset_19 |
x86 |
| onnx or onnxruntime | 1.17 | onnxruntime_1.17 |
onnxruntime_opset_21 |
x86 |
| PMML | 3.0 to 4.3 | pmml_. (or) pmml_..*3.0 - 4.3 |
pmml-3.0_4.3 |
x86, PPC |
| PyTorch | 2.1 | pytorch-onnx_2.1pytorch-onnx_rt24.1 |
runtime-24.1-py3.11pytorch-onnx_rt24.1-py3.11 pytorch-onnx_rt24.1-py3.11-edt pytorch-onnx_rt24.1-py3.11-dist |
x86, s390x, PPC |
| PyTorch | 2.6 | onnxruntime_1.17 |
onnxruntime_opset_21 |
x86, s390x, PPC |
| Python Functions | NA | NA | runtime-24.1-py3.11 |
x86, s390x, PPC |
| Python Functions | NA | NA | runtime-24.1-py3.11-cuda |
x86 |
| Python Functions | NA | NA | runtime-25.1-py3.12 |
x86, PPC, s390x |
| Python Functions | NA | NA | runtime-25.1-py3.12-cuda |
x86 |
| Python Scripts | NA | NA | runtime-24.1-py3.11 |
x86, s390x, PPC |
| Python Scripts | NA | NA | runtime-24.1-py3.11-cuda |
x86 |
| Python Scripts | NA | NA | runtime-25.1-py3.12 |
x86, PPC, s390x |
| Python Scripts | NA | NA | runtime-25.1-py3.12-cuda |
x86 |
| R Scripts | NA | NA | runtime-24.1-r4.3 |
x86 |
| R Scripts | NA | NA | runtime-25.1-r4.4 |
x86 |
| R Shiny applications | NA | NA | rstudio-24.1-r4.3 |
x86, PPC |
| R Shiny applications | NA | NA | rstudio-25.1-r4.4 |
x86, PPC |
| Scikit-learn | 1.3 | scikit-learn_1.3 |
runtime-24.1-py3.11 |
x86, s390x, PPC |
| Scikit-learn | 1.6 | scikit-learn_1.6 |
runtime-25.1-py3.12 |
x86, PPC, s390x |
| Spark | 3.4 | mllib_3.4 |
spark-mllib_3.4 |
x86, PPC |
| Spark | 3.5 | mllib_3.5 |
spark-mllib_3.5 |
x86, PPC |
| SPSS | 18.2 | spss-modeler_18.2 (see notes) |
spss-modeler_18.2 |
x86 |
| Tensorflow | 2.14 | tensorflow_2.14tensorflow_rt24.1 |
runtime-24.1-py3.11 tensorflow_rt24.1-py3.11-dist tensorflow_rt24.1-py3.11-edt tensorflow_rt24.1-py3.11 |
x86, s390x, PPC |
| Tensorflow | 2.14 | tensorflow_2.14tensorflow_rt24.1 |
runtime-24.1-py3.11-cuda |
x86 |
| Tensorflow | 2.18 | tensorflow_2.18 |
runtime-25.1-py3.12tensorflow_rt25.1-py3.12 |
x86, PPC, s390x |
| Tensorflow | 2.18 | tensorflow_2.18tensorflow_rt25.1 |
runtime-25.1-py3.12-cuda |
x86 |
| XGBoost | 2.0 | xgboost_2.0 or scikit-learn_1.3 (see notes) |
runtime-24.1-py3.11 |
x86, s390x, PPC |
| XGBoost | 2.1 | xgboost_2.1 or scikit-learn_1.6 (see notes) |
runtime-25.1-py3.12 |
x86, PPC, s390x |
It is possible to add the discontinued Spark 3.3 software specification back to the list of available software specifications. To do that, an administrator must create a custom image.
Supported model types and software specifications for hybrid models
The following model types and software specifications are supported for hybrid models:
| Framework | Versions | Model Type | Default Software specification |
Pipeline software specification | Supported platforms |
|---|---|---|---|---|---|
| Hybrid | 0.1 | wml-hybrid_0.1 |
hybrid_0.1 |
autoai-kb_rt24.1-py3.11 autoai-ts_rt24.1-py3.11 |
x86, PPC, s390x |
| Hybrid | 0.1 | wml-hybrid_0.1 |
hybrid_0.1 |
autoai-kb_rt25.1-py3.12 autoai-ts_rt25.1-py3.12 |
x86, PPC, s390x |
Supported software specifications for deploying NLP models
Here is the list of supported software specifications for deploying NLP models:
| Software specification | Python version | Supported runtimes |
|---|---|---|
runtime-24.1-py3.11 |
3.11 | AI Function, AI Service |
runtime-25.1-py3.12 |
3.12 | AI Function, AI Service |
NLP deployments are supported on the x86-64 platform.
Handling assets that rely on discontinued software specifications or frameworks
When you have assets that rely on discontinued software specifications or frameworks, in some cases the migration is seamless. In other cases, your action is required to retrain or redeploy assets.
- Existing deployments of models that are built with discontinued framework versions or software specifications are removed on the date of discontinuation.
- No new deployments of models that are built with discontinued framework versions or software specifications are allowed.
- If you upgrade from an earlier software version, deployments of models, functions, or scripts that are based on unsupported frameworks are removed. You must re-create the deployments with supported frameworks.
- If you upgrade from an earlier software version and you have models that use unsupported frameworks, you can still access the models. However, you cannot train or score them until you upgrade the model type and software specification, as described in Managing outdated software specifications or frameworks.