Skip to content

On-premise users: click in-app to access the full platform documentation for your version of DataRobot.

Troubleshooting the Python client

This page outlines cases that can cause issues with using the Python client and provides known fixes.

InsecurePlatformWarning

Python versions earlier than 2.7.9 might report an InsecurePlatformWarning in your output. To prevent this warning without updating your Python version, you should install the pyOpenSSL package:

pip install pyopenssl ndg-httpsclient pyasn1

Unable to retrieve multiclass metrics

The Python client does not compute the confusion matrix metrics for multiclass projects with more than 100 target classes. That is, the metrics object typically obtained using get_confusion_chart().class_metrics (as shown in the API documentation) is empty in such cases. In order to retrieve these metrics, DataRobot recommends using this code snippet.

AttributeError: 'EntryPoint' object has no attribute 'resolve'

Some earlier versions of setuptools cause an error when importing DataRobot.

>>> import datarobot as dr
...
File "/home/clark/.local/lib/python2.7/site-packages/trafaret/__init__.py", line 1550, in load_contrib
  trafaret_class = entrypoint.resolve()
AttributeError: 'EntryPoint' object has no attribute 'resolve'

The recommended fix is upgrading setuptools to the latest version.

pip install --upgrade setuptools

If you are unable to upgrade, pin trafaret to version <=7.4 to correct this issue.

Connection errors

configuration.rst describes how to configure the DataRobot client with the max_retries parameter to fine tune behaviors like the number of attempts to retry failed connections.

ConnectTimeout

If you have a slow connection to your DataRobot installation, you may see a traceback like:

ConnectTimeout: HTTPSConnectionPool(host='my-datarobot.com', port=443): Max
retries exceeded with url: /api/v2/projects/
(Caused by ConnectTimeoutError(<requests.packages.urllib3.connection.VerifiedHTTPSConnection object at 0x7f130fc76150>,
'Connection to my-datarobot.com timed out. (connect timeout=6.05)'))
You can configure a longer connect timeout (increasing the wait time on each request attempting to connect to the DataRobot server before aborting) using a connect_timeout value in either a configuration file or when calling datarobot.Client.

project.open_leaderboard_browser

Calling project.open_leaderboard_browser may be blocked if you run it with a text-mode browser or on a server that doesn't have the ability to open a browser.


Updated January 3, 2024