rapidata 2.27.0__py3-none-any.whl → 2.44.4__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.

Potentially problematic release.


This version of rapidata might be problematic. Click here for more details.

Files changed (771) hide show
  1. rapidata/__init__.py +12 -9
  2. rapidata/api_client/__init__.py +83 -329
  3. rapidata/api_client/api/__init__.py +9 -2
  4. rapidata/api_client/api/asset_api.py +853 -0
  5. rapidata/api_client/api/audience_api.py +1133 -0
  6. rapidata/api_client/api/benchmark_api.py +3966 -0
  7. rapidata/api_client/api/campaign_api.py +232 -207
  8. rapidata/api_client/api/client_api.py +349 -71
  9. rapidata/api_client/api/coco_api.py +0 -571
  10. rapidata/api_client/api/compare_workflow_api.py +11 -10
  11. rapidata/api_client/api/customer_rapid_api.py +644 -72
  12. rapidata/api_client/api/datapoint_api.py +8 -797
  13. rapidata/api_client/api/dataset_api.py +229 -3452
  14. rapidata/api_client/api/evaluation_workflow_api.py +29 -82
  15. rapidata/api_client/api/feedback_api.py +11 -281
  16. rapidata/api_client/api/grouped_ranking_workflow_api.py +319 -0
  17. rapidata/api_client/api/identity_api.py +83 -1171
  18. rapidata/api_client/api/leaderboard_api.py +2550 -0
  19. rapidata/api_client/api/newsletter_api.py +20 -19
  20. rapidata/api_client/api/order_api.py +758 -5487
  21. rapidata/api_client/api/participant_api.py +2181 -0
  22. rapidata/api_client/api/pipeline_api.py +24 -1783
  23. rapidata/api_client/api/prompt_api.py +320 -0
  24. rapidata/api_client/api/rapidata_identity_api_api.py +5 -4
  25. rapidata/api_client/api/sample_api.py +300 -0
  26. rapidata/api_client/api/simple_workflow_api.py +11 -10
  27. rapidata/api_client/api/survey_api.py +304 -0
  28. rapidata/api_client/api/user_rapid_api.py +35 -31
  29. rapidata/api_client/api/validation_set_api.py +513 -3233
  30. rapidata/api_client/api/workflow_api.py +32 -825
  31. rapidata/api_client/api_client.py +2 -2
  32. rapidata/api_client/configuration.py +16 -29
  33. rapidata/api_client/exceptions.py +2 -2
  34. rapidata/api_client/models/__init__.py +65 -307
  35. rapidata/api_client/models/ab_test_selection_a_inner.py +27 -13
  36. rapidata/api_client/models/add_campaign_model.py +3 -3
  37. rapidata/api_client/models/add_user_response_result.py +10 -5
  38. rapidata/api_client/models/add_validation_rapid_model.py +55 -24
  39. rapidata/api_client/models/add_validation_rapid_model_asset.py +154 -0
  40. rapidata/api_client/models/add_validation_rapid_model_context_asset.py +160 -0
  41. rapidata/api_client/models/add_validation_rapid_model_metadata_inner.py +140 -0
  42. rapidata/api_client/models/add_validation_rapid_model_truth.py +7 -1
  43. rapidata/api_client/models/add_validation_rapid_new_model.py +137 -0
  44. rapidata/api_client/models/add_validation_rapid_new_model_asset.py +182 -0
  45. rapidata/api_client/models/add_validation_rapid_new_model_truth.py +286 -0
  46. rapidata/api_client/models/add_validation_text_rapid_model.py +1 -3
  47. rapidata/api_client/models/age_user_filter_model.py +2 -2
  48. rapidata/api_client/models/age_user_filter_model_age_group.py +41 -0
  49. rapidata/api_client/models/aggregated_orders_model.py +98 -0
  50. rapidata/api_client/models/aggregator_type.py +4 -2
  51. rapidata/api_client/models/and_filter.py +121 -0
  52. rapidata/api_client/models/and_filter_filters_inner.py +282 -0
  53. rapidata/api_client/models/and_user_filter_model.py +106 -0
  54. rapidata/api_client/models/and_user_filter_model_filters_inner.py +282 -0
  55. rapidata/api_client/models/are_rapids_active_result.py +2 -2
  56. rapidata/api_client/models/asset_metadata.py +11 -9
  57. rapidata/api_client/models/asset_type.py +40 -0
  58. rapidata/api_client/models/attach_category_rapid_blueprint.py +13 -3
  59. rapidata/api_client/models/attach_category_rapid_blueprint_category.py +89 -0
  60. rapidata/api_client/models/audience_status.py +38 -0
  61. rapidata/api_client/models/benchmark_query_result.py +98 -0
  62. rapidata/api_client/models/benchmark_query_result_paged_result.py +105 -0
  63. rapidata/api_client/models/boost_leaderboard_model.py +89 -0
  64. rapidata/api_client/models/boost_mode.py +37 -0
  65. rapidata/api_client/models/boost_query_result.py +97 -0
  66. rapidata/api_client/models/boost_query_result_boost_mode.py +37 -0
  67. rapidata/api_client/models/boost_query_result_boost_status.py +39 -0
  68. rapidata/api_client/models/boost_status.py +39 -0
  69. rapidata/api_client/models/boosting_profile.py +89 -0
  70. rapidata/api_client/models/box_shape.py +4 -33
  71. rapidata/api_client/models/campaign_filter.py +98 -0
  72. rapidata/api_client/models/campaign_query_result.py +15 -13
  73. rapidata/api_client/models/campaign_status.py +2 -2
  74. rapidata/api_client/models/change_boost_model.py +89 -0
  75. rapidata/api_client/models/classification_metadata.py +12 -1
  76. rapidata/api_client/models/classify_payload.py +14 -15
  77. rapidata/api_client/models/classify_payload_category.py +89 -0
  78. rapidata/api_client/models/client_model.py +181 -0
  79. rapidata/api_client/models/clients_query_result.py +5 -5
  80. rapidata/api_client/models/clone_order_model.py +6 -8
  81. rapidata/api_client/models/clone_order_result.py +9 -4
  82. rapidata/api_client/models/compare_rapid_blueprint.py +5 -3
  83. rapidata/api_client/models/compare_rapid_blueprint1.py +96 -0
  84. rapidata/api_client/models/compare_workflow_config.py +34 -23
  85. rapidata/api_client/models/compare_workflow_config_context_asset.py +174 -0
  86. rapidata/api_client/models/compare_workflow_config_metadata_value.py +57 -15
  87. rapidata/api_client/models/compare_workflow_config_model.py +15 -5
  88. rapidata/api_client/models/compare_workflow_model.py +34 -6
  89. rapidata/api_client/models/compare_workflow_model1.py +20 -9
  90. rapidata/api_client/models/compare_workflow_model_context_asset.py +160 -0
  91. rapidata/api_client/models/compare_workflow_model_metadata_inner.py +154 -0
  92. rapidata/api_client/models/compare_workflow_model_pair_maker_config.py +1 -1
  93. rapidata/api_client/models/comparison_operator.py +2 -2
  94. rapidata/api_client/models/conditional_validation_selection.py +8 -11
  95. rapidata/api_client/models/conditional_validation_selection_validation_chance.py +103 -0
  96. rapidata/api_client/models/confidence_interval.py +89 -0
  97. rapidata/api_client/models/count_metadata.py +12 -1
  98. rapidata/api_client/models/country_filter.py +98 -0
  99. rapidata/api_client/models/create_audience_request.py +99 -0
  100. rapidata/api_client/models/create_audience_result.py +87 -0
  101. rapidata/api_client/models/create_benchmark_model.py +87 -0
  102. rapidata/api_client/models/create_benchmark_participant_model.py +87 -0
  103. rapidata/api_client/models/create_benchmark_participant_result.py +89 -0
  104. rapidata/api_client/models/create_benchmark_prompt_result.py +87 -0
  105. rapidata/api_client/models/create_benchmark_result.py +87 -0
  106. rapidata/api_client/models/create_bridge_token_result.py +2 -2
  107. rapidata/api_client/models/create_client_model.py +6 -13
  108. rapidata/api_client/models/create_complex_order_model.py +9 -9
  109. rapidata/api_client/models/create_complex_order_result.py +6 -4
  110. rapidata/api_client/models/create_customer_client_result.py +89 -0
  111. rapidata/api_client/models/create_datapoint_from_files_model.py +3 -3
  112. rapidata/api_client/models/create_datapoint_from_text_sources_model.py +3 -3
  113. rapidata/api_client/models/create_datapoint_from_urls_model.py +3 -3
  114. rapidata/api_client/models/create_datapoint_model.py +134 -0
  115. rapidata/api_client/models/create_datapoint_model_asset.py +154 -0
  116. rapidata/api_client/models/create_datapoint_model_context_asset.py +160 -0
  117. rapidata/api_client/models/create_datapoint_model_metadata_inner.py +154 -0
  118. rapidata/api_client/models/create_datapoint_result.py +6 -18
  119. rapidata/api_client/models/create_demographic_rapid_model.py +45 -7
  120. rapidata/api_client/models/create_demographic_rapid_model_asset.py +160 -0
  121. rapidata/api_client/models/create_demographic_rapid_model_context_asset.py +160 -0
  122. rapidata/api_client/models/create_demographic_rapid_model_new.py +119 -0
  123. rapidata/api_client/models/create_empty_validation_set_result.py +2 -2
  124. rapidata/api_client/models/create_leaderboard_model.py +140 -0
  125. rapidata/api_client/models/create_leaderboard_participant_model.py +87 -0
  126. rapidata/api_client/models/create_leaderboard_participant_result.py +89 -0
  127. rapidata/api_client/models/create_leaderboard_result.py +99 -0
  128. rapidata/api_client/models/create_order_model.py +30 -101
  129. rapidata/api_client/models/create_order_model_referee.py +12 -12
  130. rapidata/api_client/models/create_order_model_workflow.py +35 -21
  131. rapidata/api_client/models/create_order_result.py +6 -4
  132. rapidata/api_client/models/create_rapid_result.py +2 -2
  133. rapidata/api_client/models/create_sample_model.py +93 -0
  134. rapidata/api_client/models/create_sample_model_asset.py +154 -0
  135. rapidata/api_client/models/create_sample_model_obsolete.py +87 -0
  136. rapidata/api_client/models/create_simple_pipeline_model_pipeline_steps_inner.py +8 -22
  137. rapidata/api_client/models/create_unsupported_order_model.py +6 -6
  138. rapidata/api_client/models/create_validation_set_model.py +5 -5
  139. rapidata/api_client/models/datapoint_model.py +3 -3
  140. rapidata/api_client/models/datapoint_model_paged_result.py +105 -0
  141. rapidata/api_client/models/datapoint_state.py +2 -2
  142. rapidata/api_client/models/demographic_filter.py +100 -0
  143. rapidata/api_client/models/dynamic_client_registration_request.py +160 -0
  144. rapidata/api_client/models/early_stopping_referee_model.py +3 -3
  145. rapidata/api_client/models/effort_capped_selection.py +106 -0
  146. rapidata/api_client/models/elo_config.py +2 -2
  147. rapidata/api_client/models/elo_config_model.py +6 -6
  148. rapidata/api_client/models/entity_tag_header_value.py +93 -0
  149. rapidata/api_client/models/evaluation_workflow_config.py +13 -3
  150. rapidata/api_client/models/evaluation_workflow_model.py +16 -6
  151. rapidata/api_client/models/existing_asset_input.py +120 -0
  152. rapidata/api_client/models/existing_asset_input_metadata_value.py +126 -0
  153. rapidata/api_client/models/feature_flag.py +2 -2
  154. rapidata/api_client/models/feature_flag_model.py +6 -6
  155. rapidata/api_client/models/feedback_model.py +7 -7
  156. rapidata/api_client/models/file_asset.py +3 -5
  157. rapidata/api_client/models/file_asset_input.py +104 -0
  158. rapidata/api_client/models/file_asset_input1.py +104 -0
  159. rapidata/api_client/models/file_asset_input1_file.py +168 -0
  160. rapidata/api_client/models/file_asset_input2.py +104 -0
  161. rapidata/api_client/models/file_asset_input3.py +104 -0
  162. rapidata/api_client/models/file_asset_input_file.py +168 -0
  163. rapidata/api_client/models/file_asset_metadata_value.py +252 -0
  164. rapidata/api_client/models/file_asset_model_metadata_value.py +43 -71
  165. rapidata/api_client/models/file_stream_result.py +122 -0
  166. rapidata/api_client/models/file_type.py +39 -0
  167. rapidata/api_client/models/file_type_metadata.py +110 -0
  168. rapidata/api_client/models/file_type_metadata_model.py +97 -0
  169. rapidata/api_client/models/filter.py +7 -25
  170. rapidata/api_client/models/filter_operator.py +3 -2
  171. rapidata/api_client/models/fork_benchmark_result.py +87 -0
  172. rapidata/api_client/models/form_file_wrapper.py +135 -0
  173. rapidata/api_client/models/free_text_payload.py +10 -3
  174. rapidata/api_client/models/free_text_rapid_blueprint.py +10 -3
  175. rapidata/api_client/models/gender_user_filter_model.py +2 -2
  176. rapidata/api_client/models/gender_user_filter_model_gender.py +38 -0
  177. rapidata/api_client/models/get_asset_metadata_result.py +100 -0
  178. rapidata/api_client/models/get_audience_by_id_result.py +111 -0
  179. rapidata/api_client/models/get_available_validation_sets_result.py +2 -2
  180. rapidata/api_client/models/get_benchmark_by_id_query.py +96 -0
  181. rapidata/api_client/models/get_benchmark_by_id_query_result.py +94 -0
  182. rapidata/api_client/models/get_benchmark_by_id_query_result_paged_result.py +105 -0
  183. rapidata/api_client/models/get_benchmark_by_id_result.py +96 -0
  184. rapidata/api_client/models/get_boost_result.py +97 -0
  185. rapidata/api_client/models/get_boost_result_boost_mode.py +37 -0
  186. rapidata/api_client/models/get_boost_result_boost_status.py +39 -0
  187. rapidata/api_client/models/get_compare_ab_summary_result.py +5 -5
  188. rapidata/api_client/models/get_compare_workflow_results_model.py +7 -7
  189. rapidata/api_client/models/get_compare_workflow_results_result.py +5 -5
  190. rapidata/api_client/models/get_datapoint_by_id_result.py +10 -21
  191. rapidata/api_client/models/get_datapoint_by_id_result_asset.py +170 -0
  192. rapidata/api_client/models/get_dataset_by_id_result.py +2 -2
  193. rapidata/api_client/models/get_dataset_progress_result.py +2 -2
  194. rapidata/api_client/models/get_evaluation_workflow_results_model.py +119 -0
  195. rapidata/api_client/models/get_failed_datapoints_result.py +5 -5
  196. rapidata/api_client/models/get_failed_datapoints_result_datapoint.py +100 -0
  197. rapidata/api_client/models/get_file_metadata_result.py +100 -0
  198. rapidata/api_client/models/get_grouped_ranking_workflow_results_model.py +106 -0
  199. rapidata/api_client/models/get_grouped_ranking_workflow_results_result.py +97 -0
  200. rapidata/api_client/models/get_grouped_ranking_workflow_results_result_paged_result.py +105 -0
  201. rapidata/api_client/models/get_leaderboard_by_id_result.py +135 -0
  202. rapidata/api_client/models/get_order_by_id_result.py +12 -5
  203. rapidata/api_client/models/get_participant_by_id_result.py +91 -0
  204. rapidata/api_client/models/get_pipeline_by_id_result.py +5 -5
  205. rapidata/api_client/models/get_public_orders_result.py +2 -2
  206. rapidata/api_client/models/get_public_responses_result.py +95 -0
  207. rapidata/api_client/models/get_public_responses_result_response.py +112 -0
  208. rapidata/api_client/models/get_rapid_responses_result.py +6 -12
  209. rapidata/api_client/models/get_recommended_validation_set_result.py +95 -0
  210. rapidata/api_client/models/get_responses_for_rapid_result.py +106 -0
  211. rapidata/api_client/models/get_responses_for_rapid_result_response.py +103 -0
  212. rapidata/api_client/models/get_responses_for_rapid_result_response_result.py +266 -0
  213. rapidata/api_client/models/get_responses_result.py +5 -5
  214. rapidata/api_client/models/get_responses_result_response.py +103 -0
  215. rapidata/api_client/models/get_sample_by_id_result.py +125 -0
  216. rapidata/api_client/models/get_simple_workflow_results_model.py +20 -15
  217. rapidata/api_client/models/get_standing_by_id_result.py +96 -0
  218. rapidata/api_client/models/get_validation_rapids_result.py +32 -41
  219. rapidata/api_client/models/get_validation_set_by_id_result.py +10 -4
  220. rapidata/api_client/models/get_workflow_by_id_result.py +5 -5
  221. rapidata/api_client/models/get_workflow_by_id_result_workflow.py +23 -9
  222. rapidata/api_client/models/get_workflow_progress_result.py +5 -11
  223. rapidata/api_client/models/get_workflow_results_result.py +34 -23
  224. rapidata/api_client/models/get_workflow_results_result_response.py +103 -0
  225. rapidata/api_client/models/google_one_tap_login_model.py +4 -4
  226. rapidata/api_client/models/grouped_ranking_workflow_config.py +155 -0
  227. rapidata/api_client/models/grouped_ranking_workflow_config_context_assets_value.py +170 -0
  228. rapidata/api_client/models/grouped_ranking_workflow_model.py +147 -0
  229. rapidata/api_client/models/grouped_ranking_workflow_model1.py +121 -0
  230. rapidata/api_client/models/i_artifact_model.py +182 -0
  231. rapidata/api_client/models/i_artifact_model_campaign_artifact_model.py +98 -0
  232. rapidata/api_client/models/i_artifact_model_dataset_artifact_model.py +98 -0
  233. rapidata/api_client/models/i_artifact_model_file_artifact_model.py +98 -0
  234. rapidata/api_client/models/i_artifact_model_workflow_artifact_model.py +98 -0
  235. rapidata/api_client/models/i_artifact_model_workflow_config_artifact_model.py +102 -0
  236. rapidata/api_client/models/i_asset.py +170 -0
  237. rapidata/api_client/models/i_asset_file_asset.py +111 -0
  238. rapidata/api_client/models/i_asset_input.py +156 -0
  239. rapidata/api_client/models/i_asset_input_existing_asset_input.py +118 -0
  240. rapidata/api_client/models/i_asset_input_multi_asset_input.py +128 -0
  241. rapidata/api_client/models/i_asset_input_text_asset_input.py +118 -0
  242. rapidata/api_client/models/i_asset_model.py +170 -0
  243. rapidata/api_client/models/i_asset_model_file_asset_model.py +113 -0
  244. rapidata/api_client/models/i_asset_model_multi_asset_model.py +123 -0
  245. rapidata/api_client/models/i_asset_model_null_asset_model.py +111 -0
  246. rapidata/api_client/models/i_asset_model_text_asset_model.py +113 -0
  247. rapidata/api_client/models/i_asset_multi_asset.py +121 -0
  248. rapidata/api_client/models/i_asset_null_asset.py +109 -0
  249. rapidata/api_client/models/i_asset_text_asset.py +111 -0
  250. rapidata/api_client/models/i_campaign_filter.py +282 -0
  251. rapidata/api_client/models/i_campaign_filter_and_filter.py +117 -0
  252. rapidata/api_client/models/i_campaign_filter_campaign_filter.py +98 -0
  253. rapidata/api_client/models/i_campaign_filter_country_filter.py +98 -0
  254. rapidata/api_client/models/i_campaign_filter_demographic_filter.py +100 -0
  255. rapidata/api_client/models/i_campaign_filter_language_filter.py +98 -0
  256. rapidata/api_client/models/i_campaign_filter_new_user_filter.py +96 -0
  257. rapidata/api_client/models/i_campaign_filter_not_filter.py +113 -0
  258. rapidata/api_client/models/i_campaign_filter_or_filter.py +117 -0
  259. rapidata/api_client/models/i_campaign_filter_response_count_filter.py +103 -0
  260. rapidata/api_client/models/i_campaign_filter_user_action_restriction_filter.py +106 -0
  261. rapidata/api_client/models/i_campaign_filter_user_score_filter.py +102 -0
  262. rapidata/api_client/models/i_campaign_filter_user_state_filter.py +106 -0
  263. rapidata/api_client/models/i_dataset_metadata_input.py +154 -0
  264. rapidata/api_client/models/i_dataset_metadata_input_prompt_asset_metadata_input.py +100 -0
  265. rapidata/api_client/models/i_dataset_metadata_input_prompt_metadata_input.py +96 -0
  266. rapidata/api_client/models/i_dataset_metadata_input_transcription_metadata_input.py +96 -0
  267. rapidata/api_client/models/i_dataset_model.py +126 -0
  268. rapidata/api_client/models/i_dataset_model_clone_dataset_model.py +98 -0
  269. rapidata/api_client/models/i_metadata.py +252 -0
  270. rapidata/api_client/models/i_metadata_classification_metadata.py +109 -0
  271. rapidata/api_client/models/i_metadata_count_metadata.py +109 -0
  272. rapidata/api_client/models/i_metadata_file_type_metadata.py +110 -0
  273. rapidata/api_client/models/i_metadata_image_dimension_metadata.py +111 -0
  274. rapidata/api_client/models/i_metadata_input.py +126 -0
  275. rapidata/api_client/models/i_metadata_input_text_metadata_input.py +111 -0
  276. rapidata/api_client/models/i_metadata_location_metadata.py +111 -0
  277. rapidata/api_client/models/i_metadata_model.py +252 -0
  278. rapidata/api_client/models/i_metadata_model_classification_metadata_model.py +96 -0
  279. rapidata/api_client/models/i_metadata_model_count_metadata_model.py +96 -0
  280. rapidata/api_client/models/i_metadata_model_file_type_metadata_model.py +97 -0
  281. rapidata/api_client/models/i_metadata_model_image_dimension_metadata_model.py +98 -0
  282. rapidata/api_client/models/i_metadata_model_location_metadata_model.py +98 -0
  283. rapidata/api_client/models/i_metadata_model_original_filename_metadata_model.py +96 -0
  284. rapidata/api_client/models/i_metadata_model_source_url_metadata_model.py +96 -0
  285. rapidata/api_client/models/i_metadata_model_streams_metadata_model.py +100 -0
  286. rapidata/api_client/models/i_metadata_model_text_metadata_model.py +101 -0
  287. rapidata/api_client/models/i_metadata_model_video_duration_metadata_model.py +97 -0
  288. rapidata/api_client/models/i_metadata_original_filename_metadata.py +109 -0
  289. rapidata/api_client/models/i_metadata_source_url_metadata.py +109 -0
  290. rapidata/api_client/models/i_metadata_streams_metadata.py +113 -0
  291. rapidata/api_client/models/i_metadata_text_metadata.py +114 -0
  292. rapidata/api_client/models/i_metadata_video_duration_metadata.py +110 -0
  293. rapidata/api_client/models/i_order_workflow_model.py +168 -0
  294. rapidata/api_client/models/i_order_workflow_model_compare_workflow_model.py +146 -0
  295. rapidata/api_client/models/i_order_workflow_model_evaluation_workflow_model.py +108 -0
  296. rapidata/api_client/models/i_order_workflow_model_grouped_ranking_workflow_model.py +147 -0
  297. rapidata/api_client/models/i_order_workflow_model_simple_workflow_model.py +110 -0
  298. rapidata/api_client/models/i_pair_maker_config.py +126 -0
  299. rapidata/api_client/models/i_pair_maker_config_model.py +126 -0
  300. rapidata/api_client/models/i_pair_maker_config_model_online_pair_maker_config_model.py +98 -0
  301. rapidata/api_client/models/i_pair_maker_config_online_pair_maker_config.py +98 -0
  302. rapidata/api_client/models/i_pair_maker_information.py +126 -0
  303. rapidata/api_client/models/i_pair_maker_information_online_pair_maker_information.py +100 -0
  304. rapidata/api_client/models/i_pipeline_artifact_model.py +126 -0
  305. rapidata/api_client/models/i_pipeline_artifact_model_create_dataset_artifact_model.py +102 -0
  306. rapidata/api_client/models/i_pipeline_model.py +126 -0
  307. rapidata/api_client/models/i_pipeline_model_create_simple_pipeline_model.py +116 -0
  308. rapidata/api_client/models/i_pipeline_step_model.py +168 -0
  309. rapidata/api_client/models/i_pipeline_step_model_dataset_evaluation_step_model.py +102 -0
  310. rapidata/api_client/models/i_pipeline_step_model_send_completion_mail_step_model.py +98 -0
  311. rapidata/api_client/models/i_pipeline_step_model_workflow_aggregation_step_model.py +103 -0
  312. rapidata/api_client/models/i_pipeline_step_model_workflow_labeling_step_model.py +96 -0
  313. rapidata/api_client/models/i_rapid_blueprint.py +252 -0
  314. rapidata/api_client/models/i_rapid_blueprint_attach_category_rapid_blueprint.py +108 -0
  315. rapidata/api_client/models/i_rapid_blueprint_bounding_box_rapid_blueprint.py +96 -0
  316. rapidata/api_client/models/i_rapid_blueprint_compare_rapid_blueprint.py +98 -0
  317. rapidata/api_client/models/i_rapid_blueprint_free_text_rapid_blueprint.py +103 -0
  318. rapidata/api_client/models/i_rapid_blueprint_line_rapid_blueprint.py +96 -0
  319. rapidata/api_client/models/i_rapid_blueprint_locate_rapid_blueprint.py +96 -0
  320. rapidata/api_client/models/i_rapid_blueprint_named_entity_rapid_blueprint.py +98 -0
  321. rapidata/api_client/models/i_rapid_blueprint_polygon_rapid_blueprint.py +96 -0
  322. rapidata/api_client/models/i_rapid_blueprint_scrub_rapid_blueprint.py +96 -0
  323. rapidata/api_client/models/i_rapid_blueprint_transcription_rapid_blueprint.py +96 -0
  324. rapidata/api_client/models/i_rapid_payload.py +252 -0
  325. rapidata/api_client/models/i_rapid_payload_bounding_box_payload.py +96 -0
  326. rapidata/api_client/models/i_rapid_payload_classify_payload.py +106 -0
  327. rapidata/api_client/models/i_rapid_payload_compare_payload.py +96 -0
  328. rapidata/api_client/models/i_rapid_payload_free_text_payload.py +103 -0
  329. rapidata/api_client/models/i_rapid_payload_line_payload.py +96 -0
  330. rapidata/api_client/models/i_rapid_payload_locate_payload.py +96 -0
  331. rapidata/api_client/models/i_rapid_payload_named_entity_payload.py +98 -0
  332. rapidata/api_client/models/i_rapid_payload_polygon_payload.py +96 -0
  333. rapidata/api_client/models/i_rapid_payload_scrub_payload.py +96 -0
  334. rapidata/api_client/models/i_rapid_payload_transcription_payload.py +106 -0
  335. rapidata/api_client/models/i_rapid_result.py +266 -0
  336. rapidata/api_client/models/i_rapid_result_attach_category_result.py +98 -0
  337. rapidata/api_client/models/i_rapid_result_bounding_box_result.py +106 -0
  338. rapidata/api_client/models/i_rapid_result_compare_result.py +98 -0
  339. rapidata/api_client/models/i_rapid_result_free_text_result.py +98 -0
  340. rapidata/api_client/models/i_rapid_result_line_result.py +106 -0
  341. rapidata/api_client/models/i_rapid_result_locate_result.py +106 -0
  342. rapidata/api_client/models/i_rapid_result_named_entity_result.py +106 -0
  343. rapidata/api_client/models/i_rapid_result_polygon_result.py +106 -0
  344. rapidata/api_client/models/i_rapid_result_scrub_result.py +98 -0
  345. rapidata/api_client/models/i_rapid_result_skip_result.py +96 -0
  346. rapidata/api_client/models/i_rapid_result_transcription_result.py +106 -0
  347. rapidata/api_client/models/i_referee_config.py +154 -0
  348. rapidata/api_client/models/i_referee_config_naive_referee_config.py +96 -0
  349. rapidata/api_client/models/i_referee_config_never_ending_referee_config.py +94 -0
  350. rapidata/api_client/models/i_referee_config_probabilistic_attach_category_referee_config.py +98 -0
  351. rapidata/api_client/models/i_referee_info.py +154 -0
  352. rapidata/api_client/models/i_referee_info_naive_referee_info.py +96 -0
  353. rapidata/api_client/models/i_referee_info_never_ending_referee_info.py +94 -0
  354. rapidata/api_client/models/i_referee_info_probabilistic_attach_category_referee_info.py +98 -0
  355. rapidata/api_client/models/i_referee_model.py +140 -0
  356. rapidata/api_client/models/i_referee_model_early_stopping_referee_model.py +98 -0
  357. rapidata/api_client/models/i_referee_model_naive_referee_model.py +96 -0
  358. rapidata/api_client/models/i_selection.py +240 -0
  359. rapidata/api_client/models/i_selection_ab_test_selection.py +122 -0
  360. rapidata/api_client/models/i_selection_capped_selection.py +108 -0
  361. rapidata/api_client/models/i_selection_conditional_validation_selection.py +110 -0
  362. rapidata/api_client/models/i_selection_demographic_selection.py +98 -0
  363. rapidata/api_client/models/i_selection_effort_capped_selection.py +101 -0
  364. rapidata/api_client/models/i_selection_labeling_selection.py +103 -0
  365. rapidata/api_client/models/i_selection_shuffling_selection.py +106 -0
  366. rapidata/api_client/models/i_selection_static_selection.py +96 -0
  367. rapidata/api_client/models/i_selection_validation_selection.py +98 -0
  368. rapidata/api_client/models/i_user_filter_model.py +282 -0
  369. rapidata/api_client/models/i_user_filter_model_age_user_filter_model.py +104 -0
  370. rapidata/api_client/models/i_user_filter_model_and_user_filter_model.py +106 -0
  371. rapidata/api_client/models/i_user_filter_model_campaign_user_filter_model.py +96 -0
  372. rapidata/api_client/models/i_user_filter_model_country_user_filter_model.py +96 -0
  373. rapidata/api_client/models/i_user_filter_model_custom_user_filter_model.py +98 -0
  374. rapidata/api_client/models/i_user_filter_model_gender_user_filter_model.py +104 -0
  375. rapidata/api_client/models/i_user_filter_model_language_user_filter_model.py +96 -0
  376. rapidata/api_client/models/i_user_filter_model_new_user_filter_model.py +94 -0
  377. rapidata/api_client/models/i_user_filter_model_not_user_filter_model.py +102 -0
  378. rapidata/api_client/models/i_user_filter_model_or_user_filter_model.py +106 -0
  379. rapidata/api_client/models/i_user_filter_model_response_count_user_filter_model.py +101 -0
  380. rapidata/api_client/models/i_user_filter_model_user_score_user_filter_model.py +105 -0
  381. rapidata/api_client/models/i_validation_metadata_input.py +140 -0
  382. rapidata/api_client/models/i_validation_metadata_input_prompt_asset_metadata_input.py +100 -0
  383. rapidata/api_client/models/i_validation_metadata_input_prompt_metadata_input.py +96 -0
  384. rapidata/api_client/models/i_validation_truth.py +280 -0
  385. rapidata/api_client/models/i_validation_truth_attach_category_truth.py +96 -0
  386. rapidata/api_client/models/i_validation_truth_bounding_box_truth.py +102 -0
  387. rapidata/api_client/models/i_validation_truth_compare_truth.py +96 -0
  388. rapidata/api_client/models/i_validation_truth_empty_validation_truth.py +94 -0
  389. rapidata/api_client/models/i_validation_truth_line_truth.py +94 -0
  390. rapidata/api_client/models/i_validation_truth_locate_box_truth.py +104 -0
  391. rapidata/api_client/models/i_validation_truth_multi_compare_truth.py +96 -0
  392. rapidata/api_client/models/i_validation_truth_named_entity_truth.py +104 -0
  393. rapidata/api_client/models/i_validation_truth_polygon_truth.py +94 -0
  394. rapidata/api_client/models/i_validation_truth_scrub_truth.py +104 -0
  395. rapidata/api_client/models/i_validation_truth_skip_truth.py +94 -0
  396. rapidata/api_client/models/i_validation_truth_transcription_truth.py +115 -0
  397. rapidata/api_client/models/i_workflow_config.py +168 -0
  398. rapidata/api_client/models/i_workflow_config_compare_workflow_config.py +142 -0
  399. rapidata/api_client/models/i_workflow_config_evaluation_workflow_config.py +114 -0
  400. rapidata/api_client/models/i_workflow_config_grouped_ranking_workflow_config.py +155 -0
  401. rapidata/api_client/models/i_workflow_config_simple_workflow_config.py +116 -0
  402. rapidata/api_client/models/i_workflow_model.py +168 -0
  403. rapidata/api_client/models/i_workflow_model_compare_workflow_model.py +145 -0
  404. rapidata/api_client/models/i_workflow_model_evaluation_workflow_model.py +115 -0
  405. rapidata/api_client/models/i_workflow_model_grouped_ranking_workflow_model.py +121 -0
  406. rapidata/api_client/models/i_workflow_model_simple_workflow_model.py +119 -0
  407. rapidata/api_client/models/image_dimension_metadata.py +12 -1
  408. rapidata/api_client/models/inquire_file_metadata_result.py +100 -0
  409. rapidata/api_client/models/inspect_report_result.py +2 -2
  410. rapidata/api_client/models/json_web_key.py +224 -0
  411. rapidata/api_client/models/json_web_key_set.py +95 -0
  412. rapidata/api_client/models/labeling_selection.py +11 -13
  413. rapidata/api_client/models/language_filter.py +98 -0
  414. rapidata/api_client/models/leaderboard_query_result.py +135 -0
  415. rapidata/api_client/models/leaderboard_query_result_paged_result.py +105 -0
  416. rapidata/api_client/models/leaderboards_query_result.py +135 -0
  417. rapidata/api_client/models/line_result.py +3 -3
  418. rapidata/api_client/models/line_result_line.py +97 -0
  419. rapidata/api_client/models/line_result_line_point.py +89 -0
  420. rapidata/api_client/models/local_file_wrapper.py +120 -0
  421. rapidata/api_client/models/locate_coordinate.py +4 -13
  422. rapidata/api_client/models/location_metadata.py +12 -1
  423. rapidata/api_client/models/logic_operator.py +2 -2
  424. rapidata/api_client/models/metadata_i_order_metadata_input.py +154 -0
  425. rapidata/api_client/models/metadata_i_order_metadata_input_metadata_prompt_asset_metadata_input.py +100 -0
  426. rapidata/api_client/models/metadata_i_order_metadata_input_metadata_prompt_metadata_input.py +96 -0
  427. rapidata/api_client/models/metadata_i_order_metadata_input_metadata_transcription_metadata_input.py +96 -0
  428. rapidata/api_client/models/metadata_prompt_asset_metadata_input.py +100 -0
  429. rapidata/api_client/models/metadata_prompt_metadata_input.py +96 -0
  430. rapidata/api_client/models/metadata_transcription_metadata_input.py +96 -0
  431. rapidata/api_client/models/multi_asset.py +6 -6
  432. rapidata/api_client/models/multi_asset_assets_inner.py +170 -0
  433. rapidata/api_client/models/multi_asset_input.py +130 -0
  434. rapidata/api_client/models/multi_asset_input1.py +110 -0
  435. rapidata/api_client/models/multi_asset_input1_assets_inner.py +198 -0
  436. rapidata/api_client/models/multi_asset_input2.py +110 -0
  437. rapidata/api_client/models/multi_asset_input3.py +110 -0
  438. rapidata/api_client/models/multi_asset_input3_assets_inner.py +198 -0
  439. rapidata/api_client/models/multi_asset_input_assets_inner.py +156 -0
  440. rapidata/api_client/models/multi_asset_model.py +3 -3
  441. rapidata/api_client/models/naive_referee_model.py +2 -2
  442. rapidata/api_client/models/named_classification.py +4 -13
  443. rapidata/api_client/models/new_user_filter.py +96 -0
  444. rapidata/api_client/models/newsletter_model.py +6 -6
  445. rapidata/api_client/models/not_available_yet_result.py +4 -13
  446. rapidata/api_client/models/not_filter.py +117 -0
  447. rapidata/api_client/models/not_user_filter_model.py +3 -3
  448. rapidata/api_client/models/null_asset.py +3 -5
  449. rapidata/api_client/models/online_pair_maker_config_model.py +3 -3
  450. rapidata/api_client/models/or_filter.py +121 -0
  451. rapidata/api_client/models/or_user_filter_model.py +3 -3
  452. rapidata/api_client/models/order_model.py +15 -14
  453. rapidata/api_client/models/order_state.py +2 -2
  454. rapidata/api_client/models/original_filename_metadata.py +12 -1
  455. rapidata/api_client/models/page_info.py +2 -7
  456. rapidata/api_client/models/paged_result_aggregated_orders_model.py +105 -0
  457. rapidata/api_client/models/paged_result_benchmark_query_result.py +105 -0
  458. rapidata/api_client/models/paged_result_campaign_query_result.py +105 -0
  459. rapidata/api_client/models/paged_result_clients_query_result.py +105 -0
  460. rapidata/api_client/models/paged_result_datapoint_model.py +105 -0
  461. rapidata/api_client/models/paged_result_get_compare_workflow_results_result.py +105 -0
  462. rapidata/api_client/models/paged_result_get_grouped_ranking_workflow_results_result.py +105 -0
  463. rapidata/api_client/models/paged_result_get_validation_rapids_result.py +105 -0
  464. rapidata/api_client/models/paged_result_get_workflow_results_result.py +105 -0
  465. rapidata/api_client/models/paged_result_i_workflow_model.py +105 -0
  466. rapidata/api_client/models/paged_result_leaderboard_query_result.py +105 -0
  467. rapidata/api_client/models/paged_result_leaderboards_query_result.py +105 -0
  468. rapidata/api_client/models/paged_result_of_aggregated_orders_model.py +103 -0
  469. rapidata/api_client/models/paged_result_of_benchmark_query_result.py +103 -0
  470. rapidata/api_client/models/paged_result_of_campaign_query_result.py +103 -0
  471. rapidata/api_client/models/paged_result_of_clients_query_result.py +103 -0
  472. rapidata/api_client/models/paged_result_of_get_compare_workflow_results_result.py +103 -0
  473. rapidata/api_client/models/paged_result_of_get_grouped_ranking_workflow_results_result.py +103 -0
  474. rapidata/api_client/models/paged_result_of_get_validation_rapids_result.py +103 -0
  475. rapidata/api_client/models/paged_result_of_get_workflow_results_result.py +103 -0
  476. rapidata/api_client/models/paged_result_of_i_workflow_model.py +103 -0
  477. rapidata/api_client/models/paged_result_of_leaderboards_query_result.py +103 -0
  478. rapidata/api_client/models/paged_result_of_order_model.py +103 -0
  479. rapidata/api_client/models/paged_result_of_participant_by_benchmark.py +103 -0
  480. rapidata/api_client/models/paged_result_of_prompt_by_benchmark_result.py +103 -0
  481. rapidata/api_client/models/paged_result_of_query_audiences_result.py +103 -0
  482. rapidata/api_client/models/paged_result_of_query_datapoints_by_dataset_id_result.py +103 -0
  483. rapidata/api_client/models/paged_result_of_query_validation_rapid_eligibility_result.py +103 -0
  484. rapidata/api_client/models/paged_result_of_rapid_model.py +103 -0
  485. rapidata/api_client/models/paged_result_of_runs_by_leaderboard_result.py +103 -0
  486. rapidata/api_client/models/paged_result_of_sample_by_identifier.py +103 -0
  487. rapidata/api_client/models/paged_result_of_sample_by_participant.py +103 -0
  488. rapidata/api_client/models/paged_result_of_standing_by_leaderboard.py +103 -0
  489. rapidata/api_client/models/paged_result_of_validation_set_model.py +103 -0
  490. rapidata/api_client/models/paged_result_order_model.py +105 -0
  491. rapidata/api_client/models/paged_result_participant_by_benchmark.py +105 -0
  492. rapidata/api_client/models/paged_result_potential_validation_rapid.py +105 -0
  493. rapidata/api_client/models/paged_result_prompt_by_benchmark_result.py +105 -0
  494. rapidata/api_client/models/paged_result_query_audiences_result.py +105 -0
  495. rapidata/api_client/models/paged_result_query_datapoints_by_dataset_id_result.py +105 -0
  496. rapidata/api_client/models/paged_result_query_validation_rapid_eligibility_result.py +105 -0
  497. rapidata/api_client/models/paged_result_rapid_model.py +105 -0
  498. rapidata/api_client/models/paged_result_runs_by_leaderboard_result.py +105 -0
  499. rapidata/api_client/models/paged_result_sample_by_identifier.py +105 -0
  500. rapidata/api_client/models/paged_result_sample_by_participant.py +105 -0
  501. rapidata/api_client/models/paged_result_standing_by_leaderboard.py +105 -0
  502. rapidata/api_client/models/paged_result_validation_set_model.py +105 -0
  503. rapidata/api_client/models/participant_by_benchmark.py +94 -0
  504. rapidata/api_client/models/participant_by_benchmark_paged_result.py +105 -0
  505. rapidata/api_client/models/participant_by_leaderboard.py +113 -0
  506. rapidata/api_client/models/participant_by_leaderboard_paged_result.py +105 -0
  507. rapidata/api_client/models/participant_status.py +38 -0
  508. rapidata/api_client/models/pipeline_id_workflow_config_put_request.py +140 -0
  509. rapidata/api_client/models/polygon_result.py +3 -3
  510. rapidata/api_client/models/polygon_result_coordinate.py +89 -0
  511. rapidata/api_client/models/polygon_result_shape.py +95 -0
  512. rapidata/api_client/models/potential_validation_rapid.py +103 -0
  513. rapidata/api_client/models/potential_validation_rapid_paged_result.py +105 -0
  514. rapidata/api_client/models/potential_validation_rapid_truth.py +280 -0
  515. rapidata/api_client/models/preliminary_download_model.py +5 -5
  516. rapidata/api_client/models/preview_order_model.py +87 -0
  517. rapidata/api_client/models/problem_details.py +2 -20
  518. rapidata/api_client/models/prompt_asset_metadata_input.py +6 -8
  519. rapidata/api_client/models/prompt_asset_metadata_input_asset.py +154 -0
  520. rapidata/api_client/models/prompt_by_benchmark_result.py +112 -0
  521. rapidata/api_client/models/prompt_by_benchmark_result_paged_result.py +105 -0
  522. rapidata/api_client/models/prompt_by_leaderboard_result.py +90 -0
  523. rapidata/api_client/models/prompt_by_leaderboard_result_paged_result.py +105 -0
  524. rapidata/api_client/models/prompt_metadata.py +12 -1
  525. rapidata/api_client/models/prompt_metadata_input.py +2 -2
  526. rapidata/api_client/models/prompt_type.py +38 -0
  527. rapidata/api_client/models/proxy_file_wrapper.py +129 -0
  528. rapidata/api_client/models/public_order_model.py +2 -2
  529. rapidata/api_client/models/public_rapid_response.py +112 -0
  530. rapidata/api_client/models/query_audiences_result.py +111 -0
  531. rapidata/api_client/models/query_datapoints_by_dataset_id_result.py +95 -0
  532. rapidata/api_client/models/query_model.py +10 -5
  533. rapidata/api_client/models/query_validation_model.py +97 -0
  534. rapidata/api_client/models/query_validation_rapid_eligibility_model_query_validation_model.py +107 -0
  535. rapidata/api_client/models/query_validation_rapid_eligibility_result.py +103 -0
  536. rapidata/api_client/models/query_validation_rapid_eligibility_result_truth.py +280 -0
  537. rapidata/api_client/models/rapid_issue.py +2 -2
  538. rapidata/api_client/models/rapid_modality.py +46 -0
  539. rapidata/api_client/models/rapid_model.py +33 -49
  540. rapidata/api_client/models/rapid_result_model.py +7 -7
  541. rapidata/api_client/models/rapid_skipped_model.py +5 -5
  542. rapidata/api_client/models/rapid_state.py +2 -2
  543. rapidata/api_client/models/read_bridge_token_keys_result.py +10 -24
  544. rapidata/api_client/models/reference_asset_input.py +100 -0
  545. rapidata/api_client/models/report_model.py +9 -15
  546. rapidata/api_client/models/response_count_filter.py +103 -0
  547. rapidata/api_client/models/response_count_user_filter_model.py +2 -8
  548. rapidata/api_client/models/retrieval_mode.py +2 -2
  549. rapidata/api_client/models/root_filter.py +5 -14
  550. rapidata/api_client/models/run_status.py +39 -0
  551. rapidata/api_client/models/runs_by_leaderboard_result.py +104 -0
  552. rapidata/api_client/models/runs_by_leaderboard_result_paged_result.py +105 -0
  553. rapidata/api_client/models/sample_by_identifier.py +125 -0
  554. rapidata/api_client/models/sample_by_identifier_paged_result.py +105 -0
  555. rapidata/api_client/models/sample_by_participant.py +121 -0
  556. rapidata/api_client/models/sample_by_participant_paged_result.py +105 -0
  557. rapidata/api_client/models/scrub_range.py +2 -2
  558. rapidata/api_client/models/send_survey_model.py +87 -0
  559. rapidata/api_client/models/simple_workflow_config.py +15 -7
  560. rapidata/api_client/models/simple_workflow_config_blueprint.py +37 -23
  561. rapidata/api_client/models/simple_workflow_config_model.py +11 -3
  562. rapidata/api_client/models/simple_workflow_model.py +14 -4
  563. rapidata/api_client/models/simple_workflow_model1.py +4 -11
  564. rapidata/api_client/models/simple_workflow_model_blueprint.py +1 -1
  565. rapidata/api_client/models/sort_criterion.py +5 -11
  566. rapidata/api_client/models/sort_direction.py +2 -2
  567. rapidata/api_client/models/source_url_metadata.py +12 -1
  568. rapidata/api_client/models/standing_by_benchmark.py +113 -0
  569. rapidata/api_client/models/standing_by_leaderboard.py +113 -0
  570. rapidata/api_client/models/standing_by_leaderboard_paged_result.py +105 -0
  571. rapidata/api_client/models/standing_status.py +38 -0
  572. rapidata/api_client/models/standings_by_benchmark_result.py +95 -0
  573. rapidata/api_client/models/standings_by_leaderboard_result.py +95 -0
  574. rapidata/api_client/models/start_preliminary_download_result.py +87 -0
  575. rapidata/api_client/models/sticky_state.py +3 -2
  576. rapidata/api_client/models/stream_file_wrapper.py +138 -0
  577. rapidata/api_client/models/streams_metadata.py +113 -0
  578. rapidata/api_client/models/streams_metadata_model.py +100 -0
  579. rapidata/api_client/models/string_segment.py +105 -0
  580. rapidata/api_client/models/submit_coco_model.py +1 -3
  581. rapidata/api_client/models/submit_order_model.py +87 -0
  582. rapidata/api_client/models/submit_participant_result.py +89 -0
  583. rapidata/api_client/models/submit_prompt_model.py +107 -0
  584. rapidata/api_client/models/submit_prompt_model_prompt_asset.py +202 -0
  585. rapidata/api_client/models/tags_by_benchmark_result.py +87 -0
  586. rapidata/api_client/models/text_asset.py +3 -5
  587. rapidata/api_client/models/text_asset_input.py +120 -0
  588. rapidata/api_client/models/text_metadata.py +18 -2
  589. rapidata/api_client/models/text_metadata_input.py +111 -0
  590. rapidata/api_client/models/text_metadata_model.py +7 -2
  591. rapidata/api_client/models/transcription_metadata.py +9 -1
  592. rapidata/api_client/models/transcription_metadata_input.py +2 -2
  593. rapidata/api_client/models/transcription_word.py +2 -2
  594. rapidata/api_client/models/translated_string.py +2 -2
  595. rapidata/api_client/models/unlock_order_result.py +2 -2
  596. rapidata/api_client/models/update_audience_request.py +102 -0
  597. rapidata/api_client/models/update_benchmark_model.py +99 -0
  598. rapidata/api_client/models/update_benchmark_name_model.py +87 -0
  599. rapidata/api_client/models/update_campaign_model.py +11 -11
  600. rapidata/api_client/models/update_dataset_name_model.py +5 -5
  601. rapidata/api_client/models/update_dimensions_model.py +3 -3
  602. rapidata/api_client/models/update_leaderboard_model.py +106 -0
  603. rapidata/api_client/models/update_leaderboard_name_model.py +87 -0
  604. rapidata/api_client/models/update_leaderboard_response_config_model.py +89 -0
  605. rapidata/api_client/models/update_order_name_model.py +5 -5
  606. rapidata/api_client/models/update_participant_model.py +92 -0
  607. rapidata/api_client/models/update_participant_name_model.py +87 -0
  608. rapidata/api_client/models/update_priority_model.py +87 -0
  609. rapidata/api_client/models/update_prompt_tags_model.py +87 -0
  610. rapidata/api_client/models/update_should_alert_model.py +87 -0
  611. rapidata/api_client/models/update_validation_rapid_model.py +28 -10
  612. rapidata/api_client/models/update_validation_rapid_model_context_asset.py +160 -0
  613. rapidata/api_client/models/update_validation_set_model.py +120 -0
  614. rapidata/api_client/models/upload_asset_result.py +102 -0
  615. rapidata/api_client/models/upload_file_from_url_result.py +87 -0
  616. rapidata/api_client/models/upload_file_result.py +87 -0
  617. rapidata/api_client/models/user_action_restriction.py +37 -0
  618. rapidata/api_client/models/user_action_restriction_filter.py +101 -0
  619. rapidata/api_client/models/user_score_filter.py +102 -0
  620. rapidata/api_client/models/user_state.py +38 -0
  621. rapidata/api_client/models/user_state_filter.py +101 -0
  622. rapidata/api_client/models/validation_chance.py +20 -3
  623. rapidata/api_client/models/validation_set_model.py +39 -5
  624. rapidata/api_client/models/validation_set_overview_model.py +2 -2
  625. rapidata/api_client/models/validation_set_validation_set_id_rapid_post_payload_parameter.py +252 -0
  626. rapidata/api_client/models/validation_set_validation_set_id_rapid_post_truth_parameter.py +280 -0
  627. rapidata/api_client/models/validation_set_zip_post_request_blueprint.py +252 -0
  628. rapidata/api_client/models/video_duration_metadata.py +109 -0
  629. rapidata/api_client/models/video_duration_metadata_model.py +96 -0
  630. rapidata/api_client/models/workflow_aggregation_step_model.py +3 -12
  631. rapidata/api_client/models/workflow_config_artifact_model_workflow_config.py +23 -9
  632. rapidata/api_client/models/workflow_state.py +2 -2
  633. rapidata/api_client/models/zip_entry_file_wrapper.py +151 -0
  634. rapidata/api_client/rest.py +16 -9
  635. rapidata/api_client_README.md +389 -315
  636. rapidata/rapidata_client/__init__.py +10 -17
  637. rapidata/rapidata_client/api/rapidata_api_client.py +253 -0
  638. rapidata/rapidata_client/benchmark/__init__.py +0 -0
  639. rapidata/rapidata_client/benchmark/_detail_mapper.py +32 -0
  640. rapidata/rapidata_client/benchmark/leaderboard/__init__.py +0 -0
  641. rapidata/rapidata_client/benchmark/leaderboard/rapidata_leaderboard.py +221 -0
  642. rapidata/rapidata_client/benchmark/participant/__init__.py +0 -0
  643. rapidata/rapidata_client/benchmark/participant/_participant.py +145 -0
  644. rapidata/rapidata_client/benchmark/rapidata_benchmark.py +546 -0
  645. rapidata/rapidata_client/benchmark/rapidata_benchmark_manager.py +219 -0
  646. rapidata/rapidata_client/config/__init__.py +4 -0
  647. rapidata/rapidata_client/config/logger.py +135 -0
  648. rapidata/rapidata_client/config/logging_config.py +55 -0
  649. rapidata/rapidata_client/config/managed_print.py +6 -0
  650. rapidata/rapidata_client/config/order_config.py +14 -0
  651. rapidata/rapidata_client/config/rapidata_config.py +36 -0
  652. rapidata/rapidata_client/config/tracer.py +184 -0
  653. rapidata/rapidata_client/config/upload_config.py +64 -0
  654. rapidata/rapidata_client/datapoints/__init__.py +10 -0
  655. rapidata/rapidata_client/datapoints/_asset_uploader.py +169 -0
  656. rapidata/rapidata_client/datapoints/_datapoint.py +92 -0
  657. rapidata/rapidata_client/datapoints/_datapoint_uploader.py +47 -0
  658. rapidata/rapidata_client/datapoints/_datapoints_validator.py +70 -0
  659. rapidata/rapidata_client/datapoints/assets/__init__.py +0 -0
  660. rapidata/rapidata_client/datapoints/assets/constants.py +7 -0
  661. rapidata/rapidata_client/{metadata → datapoints/metadata}/__init__.py +1 -0
  662. rapidata/rapidata_client/datapoints/metadata/_media_asset_metadata.py +26 -0
  663. rapidata/rapidata_client/datapoints/metadata/_private_text_metadata.py +16 -0
  664. rapidata/rapidata_client/datapoints/metadata/_prompt_identifier_metadata.py +14 -0
  665. rapidata/rapidata_client/datapoints/metadata/_prompt_metadata.py +12 -0
  666. rapidata/rapidata_client/datapoints/metadata/_public_text_metadata.py +16 -0
  667. rapidata/rapidata_client/{metadata → datapoints/metadata}/_select_words_metadata.py +4 -5
  668. rapidata/rapidata_client/demographic/demographic_manager.py +44 -19
  669. rapidata/rapidata_client/exceptions/__init__.py +1 -0
  670. rapidata/rapidata_client/exceptions/failed_upload_exception.py +20 -0
  671. rapidata/rapidata_client/filter/__init__.py +1 -0
  672. rapidata/rapidata_client/filter/_base_filter.py +27 -6
  673. rapidata/rapidata_client/filter/age_filter.py +21 -10
  674. rapidata/rapidata_client/filter/and_filter.py +42 -0
  675. rapidata/rapidata_client/filter/campaign_filter.py +18 -10
  676. rapidata/rapidata_client/filter/country_filter.py +34 -12
  677. rapidata/rapidata_client/filter/custom_filter.py +22 -12
  678. rapidata/rapidata_client/filter/gender_filter.py +22 -10
  679. rapidata/rapidata_client/filter/language_filter.py +39 -21
  680. rapidata/rapidata_client/filter/models/age_group.py +14 -12
  681. rapidata/rapidata_client/filter/models/gender.py +12 -8
  682. rapidata/rapidata_client/filter/new_user_filter.py +11 -4
  683. rapidata/rapidata_client/filter/not_filter.py +23 -11
  684. rapidata/rapidata_client/filter/or_filter.py +23 -11
  685. rapidata/rapidata_client/filter/rapidata_filters.py +26 -20
  686. rapidata/rapidata_client/filter/response_count_filter.py +36 -20
  687. rapidata/rapidata_client/filter/user_score_filter.py +47 -24
  688. rapidata/rapidata_client/order/_rapidata_order_builder.py +286 -193
  689. rapidata/rapidata_client/order/dataset/_rapidata_dataset.py +153 -0
  690. rapidata/rapidata_client/order/rapidata_order.py +317 -160
  691. rapidata/rapidata_client/order/rapidata_order_manager.py +689 -428
  692. rapidata/rapidata_client/order/rapidata_results.py +98 -67
  693. rapidata/rapidata_client/rapidata_client.py +99 -33
  694. rapidata/rapidata_client/referee/__init__.py +1 -1
  695. rapidata/rapidata_client/referee/_base_referee.py +7 -3
  696. rapidata/rapidata_client/referee/_early_stopping_referee.py +20 -11
  697. rapidata/rapidata_client/referee/_naive_referee.py +18 -3
  698. rapidata/rapidata_client/selection/__init__.py +2 -1
  699. rapidata/rapidata_client/selection/_base_selection.py +9 -2
  700. rapidata/rapidata_client/selection/ab_test_selection.py +28 -20
  701. rapidata/rapidata_client/selection/capped_selection.py +23 -16
  702. rapidata/rapidata_client/selection/conditional_validation_selection.py +43 -24
  703. rapidata/rapidata_client/selection/demographic_selection.py +21 -6
  704. rapidata/rapidata_client/selection/effort_selection.py +49 -0
  705. rapidata/rapidata_client/selection/labeling_selection.py +34 -11
  706. rapidata/rapidata_client/selection/{retrieval_modes.py → rapidata_retrieval_modes.py} +7 -4
  707. rapidata/rapidata_client/selection/rapidata_selections.py +25 -15
  708. rapidata/rapidata_client/selection/shuffling_selection.py +21 -13
  709. rapidata/rapidata_client/selection/static_selection.py +19 -8
  710. rapidata/rapidata_client/selection/validation_selection.py +20 -4
  711. rapidata/rapidata_client/settings/__init__.py +4 -1
  712. rapidata/rapidata_client/settings/_rapidata_setting.py +15 -2
  713. rapidata/rapidata_client/settings/alert_on_fast_response.py +8 -5
  714. rapidata/rapidata_client/settings/allow_neither_both.py +17 -0
  715. rapidata/rapidata_client/settings/custom_setting.py +3 -2
  716. rapidata/rapidata_client/settings/free_text_minimum_characters.py +9 -4
  717. rapidata/rapidata_client/settings/models/translation_behaviour_options.py +3 -2
  718. rapidata/rapidata_client/settings/mute_video.py +15 -0
  719. rapidata/rapidata_client/settings/no_shuffle.py +4 -2
  720. rapidata/rapidata_client/settings/play_video_until_the_end.py +7 -4
  721. rapidata/rapidata_client/settings/rapidata_settings.py +23 -11
  722. rapidata/rapidata_client/settings/swap_context_instruction.py +20 -0
  723. rapidata/rapidata_client/settings/translation_behaviour.py +7 -5
  724. rapidata/rapidata_client/validation/rapidata_validation_set.py +106 -12
  725. rapidata/rapidata_client/validation/rapids/_validation_rapid_uploader.py +62 -0
  726. rapidata/rapidata_client/validation/rapids/box.py +37 -12
  727. rapidata/rapidata_client/validation/rapids/rapids.py +28 -103
  728. rapidata/rapidata_client/validation/rapids/rapids_manager.py +315 -208
  729. rapidata/rapidata_client/validation/validation_set_manager.py +531 -219
  730. rapidata/rapidata_client/workflow/__init__.py +2 -1
  731. rapidata/rapidata_client/workflow/_base_workflow.py +25 -7
  732. rapidata/rapidata_client/workflow/_classify_workflow.py +58 -15
  733. rapidata/rapidata_client/workflow/_compare_workflow.py +44 -9
  734. rapidata/rapidata_client/workflow/_draw_workflow.py +40 -10
  735. rapidata/rapidata_client/workflow/_evaluation_workflow.py +28 -7
  736. rapidata/rapidata_client/workflow/_free_text_workflow.py +46 -9
  737. rapidata/rapidata_client/workflow/_locate_workflow.py +40 -10
  738. rapidata/rapidata_client/workflow/_multi_ranking_workflow.py +87 -0
  739. rapidata/rapidata_client/workflow/_ranking_workflow.py +109 -25
  740. rapidata/rapidata_client/workflow/_select_words_workflow.py +51 -11
  741. rapidata/rapidata_client/workflow/_timestamp_workflow.py +42 -11
  742. rapidata/service/__init__.py +0 -1
  743. rapidata/service/credential_manager.py +18 -18
  744. rapidata/service/openapi_service.py +82 -22
  745. rapidata/types/__init__.py +166 -0
  746. rapidata-2.44.4.dist-info/METADATA +32 -0
  747. rapidata-2.44.4.dist-info/RECORD +1014 -0
  748. {rapidata-2.27.0.dist-info → rapidata-2.44.4.dist-info}/WHEEL +1 -1
  749. rapidata/rapidata_client/api/rapidata_exception.py +0 -107
  750. rapidata/rapidata_client/assets/__init__.py +0 -10
  751. rapidata/rapidata_client/assets/_base_asset.py +0 -11
  752. rapidata/rapidata_client/assets/_media_asset.py +0 -306
  753. rapidata/rapidata_client/assets/_multi_asset.py +0 -61
  754. rapidata/rapidata_client/assets/_sessions.py +0 -35
  755. rapidata/rapidata_client/assets/_text_asset.py +0 -34
  756. rapidata/rapidata_client/assets/data_type_enum.py +0 -7
  757. rapidata/rapidata_client/country_codes/__init__.py +0 -1
  758. rapidata/rapidata_client/country_codes/country_codes.py +0 -19
  759. rapidata/rapidata_client/logging/__init__.py +0 -2
  760. rapidata/rapidata_client/logging/logger.py +0 -47
  761. rapidata/rapidata_client/logging/output_manager.py +0 -16
  762. rapidata/rapidata_client/metadata/_media_asset_metadata.py +0 -15
  763. rapidata/rapidata_client/metadata/_private_text_metadata.py +0 -17
  764. rapidata/rapidata_client/metadata/_prompt_metadata.py +0 -18
  765. rapidata/rapidata_client/metadata/_public_text_metadata.py +0 -17
  766. rapidata/rapidata_client/order/_rapidata_dataset.py +0 -411
  767. rapidata/service/local_file_service.py +0 -25
  768. rapidata-2.27.0.dist-info/METADATA +0 -35
  769. rapidata-2.27.0.dist-info/RECORD +0 -540
  770. /rapidata/rapidata_client/{metadata → datapoints/metadata}/_base_metadata.py +0 -0
  771. {rapidata-2.27.0.dist-info → rapidata-2.44.4.dist-info/licenses}/LICENSE +0 -0
