workbench 0.8.157__py3-none-any.whl → 0.8.159__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (35) hide show
  1. workbench/api/feature_set.py +12 -4
  2. workbench/api/meta.py +1 -1
  3. workbench/cached/cached_feature_set.py +1 -0
  4. workbench/cached/cached_meta.py +10 -12
  5. workbench/core/artifacts/cached_artifact_mixin.py +6 -3
  6. workbench/core/artifacts/data_source_abstract.py +1 -1
  7. workbench/core/artifacts/feature_set_core.py +2 -6
  8. workbench/core/artifacts/model_core.py +19 -7
  9. workbench/core/cloud_platform/aws/aws_meta.py +66 -45
  10. workbench/core/cloud_platform/cloud_meta.py +5 -2
  11. workbench/core/transforms/features_to_model/features_to_model.py +9 -5
  12. workbench/core/transforms/model_to_endpoint/model_to_endpoint.py +6 -0
  13. workbench/core/transforms/pandas_transforms/pandas_to_features.py +6 -1
  14. workbench/model_scripts/{custom_models/nn_models → pytorch_model}/generated_model_script.py +170 -156
  15. workbench/model_scripts/{custom_models/nn_models → pytorch_model}/pytorch.template +153 -147
  16. workbench/model_scripts/pytorch_model/requirements.txt +2 -0
  17. workbench/model_scripts/scikit_learn/generated_model_script.py +307 -0
  18. workbench/model_scripts/script_generation.py +6 -2
  19. workbench/model_scripts/xgb_model/generated_model_script.py +5 -5
  20. workbench/repl/workbench_shell.py +4 -9
  21. workbench/utils/cloudwatch_handler.py +1 -9
  22. workbench/utils/json_utils.py +27 -8
  23. workbench/utils/pandas_utils.py +12 -13
  24. workbench/utils/redis_cache.py +28 -13
  25. workbench/utils/workbench_cache.py +20 -14
  26. workbench/web_interface/page_views/endpoints_page_view.py +1 -1
  27. workbench/web_interface/page_views/main_page.py +1 -1
  28. {workbench-0.8.157.dist-info → workbench-0.8.159.dist-info}/METADATA +7 -10
  29. {workbench-0.8.157.dist-info → workbench-0.8.159.dist-info}/RECORD +33 -33
  30. workbench/model_scripts/custom_models/nn_models/Readme.md +0 -9
  31. workbench/model_scripts/custom_models/nn_models/requirements.txt +0 -4
  32. {workbench-0.8.157.dist-info → workbench-0.8.159.dist-info}/WHEEL +0 -0
  33. {workbench-0.8.157.dist-info → workbench-0.8.159.dist-info}/entry_points.txt +0 -0
  34. {workbench-0.8.157.dist-info → workbench-0.8.159.dist-info}/licenses/LICENSE +0 -0
  35. {workbench-0.8.157.dist-info → workbench-0.8.159.dist-info}/top_level.txt +0 -0
@@ -3,7 +3,6 @@ use RedisCache if it's available, and fall back to Cache if it's not.
3
3
  """
4
4
 
5
5
  from pprint import pformat
6
- from contextlib import contextmanager
7
6
  from workbench.utils.cache import Cache
8
7
  from workbench.utils.redis_cache import RedisCache
9
8
 
@@ -12,21 +11,8 @@ import logging
12
11
  log = logging.getLogger("workbench")
13
12
 
14
13
 
15
- # Context manager for disabling refresh
16
- @contextmanager
17
- def disable_refresh():
18
- log.warning("WorkbenchCache: Disabling Refresh")
19
- WorkbenchCache.refresh_enabled = False
20
- yield
21
- log.warning("WorkbenchCache: Enabling Refresh")
22
- WorkbenchCache.refresh_enabled = True
23
-
24
-
25
14
  class WorkbenchCache:
26
15
 
27
- # Class attribute to control refresh treads (on/off)
28
- refresh_enabled = True
29
-
30
16
  def __init__(self, expire=None, prefix="", postfix=""):
31
17
  """WorkbenchCache Initialization
32
18
  Args:
@@ -82,6 +68,21 @@ class WorkbenchCache:
82
68
  def clear(self):
83
69
  return self._actual_cache.clear()
84
70
 
71
+ def atomic_set(self, key, value) -> bool:
72
+ """Atomically set key to value only if key doesn't exist.
73
+
74
+ Returns:
75
+ True if the key was set, False if it already existed.
76
+ """
77
+ if self._using_redis:
78
+ return self._actual_cache.atomic_set(key, value)
79
+
80
+ # In-Memory Cache does not support atomic operations, so we simulate it
81
+ else:
82
+ key_exists = self._actual_cache.get(key) is not None
83
+ self._actual_cache.set(key, value)
84
+ return not key_exists
85
+
85
86
  def show_size_details(self, value):
86
87
  """Print the size of the sub-parts of the value"""
87
88
  try:
@@ -118,6 +119,10 @@ if __name__ == "__main__":
118
119
  # Delete anything in the test database
119
120
  my_cache.clear()
120
121
 
