Plugins
DeciClient
A client to deci platform and model zoo. requires credentials for connection
Source code in common/plugins/deci_client.py
32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 |
|
add_model(model_metadata, hardware_types, model_path=None, model=None, **kwargs)
Adds a new model to the company's model repository.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
model_metadata |
The model metadata. |
required | |
hardware_types |
List[str]
|
The hardware types you want to benchmark the model on. |
required |
model_path |
Optional[str]
|
The path of the model on the local operating system. |
None
|
model |
Optional[nn.Module]
|
Pytorch loaded model object. If your model's framework is pytorch you may pass the following parameters as kwargs in order to control the conversion to onnx |
None
|
kwargs |
Any
|
Extra arguments to be passed to the PyTorch to ONNX conversion, for example: opset_version do_constant_folding dynamic_axes input_names output_names |
{}
|
Source code in common/plugins/deci_client.py
203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 |
|
download_and_load_model_additional_code(model_name, target_path, package_name='deci_model_code')
try to download code files for this model. if found, code files will be placed in the target_path/package_name and imported dynamically
Source code in common/plugins/deci_client.py
111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 |
|
get_model_arch_params(model_name)
Get the model arch_params from DeciPlatform.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
model_name |
str
|
Name of the model as saved in the platform. |
required |
Returns:
Type | Description |
---|---|
Optional[DictConfig]
|
arch_params. None if arch_params were not found for this specific model on this SG version. |
Source code in common/plugins/deci_client.py
76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 |
|
get_model_recipe(model_name)
Get the model recipe from DeciPlatform.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
model_name |
str
|
Name of the model as saved in the platform. |
required |
Returns:
Type | Description |
---|---|
Optional[DictConfig]
|
recipe. None if recipe were not found for this specific model on this SG version. |
Source code in common/plugins/deci_client.py
92 93 94 95 96 97 98 99 100 101 102 103 |
|
get_model_weights(model_name)
Get the path to model weights (downloaded locally).
Parameters:
Name | Type | Description | Default |
---|---|---|---|
model_name |
str
|
Name of the model as saved in the platform. |
required |
Returns:
Type | Description |
---|---|
Optional[str]
|
model_weights path. None if weights were not found for this specific model on this SG version. |
Source code in common/plugins/deci_client.py
105 106 107 108 109 |
|
is_model_benchmarking(name)
Check if a given model is still benchmarking or not.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
name |
str
|
The mode name. |
required |
Source code in common/plugins/deci_client.py
163 164 165 166 167 168 |
|
register_experiment(name, model_name, resume)
Registers a training experiment in Deci's backend.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
name |
str
|
Name of the experiment to register |
required |
model_name |
str
|
Name of the model architecture to connect the experiment to |
required |
Source code in common/plugins/deci_client.py
170 171 172 173 174 175 176 177 178 179 180 181 182 183 |
|
save_experiment_file(file_path)
Uploads a training related file to Deci's location in S3. This can be a TensorBoard file or a log
Parameters:
Name | Type | Description | Default |
---|---|---|---|
file_path |
str
|
The local path of the file to be uploaded |
required |
Source code in common/plugins/deci_client.py
185 186 187 188 189 190 |
|
upload_file_to_s3(tag, level, from_path)
Upload a file to the platform S3 bucket.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
tag |
str
|
Tag that will be associated to the file. |
required |
level |
str
|
Logging level that will be used to notify the monitoring system that the file was uploaded. |
required |
from_path |
str
|
Path of the file to upload. |
required |
Source code in common/plugins/deci_client.py
192 193 194 195 196 197 198 199 200 201 |
|
upload_model(model, model_meta_data, optimization_request_form)
This function will upload the trained model to the Deci Lab
Parameters:
Name | Type | Description | Default |
---|---|---|---|
model |
nn.Module
|
The resulting model from the training process |
required |
model_meta_data |
Metadata to accompany the model |
required | |
optimization_request_form |
The optimization parameters |
required |
Source code in common/plugins/deci_client.py
149 150 151 152 153 154 155 156 157 158 159 160 161 |
|