@@ -1,77 +1,124 @@
1
1
  import os
2
- from rapidata.api_client import AttachCategoryTruth, BoundingBoxTruth, BoxShape, ClassifyPayload, ComparePayload, CompareTruth, LinePayload, LocateBoxTruth, LocatePayload, ScrubPayload, ScrubRange, ScrubTruth, TranscriptionPayload, TranscriptionTruth, TranscriptionWord
3
- from rapidata.rapidata_client.assets.data_type_enum import RapidataDataTypes
4
- from rapidata.rapidata_client.assets import MediaAsset, TextAsset, MultiAsset
5
- from rapidata.rapidata_client.metadata import Metadata
2
+ from typing import Literal
3
+
4
+ from rapidata.api_client.models.i_validation_truth_attach_category_truth import (
5
+ IValidationTruthAttachCategoryTruth,
6
+ )
7
+ from rapidata.api_client.models.i_validation_truth_bounding_box_truth import (
8
+ IValidationTruthBoundingBoxTruth,
9
+ )
10
+ from rapidata.api_client.models.i_rapid_payload_classify_payload import (
11
+ IRapidPayloadClassifyPayload,
12
+ )
13
+ from rapidata.api_client.models.classify_payload_category import ClassifyPayloadCategory
14
+ from rapidata.api_client.models.i_rapid_payload_compare_payload import (
15
+ IRapidPayloadComparePayload,
16
+ )
17
+ from rapidata.api_client.models.i_validation_truth_compare_truth import (
18
+ IValidationTruthCompareTruth,
19
+ )
20
+ from rapidata.api_client.models.i_rapid_payload_line_payload import (
21
+ IRapidPayloadLinePayload,
22
+ )
23
+ from rapidata.api_client.models.i_validation_truth_locate_box_truth import (
24
+ IValidationTruthLocateBoxTruth,
25
+ )
26
+ from rapidata.api_client.models.i_rapid_payload_locate_payload import (
27
+ IRapidPayloadLocatePayload,
28
+ )
29
+ from rapidata.api_client.models.i_rapid_payload_scrub_payload import (
30
+ IRapidPayloadScrubPayload,
31
+ )
32
+ from rapidata.api_client.models.scrub_payload import ScrubPayload
33
+ from rapidata.api_client.models.scrub_range import ScrubRange
34
+ from rapidata.api_client.models.i_validation_truth_scrub_truth import (
35
+ IValidationTruthScrubTruth,
36
+ )
37
+ from rapidata.api_client.models.scrub_truth import ScrubTruth
38
+ from rapidata.api_client.models.i_rapid_payload_transcription_payload import (
39
+ IRapidPayloadTranscriptionPayload,
40
+ )
41
+ from rapidata.api_client.models.i_validation_truth_transcription_truth import (
42
+ IValidationTruthTranscriptionTruth,
43
+ )
44
+ from rapidata.api_client.models.transcription_word import TranscriptionWord
6
45
  from rapidata.rapidata_client.validation.rapids.box import Box
