Unsupported scikit-learn features
In general, estimators and functions from the Extension for Scikit-learn* are sub-classed from their analogs in scikit-learn and are fully API compatible, but some particular features offered by scikit-learn cannot be used in the Extension for Scikit-learn* due to differences in how the two libraries work internally.
Python threads
Estimators and functions from the Extension for Scikit-learn* are not meant to be parallelizable through Python threads, since they do not raise the GIL (global interpreter lock) and in some cases might rely on global variables. Note that, at this moment, the Extension for Scikit-learn* does not provide builds for free-threaded Python that could be used without the GIL.
Process-based parallelization (the default mode in joblib) is recommended instead, whether through forked processes or through sub-processes. The Extension for Scikit-learn* is fork-safe and this parallelization mode will usually be faster on Linux*, but note that other libraries that could be used together with it (such as Polars) might not always work correctly under forked processes.
See Parallelism Specifics for more details.
Verbosity
Some estimators in scikit-learn offer a verbose argument, such as sklearn.ensemble.RandomForestClassifier, which allows printing messages during model fitting to monitor how the procedure is progressing.
Verbose mode is not supported in estimators from the Extension for Scikit-learn*, but different levels of verbosity can be enabled in the underlying oneAPI Data Analytics Library - see Using oneDAL Verbose Mode for details. Note however that the messages printed by scikit-learn and by the oneAPI Data Analytics Library will not contain the same kind of information.
If argument verbose is passed to estimators in the Extension for Scikit-learn* and accelerated computations on them are supported (see Supported Algorithms), the argument will be ignored - i.e. messages will not be printed.
Callbacks
Callback functions (an experimental feature introduced in version 1.9 of scikit-learn) are not supported in estimators from the Extension for Scikit-learn*. If supplied, they will not be used.
Moving estimators
Function sklearn.utils._array_api.move_estimator_to is currently not supported for estimator objects from the Extension for Scikit-learn*. See Array API support for more details.