122
+ # Test the atomic set
123
+ assert my_cache.atomic_set("foo", "bar") is True
124
+ assert my_cache.atomic_set("foo", "baz") is False # Should not overwrite
125
+
121
126
  # Test storage
122
127
  my_cache.set("foo", "bar")
123
128
  assert my_cache.get("foo") == "bar"
@@ -167,3 +172,4 @@ if __name__ == "__main__":
167
172
  my_cache.set("df", df)
168
173
  df = my_cache.get("df")
169
174
  print(df)
175
+ my_cache.clear()
@@ -25,7 +25,7 @@ class EndpointsPageView(PageView):
25
25
  def refresh(self):
26
26
  """Refresh the endpoint data from the Cloud Platform"""
27
27
  self.log.important("Calling endpoint page view refresh()..")
28
- self.endpoints_df = self.meta.endpoints()
28
+ self.endpoints_df = self.meta.endpoints(details=True)
29
29
 
30
30
  # Drop the AWS URL column
31
31
  self.endpoints_df.drop(columns=["_aws_url"], inplace=True, errors="ignore")
@@ -162,7 +162,7 @@ class MainPage(PageView):
162
162
  """
163
163
 
164
164
  # We get the dataframe from our CachedMeta and hyperlink the Name column
165
- endpoint_df = self.meta.endpoints()
165
+ endpoint_df = self.meta.endpoints(details=True)
166
166
 
167
167
  # We might get an empty dataframe
168
168
  if endpoint_df.empty:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: workbench
3
- Version: 0.8.157
3
+ Version: 0.8.159
4
4
  Summary: Workbench: A Dashboard and Python API for creating and deploying AWS SageMaker Model Pipelines
5
5
  Author-email: SuperCowPowers LLC <support@supercowpowers.com>
6
6
  License-Expression: MIT
@@ -11,7 +11,7 @@ Classifier: Programming Language :: Python :: 3.10
11
11
  Classifier: Programming Language :: Python :: 3.11
12
12
  Classifier: Programming Language :: Python :: 3.12
13
13
  Classifier: Topic :: Scientific/Engineering
14
- Requires-Python: >=3.9
14
+ Requires-Python: >=3.10
15
15
  Description-Content-Type: text/markdown
16
16
  License-File: LICENSE
17
17
  Requires-Dist: boto3>=1.31.76
@@ -22,17 +22,15 @@ Requires-Dist: pandas>=2.2.1
22
22
  Requires-Dist: awswrangler>=3.4.0
23
23
  Requires-Dist: sagemaker>=2.143
24
24
  Requires-Dist: cryptography>=44.0.2
25
- Requires-Dist: ipython>=8.17.2
25
+ Requires-Dist: ipython>=9.0.0
26
26
  Requires-Dist: pyreadline3; sys_platform == "win32"
27
27
  Requires-Dist: scikit-learn>=1.5.2
28
- Requires-Dist: xgboost-cpu>=2.0.3
28
+ Requires-Dist: xgboost>=3.0.3
29
29
  Requires-Dist: joblib>=1.3.2
30
30
  Requires-Dist: requests>=2.26.0
31
31
  Requires-Dist: rdkit>=2024.9.5
32
32
  Requires-Dist: mordredcommunity>=2.0.6
33
- Requires-Dist: workbench-bridges>=0.1.2
34
- Provides-Extra: ml-tools
35
- Requires-Dist: networkx>=3.2; extra == "ml-tools"
33
+ Requires-Dist: workbench-bridges>=0.1.8
36
34
  Provides-Extra: ui
37
35
  Requires-Dist: plotly>=6.0.0; extra == "ui"
38
36
  Requires-Dist: dash>3.0.0; extra == "ui"
@@ -49,7 +47,6 @@ Requires-Dist: pytest-cov; extra == "dev"
49
47
  Requires-Dist: flake8; extra == "dev"
50
48
  Requires-Dist: black; extra == "dev"
51
49
  Provides-Extra: all
52
- Requires-Dist: xgboost-cpu>=2.0.3; extra == "all"
53
50
  Requires-Dist: networkx>=3.2; extra == "all"
54
51
  Requires-Dist: plotly>=5.18.0; extra == "all"
55
52
  Requires-Dist: dash<3.0.0,>=2.16.1; extra == "all"
@@ -107,9 +104,9 @@ All of the Dashboard pages, subpages, and plugins use our new `ThemeManager()` c
107
104
 
108
105
  Powered 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.
109
106
 
110
- **Road Map: `v0.9.0`**
107
+ ### Coming Soon: `v0.9`
111
108
 
112
- We've used the feedback from our current beta testers to improve the framework and we've constructed a mini road map for the upcoming Workbench version 0.9.0. Please see [Workbench RoadMaps](https://supercowpowers.github.io/workbench/road_maps/0_9_0/)
109
+ We're getting ready for our `v0.9` release. Here's the road map: [Workbench RoadMaps](https://supercowpowers.github.io/workbench/road_maps/0_9_0/)
113
110
 
114
111
  # Welcome to Workbench
115
112
  The 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.
@@ -32,9 +32,9 @@ workbench/api/compound.py,sha256=BHd3Qu4Ra45FEuwiowhFfGMI_HKRRB10XMmoS6ljKrM,254
32
32
  workbench/api/data_source.py,sha256=Ngz36YZWxFfpJbmURhM1LQPYjh5kdpZNGo6_fCRePbA,8321
33
33
  workbench/api/df_store.py,sha256=Wybb3zO-jPpAi2Ns8Ks1-lagvXAaBlRpBZHhnnl3Lms,6131
34
34
  workbench/api/endpoint.py,sha256=ejDnfBBgNYMZB-bOA5nX7C6CtBlAjmtrF8M_zpri9Io,3451
35
- workbench/api/feature_set.py,sha256=EUxEaWPE7Rq0qHLxjl4SOUuCu__f9vp80z9tETlKZLY,6116
35
+ workbench/api/feature_set.py,sha256=eH1zafHklQBwHnrBUWHaeTqC6RCD-TvToZyNa4CQPxI,6562
36
36
  workbench/api/graph_store.py,sha256=LremJyPrQFgsHb7hxsctuCsoxx3p7TKtaY5qALHe6pc,4372
37
- workbench/api/meta.py,sha256=knUUfNhYwgHLof6ny8MJlwhGckzBCif-y2vzZuBacPE,8438
37
+ workbench/api/meta.py,sha256=fCOtZMfAHWaerzcsTeFnimXfgV8STe9JDiB7QBogktc,8456
38
38
  workbench/api/model.py,sha256=2hPN8UK4whZ0kDgPtbR7lEknw7XhH5hGYaHA55jmZWQ,4529
39
39
  workbench/api/monitor.py,sha256=kQHSFiVLRWnHekSdatMKR3QbRj1BBNrVXpZgvV83LPM,5027
40
40
  workbench/api/parameter_store.py,sha256=tzP3S3mRldJRCwhUqT9uC-WQrDQBiZuQvu5gY2Iw9xM,4097
@@ -42,27 +42,27 @@ workbench/api/pipeline.py,sha256=MSYGrDSXrRB_oQELtAlOwBfxSBTw3REAkHy5XBHau0Y,626
42
42
  workbench/cached/__init__.py,sha256=wvTyIFvusv2HjU3yop6OSr3js5_-SZuR8nPmlCuZQJ4,525
43
43
  workbench/cached/cached_data_source.py,sha256=A0o4H9g1aEms8HkOHWnb46vJ5fx6ebs1aCYaQcf8gPI,2649
44
44
  workbench/cached/cached_endpoint.py,sha256=HxS8V9MF43uSy-Yu-pAs15PbNeq6u_JGXU332DDIQMc,2630
45
- workbench/cached/cached_feature_set.py,sha256=m579Gav1et_KMiCQNIDDojv1CArwNdlGv2XJKb_dnKs,2741
46
- workbench/cached/cached_meta.py,sha256=Tcwva5bclMwzwoZy6M3Xa7EC_flHCaBqQyDjU-0s0KQ,12423
45
+ workbench/cached/cached_feature_set.py,sha256=vJe2WUTeIyMAvCM1Jp-sPLbX6S0Y7jv51FAhhMgrSDE,2780
46
+ workbench/cached/cached_meta.py,sha256=DTlnb6jblviVmSg9w0F6LRVIuQ_lWBNqGh8vqKP5Baw,12257
47
47
  workbench/cached/cached_model.py,sha256=iMc_fySUE5qau3feduVXMNb24JY0sBjt1g6WeLLciXc,4348
48
48
  workbench/cached/cached_pipeline.py,sha256=QOVnEKu5RbIdlNpJUi-0Ebh0_-C68RigSPwKh4dvZTM,1948
49
49
  workbench/core/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
50
50
  workbench/core/artifacts/__init__.py,sha256=ps7rA_rbWnDbvWbg4kvu--IKMY8WmbPRyv4Si0xub1Q,965
51
51
  workbench/core/artifacts/artifact.py,sha256=mF1lqQ8EP43zMRSxqPYuWoHRwQTjyWdpW9LewU7utEE,17517
52
52
  workbench/core/artifacts/athena_source.py,sha256=RNmCe7s6uH4gVHpcdJcL84aSbF5Q1ahJBLLGwHYRXEU,26081
53
- workbench/core/artifacts/cached_artifact_mixin.py,sha256=TNRq-4frDS0GRodfnz6qN2SGP0U_QglZw5X5gw-K7-Y,3755
54
- workbench/core/artifacts/data_source_abstract.py,sha256=27WVCQkIDO-cj0URdDu-9LLnuWxU_3_0wyLt4iFIwsg,10604
53
+ workbench/core/artifacts/cached_artifact_mixin.py,sha256=ngqFLZ4cQx_TFouXZgXZQsv_7W6XCvxVGXXSfzzaft8,3775
54
+ workbench/core/artifacts/data_source_abstract.py,sha256=5IRCzFVK-17cd4NXPMRfx99vQAmQ0WHE5jcm5RfsVTg,10619
55
55
  workbench/core/artifacts/data_source_factory.py,sha256=YL_tA5fsgubbB3dPF6T4tO0rGgz-6oo3ge4i_YXVC-M,2380
56
56
  workbench/core/artifacts/endpoint_core.py,sha256=L6uWOxHKItjbpRS2rFrAbxAqDyZIv2CO9dnZpohKrUI,48768
57
- workbench/core/artifacts/feature_set_core.py,sha256=7yyy_0RFmrhcXqZHVb0P6suo3ye1tSO_kJqqiGgjrFw,29377
58
- workbench/core/artifacts/model_core.py,sha256=WjiZyqwUVeVZF22FO8zXFoHmgh-Vd6c_KQLx_da_FTQ,50194
57
+ workbench/core/artifacts/feature_set_core.py,sha256=055VdSYR09HP4ygAuYvIYtHQ7Ec4XxsZygpgEl5H5jQ,29136
58
+ workbench/core/artifacts/model_core.py,sha256=mEoE6S0JA-DJE_q8usQcz_DMILN1mbVYBQrUAkC7xpU,50903
59
59
  workbench/core/artifacts/monitor_core.py,sha256=BP6UuCyBI4zB2wwcIXvUw6RC0EktTcQd5Rv0x73qzio,37670
60
- workbench/core/cloud_platform/cloud_meta.py,sha256=J3qqMLdzikRRI9TC7UEk9Ib2-64ovU8X-lzLxhze1uY,8669
60
+ workbench/core/cloud_platform/cloud_meta.py,sha256=-g4-LTC3D0PXb3VfaXdLR1ERijKuHdffeMK_zhD-koQ,8809
61
61
  workbench/core/cloud_platform/aws/README.md,sha256=QT5IQXoUHbIA0qQ2wO6_2P2lYjYQFVYuezc22mWY4i8,97
62
62
  workbench/core/cloud_platform/aws/aws_account_clamp.py,sha256=OzFknZXKW7VTvnDGGX4BXKoh0i1gQ7yaEBhkLCyHFSs,6310
63
63
  workbench/core/cloud_platform/aws/aws_df_store.py,sha256=utRIlTCPwFneHHZ8_Z3Hw3rOJSeryiFA4wBtucxULRQ,15055
64
64
  workbench/core/cloud_platform/aws/aws_graph_store.py,sha256=ytYxQTplUmeWbsPmxyZbf6mO9qyTl60ewlJG8MyfyEY,9414
65
- workbench/core/cloud_platform/aws/aws_meta.py,sha256=ijbzucUF948RyD-GgYYyxl-Ejvkv5Z6gqB_g497ss7M,33932
65
+ workbench/core/cloud_platform/aws/aws_meta.py,sha256=ZCKr4cMc0XE9HC0FnLJM1wS85kK8zbzo54OIRN7MiLE,34591
66
66
  workbench/core/cloud_platform/aws/aws_parameter_store.py,sha256=9ekuMOQFHFMIEV68UbHhS_fLB9iqG5Hvu4EV6iamEpk,10400
67
67
  workbench/core/cloud_platform/aws/aws_secrets_manager.py,sha256=TUnddp1gX-OwxJ_oO5ONh7OI4Z2HC_6euGkJ-himCCk,8615
68
68
  workbench/core/cloud_platform/aws/aws_session.py,sha256=IIGz0ekbNunWzQaeaZzC2-Vl49o4Lv2F35vLtgjMGsQ,6972
@@ -101,14 +101,14 @@ workbench/core/transforms/features_to_features/__init__.py,sha256=47DEQpj8HBSa-_
101
101
  workbench/core/transforms/features_to_features/heavy/emr/Readme.md,sha256=YtQgCEQeKe0CQXQkhzMTYq9xOtCsCYb5P5LW2BmRKWQ,68
102
102
  workbench/core/transforms/features_to_features/heavy/glue/Readme.md,sha256=TuyCatWfoDr99zUwvOcxf-TqMkQzaMqXlj5nmFcRzfo,48
103
103
  workbench/core/transforms/features_to_model/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
104
- workbench/core/transforms/features_to_model/features_to_model.py,sha256=xAOcbcm2f9iumCCM_T8OTdzRkl3ZLTzyGRdv9ImmnqM,19333
104
+ workbench/core/transforms/features_to_model/features_to_model.py,sha256=GLKi5utVf3U2Iq4nrQBeewQEo_e5H5OI5BzC7xFXnYQ,19628
105
105
  workbench/core/transforms/model_to_endpoint/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
106
- workbench/core/transforms/model_to_endpoint/model_to_endpoint.py,sha256=5IBhA56qSDSnfh4Xwvb2PP5UDM7md2R7Ur38hP4Mgyw,4624
106
+ workbench/core/transforms/model_to_endpoint/model_to_endpoint.py,sha256=hbLsdOVlfAH4XCVNUfr3SFH8rKjxIs0QyYrNwjCh7SM,4970
107
107
  workbench/core/transforms/pandas_transforms/__init__.py,sha256=xL4MT8-fZ1SFqDbTLc8XyxjupHtB1YR6Ej0AC2nwd7I,894
108
108
  workbench/core/transforms/pandas_transforms/data_to_pandas.py,sha256=sJHPeuNF8Q8aQqgRnkdWkyvur5cbggdUVIwR-xF3Dlo,3621
109
109
  workbench/core/transforms/pandas_transforms/features_to_pandas.py,sha256=af6xdPt2V4zhh-SzQa_UYxdmNMzMLXbrbsznV5QoIJg,3441
110
110
  workbench/core/transforms/pandas_transforms/pandas_to_data.py,sha256=cqo6hQmzUGUFACvNuVLZQdgrlXrQIu4NjqK-ujPmoIc,9181
111
- workbench/core/transforms/pandas_transforms/pandas_to_features.py,sha256=wdPFnnVUBbMK2_xTSbGJ9x2TESHf6znHl3LwXtPxlX0,20183
111
+ workbench/core/transforms/pandas_transforms/pandas_to_features.py,sha256=XiUz2BqOX4N34g6hvFvcLswhkEouyU0AjyIy9EGv2zg,20440
112
112
  workbench/core/transforms/pandas_transforms/pandas_to_features_chunked.py,sha256=0R8mQlWfbIlTVmYUmrtu2gsw0AE815k6kqPgpd0bmyQ,4422
113
113
  workbench/core/views/__init__.py,sha256=UZJMAJBCMVM3uSYmnFg8c2LWtdu9-479WNAdVMIohAc,962
114
114
  workbench/core/views/column_subset_view.py,sha256=vGDKTTGrPIY-IFOeWvudJrhKiq0OjWDp5rTuuj-X40U,4261
@@ -121,7 +121,7 @@ workbench/core/views/training_view.py,sha256=mUkv1oVhDG-896RdLNKxCg0j0yvudEcPnvL
121
121
  workbench/core/views/view.py,sha256=Ujzw6zLROP9oKfKm3zJwaOyfpyjh5uM9fAu1i3kUOig,11764
122
122
  workbench/core/views/view_utils.py,sha256=y0YuPW-90nAfgAD1UW_49-j7Mvncfm7-5rV8I_97CK8,12274
123
123
  workbench/core/views/storage/mdq_view.py,sha256=qf_ep1KwaXOIfO930laEwNIiCYP7VNOqjE3VdHfopRE,5195
124
- workbench/model_scripts/script_generation.py,sha256=Isxc2J8qmkzFJqinxReujzk3jye7uHzsRkEKE0kxdN4,7447
124
+ workbench/model_scripts/script_generation.py,sha256=4Uy5Zp0tr8dF7gPeqPgEbD0WbrwVE2qK4C7m5eavIMs,7627
125
125
  workbench/model_scripts/custom_models/chem_info/Readme.md,sha256=mH1lxJ4Pb7F5nBnVXaiuxpi8zS_yjUw_LBJepVKXhlA,574
126
126
  workbench/model_scripts/custom_models/chem_info/local_utils.py,sha256=Rsz_VRoA3O3-VoitmN8o5OymstsF433QgdSRHc-iZ24,29071
127
127
  workbench/model_scripts/custom_models/chem_info/molecular_descriptors.py,sha256=E8SK4oOHaYnYx4ycQJ6R7yg799kjtbipM3KEc8SPArQ,3011
@@ -130,10 +130,6 @@ workbench/model_scripts/custom_models/chem_info/requirements.txt,sha256=7HBUzvNi
130
130
  workbench/model_scripts/custom_models/chem_info/tautomerize.py,sha256=KAxTAqtTql4_FvnrAyYRgaJEmtAx399HXA_iw_awa08,3125
131
131
  workbench/model_scripts/custom_models/meta_endpoints/example.py,sha256=hzOAuLhIGB8vei-555ruNxpsE1GhuByHGjGB0zw8GSs,1726
132
132
  workbench/model_scripts/custom_models/network_security/Readme.md,sha256=Z2gtiu0hLHvEJ1x-_oFq3qJZcsK81sceBAGAGltpqQ8,222
133
- workbench/model_scripts/custom_models/nn_models/Readme.md,sha256=x6U_gox2yV-kLspgmzE77t2xk5GFNgcpcuQq-Q78G7w,146
134
- workbench/model_scripts/custom_models/nn_models/generated_model_script.py,sha256=PsowW-kosyN2wWhuDgP_41mBYscUDYKOhzzQFVUKBzc,20695
135
- workbench/model_scripts/custom_models/nn_models/pytorch.template,sha256=-gd0FbDW1ilTo1WcwiOLVZPAyTQ09naVlnSXxrVxKYU,20422
136
- workbench/model_scripts/custom_models/nn_models/requirements.txt,sha256=sC6v1LSBkwJFbvObn6DUD1HwPM86_rbmXEMH5Tcn2kM,184
137
133
  workbench/model_scripts/custom_models/proximity/Readme.md,sha256=RlMFAJZgAT2mCgDk-UwR_R0Y_NbCqeI5-8DUsxsbpWQ,289
138
134
  workbench/model_scripts/custom_models/proximity/feature_space_proximity.template,sha256=2c3eDu4sLP_bCTBAf_aIR1QdC7CpYDpXo8UU_2ZoLuE,4833
139
135
  workbench/model_scripts/custom_models/proximity/generated_model_script.py,sha256=RdbKbXtrSNYQJvB-oLcRHpJ6w0TM7zbmMfuocHb7GM0,7967
@@ -154,15 +150,19 @@ workbench/model_scripts/custom_script_example/requirements.txt,sha256=jWlGc7HH7v
154
150
  workbench/model_scripts/ensemble_xgb/ensemble_xgb.template,sha256=s8tPPk_q6UqA2nAzknD8viA-kN7f62Rim2XwMKcqHKc,10399
155
151
  workbench/model_scripts/ensemble_xgb/generated_model_script.py,sha256=dsjUGm22xI1ThGn97HPKtooyEPK-HOQnf5chnZ7-MXk,10675
156
152
  workbench/model_scripts/ensemble_xgb/requirements.txt,sha256=jWlGc7HH7vqyukTm38LN4EyDi8jDUPEay4n45z-30uc,104
153
+ workbench/model_scripts/pytorch_model/generated_model_script.py,sha256=53QVg2R2iDNYcsEQGbmWsPxKm8D4-5F4m27lFFjq5uc,21041
154
+ workbench/model_scripts/pytorch_model/pytorch.template,sha256=vfODdZcFMtkUMSYDj261ZCGVJIQXciiVWY64P2HFvpA,20531
155
+ workbench/model_scripts/pytorch_model/requirements.txt,sha256=ICS5nW0wix44EJO2tJszJSaUrSvhSfdedn6FcRInGx4,181
157
156
  workbench/model_scripts/quant_regression/quant_regression.template,sha256=AQihffV68qI6CG9qztA0jGunDWoijb3eeDWNG5tiIGc,9818
158
157
  workbench/model_scripts/quant_regression/requirements.txt,sha256=jWlGc7HH7vqyukTm38LN4EyDi8jDUPEay4n45z-30uc,104
158
+ workbench/model_scripts/scikit_learn/generated_model_script.py,sha256=c73ZpJBlU5k13Nx-ZDkLXu7da40CYyhwjwwmuPq6uLg,12870
159
159
  workbench/model_scripts/scikit_learn/requirements.txt,sha256=aVvwiJ3LgBUhM_PyFlb2gHXu_kpGPho3ANBzlOkfcvs,107
160
160
  workbench/model_scripts/scikit_learn/scikit_learn.template,sha256=d4pgeZYFezUQsB-7iIsjsUgB1FM6d27651wpfDdXmI0,12640
161
- workbench/model_scripts/xgb_model/generated_model_script.py,sha256=aqrDobLcMysjc-q8p5aCyPXPrVlia14CbARRqaG8--Q,21083
161
+ workbench/model_scripts/xgb_model/generated_model_script.py,sha256=dm11XC6SHo_-zoYGuJRmc46OWDCz9jnRdHTVYCJGnVw,18213
162
162
  workbench/model_scripts/xgb_model/requirements.txt,sha256=jWlGc7HH7vqyukTm38LN4EyDi8jDUPEay4n45z-30uc,104
163
163
  workbench/model_scripts/xgb_model/xgb_model.template,sha256=RaUr8X6al5R2IILNKgGUH05Gb4H7AFFG9RE524_VH7Q,17935
164
164
  workbench/repl/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
165
- workbench/repl/workbench_shell.py,sha256=_8eJ8BCjpsabiGPhnMYBUzwsT4RnFU7CRpO0b3qh71k,21983
165
+ workbench/repl/workbench_shell.py,sha256=CdeKJzfI5mjlt6jTbCTW3H2sohGx3d4FfDtjiyCl9mg,21780
166
166
  workbench/resources/open_source_api.key,sha256=3S0OTblsmC0msUPdE_dbBmI83xJNmYscuwLJ57JmuOc,433
167
167
  workbench/resources/signature_verify_pub.pem,sha256=V3-u-3_z2PH-805ybkKvzDOBwAbvHxcKn0jLBImEtzM,272
168
168
  workbench/scripts/check_double_bond_stereo.py,sha256=p5hnL54Weq77ES0HCELq9JeoM-PyUGkvVSeWYF2dKyo,7776
@@ -197,7 +197,7 @@ workbench/utils/aws_utils.py,sha256=XckM0vzud7Nx1OxD1GoYGLQxdj1PqeQ43cN66tnrRYI,
197
197
  workbench/utils/bulk_utils.py,sha256=s1lYN2Uk536MNGetekLYL_VL0N34hUjk1FX9BAz3Qu0,1182
198
198
  workbench/utils/cache.py,sha256=0R5RXYEz_XHARK3anmQC4VRMawMks_cJ8S4vwC2roAE,5524
199
199
  workbench/utils/chem_utils.py,sha256=tLTAvLKTOiYSzbVQF0M8V5-ej36IVgr21CNB2vVJjYQ,56780
200
- workbench/utils/cloudwatch_handler.py,sha256=ocrj4oXIBIBZHax_ekk4E4r-tD-yTrlDmZeKRFBauOo,5491
200
+ workbench/utils/cloudwatch_handler.py,sha256=dtnkr8tXtTRAASQ60QO0lz3SRA5LEbzsK1VCIqblfKs,5157
201
201
  workbench/utils/color_utils.py,sha256=TmDGLK44t975lkfjt_1O-ee02QxrKfke7vPuXb-V-Uo,11779
202
202
  workbench/utils/config_manager.py,sha256=Yj43Ta67dn34XdOcKcOvXw38ln6TRiv4DePXjPt2jg8,17641
203
203
  workbench/utils/dashboard_metrics.py,sha256=cNFI0GIAjd_IiDzM1oebsJ2QkRZuW068W_66ZC3J100,7398
@@ -213,20 +213,20 @@ workbench/utils/fast_inference.py,sha256=Sm0EV1oPsYYGqiDBVUu3Nj6Ti68JV-UR2S0ZliB
213
213
  workbench/utils/glue_utils.py,sha256=dslfXQcJ4C-mGmsD6LqeK8vsXBez570t3fZBVZLV7HA,2039
214
214
  workbench/utils/graph_utils.py,sha256=T4aslYVbzPmFe0_qKCQP6PZnaw1KATNXQNVO-yDGBxY,10839
215
215
  workbench/utils/ipython_utils.py,sha256=skbdbBwUT-iuY3FZwy3ACS7-FWSe9M2qVXfLlQWnikE,700
216
- workbench/utils/json_utils.py,sha256=7dt3VM8uxAyTN0DSJfoP65OQ2Jndv1n6I3ibdZ6-RN8,4232
216
+ workbench/utils/json_utils.py,sha256=FSxzcD88TbIEJDw0FHue5-ZGny94wm5NeLs4zYlLLpU,4881
217
217
  workbench/utils/lambda_utils.py,sha256=7GhGRPyXn9o-toWb9HBGSnI8-DhK9YRkwhCSk_mNKMI,1893
218
218
  workbench/utils/license_manager.py,sha256=sDuhk1mZZqUbFmnuFXehyGnui_ALxrmYBg7gYwoo7ho,6975
219
219
  workbench/utils/log_utils.py,sha256=7n1NJXO_jUX82e6LWAQug6oPo3wiPDBYsqk9gsYab_A,3167
220
220
  workbench/utils/markdown_utils.py,sha256=4lEqzgG4EVmLcvvKKNUwNxVCySLQKJTJmWDiaDroI1w,8306
221
221
  workbench/utils/model_utils.py,sha256=YV_OPdRXabte9Zo8v9igs4kW8s6eCngtvapa9jY6X_k,11264
222
222
  workbench/utils/monitor_utils.py,sha256=ywoEdqoHY9t5PYRstjitS_halEWO6veCL_06BekmMVo,9153
223
- workbench/utils/pandas_utils.py,sha256=vMpCb13oSqkxiZ3MQWlHsnZIH5D6Vi67HWaapyYbYbQ,39300
223
+ workbench/utils/pandas_utils.py,sha256=LQTfZ3WJkg3rIahNJhsz1YV2y_0DBG94lO-KMmEY1g0,39325
224
224
  workbench/utils/performance_utils.py,sha256=WDNvz-bOdC99cDuXl0urAV4DJ7alk_V3yzKPwvqgST4,1329
225
225
  workbench/utils/pipeline_utils.py,sha256=yzR5tgAzz6zNqvxzZR6YqsbS7r3QDKzBXozaM_ADXlc,2171
226
226
  workbench/utils/plot_utils.py,sha256=yFveic-4aY7lKT-CPhYdbIkBr-mZqjbhaRmCySWG_kE,6537
227
227
  workbench/utils/plugin_manager.py,sha256=JWfyFHQih_J_MMtAT1cgjGVnNVPk9bM917LkfH8Z-_A,13873
228
228
  workbench/utils/prox_utils.py,sha256=V0YSxI6lboZl8Bed1GUobFqfMhfpehn2FtgqHpkuhDQ,6170
229
- workbench/utils/redis_cache.py,sha256=ofBu4AYgvrDdbUFiSB-Sjo2WmCgMXdxDN7A_F3VWRes,12270
229
+ workbench/utils/redis_cache.py,sha256=39LFSWmOlNNcah02D3sBnmibc-DPeKC3SNq71K4HaB4,12893
230
230
  workbench/utils/repl_utils.py,sha256=rWOMv2HiEIp8ZL6Ps6DlwiJlGr-pOhv9OZQhm3aR-1A,4668
231
231
  workbench/utils/resource_utils.py,sha256=EM4SrMmRUQnG80aR5M7hmzw86hYdP_S7fRPuqhpDSVo,1435
232
232
  workbench/utils/s3_utils.py,sha256=Xme_o_cftC_jWnw6R9YKS6-6C11zaCBAoQDlY3dZb5o,7337
@@ -237,7 +237,7 @@ workbench/utils/test_data_generator.py,sha256=gqRXL7IUKG4wVfO1onflY3wg7vLkgx402_
237
237
  workbench/utils/theme_manager.py,sha256=eXnvOShiO5Z9GimCiNtKZ0piXJjmfUcnirFsBbT4x8o,11439
238
238
  workbench/utils/trace_calls.py,sha256=tY4DOVMGXBh-mbUWzo1l-X9XjD0ux_qR9I1ypkjWNIQ,2092
239
239
  workbench/utils/type_abbrev.py,sha256=3ai7ZbE8BgvdotOSb48w_BmgrEGVYvLoyzoNYH8ZuOs,1470
240
- workbench/utils/workbench_cache.py,sha256=knuzz6whRiF1XjwekeeqTTQcjaU4N7w3Qf_mmJ6eYUo,5340
240
+ workbench/utils/workbench_cache.py,sha256=IQchxB81iR4eVggHBxUJdXxUCRkqWz1jKe5gxN3z6yc,5657
241
241
  workbench/utils/workbench_event_bridge.py,sha256=z1GmXOB-Qs7VOgC6Hjnp2DI9nSEWepaSXejACxTIR7o,4150
242
242
  workbench/utils/workbench_logging.py,sha256=aOUjMZeKqrK03z5mwuVAAwwjIjVxyTA7g-brr85oxY8,10424
243
243
  workbench/utils/workbench_sqs.py,sha256=WFQTqOxoEdOzPEMmTVZcdPzylmkynZ5aKtvRrOAO06w,2127
@@ -269,15 +269,15 @@ workbench/web_interface/components/plugins/proximity_mini_graph.py,sha256=b_YYnv
269
269
  workbench/web_interface/components/plugins/scatter_plot.py,sha256=j8J1-m_xZjG0hgaMevbRvKaTAze0GglpMMDlP3WA_6U,19106
270
270
  workbench/web_interface/components/plugins/shap_summary_plot.py,sha256=_V-xxVehU-60IpYWvAqTW5x_6u6pbjz9mI8r0ppIXKg,9454
271
271
  workbench/web_interface/page_views/data_sources_page_view.py,sha256=SXNUG6n_eP9i4anddEXd5E9rMRt-R2EyNR-bbe8OQK4,4673
272
- workbench/web_interface/page_views/endpoints_page_view.py,sha256=XWYWaEclPwg1Sd-BeP4V7f4LDKB1gYp-bAlAPhPus1Y,2758
272
+ workbench/web_interface/page_views/endpoints_page_view.py,sha256=EI3hA18pEn-mAPEzGAw0W-wM8qJR2j_8pQEJlbJCENk,2770
273
273
  workbench/web_interface/page_views/feature_sets_page_view.py,sha256=BnIU_Yg0g71mg51ryuXIYaEF-SZpJELXUGhNfyXZO8o,4449
274
- workbench/web_interface/page_views/main_page.py,sha256=QIGiQPXu5Q9TU15nPEAYa6sjQcfEsRA3C3LLUDqTsso,7764
274
+ workbench/web_interface/page_views/main_page.py,sha256=X4-KyGTKLAdxR-Zk2niuLJB2Y_p75nfeF_9Y9YXrk94,7776
275
275
  workbench/web_interface/page_views/models_page_view.py,sha256=M0bdC7bAzLyIaE2jviY12FF4abdMFZmg6sFuOY_LaGI,2650
276
276
  workbench/web_interface/page_views/page_view.py,sha256=Gh6YnpOGlUejx-bHZAf5pzqoQ1H1R0OSwOpGhOBO06w,455
277
277
  workbench/web_interface/page_views/pipelines_page_view.py,sha256=v2pxrIbsHBcYiblfius3JK766NZ7ciD2yPx0t3E5IJo,2656
278
- workbench-0.8.157.dist-info/licenses/LICENSE,sha256=z4QMMPlLJkZjU8VOKqJkZiQZCEZ--saIU2Z8-p3aVc0,1080
279
- workbench-0.8.157.dist-info/METADATA,sha256=F0BA7wvUuJGEBJ-uj84XE6p_e8zM98UVjniG_rP56hE,9497
280
- workbench-0.8.157.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
281
- workbench-0.8.157.dist-info/entry_points.txt,sha256=oZykkheWiiIBjRE8cS5SdcxwmZKSFaQEGwMBjNh-eNM,238
282
- workbench-0.8.157.dist-info/top_level.txt,sha256=Dhy72zTxaA_o_yRkPZx5zw-fwumnjGaeGf0hBN3jc_w,10
283
- workbench-0.8.157.dist-info/RECORD,,
278
+ workbench-0.8.159.dist-info/licenses/LICENSE,sha256=z4QMMPlLJkZjU8VOKqJkZiQZCEZ--saIU2Z8-p3aVc0,1080
279
+ workbench-0.8.159.dist-info/METADATA,sha256=uGV9YoGMyhxgbs68ZSSfTtIVWh7Z1JsBG23aXiWuC6w,9264
280
+ workbench-0.8.159.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
281
+ workbench-0.8.159.dist-info/entry_points.txt,sha256=oZykkheWiiIBjRE8cS5SdcxwmZKSFaQEGwMBjNh-eNM,238
282
+ workbench-0.8.159.dist-info/top_level.txt,sha256=Dhy72zTxaA_o_yRkPZx5zw-fwumnjGaeGf0hBN3jc_w,10
283
+ workbench-0.8.159.dist-info/RECORD,,
@@ -1,9 +0,0 @@
1
- # Neural Network Model Scripts
2
- Welcome to the set of neural network model scripts.
3
- Right now we just have:
4
-
5
- - PyTorch
6
- - ChemProp
7
-
8
-
9
- ### References
@@ -1,4 +0,0 @@
1
- # Note: PyTorch-Tabular is not included in the default inference image, so it must be specified here.
2
- # PyTorch-Tabular also implicitly requires requests
3
- requests
4
- pytorch-tabular