{"id":23436303,"url":"https://github.com/supercowpowers/workbench","last_synced_at":"2026-05-28T01:03:36.057Z","repository":{"id":64337385,"uuid":"575073969","full_name":"SuperCowPowers/workbench","owner":"SuperCowPowers","description":"Workbench: An easy to use Python API for creating and deploying AWS SageMaker Models","archived":false,"fork":false,"pushed_at":"2026-04-16T20:01:04.000Z","size":77037,"stargazers_count":50,"open_issues_count":192,"forks_count":5,"subscribers_count":2,"default_branch":"main","last_synced_at":"2026-04-16T21:33:29.235Z","etag":null,"topics":["aws","big-data","data-engineering","machine-learning","pandas","python","spark"],"latest_commit_sha":null,"homepage":"https://www.supercowpowers.com","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/SuperCowPowers.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2022-12-06T17:41:31.000Z","updated_at":"2026-04-16T20:00:36.000Z","dependencies_parsed_at":"2025-12-16T04:05:09.815Z","dependency_job_id":"d0c016c3-08e9-4922-b836-f5ab5e972dd7","html_url":"https://github.com/SuperCowPowers/workbench","commit_stats":{"total_commits":1230,"total_committers":6,"mean_commits":205.0,"dds":0.0747967479674797,"last_synced_commit":"710232756dd717f734253315e3d0b33c9628dafb"},"previous_names":["supercowpowers/workbench"],"tags_count":490,"template":false,"template_full_name":null,"purl":"pkg:github/SuperCowPowers/workbench","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SuperCowPowers%2Fworkbench","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SuperCowPowers%2Fworkbench/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SuperCowPowers%2Fworkbench/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SuperCowPowers%2Fworkbench/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/SuperCowPowers","download_url":"https://codeload.github.com/SuperCowPowers/workbench/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SuperCowPowers%2Fworkbench/sbom","scorecard":{"id":135732,"data":{"date":"2025-08-04","repo":{"name":"github.com/SuperCowPowers/workbench","commit":"d529a09db4166adba3eaf53366473454dbf42539"},"scorecard":{"version":"v5.2.1-28-gc1d103a9","commit":"c1d103a9bb9f635ec7260bf9aa0699466fa4be0e"},"score":4.7,"checks":[{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#packaging"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#dangerous-workflow"}},{"name":"Maintained","score":10,"reason":"30 commit(s) and 7 issue activity found in the last 90 days -- score normalized to 10","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#maintained"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: topLevel 'contents' permission set to 'write': .github/workflows/deploy-docs.yml:9","Info: topLevel 'contents' permission set to 'read': .github/workflows/python-lint.yml:6","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#token-permissions"}},{"name":"Code-Review","score":0,"reason":"Found 0/30 approved changesets -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#code-review"}},{"name":"Security-Policy","score":10,"reason":"security policy file detected","details":["Info: security policy file detected: SECURITY.md:1","Info: Found linked content: SECURITY.md:1","Info: Found disclosure, vulnerability, and/or timelines in security policy: SECURITY.md:1","Info: Found text in security policy: SECURITY.md:1"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#security-policy"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#cii-best-practices"}},{"name":"SAST","score":0,"reason":"no SAST tool detected","details":["Warn: no pull requests merged into dev branch"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#sast"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#binary-artifacts"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#license"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#fuzzing"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":-1,"reason":"internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration","details":null,"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#branch-protection"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy-docs.yml:15: update your workflow using https://app.stepsecurity.io/secureworkflow/SuperCowPowers/workbench/deploy-docs.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/deploy-docs.yml:18: update your workflow using https://app.stepsecurity.io/secureworkflow/SuperCowPowers/workbench/deploy-docs.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/deploy-docs.yml:29: update your workflow using https://app.stepsecurity.io/secureworkflow/SuperCowPowers/workbench/deploy-docs.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/python-lint.yml:12: update your workflow using https://app.stepsecurity.io/secureworkflow/SuperCowPowers/workbench/python-lint.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/python-lint.yml:15: update your workflow using https://app.stepsecurity.io/secureworkflow/SuperCowPowers/workbench/python-lint.yml/main?enable=pin","Warn: containerImage not pinned by hash: Dockerfile:2","Warn: containerImage not pinned by hash: Dockerfile:14: pin your Docker image by updating python:3.12.5-bookworm to python:3.12.5-bookworm@sha256:abebed466ff3ede11c26e661d67bd6faebd58dfbd0bd8bd8b130be3730d2d35c","Warn: containerImage not pinned by hash: applications/aws_dashboard/Dockerfile:2","Warn: containerImage not pinned by hash: applications/compound_explorer/Dockerfile:2: pin your Docker image by updating python:3.12.5-bookworm to python:3.12.5-bookworm@sha256:abebed466ff3ede11c26e661d67bd6faebd58dfbd0bd8bd8b130be3730d2d35c","Warn: containerImage not pinned by hash: model_docker_images/inference/Dockerfile:1","Warn: containerImage not pinned by hash: model_docker_images/inference/Dockerfile:8: pin your Docker image by updating python:3.12-slim to python:3.12-slim@sha256:9c1d9ed7593f2552a4ea47362ec0d2ddf5923458a53d0c8e30edf8b398c94a31","Warn: containerImage not pinned by hash: model_docker_images/meta_endpoint/Dockerfile:1","Warn: containerImage not pinned by hash: model_docker_images/meta_endpoint/Dockerfile:8: pin your Docker image by updating python:3.12-slim to python:3.12-slim@sha256:9c1d9ed7593f2552a4ea47362ec0d2ddf5923458a53d0c8e30edf8b398c94a31","Warn: containerImage not pinned by hash: model_docker_images/training/Dockerfile:1: pin your Docker image by updating python:3.12-slim to python:3.12-slim@sha256:9c1d9ed7593f2552a4ea47362ec0d2ddf5923458a53d0c8e30edf8b398c94a31","Warn: containerImage not pinned by hash: model_docker_images/workbench_inference/Dockerfile:1","Warn: containerImage not pinned by hash: model_docker_images/workbench_inference/Dockerfile:8: pin your Docker image by updating python:3.12-slim to python:3.12-slim@sha256:9c1d9ed7593f2552a4ea47362ec0d2ddf5923458a53d0c8e30edf8b398c94a31","Warn: pipCommand not pinned by hash: Dockerfile:8-11","Warn: pipCommand not pinned by hash: Dockerfile:28","Warn: pipCommand not pinned by hash: Dockerfile:31","Warn: pipCommand not pinned by hash: applications/aws_dashboard/Dockerfile:13-17","Warn: pipCommand not pinned by hash: applications/aws_dashboard/Dockerfile:20-22","Warn: pipCommand not pinned by hash: applications/aws_dashboard/Dockerfile:25","Warn: pipCommand not pinned by hash: applications/compound_explorer/Dockerfile:17","Warn: pipCommand not pinned by hash: applications/compound_explorer/Dockerfile:24","Warn: pipCommand not pinned by hash: applications/compound_explorer/Dockerfile:27","Warn: pipCommand not pinned by hash: model_docker_images/inference/Dockerfile:6","Warn: pipCommand not pinned by hash: model_docker_images/meta_endpoint/Dockerfile:6","Warn: pipCommand not pinned by hash: model_docker_images/training/Dockerfile:10","Warn: pipCommand not pinned by hash: model_docker_images/workbench_inference/Dockerfile:6","Warn: pipCommand not pinned by hash: .github/workflows/deploy-docs.yml:24","Warn: pipCommand not pinned by hash: .github/workflows/python-lint.yml:21","Info:   0 out of   4 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   1 third-party GitHubAction dependencies pinned","Info:   0 out of  11 containerImage dependencies pinned","Info:   0 out of  15 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#pinned-dependencies"}},{"name":"Vulnerabilities","score":2,"reason":"8 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: GHSA-9hjg-9r4m-mvj7","Warn: Project is vulnerable to: GHSA-32g6-mg92-ghm2","Warn: Project is vulnerable to: GHSA-7pc3-pr3q-58vg","Warn: Project is vulnerable to: GHSA-wjvx-jhpj-r54r","Warn: Project is vulnerable to: PYSEC-2014-14 / GHSA-652x-xj99-gmcc","Warn: Project is vulnerable to: GHSA-9wx4-h78v-vm56","Warn: Project is vulnerable to: PYSEC-2014-13 / GHSA-cfj3-7x9c-4p3h","Warn: Project is vulnerable to: PYSEC-2018-28 / GHSA-x84v-xcm2-53pg"],"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/c1d103a9bb9f635ec7260bf9aa0699466fa4be0e/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-16T06:26:59.745Z","repository_id":64337385,"created_at":"2025-08-16T06:26:59.745Z","updated_at":"2025-08-16T06:26:59.745Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32108187,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-21T11:25:29.218Z","status":"ssl_error","status_checked_at":"2026-04-21T11:25:28.499Z","response_time":128,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["aws","big-data","data-engineering","machine-learning","pandas","python","spark"],"created_at":"2024-12-23T13:14:44.517Z","updated_at":"2026-05-25T01:03:06.482Z","avatar_url":"https://github.com/SuperCowPowers.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"\n## Live Dashboard Demo\nYou can explore a live demo of the Workbench Dashboard at: [Workbench Dashboard Demo](https://workbench-dashboard.com)\n\n## Recent News\n**Chemprop Models!** All the rage for the Open ADMET Challenge. \n\nADMET Workbench now supports:\n- Single Task Chemprop Models\n- Multi Task Chemprop Models\n- Chemprop Hybrid Models (MPNN + Descriptors)\n- Foundation Chemprop Models (CheMeleon Pretrained)\n\nExamples: \n\n- [Deploying Chemprop Models](examples/models/chemprop.py)\n- [Deploying Foundation Chemprop Models](examples/models/chemprop_foundation.py)\n\n**References**\n- [Open ADMET Challenge](https://huggingface.co/spaces/openadmet/OpenADMET-ExpansionRx-Challenge)\n- **ChemProp:** Yang et al. \"Analyzing Learned Molecular Representations for Property Prediction\" *J. Chem. Inf. Model.* 2019 — [GitHub](https://github.com/chemprop/chemprop) | [Paper](https://pubs.acs.org/doi/10.1021/acs.jcim.9b00237)\n- [CheMeleon Github](https://github.com/JacksonBurns/chemeleon)\n\n### Chemprop Action Shots!\n\n\u003ctable\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\n      \u003ca href=\"https://github.com/user-attachments/assets/a36c6eff-c464-4c9a-9859-a45cd7e35145\"\u003e\n        \u003cimg width=\"800\" alt=\"theme_dark\" src=\"https://github.com/user-attachments/assets/a36c6eff-c464-4c9a-9859-a45cd7e35145\" /\u003e\n      \u003c/a\u003e\n    \u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\n      \u003ca href=\"https://github.com/user-attachments/assets/d65ec1da-e04e-44fe-8782-4da0fb50588a\"\u003e\n        \u003cimg width=\"800\" alt=\"theme_quartz\" src=\"https://github.com/user-attachments/assets/d65ec1da-e04e-44fe-8782-4da0fb50588a\" /\u003e\n      \u003c/a\u003e\n    \u003c/td\u003e\n  \u003c/tr\u003e\n\u003c/table\u003e\n\n\n\n# Welcome to ADMET Workbench\nThe ADMET Workbench framework makes AWS® both easier to use and more powerful. Workbench handles all the details around updating and managing a complex set of AWS Services. With a simple-to-use Python API and a beautiful set of web interfaces, Workbench makes creating AWS ML pipelines a snap. It also dramatically improves both the usability and visibility across the entire spectrum of services: Glue Job, Athena, Feature Store, Models, and Endpoints, Workbench makes it easy to build production ready, AWS powered, machine learning pipelines.\n\n\u003cimg align=\"right\" width=\"480\" alt=\"workbench_new_light\" src=\"https://github.com/SuperCowPowers/workbench/assets/4806709/ed2ed1bd-e2d8-49a1-b350-b2e19e2b7832\"\u003e\n\n### Full AWS ML OverView\n- Health Monitoring 🟢\n- Dynamic Updates\n- High Level Summary\n\n### Drill-Down Views\n- Incoming Data\n- Glue Jobs\n- DataSources\n- FeatureSets\n- Models\n- Endpoints\n\n## Private SaaS Architecture\n*Secure your Data, Empower your ML Pipelines*\n\nADMET Workbench is architected as a **Private SaaS** (also called BYOC: Bring Your Own Cloud). This hybrid architecture is the ultimate solution for businesses that prioritize data control and security. Workbench deploys as an AWS Stack within your own cloud environment, ensuring compliance with stringent corporate and regulatory standards. It offers the flexibility to tailor solutions to your specific business needs through our comprehensive plugin support. By using Workbench, you maintain absolute control over your data while benefiting from the power, security, and scalability of AWS cloud services. [Workbench Private SaaS Architecture](https://docs.google.com/presentation/d/1f_1gmE4-UAeUDDsoNdzK_d_MxALFXIkxORZwbJBjPq4/edit?usp=sharing)\n\n\u003cimg alt=\"private_saas_compare\" src=\"https://github.com/user-attachments/assets/2f6d3724-e340-4a70-bb97-d05383917cfe\"\u003e\n\n### API Installation\n\nFor typical use (the API, REPL, dashboard, training pipelines):\n\n- ```pip install 'workbench[all]'```  Full install — recommended\n- ```workbench```                     Runs the Workbench REPL / initial setup\n\n`pip install workbench` (no extras) is intentionally lightweight — it's the\nendpoint-safe surface that ships inside SageMaker inference containers (and\nthe lambdas / scripts that just need to invoke endpoints). See\n[Installation extras](#installation-extras) below for the breakdown.\n\nFor the full instructions for connecting your AWS Account see:\n\n- Getting Started: [Initial Setup](https://supercowpowers.github.io/workbench/getting_started/) \n- One time AWS Onboarding: [AWS Setup](https://supercowpowers.github.io/workbench/aws_setup/core_stack/)\n\n\n### ADMET Workbench up on the AWS Marketplace\n\nPowered by AWS® to accelerate your Machine Learning Pipelines development with our new [Dashboard for ML Pipelines](https://aws.amazon.com/marketplace/pp/prodview-5idedc7uptbqo). Getting started with Workbench is a snap and can be billed through AWS.\n\n### ADMET Workbench Presentations\nEven though ADMET Workbench makes AWS easier, it's taking something very complex (the full set of AWS ML Pipelines/Services) and making it less complex. Workbench has a depth and breadth of functionality so we've provided higher level conceptual documentation See: [Workbench Presentations](https://supercowpowers.github.io/workbench/presentations/)\n\n\u003cimg align=\"right\" width=\"420\" alt=\"workbench_api\" style=\"padding-left: 10px;\"  src=\"https://github.com/SuperCowPowers/workbench/assets/4806709/bf0e8591-75d4-44c1-be05-4bfdee4b7186\"\u003e\n\n### ADMET Workbench Documentation\n\nThe ADMET Workbench documentation [Workbench Docs](https://supercowpowers.github.io/workbench/) covers the Python API in depth and contains code examples. The documentation is fully searchable and fairly comprehensive.\n\nThe code examples are provided in the Github repo `examples/` directory. For a full code listing of any example please visit our [Workbench Examples](https://github.com/SuperCowPowers/workbench/blob/main/examples)\n\n## Questions?\nThe SuperCowPowers team is happy to answer any questions you may have about AWS and Workbench. Please contact us at [workbench@supercowpowers.com](mailto:workbench@supercowpowers.com) or chat us up on [Discord](https://discord.gg/WHAJuz8sw8) \n\n\n### ADMET Workbench Beta Program\nUsing ADMET Workbench will minimize the time and manpower needed to incorporate AWS ML into your organization. If your company would like to be a Workbench Beta Tester, contact us at [workbench@supercowpowers.com](mailto:workbench@supercowpowers.com).\n\n\n### Installation extras\n\nWorkbench's dependencies are organized so you can install exactly what you\nneed. The `workbench.endpoints.*` surface is enforced by a CI smoke test\nthat runs the lightweight install in a clean venv and verifies every module\nunder that namespace imports without any extras pulled in — which is what\nmakes the base install safe to drop into a SageMaker endpoint container or\na lambda.\n\n```\npip install workbench               # Endpoint-safe core only:\n                                    #   boto3, awswrangler, numpy, pandas,\n                                    #   sklearn, scipy, rdkit, joblib\n                                    # Use in lambdas, endpoint containers,\n                                    # or anywhere you just need to invoke\n                                    # endpoints and read/write S3.\n\npip install 'workbench[aws]'        # + sagemaker SDK + aiobotocore + redis +\n                                    #   cryptography. Needed for the orchestration\n                                    #   side: building pipelines, deploying\n                                    #   endpoints, talking to SageMaker training.\n\npip install 'workbench[modeling]'   # + xgboost, umap-learn, mordred,\n                                    #   cleanlab, ipython. Training-time ML\n                                    #   libs (SageMaker training containers\n                                    #   have most of these pre-installed).\n\npip install 'workbench[ui]'         # + plotly, dash, dash-ag-grid,\n                                    #   matplotlib. The Workbench Dashboard.\n\npip install 'workbench[dev]'        # + pytest, pytest-xdist, coverage,\n                                    #   flake8, black. Local development.\n\npip install 'workbench[all]'        # All of the above — typical full install\n                                    #   for interactive use, dashboards, and\n                                    #   building/deploying pipelines.\n```\n\n*Note: shells may interpret square brackets as globs, so the quotes are needed.*\n\nModel-script code running inside SageMaker endpoint containers should\nimport exclusively from `workbench.endpoints.*` — that's the contract the\nendpoint-import-smoke CI job enforces. See `workbench/endpoints/__init__.py`\nfor the full surface.\n\n### Contributions\nIf you'd like to contribute to the ADMET Workbench project, you're more than welcome. All contributions will fall under the existing project [license](https://github.com/SuperCowPowers/workbench/blob/main/LICENSE). If you are interested in contributing or have questions please feel free to contact us at [workbench@supercowpowers.com](mailto:workbench@supercowpowers.com).\n\n\u003cimg align=\"right\" src=\"docs/images/scp.png\" width=\"180\"\u003e\n\n® Amazon Web Services, AWS, the Powered by AWS logo, are trademarks of Amazon.com, Inc. or its affiliates\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsupercowpowers%2Fworkbench","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsupercowpowers%2Fworkbench","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsupercowpowers%2Fworkbench/lists"}