Release 0.8.339
Need Help?
The SuperCowPowers team is happy to give any assistance needed when setting up AWS and Workbench. So please contact us at workbench@supercowpowers.com or on chat us up on Discord
The Workbench framework continues to flex to support different real world use cases for creating, managing, and deploying large collections of machine learning pipelines.
General
Consolidate workbench-bridges into workbench
Folds the entire workbench-bridges package into workbench, drops the cross-repo dependency, and restructures pyproject.toml so an endpoint-safe install (no extras) gets only what an inference container needs. Eliminates the symlink/dual-import gymnastics that the UQ refactor needed to ship classes into endpoint bundles.
Layout changes
- New
workbench/endpoints/subpackage holds both client-side (fast_inference,async_inference) and server-side (inference,training_harness,uq_harness,pytorch_utils,chemprop_shap_utils) endpoint runtime code. The oldworkbench/model_script_utils/and its 5 symlinks are deleted. - Bridges' api/utils/core classes moved to natural workbench locations:
workbench/core/parameter_store_core.py(endpoint-safe core)workbench/core/df_store_core.py(endpoint-safe core; the artifacts/df_store_core.py subclass now uses ConfigManager + AWSAccountClamp on top)workbench/core/cloud_platform/aws/boto_session.py(lightweightget_boto3_session()that short-circuits onrunning_as_service()so endpoints don't try to assume the Workbench role)workbench/api/inference_store.py,workbench/api/public_data.py(replaces the previous re-export)workbench/utils/execution_environment.pyworkbench/utils/ensemble_utils.py(was model_script_utils)
workbench/utils/athena_utils.pygainstable_s3_path,dataframe_to_table,delete_table(used by InferenceStore).- All ~10 internal
from workbench_bridges import ...sites now point at workbench's own modules. - Templates (xgb/pytorch/chemprop/meta_endpoint) and the morgan_fingerprints
custom model import directly from
workbench.endpoints.*/workbench.algorithms.dataframe.*/workbench.utils.chem_utils.*.script_generation.pyno longer bundlesmodel_script_utils/into the model.tar.gz — workbench is pip-installed in the SageMaker base image instead. - Per-framework dir symlinks (xgb_model/model_script_utils, etc.) and the meta_endpoint symlinks all deleted.
pyproject.toml
Core deps trimmed to the endpoint-safe set:
boto3, botocore, awswrangler, requests, numpy, pandas,
scipy, scikit-learn, joblib, rdkit, pyyaml.
Heavy deps moved to extras:
[aws]— sagemaker, aiobotocore, redis, cryptography[modeling]— xgboost, umap-learn, mordredcommunity, cleanlab, ipython[ui](unchanged) — plotly, dash, etc.[all]rolled up to include aws + modeling + ui + dev
workbench-bridges dependency removed.
Tests + CI
- Ported unique
execution_env_tests.pytotests/utils/test_execution_environment.py. Other bridges tests duplicated workbench coverage. - New
endpoint-import-smokejob (tox env + GH Actions workflow):pip install workbench(no extras) → import the runtime surface → assert heavy deps did NOT land. Catches regressions where a careless module-top import would break endpoint containers. tox.ini: removed-e ../workbench-bridgescross-repo install line.
Deployment note
Endpoints already deployed point at :latest and their bundles import
workbench_bridges at runtime. Plan is to keep
pip install workbench-bridges==0.2.10 in the new base image alongside
pip install workbench so old bundles continue to work after the image flips. Bridges install can be removed from the image in a later rev once all relevant endpoints have been retrained against the new templates. workbench-bridges will be deprecated/archived as a follow-up.
Who doesn't like looking at release notes! Also +3 points for getting down this far! Here's a cow joke as a reward:
What do you call that feeling like you’ve done this before? Deja-moo
Questions?

The SuperCowPowers team is happy to answer any questions you may have about AWS and Workbench. Please contact us at workbench@supercowpowers.com or on chat us up on Discord