rapidata 1.1.0__py3-none-any.whl → 1.2.1__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.
- rapidata/__init__.py +1 -0
- rapidata/api_client/__init__.py +30 -8
- rapidata/api_client/api/__init__.py +2 -0
- rapidata/api_client/api/campaign_api.py +8 -4
- rapidata/api_client/api/coco_api.py +4 -2
- rapidata/api_client/api/compare_workflow_api.py +2 -1
- rapidata/api_client/api/datapoint_api.py +6 -3
- rapidata/api_client/api/dataset_api.py +404 -396
- rapidata/api_client/api/identity_api.py +329 -50
- rapidata/api_client/api/newsletter_api.py +4 -2
- rapidata/api_client/api/order_api.py +40 -20
- rapidata/api_client/api/pipeline_api.py +6 -3
- rapidata/api_client/api/rapid_api.py +10 -5
- rapidata/api_client/api/rapidata_identity_api_api.py +272 -0
- rapidata/api_client/api/simple_workflow_api.py +2 -1
- rapidata/api_client/api/user_info_api.py +272 -0
- rapidata/api_client/api/validation_api.py +14 -7
- rapidata/api_client/api/workflow_api.py +30 -1067
- rapidata/api_client/models/__init__.py +28 -8
- rapidata/api_client/models/classification_metadata_model.py +98 -0
- rapidata/api_client/models/compare_workflow_config.py +3 -3
- rapidata/api_client/models/compare_workflow_config_model.py +3 -3
- rapidata/api_client/models/compare_workflow_model1.py +4 -18
- rapidata/api_client/models/compare_workflow_model1_referee.py +154 -0
- rapidata/api_client/models/completed_rapid_model.py +3 -3
- rapidata/api_client/models/completed_rapid_model_asset.py +170 -0
- rapidata/api_client/models/count_metadata_model.py +98 -0
- rapidata/api_client/models/demographic_metadata_model.py +100 -0
- rapidata/api_client/models/file_asset_model.py +3 -3
- rapidata/api_client/models/file_asset_model1.py +108 -0
- rapidata/api_client/models/file_asset_model1_metadata_inner.py +252 -0
- rapidata/api_client/models/file_asset_model2.py +108 -0
- rapidata/api_client/models/file_asset_model_metadata_inner.py +252 -0
- rapidata/api_client/models/image_dimension_metadata_model.py +100 -0
- rapidata/api_client/models/in_progress_rapid_model.py +3 -3
- rapidata/api_client/models/issue_auth_token_result.py +1 -1
- rapidata/api_client/models/legacy_issue_client_auth_token_result.py +87 -0
- rapidata/api_client/models/legacy_request_password_reset_command.py +98 -0
- rapidata/api_client/models/legacy_submit_password_reset_command.py +102 -0
- rapidata/api_client/models/location_metadata_model.py +100 -0
- rapidata/api_client/models/multi_asset_model.py +3 -3
- rapidata/api_client/models/multi_asset_model1.py +118 -0
- rapidata/api_client/models/multi_asset_model1_assets_inner.py +170 -0
- rapidata/api_client/models/multi_asset_model2.py +118 -0
- rapidata/api_client/models/not_started_rapid_model.py +3 -3
- rapidata/api_client/models/null_asset_model.py +3 -3
- rapidata/api_client/models/null_asset_model1.py +106 -0
- rapidata/api_client/models/null_asset_model2.py +106 -0
- rapidata/api_client/models/original_filename_metadata_model.py +98 -0
- rapidata/api_client/models/prompt_metadata_model.py +98 -0
- rapidata/api_client/models/query_validation_rapids_result_asset.py +40 -40
- rapidata/api_client/models/ranked_datapoint_model.py +3 -3
- rapidata/api_client/models/simple_workflow_config.py +6 -6
- rapidata/api_client/models/simple_workflow_config_model.py +3 -3
- rapidata/api_client/models/simple_workflow_model1.py +7 -21
- rapidata/api_client/models/simple_workflow_model1_blueprint.py +238 -0
- rapidata/api_client/models/text_asset_model.py +3 -3
- rapidata/api_client/models/text_asset_model1.py +108 -0
- rapidata/api_client/models/text_asset_model2.py +108 -0
- rapidata/api_client/models/text_metadata_model.py +98 -0
- rapidata/api_client/models/transcription_metadata_model.py +98 -0
- rapidata/api_client/models/translated_prompt_metadata_model.py +102 -0
- rapidata/api_client/models/translated_string.py +93 -0
- rapidata/api_client_README.md +36 -13
- rapidata/rapidata_client/__init__.py +13 -2
- rapidata/rapidata_client/assets/media_asset.py +1 -1
- rapidata/rapidata_client/assets/multi_asset.py +14 -3
- rapidata/rapidata_client/dataset/rapidata_dataset.py +59 -21
- rapidata/rapidata_client/dataset/validation_set_builder.py +1 -1
- rapidata/rapidata_client/order/rapidata_order.py +49 -18
- rapidata/rapidata_client/order/rapidata_order_builder.py +99 -41
- rapidata/rapidata_client/selection/__init__.py +1 -0
- rapidata/rapidata_client/selection/capped_selection.py +25 -0
- rapidata/rapidata_client/selection/demographic_selection.py +3 -2
- rapidata/rapidata_client/simple_builders/__init__.py +0 -0
- rapidata/rapidata_client/simple_builders/simple_classification_builders.py +14 -9
- rapidata/rapidata_client/simple_builders/simple_compare_builders.py +6 -3
- rapidata/service/openapi_service.py +15 -0
- {rapidata-1.1.0.dist-info → rapidata-1.2.1.dist-info}/METADATA +1 -1
- {rapidata-1.1.0.dist-info → rapidata-1.2.1.dist-info}/RECORD +82 -50
- {rapidata-1.1.0.dist-info → rapidata-1.2.1.dist-info}/LICENSE +0 -0
- {rapidata-1.1.0.dist-info → rapidata-1.2.1.dist-info}/WHEEL +0 -0
rapidata/api_client_README.md
CHANGED
|
@@ -81,6 +81,7 @@ Class | Method | HTTP request | Description
|
|
|
81
81
|
*DatapointApi* | [**datapoint_delete_delete**](rapidata/api_client/docs/DatapointApi.md#datapoint_delete_delete) | **DELETE** /Datapoint/Delete | Delete a datapoint.
|
|
82
82
|
*DatapointApi* | [**datapoint_get_all_datapoints_by_dataset_id_get**](rapidata/api_client/docs/DatapointApi.md#datapoint_get_all_datapoints_by_dataset_id_get) | **GET** /Datapoint/GetAllDatapointsByDatasetId | Get all datapoints of a dataset.
|
|
83
83
|
*DatapointApi* | [**datapoint_get_by_id_get**](rapidata/api_client/docs/DatapointApi.md#datapoint_get_by_id_get) | **GET** /Datapoint/GetById | Get a datapoint by its id.
|
|
84
|
+
*DatasetApi* | [**dataset_creat_text_datapoint_post**](rapidata/api_client/docs/DatasetApi.md#dataset_creat_text_datapoint_post) | **POST** /Dataset/CreatTextDatapoint | Creates new datapoints from text sources.
|
|
84
85
|
*DatasetApi* | [**dataset_create_datapoint_post**](rapidata/api_client/docs/DatasetApi.md#dataset_create_datapoint_post) | **POST** /Dataset/CreateDatapoint | Creates a single datapoint.
|
|
85
86
|
*DatasetApi* | [**dataset_get_by_id_get**](rapidata/api_client/docs/DatasetApi.md#dataset_get_by_id_get) | **GET** /Dataset/GetById | Gets a dataset by its id.
|
|
86
87
|
*DatasetApi* | [**dataset_import_post**](rapidata/api_client/docs/DatasetApi.md#dataset_import_post) | **POST** /Dataset/Import | Imports datapoints from a csv file.
|
|
@@ -88,7 +89,6 @@ Class | Method | HTTP request | Description
|
|
|
88
89
|
*DatasetApi* | [**dataset_upload_datapoint_post**](rapidata/api_client/docs/DatasetApi.md#dataset_upload_datapoint_post) | **POST** /Dataset/UploadDatapoint | Creates a new multi asset datapoint.
|
|
89
90
|
*DatasetApi* | [**dataset_upload_files_from_s3_post**](rapidata/api_client/docs/DatasetApi.md#dataset_upload_files_from_s3_post) | **POST** /Dataset/UploadFilesFromS3 | Uploads files from an S3 bucket to a dataset.
|
|
90
91
|
*DatasetApi* | [**dataset_upload_images_to_dataset_post**](rapidata/api_client/docs/DatasetApi.md#dataset_upload_images_to_dataset_post) | **POST** /Dataset/UploadImagesToDataset | Uploads images to a dataset.
|
|
91
|
-
*DatasetApi* | [**dataset_upload_text_sources_to_dataset_post**](rapidata/api_client/docs/DatasetApi.md#dataset_upload_text_sources_to_dataset_post) | **POST** /Dataset/UploadTextSourcesToDataset | Creates new datapoints from text sources.
|
|
92
92
|
*IdentityApi* | [**identity_confirm_get**](rapidata/api_client/docs/IdentityApi.md#identity_confirm_get) | **GET** /Identity/Confirm | Confirms a user's signup by a token.
|
|
93
93
|
*IdentityApi* | [**identity_create_client_post**](rapidata/api_client/docs/IdentityApi.md#identity_create_client_post) | **POST** /Identity/CreateClient | Creates a new client for a customer.
|
|
94
94
|
*IdentityApi* | [**identity_external_login_callback_get**](rapidata/api_client/docs/IdentityApi.md#identity_external_login_callback_get) | **GET** /Identity/ExternalLoginCallback | Logs in a user using after receiving a grant from an external provider.
|
|
@@ -97,6 +97,7 @@ Class | Method | HTTP request | Description
|
|
|
97
97
|
*IdentityApi* | [**identity_get_client_auth_token_post**](rapidata/api_client/docs/IdentityApi.md#identity_get_client_auth_token_post) | **POST** /Identity/GetClientAuthToken | Issues a new auth token using the client credentials.
|
|
98
98
|
*IdentityApi* | [**identity_index_post**](rapidata/api_client/docs/IdentityApi.md#identity_index_post) | **POST** /Identity/Index | Logs in a user by username or email and password.
|
|
99
99
|
*IdentityApi* | [**identity_logout_post**](rapidata/api_client/docs/IdentityApi.md#identity_logout_post) | **POST** /Identity/Logout | Logs out the current user by deleting the refresh token cookie.
|
|
100
|
+
*IdentityApi* | [**identity_register_temporary_post**](rapidata/api_client/docs/IdentityApi.md#identity_register_temporary_post) | **POST** /Identity/RegisterTemporary | Registers and logs in a temporary customer.
|
|
100
101
|
*IdentityApi* | [**identity_request_reset_post**](rapidata/api_client/docs/IdentityApi.md#identity_request_reset_post) | **POST** /Identity/RequestReset | Request a password reset for a user.
|
|
101
102
|
*IdentityApi* | [**identity_signup_post**](rapidata/api_client/docs/IdentityApi.md#identity_signup_post) | **POST** /Identity/Signup | Signs up a new user.
|
|
102
103
|
*IdentityApi* | [**identity_submit_reset_post**](rapidata/api_client/docs/IdentityApi.md#identity_submit_reset_post) | **POST** /Identity/SubmitReset | Updates the password of a user after a password reset request.
|
|
@@ -131,7 +132,9 @@ Class | Method | HTTP request | Description
|
|
|
131
132
|
*RapidApi* | [**rapid_query_validation_rapids_get**](rapidata/api_client/docs/RapidApi.md#rapid_query_validation_rapids_get) | **GET** /Rapid/QueryValidationRapids | Queries the validation rapids for a specific validation set.
|
|
132
133
|
*RapidApi* | [**rapid_skip_user_guess_post**](rapidata/api_client/docs/RapidApi.md#rapid_skip_user_guess_post) | **POST** /Rapid/SkipUserGuess | Skips a Rapid for the user.
|
|
133
134
|
*RapidApi* | [**rapid_validate_current_rapid_bag_get**](rapidata/api_client/docs/RapidApi.md#rapid_validate_current_rapid_bag_get) | **GET** /Rapid/ValidateCurrentRapidBag | Validates that the rapids associated with the current user are active.
|
|
135
|
+
*RapidataIdentityAPIApi* | [**root_get**](rapidata/api_client/docs/RapidataIdentityAPIApi.md#root_get) | **GET** / |
|
|
134
136
|
*SimpleWorkflowApi* | [**simple_workflow_get_result_overview_get**](rapidata/api_client/docs/SimpleWorkflowApi.md#simple_workflow_get_result_overview_get) | **GET** /SimpleWorkflow/GetResultOverview | Get the result overview for a simple workflow.
|
|
137
|
+
*UserInfoApi* | [**connect_userinfo_get**](rapidata/api_client/docs/UserInfoApi.md#connect_userinfo_get) | **GET** /connect/userinfo | Retrieves information about the authenticated user.
|
|
135
138
|
*ValidationApi* | [**validation_add_validation_rapid_post**](rapidata/api_client/docs/ValidationApi.md#validation_add_validation_rapid_post) | **POST** /Validation/AddValidationRapid | Adds a new validation rapid to the specified validation set.
|
|
136
139
|
*ValidationApi* | [**validation_add_validation_text_rapid_post**](rapidata/api_client/docs/ValidationApi.md#validation_add_validation_text_rapid_post) | **POST** /Validation/AddValidationTextRapid | Adds a new validation rapid to the specified validation set.
|
|
137
140
|
*ValidationApi* | [**validation_create_validation_set_post**](rapidata/api_client/docs/ValidationApi.md#validation_create_validation_set_post) | **POST** /Validation/CreateValidationSet | Creates a new empty validation set.
|
|
@@ -139,15 +142,11 @@ Class | Method | HTTP request | Description
|
|
|
139
142
|
*ValidationApi* | [**validation_import_compare_post**](rapidata/api_client/docs/ValidationApi.md#validation_import_compare_post) | **POST** /Validation/ImportCompare | Imports a compare validation set from a zip file.
|
|
140
143
|
*ValidationApi* | [**validation_import_post**](rapidata/api_client/docs/ValidationApi.md#validation_import_post) | **POST** /Validation/Import | Imports a validation set from a zip file.
|
|
141
144
|
*ValidationApi* | [**validation_query_validation_sets_get**](rapidata/api_client/docs/ValidationApi.md#validation_query_validation_sets_get) | **GET** /Validation/QueryValidationSets | Queries validation sets based on the provided filter, paging and sorting criteria.
|
|
142
|
-
*WorkflowApi* | [**workflow_create_independent_post**](rapidata/api_client/docs/WorkflowApi.md#workflow_create_independent_post) | **POST** /Workflow/CreateIndependent | Creates an independent workflow.
|
|
143
145
|
*WorkflowApi* | [**workflow_delete_delete**](rapidata/api_client/docs/WorkflowApi.md#workflow_delete_delete) | **DELETE** /Workflow/Delete | Deletes a workflow.
|
|
144
146
|
*WorkflowApi* | [**workflow_get_by_id_get**](rapidata/api_client/docs/WorkflowApi.md#workflow_get_by_id_get) | **GET** /Workflow/GetById | Get a workflow by its ID.
|
|
145
147
|
*WorkflowApi* | [**workflow_get_progress_get**](rapidata/api_client/docs/WorkflowApi.md#workflow_get_progress_get) | **GET** /Workflow/GetProgress | Get the progress of a workflow.
|
|
146
148
|
*WorkflowApi* | [**workflow_get_result_overview_get**](rapidata/api_client/docs/WorkflowApi.md#workflow_get_result_overview_get) | **GET** /Workflow/GetResultOverview | Get the result overview for a workflow.
|
|
147
|
-
*WorkflowApi* | [**workflow_pause_post**](rapidata/api_client/docs/WorkflowApi.md#workflow_pause_post) | **POST** /Workflow/Pause | Pauses a running workflow.
|
|
148
149
|
*WorkflowApi* | [**workflow_query_get**](rapidata/api_client/docs/WorkflowApi.md#workflow_query_get) | **GET** /Workflow/Query | Queries workflows based on the provided filter, page, and sort criteria.
|
|
149
|
-
*WorkflowApi* | [**workflow_resume_post**](rapidata/api_client/docs/WorkflowApi.md#workflow_resume_post) | **POST** /Workflow/Resume | Resumes a paused workflow.
|
|
150
|
-
*WorkflowApi* | [**workflow_start_independent_post**](rapidata/api_client/docs/WorkflowApi.md#workflow_start_independent_post) | **POST** /Workflow/StartIndependent | Starts an independent workflow.
|
|
151
150
|
|
|
152
151
|
|
|
153
152
|
## Documentation For Models
|
|
@@ -182,6 +181,7 @@ Class | Method | HTTP request | Description
|
|
|
182
181
|
- [CappedSelectionSelectionsInner](rapidata/api_client/docs/CappedSelectionSelectionsInner.md)
|
|
183
182
|
- [ClassificationMetadata](rapidata/api_client/docs/ClassificationMetadata.md)
|
|
184
183
|
- [ClassificationMetadataFilterConfig](rapidata/api_client/docs/ClassificationMetadataFilterConfig.md)
|
|
184
|
+
- [ClassificationMetadataModel](rapidata/api_client/docs/ClassificationMetadataModel.md)
|
|
185
185
|
- [ClassifyPayload](rapidata/api_client/docs/ClassifyPayload.md)
|
|
186
186
|
- [CloneDatasetModel](rapidata/api_client/docs/CloneDatasetModel.md)
|
|
187
187
|
- [CloneOrderModel](rapidata/api_client/docs/CloneOrderModel.md)
|
|
@@ -192,15 +192,17 @@ Class | Method | HTTP request | Description
|
|
|
192
192
|
- [CompareTruth](rapidata/api_client/docs/CompareTruth.md)
|
|
193
193
|
- [CompareWorkflowConfig](rapidata/api_client/docs/CompareWorkflowConfig.md)
|
|
194
194
|
- [CompareWorkflowConfigModel](rapidata/api_client/docs/CompareWorkflowConfigModel.md)
|
|
195
|
-
- [CompareWorkflowConfigReferee](rapidata/api_client/docs/CompareWorkflowConfigReferee.md)
|
|
196
195
|
- [CompareWorkflowGetResultOverviewGet200Response](rapidata/api_client/docs/CompareWorkflowGetResultOverviewGet200Response.md)
|
|
197
196
|
- [CompareWorkflowModel](rapidata/api_client/docs/CompareWorkflowModel.md)
|
|
198
197
|
- [CompareWorkflowModel1](rapidata/api_client/docs/CompareWorkflowModel1.md)
|
|
198
|
+
- [CompareWorkflowModel1Referee](rapidata/api_client/docs/CompareWorkflowModel1Referee.md)
|
|
199
199
|
- [CompletedRapidModel](rapidata/api_client/docs/CompletedRapidModel.md)
|
|
200
|
+
- [CompletedRapidModelAsset](rapidata/api_client/docs/CompletedRapidModelAsset.md)
|
|
200
201
|
- [ConditionalValidationSelection](rapidata/api_client/docs/ConditionalValidationSelection.md)
|
|
201
202
|
- [Coordinate](rapidata/api_client/docs/Coordinate.md)
|
|
202
203
|
- [CountClassificationMetadataFilterConfig](rapidata/api_client/docs/CountClassificationMetadataFilterConfig.md)
|
|
203
204
|
- [CountMetadata](rapidata/api_client/docs/CountMetadata.md)
|
|
205
|
+
- [CountMetadataModel](rapidata/api_client/docs/CountMetadataModel.md)
|
|
204
206
|
- [CountryUserFilterModel](rapidata/api_client/docs/CountryUserFilterModel.md)
|
|
205
207
|
- [CreateClientModel](rapidata/api_client/docs/CreateClientModel.md)
|
|
206
208
|
- [CreateComplexOrderModel](rapidata/api_client/docs/CreateComplexOrderModel.md)
|
|
@@ -210,9 +212,6 @@ Class | Method | HTTP request | Description
|
|
|
210
212
|
- [CreateDatasetArtifactModelDataset](rapidata/api_client/docs/CreateDatasetArtifactModelDataset.md)
|
|
211
213
|
- [CreateDemographicRapidModel](rapidata/api_client/docs/CreateDemographicRapidModel.md)
|
|
212
214
|
- [CreateEmptyValidationSetResult](rapidata/api_client/docs/CreateEmptyValidationSetResult.md)
|
|
213
|
-
- [CreateIndependentWorkflowModel](rapidata/api_client/docs/CreateIndependentWorkflowModel.md)
|
|
214
|
-
- [CreateIndependentWorkflowModelWorkflowConfig](rapidata/api_client/docs/CreateIndependentWorkflowModelWorkflowConfig.md)
|
|
215
|
-
- [CreateIndependentWorkflowResult](rapidata/api_client/docs/CreateIndependentWorkflowResult.md)
|
|
216
215
|
- [CreateOrderModel](rapidata/api_client/docs/CreateOrderModel.md)
|
|
217
216
|
- [CreateOrderModelReferee](rapidata/api_client/docs/CreateOrderModelReferee.md)
|
|
218
217
|
- [CreateOrderModelUserFiltersInner](rapidata/api_client/docs/CreateOrderModelUserFiltersInner.md)
|
|
@@ -233,6 +232,7 @@ Class | Method | HTTP request | Description
|
|
|
233
232
|
- [DatapointModelAsset](rapidata/api_client/docs/DatapointModelAsset.md)
|
|
234
233
|
- [DatasetArtifactModel](rapidata/api_client/docs/DatasetArtifactModel.md)
|
|
235
234
|
- [DatasetEvaluationStepModel](rapidata/api_client/docs/DatasetEvaluationStepModel.md)
|
|
235
|
+
- [DemographicMetadataModel](rapidata/api_client/docs/DemographicMetadataModel.md)
|
|
236
236
|
- [DemographicSelection](rapidata/api_client/docs/DemographicSelection.md)
|
|
237
237
|
- [EarlyStoppingRefereeModel](rapidata/api_client/docs/EarlyStoppingRefereeModel.md)
|
|
238
238
|
- [EmptyValidationTruth](rapidata/api_client/docs/EmptyValidationTruth.md)
|
|
@@ -244,6 +244,10 @@ Class | Method | HTTP request | Description
|
|
|
244
244
|
- [FileAsset](rapidata/api_client/docs/FileAsset.md)
|
|
245
245
|
- [FileAssetMetadataInner](rapidata/api_client/docs/FileAssetMetadataInner.md)
|
|
246
246
|
- [FileAssetModel](rapidata/api_client/docs/FileAssetModel.md)
|
|
247
|
+
- [FileAssetModel1](rapidata/api_client/docs/FileAssetModel1.md)
|
|
248
|
+
- [FileAssetModel1MetadataInner](rapidata/api_client/docs/FileAssetModel1MetadataInner.md)
|
|
249
|
+
- [FileAssetModel2](rapidata/api_client/docs/FileAssetModel2.md)
|
|
250
|
+
- [FileAssetModelMetadataInner](rapidata/api_client/docs/FileAssetModelMetadataInner.md)
|
|
247
251
|
- [Filter](rapidata/api_client/docs/Filter.md)
|
|
248
252
|
- [FilterOperator](rapidata/api_client/docs/FilterOperator.md)
|
|
249
253
|
- [FreeTextPayload](rapidata/api_client/docs/FreeTextPayload.md)
|
|
@@ -269,13 +273,16 @@ Class | Method | HTTP request | Description
|
|
|
269
273
|
- [GetWorkflowResultOverviewResult](rapidata/api_client/docs/GetWorkflowResultOverviewResult.md)
|
|
270
274
|
- [IWorkflowModelPagedResult](rapidata/api_client/docs/IWorkflowModelPagedResult.md)
|
|
271
275
|
- [ImageDimensionMetadata](rapidata/api_client/docs/ImageDimensionMetadata.md)
|
|
276
|
+
- [ImageDimensionMetadataModel](rapidata/api_client/docs/ImageDimensionMetadataModel.md)
|
|
272
277
|
- [ImportFromFileResult](rapidata/api_client/docs/ImportFromFileResult.md)
|
|
273
278
|
- [ImportValidationSetFromFileResult](rapidata/api_client/docs/ImportValidationSetFromFileResult.md)
|
|
274
279
|
- [InProgressRapidModel](rapidata/api_client/docs/InProgressRapidModel.md)
|
|
275
280
|
- [IssueAuthTokenResult](rapidata/api_client/docs/IssueAuthTokenResult.md)
|
|
276
|
-
- [IssueClientAuthTokenResult](rapidata/api_client/docs/IssueClientAuthTokenResult.md)
|
|
277
281
|
- [LabelingSelection](rapidata/api_client/docs/LabelingSelection.md)
|
|
278
282
|
- [LanguageUserFilterModel](rapidata/api_client/docs/LanguageUserFilterModel.md)
|
|
283
|
+
- [LegacyIssueClientAuthTokenResult](rapidata/api_client/docs/LegacyIssueClientAuthTokenResult.md)
|
|
284
|
+
- [LegacyRequestPasswordResetCommand](rapidata/api_client/docs/LegacyRequestPasswordResetCommand.md)
|
|
285
|
+
- [LegacySubmitPasswordResetCommand](rapidata/api_client/docs/LegacySubmitPasswordResetCommand.md)
|
|
279
286
|
- [Line](rapidata/api_client/docs/Line.md)
|
|
280
287
|
- [LinePayload](rapidata/api_client/docs/LinePayload.md)
|
|
281
288
|
- [LinePoint](rapidata/api_client/docs/LinePoint.md)
|
|
@@ -289,11 +296,15 @@ Class | Method | HTTP request | Description
|
|
|
289
296
|
- [LocateResult](rapidata/api_client/docs/LocateResult.md)
|
|
290
297
|
- [LocationMetadata](rapidata/api_client/docs/LocationMetadata.md)
|
|
291
298
|
- [LocationMetadataExistsFilterConfig](rapidata/api_client/docs/LocationMetadataExistsFilterConfig.md)
|
|
299
|
+
- [LocationMetadataModel](rapidata/api_client/docs/LocationMetadataModel.md)
|
|
292
300
|
- [LogicOperator](rapidata/api_client/docs/LogicOperator.md)
|
|
293
301
|
- [LoginModel](rapidata/api_client/docs/LoginModel.md)
|
|
294
302
|
- [MetadataVisibilities](rapidata/api_client/docs/MetadataVisibilities.md)
|
|
295
303
|
- [MultiAsset](rapidata/api_client/docs/MultiAsset.md)
|
|
296
304
|
- [MultiAssetModel](rapidata/api_client/docs/MultiAssetModel.md)
|
|
305
|
+
- [MultiAssetModel1](rapidata/api_client/docs/MultiAssetModel1.md)
|
|
306
|
+
- [MultiAssetModel1AssetsInner](rapidata/api_client/docs/MultiAssetModel1AssetsInner.md)
|
|
307
|
+
- [MultiAssetModel2](rapidata/api_client/docs/MultiAssetModel2.md)
|
|
297
308
|
- [NaiveRefereeConfig](rapidata/api_client/docs/NaiveRefereeConfig.md)
|
|
298
309
|
- [NaiveRefereeModel](rapidata/api_client/docs/NaiveRefereeModel.md)
|
|
299
310
|
- [NamedClassification](rapidata/api_client/docs/NamedClassification.md)
|
|
@@ -306,10 +317,13 @@ Class | Method | HTTP request | Description
|
|
|
306
317
|
- [NotStartedRapidModel](rapidata/api_client/docs/NotStartedRapidModel.md)
|
|
307
318
|
- [NullAsset](rapidata/api_client/docs/NullAsset.md)
|
|
308
319
|
- [NullAssetModel](rapidata/api_client/docs/NullAssetModel.md)
|
|
320
|
+
- [NullAssetModel1](rapidata/api_client/docs/NullAssetModel1.md)
|
|
321
|
+
- [NullAssetModel2](rapidata/api_client/docs/NullAssetModel2.md)
|
|
309
322
|
- [OrderModel](rapidata/api_client/docs/OrderModel.md)
|
|
310
323
|
- [OrderQueryGet200Response](rapidata/api_client/docs/OrderQueryGet200Response.md)
|
|
311
324
|
- [OrderState](rapidata/api_client/docs/OrderState.md)
|
|
312
325
|
- [OriginalFilenameMetadata](rapidata/api_client/docs/OriginalFilenameMetadata.md)
|
|
326
|
+
- [OriginalFilenameMetadataModel](rapidata/api_client/docs/OriginalFilenameMetadataModel.md)
|
|
313
327
|
- [PageInfo](rapidata/api_client/docs/PageInfo.md)
|
|
314
328
|
- [PolygonPayload](rapidata/api_client/docs/PolygonPayload.md)
|
|
315
329
|
- [PolygonRapidBlueprint](rapidata/api_client/docs/PolygonRapidBlueprint.md)
|
|
@@ -319,6 +333,7 @@ Class | Method | HTTP request | Description
|
|
|
319
333
|
- [ProbabilisticAttachCategoryRefereeConfig](rapidata/api_client/docs/ProbabilisticAttachCategoryRefereeConfig.md)
|
|
320
334
|
- [PromptMetadata](rapidata/api_client/docs/PromptMetadata.md)
|
|
321
335
|
- [PromptMetadataInput](rapidata/api_client/docs/PromptMetadataInput.md)
|
|
336
|
+
- [PromptMetadataModel](rapidata/api_client/docs/PromptMetadataModel.md)
|
|
322
337
|
- [PublicTextMetadataInput](rapidata/api_client/docs/PublicTextMetadataInput.md)
|
|
323
338
|
- [QueryCampaignsModel](rapidata/api_client/docs/QueryCampaignsModel.md)
|
|
324
339
|
- [QueryModel](rapidata/api_client/docs/QueryModel.md)
|
|
@@ -334,19 +349,18 @@ Class | Method | HTTP request | Description
|
|
|
334
349
|
- [RapidResultModel](rapidata/api_client/docs/RapidResultModel.md)
|
|
335
350
|
- [RapidResultModelResult](rapidata/api_client/docs/RapidResultModelResult.md)
|
|
336
351
|
- [RapidSkippedModel](rapidata/api_client/docs/RapidSkippedModel.md)
|
|
337
|
-
- [RequestPasswordResetCommand](rapidata/api_client/docs/RequestPasswordResetCommand.md)
|
|
338
352
|
- [RootFilter](rapidata/api_client/docs/RootFilter.md)
|
|
339
353
|
- [SendCompletionMailStepModel](rapidata/api_client/docs/SendCompletionMailStepModel.md)
|
|
340
354
|
- [Shape](rapidata/api_client/docs/Shape.md)
|
|
341
355
|
- [SignupCustomerModel](rapidata/api_client/docs/SignupCustomerModel.md)
|
|
342
356
|
- [SignupShadowCustomerModel](rapidata/api_client/docs/SignupShadowCustomerModel.md)
|
|
343
357
|
- [SimpleWorkflowConfig](rapidata/api_client/docs/SimpleWorkflowConfig.md)
|
|
344
|
-
- [SimpleWorkflowConfigBlueprint](rapidata/api_client/docs/SimpleWorkflowConfigBlueprint.md)
|
|
345
358
|
- [SimpleWorkflowConfigModel](rapidata/api_client/docs/SimpleWorkflowConfigModel.md)
|
|
346
359
|
- [SimpleWorkflowConfigModelBlueprint](rapidata/api_client/docs/SimpleWorkflowConfigModelBlueprint.md)
|
|
347
360
|
- [SimpleWorkflowGetResultOverviewGet200Response](rapidata/api_client/docs/SimpleWorkflowGetResultOverviewGet200Response.md)
|
|
348
361
|
- [SimpleWorkflowModel](rapidata/api_client/docs/SimpleWorkflowModel.md)
|
|
349
362
|
- [SimpleWorkflowModel1](rapidata/api_client/docs/SimpleWorkflowModel1.md)
|
|
363
|
+
- [SimpleWorkflowModel1Blueprint](rapidata/api_client/docs/SimpleWorkflowModel1Blueprint.md)
|
|
350
364
|
- [SimpleWorkflowModelBlueprint](rapidata/api_client/docs/SimpleWorkflowModelBlueprint.md)
|
|
351
365
|
- [SkipResult](rapidata/api_client/docs/SkipResult.md)
|
|
352
366
|
- [SortCriterion](rapidata/api_client/docs/SortCriterion.md)
|
|
@@ -354,17 +368,22 @@ Class | Method | HTTP request | Description
|
|
|
354
368
|
- [StaticSelection](rapidata/api_client/docs/StaticSelection.md)
|
|
355
369
|
- [SubmitCocoModel](rapidata/api_client/docs/SubmitCocoModel.md)
|
|
356
370
|
- [SubmitCocoResult](rapidata/api_client/docs/SubmitCocoResult.md)
|
|
357
|
-
- [SubmitPasswordResetCommand](rapidata/api_client/docs/SubmitPasswordResetCommand.md)
|
|
358
371
|
- [TextAsset](rapidata/api_client/docs/TextAsset.md)
|
|
359
372
|
- [TextAssetModel](rapidata/api_client/docs/TextAssetModel.md)
|
|
373
|
+
- [TextAssetModel1](rapidata/api_client/docs/TextAssetModel1.md)
|
|
374
|
+
- [TextAssetModel2](rapidata/api_client/docs/TextAssetModel2.md)
|
|
360
375
|
- [TextMetadata](rapidata/api_client/docs/TextMetadata.md)
|
|
376
|
+
- [TextMetadataModel](rapidata/api_client/docs/TextMetadataModel.md)
|
|
361
377
|
- [TranscriptionMetadata](rapidata/api_client/docs/TranscriptionMetadata.md)
|
|
362
378
|
- [TranscriptionMetadataInput](rapidata/api_client/docs/TranscriptionMetadataInput.md)
|
|
379
|
+
- [TranscriptionMetadataModel](rapidata/api_client/docs/TranscriptionMetadataModel.md)
|
|
363
380
|
- [TranscriptionPayload](rapidata/api_client/docs/TranscriptionPayload.md)
|
|
364
381
|
- [TranscriptionRapidBlueprint](rapidata/api_client/docs/TranscriptionRapidBlueprint.md)
|
|
365
382
|
- [TranscriptionResult](rapidata/api_client/docs/TranscriptionResult.md)
|
|
366
383
|
- [TranscriptionTruth](rapidata/api_client/docs/TranscriptionTruth.md)
|
|
367
384
|
- [TranscriptionWord](rapidata/api_client/docs/TranscriptionWord.md)
|
|
385
|
+
- [TranslatedPromptMetadataModel](rapidata/api_client/docs/TranslatedPromptMetadataModel.md)
|
|
386
|
+
- [TranslatedString](rapidata/api_client/docs/TranslatedString.md)
|
|
368
387
|
- [UnlockOrderResult](rapidata/api_client/docs/UnlockOrderResult.md)
|
|
369
388
|
- [UpdateAccessModel](rapidata/api_client/docs/UpdateAccessModel.md)
|
|
370
389
|
- [UpdateOrderModel](rapidata/api_client/docs/UpdateOrderModel.md)
|
|
@@ -403,6 +422,10 @@ Authentication schemes defined for the API:
|
|
|
403
422
|
- **API key parameter name**: Authorization
|
|
404
423
|
- **Location**: HTTP header
|
|
405
424
|
|
|
425
|
+
<a id="oauth2"></a>
|
|
426
|
+
### oauth2
|
|
427
|
+
|
|
428
|
+
|
|
406
429
|
|
|
407
430
|
## Author
|
|
408
431
|
|
|
@@ -1,13 +1,24 @@
|
|
|
1
1
|
from .rapidata_client import RapidataClient
|
|
2
|
-
from .workflow import
|
|
2
|
+
from .workflow import (
|
|
3
|
+
ClassifyWorkflow,
|
|
4
|
+
TranscriptionWorkflow,
|
|
5
|
+
CompareWorkflow,
|
|
6
|
+
FreeTextWorkflow,
|
|
7
|
+
)
|
|
3
8
|
from .selection import (
|
|
4
9
|
DemographicSelection,
|
|
5
10
|
LabelingSelection,
|
|
6
11
|
ValidationSelection,
|
|
7
12
|
ConditionalValidationSelection,
|
|
13
|
+
CappedSelection,
|
|
8
14
|
)
|
|
9
15
|
from .referee import NaiveReferee, ClassifyEarlyStoppingReferee
|
|
10
|
-
from .metadata import
|
|
16
|
+
from .metadata import (
|
|
17
|
+
PrivateTextMetadata,
|
|
18
|
+
PublicTextMetadata,
|
|
19
|
+
PromptMetadata,
|
|
20
|
+
TranscriptionMetadata,
|
|
21
|
+
)
|
|
11
22
|
from .feature_flags import FeatureFlags
|
|
12
23
|
from .country_codes import CountryCodes
|
|
13
24
|
from .assets import MediaAsset, TextAsset, MultiAsset
|
|
@@ -29,5 +29,5 @@ class MediaAsset(BaseAsset):
|
|
|
29
29
|
FileNotFoundError: If the provided file path does not exist.
|
|
30
30
|
"""
|
|
31
31
|
if not os.path.exists(path):
|
|
32
|
-
raise FileNotFoundError(f"File not found: {path}")
|
|
32
|
+
raise FileNotFoundError(f"File not found: {path}, please provide a valid local file path.")
|
|
33
33
|
self.path = path
|
|
@@ -4,7 +4,8 @@ Defines the MultiAsset class for handling multiple BaseAsset instances.
|
|
|
4
4
|
"""
|
|
5
5
|
|
|
6
6
|
from rapidata.rapidata_client.assets.base_asset import BaseAsset
|
|
7
|
-
from
|
|
7
|
+
from rapidata.rapidata_client.assets import MediaAsset, TextAsset
|
|
8
|
+
from typing import Iterator, Sequence
|
|
8
9
|
|
|
9
10
|
|
|
10
11
|
class MultiAsset(BaseAsset):
|
|
@@ -16,15 +17,25 @@ class MultiAsset(BaseAsset):
|
|
|
16
17
|
assets (List[BaseAsset]): A list of BaseAsset instances to be managed together.
|
|
17
18
|
"""
|
|
18
19
|
|
|
19
|
-
def __init__(self, assets:
|
|
20
|
+
def __init__(self, assets: Sequence[BaseAsset]) -> None:
|
|
20
21
|
"""
|
|
21
22
|
Initialize a MultiAsset instance.
|
|
22
23
|
|
|
23
24
|
Args:
|
|
24
25
|
assets (List[BaseAsset]): A list of BaseAsset instances to be managed together.
|
|
25
26
|
"""
|
|
27
|
+
if len(assets) != 2:
|
|
28
|
+
raise ValueError("Assets must come in pairs for comparison tasks.")
|
|
29
|
+
|
|
30
|
+
for asset in assets:
|
|
31
|
+
if not isinstance(asset, (TextAsset, MediaAsset)):
|
|
32
|
+
raise TypeError("All assets must be a TextAsset or MediaAsset.")
|
|
33
|
+
|
|
34
|
+
if not all(isinstance(asset, type(assets[0])) for asset in assets):
|
|
35
|
+
raise ValueError("All assets must be of the same type.")
|
|
36
|
+
|
|
26
37
|
self.assets = assets
|
|
27
|
-
|
|
38
|
+
|
|
28
39
|
def __len__(self) -> int:
|
|
29
40
|
"""
|
|
30
41
|
Get the number of assets in the MultiAsset.
|
|
@@ -9,6 +9,7 @@ from rapidata.api_client.models.upload_text_sources_to_dataset_model import (
|
|
|
9
9
|
UploadTextSourcesToDatasetModel,
|
|
10
10
|
)
|
|
11
11
|
from rapidata.rapidata_client.metadata.base_metadata import Metadata
|
|
12
|
+
from rapidata.rapidata_client.assets import TextAsset, MediaAsset, MultiAsset
|
|
12
13
|
from rapidata.service import LocalFileService
|
|
13
14
|
from rapidata.service.openapi_service import OpenAPIService
|
|
14
15
|
from concurrent.futures import ThreadPoolExecutor, as_completed
|
|
@@ -22,34 +23,71 @@ class RapidataDataset:
|
|
|
22
23
|
self.openapi_service = openapi_service
|
|
23
24
|
self.local_file_service = LocalFileService()
|
|
24
25
|
|
|
25
|
-
def add_texts(
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
26
|
+
def add_texts(
|
|
27
|
+
self,
|
|
28
|
+
text_assets: list[TextAsset] | list[MultiAsset],
|
|
29
|
+
max_workers: int = 10,
|
|
30
|
+
):
|
|
31
|
+
for text_asset in text_assets:
|
|
32
|
+
if isinstance(text_asset, MultiAsset):
|
|
33
|
+
assert all(
|
|
34
|
+
isinstance(asset, TextAsset) for asset in text_asset.assets
|
|
35
|
+
), "All assets in a MultiAsset must be of type TextAsset."
|
|
36
|
+
|
|
37
|
+
def upload_text_datapoint(text_asset: TextAsset | MultiAsset) -> None:
|
|
38
|
+
if isinstance(text_asset, TextAsset):
|
|
39
|
+
texts = [text_asset.text]
|
|
40
|
+
elif isinstance(text_asset, MultiAsset):
|
|
41
|
+
texts = [asset.text for asset in text_asset.assets if isinstance(asset, TextAsset)]
|
|
42
|
+
else:
|
|
43
|
+
raise ValueError(f"Unsupported asset type: {type(text_asset)}")
|
|
44
|
+
|
|
45
|
+
model = UploadTextSourcesToDatasetModel(
|
|
46
|
+
datasetId=self.dataset_id,
|
|
47
|
+
textSources=texts
|
|
48
|
+
)
|
|
49
|
+
|
|
50
|
+
self.openapi_service.dataset_api.dataset_creat_text_datapoint_post(model)
|
|
51
|
+
|
|
52
|
+
total_uploads = len(text_assets)
|
|
53
|
+
with ThreadPoolExecutor(max_workers=max_workers) as executor:
|
|
54
|
+
futures = [
|
|
55
|
+
executor.submit(upload_text_datapoint, text_asset)
|
|
56
|
+
]
|
|
57
|
+
|
|
58
|
+
with tqdm(total=total_uploads, desc="Uploading text datapoints") as pbar:
|
|
59
|
+
for future in as_completed(futures):
|
|
60
|
+
future.result() # This will raise any exceptions that occurred during execution
|
|
61
|
+
pbar.update(1)
|
|
32
62
|
|
|
33
63
|
def add_media_from_paths(
|
|
34
64
|
self,
|
|
35
|
-
media_paths: list[
|
|
65
|
+
media_paths: list[MediaAsset] | list[MultiAsset], # where multiasset is a list of media assets
|
|
36
66
|
metadata: list[Metadata] | None = None,
|
|
37
67
|
max_workers: int = 10,
|
|
38
68
|
):
|
|
39
69
|
if metadata is not None and len(metadata) != len(media_paths):
|
|
40
70
|
raise ValueError(
|
|
41
|
-
"metadata must be None or have the same length as
|
|
71
|
+
"metadata must be None or have the same length as media_paths"
|
|
42
72
|
)
|
|
73
|
+
|
|
74
|
+
for media_path in media_paths:
|
|
75
|
+
if isinstance(media_path, MultiAsset):
|
|
76
|
+
assert all(
|
|
77
|
+
isinstance(asset, MediaAsset) for asset in media_path.assets
|
|
78
|
+
), "All assets in a MultiAsset must be of type MediaAsset."
|
|
43
79
|
|
|
44
|
-
def upload_datapoint(
|
|
45
|
-
if isinstance(
|
|
46
|
-
|
|
47
|
-
):
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
80
|
+
def upload_datapoint(media_asset: MediaAsset | MultiAsset, meta: Metadata | None) -> None:
|
|
81
|
+
if isinstance(media_asset, MediaAsset):
|
|
82
|
+
paths = [media_asset.path]
|
|
83
|
+
elif isinstance(media_asset, MultiAsset):
|
|
84
|
+
paths = [asset.path for asset in media_asset.assets if isinstance(asset, MediaAsset)]
|
|
85
|
+
else:
|
|
86
|
+
raise ValueError(f"Unsupported asset type: {type(media_asset)}")
|
|
87
|
+
|
|
88
|
+
assert all(
|
|
89
|
+
os.path.exists(media_path) for media_path in paths
|
|
90
|
+
), "All media paths must exist on the local filesystem."
|
|
53
91
|
|
|
54
92
|
meta_model = meta.to_model() if meta else None
|
|
55
93
|
model = DatapointMetadataModel(
|
|
@@ -63,14 +101,14 @@ class RapidataDataset:
|
|
|
63
101
|
|
|
64
102
|
self.openapi_service.dataset_api.dataset_create_datapoint_post(
|
|
65
103
|
model=model,
|
|
66
|
-
files=
|
|
104
|
+
files=paths # type: ignore
|
|
67
105
|
)
|
|
68
106
|
|
|
69
107
|
total_uploads = len(media_paths)
|
|
70
108
|
with ThreadPoolExecutor(max_workers=max_workers) as executor:
|
|
71
109
|
futures = [
|
|
72
|
-
executor.submit(upload_datapoint,
|
|
73
|
-
for
|
|
110
|
+
executor.submit(upload_datapoint, media_asset, meta)
|
|
111
|
+
for media_asset, meta in zip_longest(media_paths, metadata or [])
|
|
74
112
|
]
|
|
75
113
|
|
|
76
114
|
with tqdm(total=total_uploads, desc="Uploading datapoints") as pbar:
|
|
@@ -3,7 +3,9 @@ from rapidata.rapidata_client.dataset.rapidata_dataset import RapidataDataset
|
|
|
3
3
|
from rapidata.service.openapi_service import OpenAPIService
|
|
4
4
|
import json
|
|
5
5
|
from rapidata.api_client.exceptions import ApiException
|
|
6
|
-
|
|
6
|
+
from typing import cast
|
|
7
|
+
from rapidata.api_client.models.workflow_artifact_model import WorkflowArtifactModel
|
|
8
|
+
from tqdm import tqdm
|
|
7
9
|
|
|
8
10
|
class RapidataOrder:
|
|
9
11
|
"""
|
|
@@ -26,6 +28,7 @@ class RapidataOrder:
|
|
|
26
28
|
self.openapi_service = openapi_service
|
|
27
29
|
self.order_id = order_id
|
|
28
30
|
self._dataset = dataset
|
|
31
|
+
self._workflow_id = None
|
|
29
32
|
|
|
30
33
|
def submit(self):
|
|
31
34
|
"""
|
|
@@ -49,27 +52,55 @@ class RapidataOrder:
|
|
|
49
52
|
"""
|
|
50
53
|
return self.openapi_service.order_api.order_get_by_id_get(self.order_id)
|
|
51
54
|
|
|
52
|
-
def
|
|
55
|
+
def display_progress_bar(self, refresh_rate=5):
|
|
53
56
|
"""
|
|
54
|
-
|
|
57
|
+
Displays a progress bar for the order processing using tqdm.
|
|
58
|
+
|
|
59
|
+
:param refresh_rate: How often to refresh the progress bar, in seconds.
|
|
60
|
+
:type refresh_rate: float
|
|
55
61
|
"""
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
62
|
+
total_rapids = self._get_total_rapids()
|
|
63
|
+
with tqdm(total=total_rapids, desc="Processing order", unit="rapids") as pbar:
|
|
64
|
+
completed_rapids = 0
|
|
65
|
+
while True:
|
|
66
|
+
current_completed = self._get_completed_rapids()
|
|
67
|
+
if current_completed > completed_rapids:
|
|
68
|
+
pbar.update(current_completed - completed_rapids)
|
|
69
|
+
completed_rapids = current_completed
|
|
70
|
+
|
|
71
|
+
if completed_rapids >= total_rapids:
|
|
72
|
+
break
|
|
73
|
+
|
|
74
|
+
time.sleep(refresh_rate)
|
|
67
75
|
|
|
68
|
-
|
|
76
|
+
def _get_workflow_id(self):
|
|
77
|
+
if self._workflow_id:
|
|
78
|
+
return self._workflow_id
|
|
79
|
+
|
|
80
|
+
for _ in range(2):
|
|
81
|
+
try:
|
|
82
|
+
order_result = self.openapi_service.order_api.order_get_by_id_get(self.order_id)
|
|
83
|
+
pipeline = self.openapi_service.pipeline_api.pipeline_id_get(order_result.pipeline_id)
|
|
84
|
+
self._workflow_id = cast(WorkflowArtifactModel, pipeline.artifacts["workflow-artifact"].actual_instance).workflow_id
|
|
69
85
|
break
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
86
|
+
except Exception:
|
|
87
|
+
time.sleep(2)
|
|
88
|
+
if not self._workflow_id:
|
|
89
|
+
raise Exception("Order has not started yet. Please wait for a few seconds and try again.")
|
|
90
|
+
return self._workflow_id
|
|
91
|
+
|
|
92
|
+
def _get_total_rapids(self):
|
|
93
|
+
workflow_id = self._get_workflow_id()
|
|
94
|
+
return self.openapi_service.workflow_api.workflow_get_progress_get(workflow_id).total
|
|
95
|
+
|
|
96
|
+
def _get_completed_rapids(self):
|
|
97
|
+
workflow_id = self._get_workflow_id()
|
|
98
|
+
return self.openapi_service.workflow_api.workflow_get_progress_get(workflow_id).completed
|
|
99
|
+
|
|
100
|
+
def get_progress_percentage(self):
|
|
101
|
+
workflow_id = self._get_workflow_id()
|
|
102
|
+
progress = self.openapi_service.workflow_api.workflow_get_progress_get(workflow_id)
|
|
103
|
+
return progress.completion_percentage
|
|
73
104
|
|
|
74
105
|
def get_results(self):
|
|
75
106
|
"""
|