7
-
8
- from typing import Sequence
9
-
10
46
  from rapidata.rapidata_client.validation.rapids.rapids import Rapid
47
+ from rapidata.service.openapi_service import OpenAPIService
48
+ from rapidata.api_client.models.i_rapid_payload import IRapidPayload
49
+
11
50
 
12
51
  class RapidsManager:
13
52
  """
14
53
  Can be used to build different types of rapids. That can then be added to Validation sets
15
54
  """
16
- def __init__(self):
17
- pass
18
-
19
- def classification_rapid(self,
20
- instruction: str,
21
- answer_options: list[str],
22
- datapoint: str,
23
- truths: list[str],
24
- data_type: str = RapidataDataTypes.MEDIA,
25
- metadata: Sequence[Metadata] = [],
26
- explanation: str | None = None,
55
+
56
+ def __init__(self, openapi_service: OpenAPIService):
57
+ self._openapi_service = openapi_service
58
+
59
+ def classification_rapid(
60
+ self,
61
+ instruction: str,
62
+ answer_options: list[str],
63
+ datapoint: str,
64
+ truths: list[str],
65
+ data_type: Literal["media", "text"] = "media",
66
+ context: str | None = None,
67
+ media_context: str | None = None,
68
+ explanation: str | None = None,
27
69
  ) -> Rapid:
28
70
  """Build a classification rapid
29
-
71
+
30
72
  Args:
31
73
  instruction (str): The instruction/question to be shown to the labeler.
32
74
  answer_options (list[str]): The options that the labeler can choose from to answer the question.
33
75
  datapoint (str): The datapoint that the labeler will be labeling.
34
76
  truths (list[str]): The correct answers to the question.
35
- data_type (str, optional): The type of the datapoint. Defaults to RapidataDataTypes.MEDIA.
36
- metadata (Sequence[Metadata], optional): The metadata that is attached to the rapid. Defaults to [].
77
+ data_type (str, optional): The type of the datapoint. Defaults to "media" (any form of image, video or audio).
78
+ context (str, optional): The context is text that will be shown in addition to the instruction. Defaults to None.
79
+ media_context (str, optional): The media context is a link to an image / video that will be shown in addition to the instruction (can be combined with context). Defaults to None.
80
+ explanation (str, optional): The explanation that will be shown to the labeler if the answer is wrong. Defaults to None.
37
81
  """
38
-
39
- if data_type == RapidataDataTypes.MEDIA:
40
- asset = MediaAsset(datapoint)
41
- elif data_type == RapidataDataTypes.TEXT:
42
- asset = TextAsset(datapoint)
43
- else:
44
- raise ValueError(f"Unsupported data type: {data_type}")
45
-
46
82
  if not isinstance(truths, list):
47
83
  raise ValueError("Truths must be a list of strings")
48
-
84
+
49
85
  if not all(truth in answer_options for truth in truths):
50
86
  raise ValueError("Truths must be part of the answer options")
51
87
 
52
- payload = ClassifyPayload(
53
- _t="ClassifyPayload", possibleCategories=answer_options, title=instruction
88
+ payload = IRapidPayload(
89
+ actual_instance=IRapidPayloadClassifyPayload(
90
+ _t="ClassifyPayload",
91
+ categories=[
92
+ ClassifyPayloadCategory(label=option, value=option)
93
+ for option in answer_options
94
+ ],
95
+ title=instruction,
96
+ )
54
97
  )
55
- model_truth = AttachCategoryTruth(
98
+ model_truth = IValidationTruthAttachCategoryTruth(
56
99
  correctCategories=truths, _t="AttachCategoryTruth"
57
100
  )
58
101
 
59
102
  return Rapid(
60
- asset=asset,
61
- metadata=metadata,
62
- explanation=explanation,
63
- payload=payload,
64
- truth=model_truth,
65
- randomCorrectProbability=len(truths) / len(answer_options)
66
- )
67
-
68
- def compare_rapid(self,
69
- instruction: str,
70
- truth: str,
71
- datapoint: list[str],
72
- data_type: str = RapidataDataTypes.MEDIA,
73
- metadata: Sequence[Metadata] = [],
74
- explanation: str | None = None,
103
+ asset=datapoint,
104
+ data_type=data_type,
105
+ context=context,
106
+ media_context=media_context,
107
+ explanation=explanation,
108
+ payload=payload,
109
+ truth=model_truth,
110
+ random_correct_probability=len(truths) / len(answer_options),
111
+ )
112
+
113
+ def compare_rapid(
114
+ self,
115
+ instruction: str,
116
+ truth: str,
117
+ datapoint: list[str],
118
+ data_type: Literal["media", "text"] = "media",
119
+ context: str | None = None,
120
+ media_context: str | None = None,
121
+ explanation: str | None = None,
75
122
  ) -> Rapid:
76
123
  """Build a compare rapid
77
124
 
@@ -79,46 +126,43 @@ class RapidsManager:
79
126
  instruction (str): The instruction that the labeler will be comparing the assets on.
80
127
  truth (str): The correct answer to the comparison. (has to be one of the assets)
81
128
  datapoint (list[str]): The two assets that the labeler will be comparing.
82
- data_type (str, optional): The type of the datapoint. Defaults to RapidataDataTypes.MEDIA.
83
- metadata (Sequence[Metadata], optional): The metadata that is attached to the rapid. Defaults to [].
129
+ data_type (str, optional): The type of the datapoint. Defaults to "media" (any form of image, video or audio).
130
+ context (str, optional): The context is text that will be shown in addition to the instruction. Defaults to None.
131
+ media_context (str, optional): The media context is a link to an image / video that will be shown in addition to the instruction (can be combined with context). Defaults to None.
132
+ explanation (str, optional): The explanation that will be shown to the labeler if the answer is wrong. Defaults to None.
84
133
  """
85
134
 
86
- if data_type == RapidataDataTypes.MEDIA:
87
- assets = [MediaAsset(image) for image in datapoint]
88
- elif data_type == RapidataDataTypes.TEXT:
89
- assets = [TextAsset(text) for text in datapoint]
90
- else:
91
- raise ValueError(f"Unsupported data type: {data_type}")
92
-
93
- asset = MultiAsset(assets)
94
-
95
- payload = ComparePayload(_t="ComparePayload", criteria=instruction)
96
- # take only last part of truth path
135
+ payload = IRapidPayload(
136
+ actual_instance=IRapidPayloadComparePayload(
137
+ _t="ComparePayload", criteria=instruction
138
+ )
139
+ )
97
140
  truth = os.path.basename(truth)
98
- model_truth = CompareTruth(_t="CompareTruth", winnerId=truth)
141
+ model_truth = IValidationTruthCompareTruth(_t="CompareTruth", winnerId=truth)
99
142
 
100
- if len(asset) != 2:
143
+ if len(datapoint) != 2:
101
144
  raise ValueError("Compare rapid requires exactly two media paths")
102
145
 
103
-
104
146
  return Rapid(
105
- asset=asset,
106
- truth=model_truth,
107
- metadata=metadata,
108
- payload=payload,
109
- explanation=explanation,
110
- randomCorrectProbability= 1 / len(asset.assets)
111
- )
112
-
113
- def select_words_rapid(self,
114
- instruction: str,
115
- truths: list[int],
116
- datapoint: str,
117
- sentence: str,
118
- required_precision: float = 1,
119
- required_completeness: float = 1,
120
- metadata: Sequence[Metadata] = [],
121
- explanation: str | None = None,
147
+ asset=datapoint,
148
+ data_type=data_type,
149
+ truth=model_truth,
150
+ context=context,
151
+ media_context=media_context,
152
+ payload=payload,
153
+ explanation=explanation,
154
+ random_correct_probability=0.5,
155
+ )
156
+
157
+ def select_words_rapid(
158
+ self,
159
+ instruction: str,
160
+ truths: list[int],
161
+ datapoint: str,
162
+ sentence: str,
163
+ required_precision: float = 1,
164
+ required_completeness: float = 1,
165
+ explanation: str | None = None,
122
166
  ) -> Rapid:
123
167
  """Build a select words rapid
124
168
 
@@ -129,10 +173,9 @@ class RapidsManager:
129
173
  sentence (str): The sentence that the labeler will be selecting words from. (split up by spaces)
130
174
  required_precision (float): The required precision for the labeler to get the rapid correct (minimum ratio of the words selected that need to be correct). defaults to 1. (no wrong words can be selected)
131
175
  required_completeness (float): The required completeness for the labeler to get the rapid correct (miminum ratio of total correct words selected). defaults to 1. (all correct words need to be selected)
132
- metadata (Sequence[Metadata], optional): The metadata that is attached to the rapid. Defaults to [].
176
+ explanation (str, optional): The explanation that will be shown to the labeler if the answer is wrong. Defaults to None.
133
177
  """
134
-
135
- asset = MediaAsset(datapoint)
178
+
136
179
  transcription_words = [
137
180
  TranscriptionWord(word=word, wordIndex=i)
138
181
  for i, word in enumerate(sentence.split(" "))
@@ -144,11 +187,15 @@ class RapidsManager:
144
187
  TranscriptionWord(word=transcription_words[index].word, wordIndex=index)
145
188
  )
146
189
 
147
- payload = TranscriptionPayload(
148
- _t="TranscriptionPayload", title=instruction, transcription=transcription_words
190
+ payload = IRapidPayload(
191
+ actual_instance=IRapidPayloadTranscriptionPayload(
192
+ _t="TranscriptionPayload",
193
+ title=instruction,
194
+ transcription=transcription_words,
195
+ )
149
196
  )
150
197
 
151
- model_truth = TranscriptionTruth(
198
+ model_truth = IValidationTruthTranscriptionTruth(
152
199
  _t="TranscriptionTruth",
153
200
  correctWords=correct_transcription_words,
154
201
  requiredPrecision=required_precision,
@@ -156,20 +203,23 @@ class RapidsManager:
156
203
  )
157
204
 
158
205
  return Rapid(
159
- payload=payload,
160
- truth=model_truth,
161
- asset=asset,
162
- metadata=metadata,
163
- explanation=explanation,
164
- randomCorrectProbability= len(correct_transcription_words) / len(transcription_words)
165
- )
166
-
167
- def locate_rapid(self,
168
- instruction: str,
169
- truths: list[Box],
170
- datapoint: str,
171
- metadata: Sequence[Metadata] = [],
172
- explanation: str | None = None,
206
+ payload=payload,
207
+ truth=model_truth,
208
+ asset=datapoint,
209
+ sentence=sentence,
210
+ explanation=explanation,
211
+ random_correct_probability=len(correct_transcription_words)
212
+ / len(transcription_words),
213
+ )
214
+
215
+ def locate_rapid(
216
+ self,
217
+ instruction: str,
218
+ truths: list[Box],
219
+ datapoint: str,
220
+ context: str | None = None,
221
+ media_context: str | None = None,
222
+ explanation: str | None = None,
173
223
  ) -> Rapid:
174
224
  """Build a locate rapid
175
225
 
@@ -177,47 +227,44 @@ class RapidsManager:
177
227
  instruction (str): The instruction on what the labeler should do.
178
228
  truths (list[Box]): The bounding boxes of the object that the labeler ought to be locating.
179
229
  datapoint (str): The asset that the labeler will be locating the object in.
180
- metadata (Sequence[Metadata], optional): The metadata that is attached to the rapid. Defaults to [].
230
+ context (str, optional): The context is text that will be shown in addition to the instruction. Defaults to None.
231
+ media_context (str, optional): The media context is a link to an image / video that will be shown in addition to the instruction (can be combined with context). Defaults to None.
232
+ explanation (str, optional): The explanation that will be shown to the labeler if the answer is wrong. Defaults to None.
181
233
  """
182
-
183
- asset = MediaAsset(datapoint)
184
- payload = LocatePayload(
185
- _t="LocatePayload", target=instruction
186
- )
187
-
188
- img_dimensions = asset.get_image_dimension()
189
234
 
190
- if not img_dimensions:
191
- raise ValueError("Failed to get image dimensions")
235
+ payload = IRapidPayload(
236
+ actual_instance=IRapidPayloadLocatePayload(
237
+ _t="LocatePayload", target=instruction
238
+ )
239
+ )
192
240
 
193
- model_truth = LocateBoxTruth(
194
- _t="LocateBoxTruth",
195
- boundingBoxes=[BoxShape(
196
- _t="BoxShape",
197
- xMin=truth.x_min / img_dimensions[0] * 100,
198
- xMax=truth.x_max / img_dimensions[0] * 100,
199
- yMax=truth.y_max / img_dimensions[1] * 100,
200
- yMin=truth.y_min / img_dimensions[1] * 100,
201
- ) for truth in truths]
241
+ model_truth = IValidationTruthLocateBoxTruth(
242
+ _t="LocateBoxTruth",
243
+ boundingBoxes=[truth.to_model() for truth in truths],
202
244
  )
203
245
 
204
- coverage = self._calculate_boxes_coverage(truths, img_dimensions[0], img_dimensions[1])
246
+ coverage = self._calculate_boxes_coverage(
247
+ truths,
248
+ )
205
249
 
206
250
  return Rapid(
207
- payload=payload,
208
- truth=model_truth,
209
- asset=asset,
210
- metadata=metadata,
211
- explanation=explanation,
212
- randomCorrectProbability=coverage
213
- )
214
-
215
- def draw_rapid(self,
216
- instruction: str,
217
- truths: list[Box],
218
- datapoint: str,
219
- metadata: Sequence[Metadata] = [],
220
- explanation: str | None = None
251
+ payload=payload,
252
+ truth=model_truth,
253
+ asset=datapoint,
254
+ context=context,
255
+ media_context=media_context,
256
+ explanation=explanation,
257
+ random_correct_probability=coverage,
258
+ )
259
+
260
+ def draw_rapid(
261
+ self,
262
+ instruction: str,
263
+ truths: list[Box],
264
+ datapoint: str,
265
+ context: str | None = None,
266
+ media_context: str | None = None,
267
+ explanation: str | None = None,
221
268
  ) -> Rapid:
222
269
  """Build a draw rapid
223
270
 
@@ -225,46 +272,47 @@ class RapidsManager:
225
272
  instruction (str): The instructions on what the labeler
226
273
  truths (list[Box]): The bounding boxes of the object that the labeler ought to be drawing.
227
274
  datapoint (str): The asset that the labeler will be drawing the object in.
228
- metadata (Sequence[Metadata], optional): The metadata that is attached to the rapid. Defaults to [].
275
+ context (str, optional): The context is text that will be shown in addition to the instruction. Defaults to None.
276
+ media_context (str, optional): The media context is a link to an image / video that will be shown in addition to the instruction (can be combined with context). Defaults to None.
277
+ explanation (str, optional): The explanation that will be shown to the labeler if the answer is wrong. Defaults to None.
229
278
  """
230
-
231
- asset = MediaAsset(datapoint)
232
279
 
233
- payload = LinePayload(
234
- _t="LinePayload", target=instruction
280
+ payload = IRapidPayload(
281
+ actual_instance=IRapidPayloadLinePayload(
282
+ _t="LinePayload", target=instruction
283
+ )
235
284
  )
236
285
 
237
- img_dimensions = asset.get_image_dimension()
238
-
239
- if not img_dimensions:
240
- raise ValueError("Failed to get image dimensions")
241
-
242
- model_truth = BoundingBoxTruth(
243
- _t="BoundingBoxTruth",
244
- xMax=truths[0].x_max / img_dimensions[0] * 100,
245
- xMin=truths[0].x_min / img_dimensions[0] * 100,
246
- yMax=truths[0].y_max / img_dimensions[1] * 100,
247
- yMin=truths[0].y_min / img_dimensions[1] * 100,
286
+ model_truth = IValidationTruthBoundingBoxTruth(
287
+ _t="BoundingBoxTruth",
288
+ xMax=truths[0].x_max * 100,
289
+ xMin=truths[0].x_min * 100,
290
+ yMax=truths[0].y_max * 100,
291
+ yMin=truths[0].y_min * 100,
248
292
  )
249
293
 
250
- coverage = self._calculate_boxes_coverage(truths, img_dimensions[0], img_dimensions[1])
294
+ coverage = self._calculate_boxes_coverage(
295
+ truths,
296
+ )
251
297
 
252
298
  return Rapid(
253
299
  payload=payload,
254
300
  truth=model_truth,
255
- asset=asset,
256
- metadata=metadata,
301
+ asset=datapoint,
302
+ context=context,
303
+ media_context=media_context,
257
304
  explanation=explanation,
258
- randomCorrectProbability=coverage
305
+ random_correct_probability=coverage,
259
306
  )
260
307
 
261
-
262
- def timestamp_rapid(self,
263
- instruction: str,
264
- truths: list[tuple[int, int]],
265
- datapoint: str,
266
- metadata: Sequence[Metadata] = [],
267
- explanation: str | None = None
308
+ def timestamp_rapid(
309
+ self,
310
+ instruction: str,
311
+ truths: list[tuple[int, int]],
312
+ datapoint: str,
313
+ context: str | None = None,
314
+ media_context: str | None = None,
315
+ explanation: str | None = None,
268
316
  ) -> Rapid:
269
317
  """Build a timestamp rapid
270
318
 
@@ -273,90 +321,149 @@ class RapidsManager:
273
321
  truths (list[tuple[int, int]]): The possible accepted timestamps intervals for the labeler (in miliseconds).
274
322
  The first element of the tuple is the start of the interval and the second element is the end of the interval.
275
323
  datapoint (str): The asset that the labeler will be timestamping.
276
- metadata (Sequence[Metadata], optional): The metadata that is attached to the rapid. Defaults to [].
324
+ context (str, optional): The context is text that will be shown in addition to the instruction. Defaults to None.
325
+ media_context (str, optional): The media context is a link to an image / video that will be shown in addition to the instruction (can be combined with context). Defaults to None.
326
+ explanation (str, optional): The explanation that will be shown to the labeler if the answer is wrong. Defaults to None.
277
327
  """
278
-
279
- asset = MediaAsset(datapoint)
280
-
328
+
281
329
  for truth in truths:
282
330
  if len(truth) != 2:
283
- raise ValueError("The truths per datapoint must be a tuple of exactly two integers.")
331
+ raise ValueError(
332
+ "The truths per datapoint must be a tuple of exactly two integers."
333
+ )
284
334
  if truth[0] > truth[1]:
285
- raise ValueError("The start of the interval must be smaller than the end of the interval.")
286
-
287
- payload = ScrubPayload(
288
- _t="ScrubPayload",
289
- target=instruction
335
+ raise ValueError(
336
+ "The start of the interval must be smaller than the end of the interval."
337
+ )
338
+
339
+ payload = IRapidPayload(
340
+ actual_instance=IRapidPayloadScrubPayload(
341
+ _t="ScrubPayload", target=instruction
342
+ )
290
343
  )
291
344
 
292
- model_truth = ScrubTruth(
345
+ model_truth = IValidationTruthScrubTruth(
293
346
  _t="ScrubTruth",
294
- validRanges=[ScrubRange(
295
- start=truth[0],
296
- end=truth[1]
297
- ) for truth in truths]
347
+ validRanges=[ScrubRange(start=truth[0], end=truth[1]) for truth in truths],
298
348
  )
299
349
 
300
350
  return Rapid(
301
- payload=payload,
302
- truth=model_truth,
303
- asset=asset,
304
- metadata=metadata,
305
- explanation=explanation,
306
- randomCorrectProbability=self._calculate_coverage_ratio(asset.get_duration(), truths),
307
- )
351
+ payload=payload,
352
+ truth=model_truth,
353
+ asset=datapoint,
354
+ context=context,
355
+ media_context=media_context,
356
+ explanation=explanation,
357
+ random_correct_probability=0.5, # TODO: implement coverage ratio
358
+ )
308
359
 
309
- def _calculate_boxes_coverage(self, boxes: list[Box], image_width: int, image_height: int) -> float:
360
+ def _calculate_boxes_coverage(self, boxes: list[Box]) -> float:
361
+ """
362
+ Calculate the ratio of area covered by a list of boxes.
363
+
364
+ Args:
365
+ boxes: List of Box objects with coordinates in range [0, 1]
366
+
367
+ Returns:
368
+ float: Coverage ratio between 0.0 and 1.0
369
+ """
310
370
  if not boxes:
311
371
  return 0.0
312
- # Convert all coordinates to integers for pixel-wise coverage
313
- pixels = set()
314
- for box in boxes:
315
- for x in range(int(box.x_min), int(box.x_max + 1)):
316
- for y in range(int(box.y_min), int(box.y_max + 1)):
317
- if 0 <= x < image_width and 0 <= y < image_height:
318
- pixels.add((x,y))
319
-
320
- total_covered = len(pixels)
321
- return total_covered / (image_width * image_height)
322
-
323
- def _calculate_coverage_ratio(self, total_duration: int, subsections: list[tuple[int, int]]) -> float:
372
+
373
+ # Convert boxes to intervals for sweep line algorithm
374
+ events = []
375
+
376
+ # Create events for x-coordinates
377
+ for i, box in enumerate(boxes):
378
+ events.append((box.x_min, "start", i, box))
379
+ events.append((box.x_max, "end", i, box))
380
+
381
+ # Sort events by x-coordinate
382
+ events.sort(key=lambda x: (x[0], x[1] == "end"))
383
+
384
+ total_area = 0.0
385
+ active_boxes = set()
386
+ prev_x = 0.0
387
+
388
+ for x, event_type, box_id, box in events:
389
+ # Calculate area for the previous x-interval
390
+ if active_boxes and x > prev_x:
391
+ # Merge y-intervals for active boxes
392
+ y_intervals = [(boxes[i].y_min, boxes[i].y_max) for i in active_boxes]
393
+ y_intervals.sort()
394
+
395
+ # Merge overlapping y-intervals
396
+ merged_intervals = []
397
+ for start, end in y_intervals:
398
+ if merged_intervals and start <= merged_intervals[-1][1]:
399
+ # Overlapping intervals - merge them
400
+ merged_intervals[-1] = (
401
+ merged_intervals[-1][0],
402
+ max(merged_intervals[-1][1], end),
403
+ )
404
+ else:
405
+ # Non-overlapping interval
406
+ merged_intervals.append((start, end))
407
+
408
+ # Calculate total y-coverage for this x-interval
409
+ y_coverage = sum(end - start for start, end in merged_intervals)
410
+ total_area += (x - prev_x) * y_coverage
411
+
412
+ # Update active boxes
413
+ if event_type == "start":
414
+ active_boxes.add(box_id)
415
+ else:
416
+ active_boxes.discard(box_id)
417
+
418
+ prev_x = x
419
+
420
+ return total_area
421
+
422
+ @staticmethod
423
+ def _calculate_coverage_ratio(
424
+ total_duration: int, subsections: list[tuple[int, int]]
425
+ ) -> float:
324
426
  """
325
427
  Calculate the ratio of total_duration that is covered by subsections, handling overlaps.
326
-
428
+
327
429
  Args:
328
430
  total_duration: The total duration to consider
329
431
  subsections: List of tuples containing (start, end) times
330
-
432
+
331
433
  Returns:
332
434
  float: Ratio of coverage (0 to 1)
333
435
  """
334
436
  if not subsections:
335
437
  return 0.0
336
-
438
+
337
439
  # Sort subsections by start time and clamp to valid range
338
440
  sorted_ranges = sorted(
339
- (max(0, start), min(end, total_duration))
340
- for start, end in subsections
441
+ (max(0, start), min(end, total_duration)) for start, end in subsections
341
442
  )
342
-
443
+
343
444
  # Merge overlapping ranges
344
445
  merged_ranges = []
345
446
  current_range = list(sorted_ranges[0])
346
-
447
+
347
448
  for next_start, next_end in sorted_ranges[1:]:
348
449
  current_start, current_end = current_range
349
-
450
+
350
451
  # If ranges overlap or are adjacent
351
452
  if next_start <= current_end:
352
453
  current_range[1] = max(current_end, next_end)
353
454
  else:
354
455
  merged_ranges.append(current_range)
355
456
  current_range = [next_start, next_end]
356
-
457
+
357
458
  merged_ranges.append(current_range)
358
-
459
+
359
460
  # Calculate total coverage
360
461
  total_coverage = sum(end - start for start, end in merged_ranges)
361
-
462
+
362
463
  return total_coverage / total_duration
464
+
465
+ def __str__(self) -> str:
466
+ return "RapidsManager"
467
+
468
+ def __repr__(self) -> str:
469
+ return self.__str__()