Registry / ai-ml / datarobot-drum

datarobot-drum

JSON →
library1.17.18pypypi✓ verified 86d ago

DRUM (DataRobot User Models) allows you to develop, test, and deploy custom models for the DataRobot platform. It supports Python 3.8–3.14 and is actively maintained. Releases follow a regular cadence aligned with DataRobot's platform updates.

pip install datarobot-drum
INSTALL
IMPORT
SIG · DATAROBOT-DRUM
D
datarobot-drum
ai-mlpythonv1.17.18
Install
26.2s avg
Import
291ms
Disk
478MB
Pass rate
8/ 10
Env Coverage8 / 10
glibc
3.93.13
musl
3.93.13
Install & Compatibility
Where this runs
tested against v1.17.18 · pip install
no network on importno background threads
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
musl
glibc
py 3.10
✓ —
✓ 29s
py 3.11
✓ —
✓ 26.9s
py 3.12
✓ —
✓ 24.9s
py 3.13
✓ —
✓ 24.1s
py 3.9
✕ build_error
✕ build_error
478MB installed
● package 478MB
Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

RuntimeParameters
from datarobot_drum import RuntimeParameters
from datarobot.drum import RuntimeParameters
Old package layout was inside datarobot namespace.
ModelBundle
from datarobot_drum.model import ModelBundle
from datarobot_drum.models import ModelBundle
No 's' in model.
DrumServer
from datarobot_drum.server import DrumServer
from datarobot.drum.server import DrumServer
Package renamed from 'datarobot.drum' to 'datarobot_drum' in v1.0.

Check DRUM import and basic pattern for custom model.

import datarobot_drum as drum from datarobot_drum import RuntimeParameters # Test DRUM installation try: from datarobot_drum.model import ModelBundle print("DRUM is ready") except ImportError as e: print(f"Import error: {e}") # Minimal custom model example # Create a file called custom.py with: # def fit(X, y, row_weights=None, **kwargs): # pass # def score(data, model, **kwargs): # return model.predict(data) # Run with: drum fit --code-dir . --input training.csv --target target
drum --version
Debug
Known issues
breakingIn v1.0, the package was renamed from `datarobot.drum` to `datarobot_drum`. All imports must be updated.
fix
Replace `from datarobot.drum import ...` with `from datarobot_drum import ...`.
affects: <1.0
deprecatedIn v1.6.5, the `--production` flag was deprecated. Use `--production` is not available for custom Flask extensions via `custom_flask.py`.
fix
Use `custom_flask.py` without `--production` flag to add Flask extensions.
affects: <1.6.5 and >=1.9.12
gotchaNumeric class labels can be interpreted as numbers instead of strings. For classification, ensure labels are strings.
fix
Convert labels to strings in your custom model, e.g., `y = y.astype(str)`.
affects: <1.4.8
gotchaDRUM requires Python <3.15 and >=3.8. Using Python 3.15+ will cause installation failure.
fix
Ensure your Python version is between 3.8 and 3.14 inclusive.
affects: all
Errors
Common errors & fixes
ModuleNotFoundError: No module named 'datarobot_drum'
Package not installed or wrong import path.
fix
Run `pip install datarobot-drum` and use `from datarobot_drum import ...`.
ModuleNotFoundError: No module named 'datarobot.drum'
Using old import path from version <1.0.
fix
Replace `from datarobot.drum import ...` with `from datarobot_drum import ...`.
ValueError: invalid literal for int() with base 10: 'some_string'
Numeric class labels being treated as integers.
fix
Ensure target column contains string labels, not numeric.
RuntimeError: DRUM does not support Python 3.15
Python version not supported.
fix
Use Python 3.8 to 3.14.
Upgrade
Version history
1.17.18latest on PyPI · released Jun 4, 2026
Audit
Dependencies
datarobotoptionalRequired for deploying models to DataRobot
scikit-learnoptionalCommonly used for model training examples
Agent activity
13 hits · last 30 days
node
12
OpenAI (training)
1
Resources
datarobot-drum — pip install datarobot-drum · libregistry