rapidata 2.28.2__py3-none-any.whl → 2.44.3__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (761) hide show
  1. rapidata/__init__.py +11 -10
  2. rapidata/api_client/__init__.py +83 -355
  3. rapidata/api_client/api/__init__.py +8 -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 +222 -444
  8. rapidata/api_client/api/client_api.py +38 -33
  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 -530
  13. rapidata/api_client/api/dataset_api.py +228 -3469
  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 +356 -312
  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 +510 -3659
  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 -332
  35. rapidata/api_client/models/ab_test_selection_a_inner.py +1 -1
  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 +7 -10
  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/boosting_profile.py +89 -0
  69. rapidata/api_client/models/box_shape.py +4 -33
  70. rapidata/api_client/models/campaign_filter.py +98 -0
  71. rapidata/api_client/models/campaign_query_result.py +15 -13
  72. rapidata/api_client/models/campaign_status.py +2 -2
  73. rapidata/api_client/models/change_boost_model.py +89 -0
  74. rapidata/api_client/models/classification_metadata.py +12 -1
  75. rapidata/api_client/models/classify_payload.py +14 -15
  76. rapidata/api_client/models/classify_payload_category.py +89 -0
  77. rapidata/api_client/models/client_model.py +25 -35
  78. rapidata/api_client/models/clients_query_result.py +5 -5
  79. rapidata/api_client/models/clone_order_model.py +6 -8
  80. rapidata/api_client/models/clone_order_result.py +9 -4
  81. rapidata/api_client/models/compare_rapid_blueprint.py +5 -3
  82. rapidata/api_client/models/compare_rapid_blueprint1.py +96 -0
  83. rapidata/api_client/models/compare_workflow_config.py +34 -23
  84. rapidata/api_client/models/compare_workflow_config_context_asset.py +174 -0
  85. rapidata/api_client/models/compare_workflow_config_metadata_value.py +31 -17
  86. rapidata/api_client/models/compare_workflow_config_model.py +15 -5
  87. rapidata/api_client/models/compare_workflow_model.py +34 -6
  88. rapidata/api_client/models/compare_workflow_model1.py +20 -9
  89. rapidata/api_client/models/compare_workflow_model_context_asset.py +160 -0
  90. rapidata/api_client/models/compare_workflow_model_metadata_inner.py +154 -0
  91. rapidata/api_client/models/compare_workflow_model_pair_maker_config.py +1 -1
  92. rapidata/api_client/models/comparison_operator.py +2 -2
  93. rapidata/api_client/models/conditional_validation_selection.py +8 -11
  94. rapidata/api_client/models/conditional_validation_selection_validation_chance.py +103 -0
  95. rapidata/api_client/models/confidence_interval.py +89 -0
  96. rapidata/api_client/models/count_metadata.py +12 -1
  97. rapidata/api_client/models/country_filter.py +98 -0
  98. rapidata/api_client/models/create_audience_request.py +99 -0
  99. rapidata/api_client/models/create_audience_result.py +87 -0
  100. rapidata/api_client/models/create_benchmark_model.py +87 -0
  101. rapidata/api_client/models/create_benchmark_participant_model.py +87 -0
  102. rapidata/api_client/models/create_benchmark_participant_result.py +89 -0
  103. rapidata/api_client/models/create_benchmark_prompt_result.py +87 -0
  104. rapidata/api_client/models/create_benchmark_result.py +87 -0
  105. rapidata/api_client/models/create_bridge_token_result.py +2 -2
  106. rapidata/api_client/models/create_client_model.py +6 -13
  107. rapidata/api_client/models/create_complex_order_model.py +9 -9
  108. rapidata/api_client/models/create_complex_order_result.py +6 -4
  109. rapidata/api_client/models/create_customer_client_result.py +2 -2
  110. rapidata/api_client/models/create_datapoint_from_files_model.py +3 -3
  111. rapidata/api_client/models/create_datapoint_from_text_sources_model.py +3 -3
  112. rapidata/api_client/models/create_datapoint_from_urls_model.py +3 -3
  113. rapidata/api_client/models/create_datapoint_model.py +134 -0
  114. rapidata/api_client/models/create_datapoint_model_asset.py +154 -0
  115. rapidata/api_client/models/create_datapoint_model_context_asset.py +160 -0
  116. rapidata/api_client/models/create_datapoint_model_metadata_inner.py +154 -0
  117. rapidata/api_client/models/create_datapoint_result.py +6 -18
  118. rapidata/api_client/models/create_demographic_rapid_model.py +45 -7
  119. rapidata/api_client/models/create_demographic_rapid_model_asset.py +160 -0
  120. rapidata/api_client/models/create_demographic_rapid_model_context_asset.py +160 -0
  121. rapidata/api_client/models/create_demographic_rapid_model_new.py +119 -0
  122. rapidata/api_client/models/create_empty_validation_set_result.py +2 -2
  123. rapidata/api_client/models/create_leaderboard_model.py +59 -10
  124. rapidata/api_client/models/create_leaderboard_result.py +17 -5
  125. rapidata/api_client/models/create_order_model.py +30 -101
  126. rapidata/api_client/models/create_order_model_referee.py +12 -12
  127. rapidata/api_client/models/create_order_model_workflow.py +35 -21
  128. rapidata/api_client/models/create_order_result.py +6 -4
  129. rapidata/api_client/models/create_rapid_result.py +2 -2
  130. rapidata/api_client/models/create_sample_model.py +93 -0
  131. rapidata/api_client/models/create_sample_model_asset.py +154 -0
  132. rapidata/api_client/models/create_sample_model_obsolete.py +87 -0
  133. rapidata/api_client/models/create_simple_pipeline_model_pipeline_steps_inner.py +8 -22
  134. rapidata/api_client/models/create_unsupported_order_model.py +6 -6
  135. rapidata/api_client/models/create_validation_set_model.py +5 -5
  136. rapidata/api_client/models/datapoint_model.py +3 -3
  137. rapidata/api_client/models/datapoint_state.py +2 -2
  138. rapidata/api_client/models/demographic_filter.py +100 -0
  139. rapidata/api_client/models/dynamic_client_registration_request.py +21 -36
  140. rapidata/api_client/models/early_stopping_referee_model.py +3 -3
  141. rapidata/api_client/models/effort_capped_selection.py +2 -11
  142. rapidata/api_client/models/elo_config.py +2 -2
  143. rapidata/api_client/models/elo_config_model.py +6 -6
  144. rapidata/api_client/models/entity_tag_header_value.py +93 -0
  145. rapidata/api_client/models/evaluation_workflow_config.py +13 -3
  146. rapidata/api_client/models/evaluation_workflow_model.py +16 -6
  147. rapidata/api_client/models/existing_asset_input.py +120 -0
  148. rapidata/api_client/models/existing_asset_input_metadata_value.py +126 -0
  149. rapidata/api_client/models/feature_flag.py +2 -2
  150. rapidata/api_client/models/feature_flag_model.py +6 -6
  151. rapidata/api_client/models/feedback_model.py +7 -7
  152. rapidata/api_client/models/file_asset.py +3 -5
  153. rapidata/api_client/models/file_asset_input.py +104 -0
  154. rapidata/api_client/models/file_asset_input1.py +104 -0
  155. rapidata/api_client/models/file_asset_input1_file.py +168 -0
  156. rapidata/api_client/models/file_asset_input2.py +104 -0
  157. rapidata/api_client/models/file_asset_input3.py +104 -0
  158. rapidata/api_client/models/file_asset_input_file.py +168 -0
  159. rapidata/api_client/models/file_asset_metadata_value.py +252 -0
  160. rapidata/api_client/models/file_asset_model_metadata_value.py +25 -81
  161. rapidata/api_client/models/file_stream_result.py +122 -0
  162. rapidata/api_client/models/file_type.py +39 -0
  163. rapidata/api_client/models/file_type_metadata.py +110 -0
  164. rapidata/api_client/models/file_type_metadata_model.py +97 -0
  165. rapidata/api_client/models/filter.py +7 -25
  166. rapidata/api_client/models/filter_operator.py +3 -2
  167. rapidata/api_client/models/fork_benchmark_result.py +87 -0
  168. rapidata/api_client/models/form_file_wrapper.py +135 -0
  169. rapidata/api_client/models/free_text_payload.py +10 -3
  170. rapidata/api_client/models/free_text_rapid_blueprint.py +10 -3
  171. rapidata/api_client/models/gender_user_filter_model.py +2 -2
  172. rapidata/api_client/models/gender_user_filter_model_gender.py +38 -0
  173. rapidata/api_client/models/get_asset_metadata_result.py +100 -0
  174. rapidata/api_client/models/get_audience_by_id_result.py +111 -0
  175. rapidata/api_client/models/get_available_validation_sets_result.py +2 -2
  176. rapidata/api_client/models/get_benchmark_by_id_query.py +96 -0
  177. rapidata/api_client/models/get_benchmark_by_id_query_result.py +94 -0
  178. rapidata/api_client/models/get_benchmark_by_id_query_result_paged_result.py +105 -0
  179. rapidata/api_client/models/get_benchmark_by_id_result.py +96 -0
  180. rapidata/api_client/models/get_boost_result.py +97 -0
  181. rapidata/api_client/models/get_boost_result_boost_mode.py +37 -0
  182. rapidata/api_client/models/get_boost_result_boost_status.py +39 -0
  183. rapidata/api_client/models/get_compare_ab_summary_result.py +5 -5
  184. rapidata/api_client/models/get_compare_workflow_results_model.py +7 -7
  185. rapidata/api_client/models/get_compare_workflow_results_result.py +5 -5
  186. rapidata/api_client/models/get_datapoint_by_id_result.py +10 -21
  187. rapidata/api_client/models/get_datapoint_by_id_result_asset.py +170 -0
  188. rapidata/api_client/models/get_dataset_by_id_result.py +2 -2
  189. rapidata/api_client/models/get_dataset_progress_result.py +2 -2
  190. rapidata/api_client/models/get_evaluation_workflow_results_model.py +119 -0
  191. rapidata/api_client/models/get_failed_datapoints_result.py +5 -5
  192. rapidata/api_client/models/get_failed_datapoints_result_datapoint.py +100 -0
  193. rapidata/api_client/models/get_file_metadata_result.py +100 -0
  194. rapidata/api_client/models/get_grouped_ranking_workflow_results_model.py +106 -0
  195. rapidata/api_client/models/get_grouped_ranking_workflow_results_result.py +97 -0
  196. rapidata/api_client/models/get_grouped_ranking_workflow_results_result_paged_result.py +105 -0
  197. rapidata/api_client/models/get_leaderboard_by_id_result.py +50 -6
  198. rapidata/api_client/models/get_order_by_id_result.py +12 -5
  199. rapidata/api_client/models/get_participant_by_id_result.py +9 -20
  200. rapidata/api_client/models/get_pipeline_by_id_result.py +5 -5
  201. rapidata/api_client/models/get_public_orders_result.py +2 -2
  202. rapidata/api_client/models/get_public_responses_result.py +95 -0
  203. rapidata/api_client/models/get_public_responses_result_response.py +112 -0
  204. rapidata/api_client/models/get_rapid_responses_result.py +6 -12
  205. rapidata/api_client/models/get_recommended_validation_set_result.py +95 -0
  206. rapidata/api_client/models/get_responses_for_rapid_result.py +106 -0
  207. rapidata/api_client/models/get_responses_for_rapid_result_response.py +103 -0
  208. rapidata/api_client/models/get_responses_for_rapid_result_response_result.py +266 -0
  209. rapidata/api_client/models/get_responses_result.py +5 -5
  210. rapidata/api_client/models/get_responses_result_response.py +103 -0
  211. rapidata/api_client/models/get_sample_by_id_result.py +125 -0
  212. rapidata/api_client/models/get_simple_workflow_results_model.py +20 -15
  213. rapidata/api_client/models/get_standing_by_id_result.py +96 -0
  214. rapidata/api_client/models/get_validation_rapids_result.py +32 -41
  215. rapidata/api_client/models/get_validation_set_by_id_result.py +10 -4
  216. rapidata/api_client/models/get_workflow_by_id_result.py +5 -5
  217. rapidata/api_client/models/get_workflow_by_id_result_workflow.py +23 -9
  218. rapidata/api_client/models/get_workflow_progress_result.py +5 -11
  219. rapidata/api_client/models/get_workflow_results_result.py +34 -23
  220. rapidata/api_client/models/get_workflow_results_result_response.py +103 -0
  221. rapidata/api_client/models/google_one_tap_login_model.py +4 -4
  222. rapidata/api_client/models/grouped_ranking_workflow_config.py +155 -0
  223. rapidata/api_client/models/grouped_ranking_workflow_config_context_assets_value.py +170 -0
  224. rapidata/api_client/models/grouped_ranking_workflow_model.py +147 -0
  225. rapidata/api_client/models/grouped_ranking_workflow_model1.py +121 -0
  226. rapidata/api_client/models/i_artifact_model.py +182 -0
  227. rapidata/api_client/models/i_artifact_model_campaign_artifact_model.py +98 -0
  228. rapidata/api_client/models/i_artifact_model_dataset_artifact_model.py +98 -0
  229. rapidata/api_client/models/i_artifact_model_file_artifact_model.py +98 -0
  230. rapidata/api_client/models/i_artifact_model_workflow_artifact_model.py +98 -0
  231. rapidata/api_client/models/i_artifact_model_workflow_config_artifact_model.py +102 -0
  232. rapidata/api_client/models/i_asset.py +170 -0
  233. rapidata/api_client/models/i_asset_file_asset.py +111 -0
  234. rapidata/api_client/models/i_asset_input.py +156 -0
  235. rapidata/api_client/models/i_asset_input_existing_asset_input.py +118 -0
  236. rapidata/api_client/models/i_asset_input_multi_asset_input.py +128 -0
  237. rapidata/api_client/models/i_asset_input_text_asset_input.py +118 -0
  238. rapidata/api_client/models/i_asset_model.py +170 -0
  239. rapidata/api_client/models/i_asset_model_file_asset_model.py +113 -0
  240. rapidata/api_client/models/i_asset_model_multi_asset_model.py +123 -0
  241. rapidata/api_client/models/i_asset_model_null_asset_model.py +111 -0
  242. rapidata/api_client/models/i_asset_model_text_asset_model.py +113 -0
  243. rapidata/api_client/models/i_asset_multi_asset.py +121 -0
  244. rapidata/api_client/models/i_asset_null_asset.py +109 -0
  245. rapidata/api_client/models/i_asset_text_asset.py +111 -0
  246. rapidata/api_client/models/i_campaign_filter.py +282 -0
  247. rapidata/api_client/models/i_campaign_filter_and_filter.py +117 -0
  248. rapidata/api_client/models/i_campaign_filter_campaign_filter.py +98 -0
  249. rapidata/api_client/models/i_campaign_filter_country_filter.py +98 -0
  250. rapidata/api_client/models/i_campaign_filter_demographic_filter.py +100 -0
  251. rapidata/api_client/models/i_campaign_filter_language_filter.py +98 -0
  252. rapidata/api_client/models/i_campaign_filter_new_user_filter.py +96 -0
  253. rapidata/api_client/models/i_campaign_filter_not_filter.py +113 -0
  254. rapidata/api_client/models/i_campaign_filter_or_filter.py +117 -0
  255. rapidata/api_client/models/i_campaign_filter_response_count_filter.py +103 -0
  256. rapidata/api_client/models/i_campaign_filter_user_action_restriction_filter.py +106 -0
  257. rapidata/api_client/models/i_campaign_filter_user_score_filter.py +102 -0
  258. rapidata/api_client/models/i_campaign_filter_user_state_filter.py +106 -0
  259. rapidata/api_client/models/i_dataset_metadata_input.py +154 -0
  260. rapidata/api_client/models/i_dataset_metadata_input_prompt_asset_metadata_input.py +100 -0
  261. rapidata/api_client/models/i_dataset_metadata_input_prompt_metadata_input.py +96 -0
  262. rapidata/api_client/models/i_dataset_metadata_input_transcription_metadata_input.py +96 -0
  263. rapidata/api_client/models/i_dataset_model.py +126 -0
  264. rapidata/api_client/models/i_dataset_model_clone_dataset_model.py +98 -0
  265. rapidata/api_client/models/i_metadata.py +252 -0
  266. rapidata/api_client/models/i_metadata_classification_metadata.py +109 -0
  267. rapidata/api_client/models/i_metadata_count_metadata.py +109 -0
  268. rapidata/api_client/models/i_metadata_file_type_metadata.py +110 -0
  269. rapidata/api_client/models/i_metadata_image_dimension_metadata.py +111 -0
  270. rapidata/api_client/models/i_metadata_input.py +126 -0
  271. rapidata/api_client/models/i_metadata_input_text_metadata_input.py +111 -0
  272. rapidata/api_client/models/i_metadata_location_metadata.py +111 -0
  273. rapidata/api_client/models/i_metadata_model.py +252 -0
  274. rapidata/api_client/models/i_metadata_model_classification_metadata_model.py +96 -0
  275. rapidata/api_client/models/i_metadata_model_count_metadata_model.py +96 -0
  276. rapidata/api_client/models/i_metadata_model_file_type_metadata_model.py +97 -0
  277. rapidata/api_client/models/i_metadata_model_image_dimension_metadata_model.py +98 -0
  278. rapidata/api_client/models/i_metadata_model_location_metadata_model.py +98 -0
  279. rapidata/api_client/models/i_metadata_model_original_filename_metadata_model.py +96 -0
  280. rapidata/api_client/models/i_metadata_model_source_url_metadata_model.py +96 -0
  281. rapidata/api_client/models/i_metadata_model_streams_metadata_model.py +100 -0
  282. rapidata/api_client/models/i_metadata_model_text_metadata_model.py +101 -0
  283. rapidata/api_client/models/i_metadata_model_video_duration_metadata_model.py +97 -0
  284. rapidata/api_client/models/i_metadata_original_filename_metadata.py +109 -0
  285. rapidata/api_client/models/i_metadata_source_url_metadata.py +109 -0
  286. rapidata/api_client/models/i_metadata_streams_metadata.py +113 -0
  287. rapidata/api_client/models/i_metadata_text_metadata.py +114 -0
  288. rapidata/api_client/models/i_metadata_video_duration_metadata.py +110 -0
  289. rapidata/api_client/models/i_order_workflow_model.py +168 -0
  290. rapidata/api_client/models/i_order_workflow_model_compare_workflow_model.py +146 -0
  291. rapidata/api_client/models/i_order_workflow_model_evaluation_workflow_model.py +108 -0
  292. rapidata/api_client/models/i_order_workflow_model_grouped_ranking_workflow_model.py +147 -0
  293. rapidata/api_client/models/i_order_workflow_model_simple_workflow_model.py +110 -0
  294. rapidata/api_client/models/i_pair_maker_config.py +126 -0
  295. rapidata/api_client/models/i_pair_maker_config_model.py +126 -0
  296. rapidata/api_client/models/i_pair_maker_config_model_online_pair_maker_config_model.py +98 -0
  297. rapidata/api_client/models/i_pair_maker_config_online_pair_maker_config.py +98 -0
  298. rapidata/api_client/models/i_pair_maker_information.py +126 -0
  299. rapidata/api_client/models/i_pair_maker_information_online_pair_maker_information.py +100 -0
  300. rapidata/api_client/models/i_pipeline_artifact_model.py +126 -0
  301. rapidata/api_client/models/i_pipeline_artifact_model_create_dataset_artifact_model.py +102 -0
  302. rapidata/api_client/models/i_pipeline_model.py +126 -0
  303. rapidata/api_client/models/i_pipeline_model_create_simple_pipeline_model.py +116 -0
  304. rapidata/api_client/models/i_pipeline_step_model.py +168 -0
  305. rapidata/api_client/models/i_pipeline_step_model_dataset_evaluation_step_model.py +102 -0
  306. rapidata/api_client/models/i_pipeline_step_model_send_completion_mail_step_model.py +98 -0
  307. rapidata/api_client/models/i_pipeline_step_model_workflow_aggregation_step_model.py +103 -0
  308. rapidata/api_client/models/i_pipeline_step_model_workflow_labeling_step_model.py +96 -0
  309. rapidata/api_client/models/i_rapid_blueprint.py +252 -0
  310. rapidata/api_client/models/i_rapid_blueprint_attach_category_rapid_blueprint.py +108 -0
  311. rapidata/api_client/models/i_rapid_blueprint_bounding_box_rapid_blueprint.py +96 -0
  312. rapidata/api_client/models/i_rapid_blueprint_compare_rapid_blueprint.py +98 -0
  313. rapidata/api_client/models/i_rapid_blueprint_free_text_rapid_blueprint.py +103 -0
  314. rapidata/api_client/models/i_rapid_blueprint_line_rapid_blueprint.py +96 -0
  315. rapidata/api_client/models/i_rapid_blueprint_locate_rapid_blueprint.py +96 -0
  316. rapidata/api_client/models/i_rapid_blueprint_named_entity_rapid_blueprint.py +98 -0
  317. rapidata/api_client/models/i_rapid_blueprint_polygon_rapid_blueprint.py +96 -0
  318. rapidata/api_client/models/i_rapid_blueprint_scrub_rapid_blueprint.py +96 -0
  319. rapidata/api_client/models/i_rapid_blueprint_transcription_rapid_blueprint.py +96 -0
  320. rapidata/api_client/models/i_rapid_payload.py +252 -0
  321. rapidata/api_client/models/i_rapid_payload_bounding_box_payload.py +96 -0
  322. rapidata/api_client/models/i_rapid_payload_classify_payload.py +106 -0
  323. rapidata/api_client/models/i_rapid_payload_compare_payload.py +96 -0
  324. rapidata/api_client/models/i_rapid_payload_free_text_payload.py +103 -0
  325. rapidata/api_client/models/i_rapid_payload_line_payload.py +96 -0
  326. rapidata/api_client/models/i_rapid_payload_locate_payload.py +96 -0
  327. rapidata/api_client/models/i_rapid_payload_named_entity_payload.py +98 -0
  328. rapidata/api_client/models/i_rapid_payload_polygon_payload.py +96 -0
  329. rapidata/api_client/models/i_rapid_payload_scrub_payload.py +96 -0
  330. rapidata/api_client/models/i_rapid_payload_transcription_payload.py +106 -0
  331. rapidata/api_client/models/i_rapid_result.py +266 -0
  332. rapidata/api_client/models/i_rapid_result_attach_category_result.py +98 -0
  333. rapidata/api_client/models/i_rapid_result_bounding_box_result.py +106 -0
  334. rapidata/api_client/models/i_rapid_result_compare_result.py +98 -0
  335. rapidata/api_client/models/i_rapid_result_free_text_result.py +98 -0
  336. rapidata/api_client/models/i_rapid_result_line_result.py +106 -0
  337. rapidata/api_client/models/i_rapid_result_locate_result.py +106 -0
  338. rapidata/api_client/models/i_rapid_result_named_entity_result.py +106 -0
  339. rapidata/api_client/models/i_rapid_result_polygon_result.py +106 -0
  340. rapidata/api_client/models/i_rapid_result_scrub_result.py +98 -0
  341. rapidata/api_client/models/i_rapid_result_skip_result.py +96 -0
  342. rapidata/api_client/models/i_rapid_result_transcription_result.py +106 -0
  343. rapidata/api_client/models/i_referee_config.py +154 -0
  344. rapidata/api_client/models/i_referee_config_naive_referee_config.py +96 -0
  345. rapidata/api_client/models/i_referee_config_never_ending_referee_config.py +94 -0
  346. rapidata/api_client/models/i_referee_config_probabilistic_attach_category_referee_config.py +98 -0
  347. rapidata/api_client/models/i_referee_info.py +154 -0
  348. rapidata/api_client/models/i_referee_info_naive_referee_info.py +96 -0
  349. rapidata/api_client/models/i_referee_info_never_ending_referee_info.py +94 -0
  350. rapidata/api_client/models/i_referee_info_probabilistic_attach_category_referee_info.py +98 -0
  351. rapidata/api_client/models/i_referee_model.py +140 -0
  352. rapidata/api_client/models/i_referee_model_early_stopping_referee_model.py +98 -0
  353. rapidata/api_client/models/i_referee_model_naive_referee_model.py +96 -0
  354. rapidata/api_client/models/i_selection.py +240 -0
  355. rapidata/api_client/models/i_selection_ab_test_selection.py +122 -0
  356. rapidata/api_client/models/i_selection_capped_selection.py +108 -0
  357. rapidata/api_client/models/i_selection_conditional_validation_selection.py +110 -0
  358. rapidata/api_client/models/i_selection_demographic_selection.py +98 -0
  359. rapidata/api_client/models/i_selection_effort_capped_selection.py +101 -0
  360. rapidata/api_client/models/i_selection_labeling_selection.py +103 -0
  361. rapidata/api_client/models/i_selection_shuffling_selection.py +106 -0
  362. rapidata/api_client/models/i_selection_static_selection.py +96 -0
  363. rapidata/api_client/models/i_selection_validation_selection.py +98 -0
  364. rapidata/api_client/models/i_user_filter_model.py +282 -0
  365. rapidata/api_client/models/i_user_filter_model_age_user_filter_model.py +104 -0
  366. rapidata/api_client/models/i_user_filter_model_and_user_filter_model.py +106 -0
  367. rapidata/api_client/models/i_user_filter_model_campaign_user_filter_model.py +96 -0
  368. rapidata/api_client/models/i_user_filter_model_country_user_filter_model.py +96 -0
  369. rapidata/api_client/models/i_user_filter_model_custom_user_filter_model.py +98 -0
  370. rapidata/api_client/models/i_user_filter_model_gender_user_filter_model.py +104 -0
  371. rapidata/api_client/models/i_user_filter_model_language_user_filter_model.py +96 -0
  372. rapidata/api_client/models/i_user_filter_model_new_user_filter_model.py +94 -0
  373. rapidata/api_client/models/i_user_filter_model_not_user_filter_model.py +102 -0
  374. rapidata/api_client/models/i_user_filter_model_or_user_filter_model.py +106 -0
  375. rapidata/api_client/models/i_user_filter_model_response_count_user_filter_model.py +101 -0
  376. rapidata/api_client/models/i_user_filter_model_user_score_user_filter_model.py +105 -0
  377. rapidata/api_client/models/i_validation_metadata_input.py +140 -0
  378. rapidata/api_client/models/i_validation_metadata_input_prompt_asset_metadata_input.py +100 -0
  379. rapidata/api_client/models/i_validation_metadata_input_prompt_metadata_input.py +96 -0
  380. rapidata/api_client/models/i_validation_truth.py +280 -0
  381. rapidata/api_client/models/i_validation_truth_attach_category_truth.py +96 -0
  382. rapidata/api_client/models/i_validation_truth_bounding_box_truth.py +102 -0
  383. rapidata/api_client/models/i_validation_truth_compare_truth.py +96 -0
  384. rapidata/api_client/models/i_validation_truth_empty_validation_truth.py +94 -0
  385. rapidata/api_client/models/i_validation_truth_line_truth.py +94 -0
  386. rapidata/api_client/models/i_validation_truth_locate_box_truth.py +104 -0
  387. rapidata/api_client/models/i_validation_truth_multi_compare_truth.py +96 -0
  388. rapidata/api_client/models/i_validation_truth_named_entity_truth.py +104 -0
  389. rapidata/api_client/models/i_validation_truth_polygon_truth.py +94 -0
  390. rapidata/api_client/models/i_validation_truth_scrub_truth.py +104 -0
  391. rapidata/api_client/models/i_validation_truth_skip_truth.py +94 -0
  392. rapidata/api_client/models/i_validation_truth_transcription_truth.py +115 -0
  393. rapidata/api_client/models/i_workflow_config.py +168 -0
  394. rapidata/api_client/models/i_workflow_config_compare_workflow_config.py +142 -0
  395. rapidata/api_client/models/i_workflow_config_evaluation_workflow_config.py +114 -0
  396. rapidata/api_client/models/i_workflow_config_grouped_ranking_workflow_config.py +155 -0
  397. rapidata/api_client/models/i_workflow_config_simple_workflow_config.py +116 -0
  398. rapidata/api_client/models/i_workflow_model.py +168 -0
  399. rapidata/api_client/models/i_workflow_model_compare_workflow_model.py +145 -0
  400. rapidata/api_client/models/i_workflow_model_evaluation_workflow_model.py +115 -0
  401. rapidata/api_client/models/i_workflow_model_grouped_ranking_workflow_model.py +121 -0
  402. rapidata/api_client/models/i_workflow_model_simple_workflow_model.py +119 -0
  403. rapidata/api_client/models/image_dimension_metadata.py +12 -1
  404. rapidata/api_client/models/inquire_file_metadata_result.py +100 -0
  405. rapidata/api_client/models/inspect_report_result.py +2 -2
  406. rapidata/api_client/models/json_web_key.py +2 -36
  407. rapidata/api_client/models/json_web_key_set.py +2 -22
  408. rapidata/api_client/models/labeling_selection.py +11 -13
  409. rapidata/api_client/models/language_filter.py +98 -0
  410. rapidata/api_client/models/leaderboard_query_result.py +46 -4
  411. rapidata/api_client/models/leaderboards_query_result.py +135 -0
  412. rapidata/api_client/models/line_result.py +3 -3
  413. rapidata/api_client/models/line_result_line.py +97 -0
  414. rapidata/api_client/models/line_result_line_point.py +89 -0
  415. rapidata/api_client/models/local_file_wrapper.py +120 -0
  416. rapidata/api_client/models/locate_coordinate.py +4 -13
  417. rapidata/api_client/models/location_metadata.py +12 -1
  418. rapidata/api_client/models/logic_operator.py +2 -2
  419. rapidata/api_client/models/metadata_i_order_metadata_input.py +154 -0
  420. rapidata/api_client/models/metadata_i_order_metadata_input_metadata_prompt_asset_metadata_input.py +100 -0
  421. rapidata/api_client/models/metadata_i_order_metadata_input_metadata_prompt_metadata_input.py +96 -0
  422. rapidata/api_client/models/metadata_i_order_metadata_input_metadata_transcription_metadata_input.py +96 -0
  423. rapidata/api_client/models/metadata_prompt_asset_metadata_input.py +100 -0
  424. rapidata/api_client/models/metadata_prompt_metadata_input.py +96 -0
  425. rapidata/api_client/models/metadata_transcription_metadata_input.py +96 -0
  426. rapidata/api_client/models/multi_asset.py +6 -6
  427. rapidata/api_client/models/multi_asset_assets_inner.py +170 -0
  428. rapidata/api_client/models/multi_asset_input.py +130 -0
  429. rapidata/api_client/models/multi_asset_input1.py +110 -0
  430. rapidata/api_client/models/multi_asset_input1_assets_inner.py +198 -0
  431. rapidata/api_client/models/multi_asset_input2.py +110 -0
  432. rapidata/api_client/models/multi_asset_input3.py +110 -0
  433. rapidata/api_client/models/multi_asset_input3_assets_inner.py +198 -0
  434. rapidata/api_client/models/multi_asset_input_assets_inner.py +156 -0
  435. rapidata/api_client/models/multi_asset_model.py +3 -3
  436. rapidata/api_client/models/naive_referee_model.py +2 -2
  437. rapidata/api_client/models/named_classification.py +4 -13
  438. rapidata/api_client/models/new_user_filter.py +96 -0
  439. rapidata/api_client/models/newsletter_model.py +6 -6
  440. rapidata/api_client/models/not_available_yet_result.py +4 -13
  441. rapidata/api_client/models/not_filter.py +117 -0
  442. rapidata/api_client/models/not_user_filter_model.py +3 -3
  443. rapidata/api_client/models/null_asset.py +3 -5
  444. rapidata/api_client/models/online_pair_maker_config_model.py +3 -3
  445. rapidata/api_client/models/or_filter.py +121 -0
  446. rapidata/api_client/models/or_user_filter_model.py +3 -3
  447. rapidata/api_client/models/order_model.py +15 -14
  448. rapidata/api_client/models/order_state.py +2 -2
  449. rapidata/api_client/models/original_filename_metadata.py +12 -1
  450. rapidata/api_client/models/page_info.py +2 -7
  451. rapidata/api_client/models/paged_result_aggregated_orders_model.py +105 -0
  452. rapidata/api_client/models/paged_result_benchmark_query_result.py +105 -0
  453. rapidata/api_client/models/paged_result_campaign_query_result.py +105 -0
  454. rapidata/api_client/models/paged_result_clients_query_result.py +105 -0
  455. rapidata/api_client/models/paged_result_datapoint_model.py +105 -0
  456. rapidata/api_client/models/paged_result_get_compare_workflow_results_result.py +105 -0
  457. rapidata/api_client/models/paged_result_get_grouped_ranking_workflow_results_result.py +105 -0
  458. rapidata/api_client/models/paged_result_get_validation_rapids_result.py +105 -0
  459. rapidata/api_client/models/paged_result_get_workflow_results_result.py +105 -0
  460. rapidata/api_client/models/paged_result_i_workflow_model.py +105 -0
  461. rapidata/api_client/models/paged_result_leaderboard_query_result.py +105 -0
  462. rapidata/api_client/models/paged_result_leaderboards_query_result.py +105 -0
  463. rapidata/api_client/models/paged_result_of_aggregated_orders_model.py +103 -0
  464. rapidata/api_client/models/paged_result_of_benchmark_query_result.py +103 -0
  465. rapidata/api_client/models/paged_result_of_campaign_query_result.py +103 -0
  466. rapidata/api_client/models/paged_result_of_clients_query_result.py +103 -0
  467. rapidata/api_client/models/paged_result_of_get_compare_workflow_results_result.py +103 -0
  468. rapidata/api_client/models/paged_result_of_get_grouped_ranking_workflow_results_result.py +103 -0
  469. rapidata/api_client/models/paged_result_of_get_validation_rapids_result.py +103 -0
  470. rapidata/api_client/models/paged_result_of_get_workflow_results_result.py +103 -0
  471. rapidata/api_client/models/paged_result_of_i_workflow_model.py +103 -0
  472. rapidata/api_client/models/paged_result_of_leaderboards_query_result.py +103 -0
  473. rapidata/api_client/models/paged_result_of_order_model.py +103 -0
  474. rapidata/api_client/models/paged_result_of_participant_by_benchmark.py +103 -0
  475. rapidata/api_client/models/paged_result_of_prompt_by_benchmark_result.py +103 -0
  476. rapidata/api_client/models/paged_result_of_query_audiences_result.py +103 -0
  477. rapidata/api_client/models/paged_result_of_query_datapoints_by_dataset_id_result.py +103 -0
  478. rapidata/api_client/models/paged_result_of_query_validation_rapid_eligibility_result.py +103 -0
  479. rapidata/api_client/models/paged_result_of_rapid_model.py +103 -0
  480. rapidata/api_client/models/paged_result_of_runs_by_leaderboard_result.py +103 -0
  481. rapidata/api_client/models/paged_result_of_sample_by_identifier.py +103 -0
  482. rapidata/api_client/models/paged_result_of_sample_by_participant.py +103 -0
  483. rapidata/api_client/models/paged_result_of_standing_by_leaderboard.py +103 -0
  484. rapidata/api_client/models/paged_result_of_validation_set_model.py +103 -0
  485. rapidata/api_client/models/paged_result_order_model.py +105 -0
  486. rapidata/api_client/models/paged_result_participant_by_benchmark.py +105 -0
  487. rapidata/api_client/models/paged_result_potential_validation_rapid.py +105 -0
  488. rapidata/api_client/models/paged_result_prompt_by_benchmark_result.py +105 -0
  489. rapidata/api_client/models/paged_result_query_audiences_result.py +105 -0
  490. rapidata/api_client/models/paged_result_query_datapoints_by_dataset_id_result.py +105 -0
  491. rapidata/api_client/models/paged_result_query_validation_rapid_eligibility_result.py +105 -0
  492. rapidata/api_client/models/paged_result_rapid_model.py +105 -0
  493. rapidata/api_client/models/paged_result_runs_by_leaderboard_result.py +105 -0
  494. rapidata/api_client/models/paged_result_sample_by_identifier.py +105 -0
  495. rapidata/api_client/models/paged_result_sample_by_participant.py +105 -0
  496. rapidata/api_client/models/paged_result_standing_by_leaderboard.py +105 -0
  497. rapidata/api_client/models/paged_result_validation_set_model.py +105 -0
  498. rapidata/api_client/models/participant_by_benchmark.py +94 -0
  499. rapidata/api_client/models/participant_by_benchmark_paged_result.py +105 -0
  500. rapidata/api_client/models/participant_by_leaderboard.py +19 -8
  501. rapidata/api_client/models/participant_status.py +4 -5
  502. rapidata/api_client/models/pipeline_id_workflow_config_put_request.py +140 -0
  503. rapidata/api_client/models/polygon_result.py +3 -3
  504. rapidata/api_client/models/polygon_result_coordinate.py +89 -0
  505. rapidata/api_client/models/polygon_result_shape.py +95 -0
  506. rapidata/api_client/models/potential_validation_rapid.py +103 -0
  507. rapidata/api_client/models/potential_validation_rapid_paged_result.py +105 -0
  508. rapidata/api_client/models/potential_validation_rapid_truth.py +280 -0
  509. rapidata/api_client/models/preliminary_download_model.py +5 -5
  510. rapidata/api_client/models/preview_order_model.py +87 -0
  511. rapidata/api_client/models/problem_details.py +2 -20
  512. rapidata/api_client/models/prompt_asset_metadata_input.py +6 -8
  513. rapidata/api_client/models/prompt_asset_metadata_input_asset.py +154 -0
  514. rapidata/api_client/models/prompt_by_benchmark_result.py +112 -0
  515. rapidata/api_client/models/prompt_by_benchmark_result_paged_result.py +105 -0
  516. rapidata/api_client/models/prompt_metadata.py +12 -1
  517. rapidata/api_client/models/prompt_metadata_input.py +2 -2
  518. rapidata/api_client/models/prompt_type.py +38 -0
  519. rapidata/api_client/models/proxy_file_wrapper.py +129 -0
  520. rapidata/api_client/models/public_order_model.py +2 -2
  521. rapidata/api_client/models/public_rapid_response.py +112 -0
  522. rapidata/api_client/models/query_audiences_result.py +111 -0
  523. rapidata/api_client/models/query_datapoints_by_dataset_id_result.py +95 -0
  524. rapidata/api_client/models/query_model.py +10 -5
  525. rapidata/api_client/models/query_validation_model.py +97 -0
  526. rapidata/api_client/models/query_validation_rapid_eligibility_model_query_validation_model.py +107 -0
  527. rapidata/api_client/models/query_validation_rapid_eligibility_result.py +103 -0
  528. rapidata/api_client/models/query_validation_rapid_eligibility_result_truth.py +280 -0
  529. rapidata/api_client/models/rapid_issue.py +2 -2
  530. rapidata/api_client/models/rapid_modality.py +46 -0
  531. rapidata/api_client/models/rapid_model.py +33 -49
  532. rapidata/api_client/models/rapid_result_model.py +7 -7
  533. rapidata/api_client/models/rapid_skipped_model.py +5 -5
  534. rapidata/api_client/models/rapid_state.py +2 -2
  535. rapidata/api_client/models/read_bridge_token_keys_result.py +10 -24
  536. rapidata/api_client/models/reference_asset_input.py +100 -0
  537. rapidata/api_client/models/report_model.py +9 -15
  538. rapidata/api_client/models/response_count_filter.py +103 -0
  539. rapidata/api_client/models/response_count_user_filter_model.py +2 -8
  540. rapidata/api_client/models/retrieval_mode.py +2 -2
  541. rapidata/api_client/models/root_filter.py +5 -14
  542. rapidata/api_client/models/run_status.py +39 -0
  543. rapidata/api_client/models/runs_by_leaderboard_result.py +104 -0
  544. rapidata/api_client/models/runs_by_leaderboard_result_paged_result.py +105 -0
  545. rapidata/api_client/models/sample_by_identifier.py +125 -0
  546. rapidata/api_client/models/sample_by_identifier_paged_result.py +105 -0
  547. rapidata/api_client/models/sample_by_participant.py +121 -0
  548. rapidata/api_client/models/sample_by_participant_paged_result.py +105 -0
  549. rapidata/api_client/models/scrub_range.py +2 -2
  550. rapidata/api_client/models/send_survey_model.py +87 -0
  551. rapidata/api_client/models/simple_workflow_config.py +15 -7
  552. rapidata/api_client/models/simple_workflow_config_blueprint.py +37 -23
  553. rapidata/api_client/models/simple_workflow_config_model.py +11 -3
  554. rapidata/api_client/models/simple_workflow_model.py +14 -4
  555. rapidata/api_client/models/simple_workflow_model1.py +4 -11
  556. rapidata/api_client/models/simple_workflow_model_blueprint.py +1 -1
  557. rapidata/api_client/models/sort_criterion.py +5 -11
  558. rapidata/api_client/models/sort_direction.py +2 -2
  559. rapidata/api_client/models/source_url_metadata.py +12 -1
  560. rapidata/api_client/models/standing_by_benchmark.py +113 -0
  561. rapidata/api_client/models/standing_by_leaderboard.py +113 -0
  562. rapidata/api_client/models/standing_by_leaderboard_paged_result.py +105 -0
  563. rapidata/api_client/models/standing_status.py +38 -0
  564. rapidata/api_client/models/standings_by_benchmark_result.py +95 -0
  565. rapidata/api_client/models/standings_by_leaderboard_result.py +95 -0
  566. rapidata/api_client/models/start_preliminary_download_result.py +87 -0
  567. rapidata/api_client/models/sticky_state.py +3 -2
  568. rapidata/api_client/models/stream_file_wrapper.py +138 -0
  569. rapidata/api_client/models/streams_metadata.py +12 -1
  570. rapidata/api_client/models/string_segment.py +105 -0
  571. rapidata/api_client/models/submit_coco_model.py +1 -3
  572. rapidata/api_client/models/submit_order_model.py +87 -0
  573. rapidata/api_client/models/submit_participant_result.py +89 -0
  574. rapidata/api_client/models/submit_prompt_model.py +107 -0
  575. rapidata/api_client/models/submit_prompt_model_prompt_asset.py +202 -0
  576. rapidata/api_client/models/tags_by_benchmark_result.py +87 -0
  577. rapidata/api_client/models/text_asset.py +3 -5
  578. rapidata/api_client/models/text_asset_input.py +120 -0
  579. rapidata/api_client/models/text_metadata.py +18 -2
  580. rapidata/api_client/models/text_metadata_input.py +111 -0
  581. rapidata/api_client/models/text_metadata_model.py +7 -2
  582. rapidata/api_client/models/transcription_metadata.py +9 -1
  583. rapidata/api_client/models/transcription_metadata_input.py +2 -2
  584. rapidata/api_client/models/transcription_word.py +2 -2
  585. rapidata/api_client/models/translated_string.py +2 -2
  586. rapidata/api_client/models/unlock_order_result.py +2 -2
  587. rapidata/api_client/models/update_audience_request.py +102 -0
  588. rapidata/api_client/models/update_benchmark_model.py +99 -0
  589. rapidata/api_client/models/update_benchmark_name_model.py +87 -0
  590. rapidata/api_client/models/update_campaign_model.py +11 -11
  591. rapidata/api_client/models/update_dataset_name_model.py +5 -5
  592. rapidata/api_client/models/update_dimensions_model.py +3 -3
  593. rapidata/api_client/models/update_leaderboard_model.py +106 -0
  594. rapidata/api_client/models/update_leaderboard_name_model.py +87 -0
  595. rapidata/api_client/models/update_leaderboard_response_config_model.py +89 -0
  596. rapidata/api_client/models/update_order_name_model.py +5 -5
  597. rapidata/api_client/models/update_participant_model.py +92 -0
  598. rapidata/api_client/models/update_participant_name_model.py +87 -0
  599. rapidata/api_client/models/update_priority_model.py +87 -0
  600. rapidata/api_client/models/update_prompt_tags_model.py +87 -0
  601. rapidata/api_client/models/update_should_alert_model.py +87 -0
  602. rapidata/api_client/models/update_validation_rapid_model.py +28 -10
  603. rapidata/api_client/models/update_validation_rapid_model_context_asset.py +160 -0
  604. rapidata/api_client/models/update_validation_set_model.py +120 -0
  605. rapidata/api_client/models/upload_asset_result.py +102 -0
  606. rapidata/api_client/models/upload_file_from_url_result.py +87 -0
  607. rapidata/api_client/models/upload_file_result.py +87 -0
  608. rapidata/api_client/models/user_action_restriction.py +37 -0
  609. rapidata/api_client/models/user_action_restriction_filter.py +101 -0
  610. rapidata/api_client/models/user_score_filter.py +102 -0
  611. rapidata/api_client/models/user_state.py +38 -0
  612. rapidata/api_client/models/user_state_filter.py +101 -0
  613. rapidata/api_client/models/validation_chance.py +20 -3
  614. rapidata/api_client/models/validation_set_model.py +39 -5
  615. rapidata/api_client/models/validation_set_overview_model.py +2 -2
  616. rapidata/api_client/models/validation_set_zip_post_request_blueprint.py +252 -0
  617. rapidata/api_client/models/video_duration_metadata.py +12 -1
  618. rapidata/api_client/models/workflow_aggregation_step_model.py +3 -12
  619. rapidata/api_client/models/workflow_config_artifact_model_workflow_config.py +23 -9
  620. rapidata/api_client/models/workflow_state.py +2 -2
  621. rapidata/api_client/models/zip_entry_file_wrapper.py +151 -0
  622. rapidata/api_client/rest.py +16 -9
  623. rapidata/api_client_README.md +373 -336
  624. rapidata/rapidata_client/__init__.py +9 -18
  625. rapidata/rapidata_client/api/rapidata_api_client.py +253 -0
  626. rapidata/rapidata_client/benchmark/_detail_mapper.py +32 -0
  627. rapidata/rapidata_client/benchmark/leaderboard/__init__.py +0 -0
  628. rapidata/rapidata_client/benchmark/leaderboard/rapidata_leaderboard.py +221 -0
  629. rapidata/rapidata_client/benchmark/participant/__init__.py +0 -0
  630. rapidata/rapidata_client/benchmark/participant/_participant.py +147 -0
  631. rapidata/rapidata_client/benchmark/rapidata_benchmark.py +546 -0
  632. rapidata/rapidata_client/benchmark/rapidata_benchmark_manager.py +219 -0
  633. rapidata/rapidata_client/config/__init__.py +4 -0
  634. rapidata/rapidata_client/config/logger.py +135 -0
  635. rapidata/rapidata_client/config/logging_config.py +55 -0
  636. rapidata/rapidata_client/config/managed_print.py +6 -0
  637. rapidata/rapidata_client/config/order_config.py +14 -0
  638. rapidata/rapidata_client/config/rapidata_config.py +36 -0
  639. rapidata/rapidata_client/config/tracer.py +184 -0
  640. rapidata/rapidata_client/config/upload_config.py +64 -0
  641. rapidata/rapidata_client/datapoints/__init__.py +10 -0
  642. rapidata/rapidata_client/datapoints/_asset_uploader.py +169 -0
  643. rapidata/rapidata_client/datapoints/_datapoint.py +92 -0
  644. rapidata/rapidata_client/datapoints/_datapoint_uploader.py +47 -0
  645. rapidata/rapidata_client/datapoints/_datapoints_validator.py +70 -0
  646. rapidata/rapidata_client/datapoints/assets/__init__.py +0 -0
  647. rapidata/rapidata_client/datapoints/assets/constants.py +7 -0
  648. rapidata/rapidata_client/{metadata → datapoints/metadata}/__init__.py +1 -0
  649. rapidata/rapidata_client/datapoints/metadata/_media_asset_metadata.py +26 -0
  650. rapidata/rapidata_client/datapoints/metadata/_private_text_metadata.py +16 -0
  651. rapidata/rapidata_client/datapoints/metadata/_prompt_identifier_metadata.py +14 -0
  652. rapidata/rapidata_client/datapoints/metadata/_prompt_metadata.py +12 -0
  653. rapidata/rapidata_client/datapoints/metadata/_public_text_metadata.py +16 -0
  654. rapidata/rapidata_client/{metadata → datapoints/metadata}/_select_words_metadata.py +4 -5
  655. rapidata/rapidata_client/demographic/demographic_manager.py +44 -19
  656. rapidata/rapidata_client/exceptions/__init__.py +1 -0
  657. rapidata/rapidata_client/exceptions/failed_upload_exception.py +20 -0
  658. rapidata/rapidata_client/filter/__init__.py +1 -0
  659. rapidata/rapidata_client/filter/_base_filter.py +27 -6
  660. rapidata/rapidata_client/filter/age_filter.py +21 -10
  661. rapidata/rapidata_client/filter/and_filter.py +42 -0
  662. rapidata/rapidata_client/filter/campaign_filter.py +18 -10
  663. rapidata/rapidata_client/filter/country_filter.py +34 -12
  664. rapidata/rapidata_client/filter/custom_filter.py +22 -12
  665. rapidata/rapidata_client/filter/gender_filter.py +22 -10
  666. rapidata/rapidata_client/filter/language_filter.py +39 -21
  667. rapidata/rapidata_client/filter/models/age_group.py +14 -12
  668. rapidata/rapidata_client/filter/models/gender.py +12 -8
  669. rapidata/rapidata_client/filter/new_user_filter.py +11 -4
  670. rapidata/rapidata_client/filter/not_filter.py +23 -11
  671. rapidata/rapidata_client/filter/or_filter.py +23 -11
  672. rapidata/rapidata_client/filter/rapidata_filters.py +19 -13
  673. rapidata/rapidata_client/filter/response_count_filter.py +36 -20
  674. rapidata/rapidata_client/filter/user_score_filter.py +47 -24
  675. rapidata/rapidata_client/order/_rapidata_order_builder.py +289 -154
  676. rapidata/rapidata_client/order/dataset/_rapidata_dataset.py +153 -0
  677. rapidata/rapidata_client/order/rapidata_order.py +316 -163
  678. rapidata/rapidata_client/order/rapidata_order_manager.py +688 -430
  679. rapidata/rapidata_client/order/rapidata_results.py +86 -63
  680. rapidata/rapidata_client/rapidata_client.py +98 -36
  681. rapidata/rapidata_client/referee/__init__.py +1 -1
  682. rapidata/rapidata_client/referee/_base_referee.py +7 -3
  683. rapidata/rapidata_client/referee/_early_stopping_referee.py +20 -11
  684. rapidata/rapidata_client/referee/_naive_referee.py +18 -3
  685. rapidata/rapidata_client/selection/__init__.py +2 -2
  686. rapidata/rapidata_client/selection/_base_selection.py +9 -2
  687. rapidata/rapidata_client/selection/ab_test_selection.py +28 -20
  688. rapidata/rapidata_client/selection/capped_selection.py +23 -16
  689. rapidata/rapidata_client/selection/conditional_validation_selection.py +43 -24
  690. rapidata/rapidata_client/selection/demographic_selection.py +21 -6
  691. rapidata/rapidata_client/selection/effort_selection.py +40 -10
  692. rapidata/rapidata_client/selection/labeling_selection.py +34 -11
  693. rapidata/rapidata_client/selection/{retrieval_modes.py → rapidata_retrieval_modes.py} +7 -4
  694. rapidata/rapidata_client/selection/rapidata_selections.py +17 -8
  695. rapidata/rapidata_client/selection/shuffling_selection.py +21 -13
  696. rapidata/rapidata_client/selection/static_selection.py +19 -8
  697. rapidata/rapidata_client/selection/validation_selection.py +20 -4
  698. rapidata/rapidata_client/settings/__init__.py +2 -0
  699. rapidata/rapidata_client/settings/_rapidata_setting.py +15 -2
  700. rapidata/rapidata_client/settings/alert_on_fast_response.py +8 -5
  701. rapidata/rapidata_client/settings/allow_neither_both.py +3 -0
  702. rapidata/rapidata_client/settings/custom_setting.py +3 -2
  703. rapidata/rapidata_client/settings/free_text_minimum_characters.py +9 -4
  704. rapidata/rapidata_client/settings/models/translation_behaviour_options.py +3 -2
  705. rapidata/rapidata_client/settings/mute_video.py +15 -0
  706. rapidata/rapidata_client/settings/no_shuffle.py +4 -2
  707. rapidata/rapidata_client/settings/play_video_until_the_end.py +7 -4
  708. rapidata/rapidata_client/settings/rapidata_settings.py +16 -3
  709. rapidata/rapidata_client/settings/swap_context_instruction.py +20 -0
  710. rapidata/rapidata_client/settings/translation_behaviour.py +7 -5
  711. rapidata/rapidata_client/validation/rapidata_validation_set.py +106 -12
  712. rapidata/rapidata_client/validation/rapids/_validation_rapid_uploader.py +62 -0
  713. rapidata/rapidata_client/validation/rapids/box.py +37 -12
  714. rapidata/rapidata_client/validation/rapids/rapids.py +28 -103
  715. rapidata/rapidata_client/validation/rapids/rapids_manager.py +315 -208
  716. rapidata/rapidata_client/validation/validation_set_manager.py +511 -274
  717. rapidata/rapidata_client/workflow/__init__.py +2 -1
  718. rapidata/rapidata_client/workflow/_base_workflow.py +25 -7
  719. rapidata/rapidata_client/workflow/_classify_workflow.py +58 -15
  720. rapidata/rapidata_client/workflow/_compare_workflow.py +44 -9
  721. rapidata/rapidata_client/workflow/_draw_workflow.py +40 -10
  722. rapidata/rapidata_client/workflow/_evaluation_workflow.py +28 -7
  723. rapidata/rapidata_client/workflow/_free_text_workflow.py +46 -9
  724. rapidata/rapidata_client/workflow/_locate_workflow.py +40 -10
  725. rapidata/rapidata_client/workflow/_multi_ranking_workflow.py +87 -0
  726. rapidata/rapidata_client/workflow/_ranking_workflow.py +109 -25
  727. rapidata/rapidata_client/workflow/_select_words_workflow.py +51 -11
  728. rapidata/rapidata_client/workflow/_timestamp_workflow.py +42 -11
  729. rapidata/service/__init__.py +0 -1
  730. rapidata/service/credential_manager.py +14 -14
  731. rapidata/service/openapi_service.py +79 -24
  732. rapidata/types/__init__.py +166 -0
  733. rapidata-2.44.3.dist-info/METADATA +32 -0
  734. rapidata-2.44.3.dist-info/RECORD +1014 -0
  735. {rapidata-2.28.2.dist-info → rapidata-2.44.3.dist-info}/WHEEL +1 -1
  736. rapidata/rapidata_client/api/rapidata_exception.py +0 -107
  737. rapidata/rapidata_client/assets/__init__.py +0 -10
  738. rapidata/rapidata_client/assets/_base_asset.py +0 -11
  739. rapidata/rapidata_client/assets/_media_asset.py +0 -306
  740. rapidata/rapidata_client/assets/_multi_asset.py +0 -61
  741. rapidata/rapidata_client/assets/_sessions.py +0 -35
  742. rapidata/rapidata_client/assets/_text_asset.py +0 -34
  743. rapidata/rapidata_client/assets/data_type_enum.py +0 -7
  744. rapidata/rapidata_client/country_codes/__init__.py +0 -1
  745. rapidata/rapidata_client/country_codes/country_codes.py +0 -19
  746. rapidata/rapidata_client/leaderboard/rapidata_leaderboard.py +0 -127
  747. rapidata/rapidata_client/leaderboard/rapidata_leaderboard_manager.py +0 -92
  748. rapidata/rapidata_client/logging/__init__.py +0 -2
  749. rapidata/rapidata_client/logging/logger.py +0 -122
  750. rapidata/rapidata_client/logging/output_manager.py +0 -20
  751. rapidata/rapidata_client/metadata/_media_asset_metadata.py +0 -15
  752. rapidata/rapidata_client/metadata/_private_text_metadata.py +0 -17
  753. rapidata/rapidata_client/metadata/_prompt_metadata.py +0 -18
  754. rapidata/rapidata_client/metadata/_public_text_metadata.py +0 -17
  755. rapidata/rapidata_client/order/_rapidata_dataset.py +0 -461
  756. rapidata/service/local_file_service.py +0 -25
  757. rapidata-2.28.2.dist-info/METADATA +0 -35
  758. rapidata-2.28.2.dist-info/RECORD +0 -574
  759. /rapidata/rapidata_client/{leaderboard → benchmark}/__init__.py +0 -0
  760. /rapidata/rapidata_client/{metadata → datapoints/metadata}/_base_metadata.py +0 -0
  761. {rapidata-2.28.2.dist-info → rapidata-2.44.3.dist-info/licenses}/LICENSE +0 -0
@@ -1,57 +1,69 @@
1
- import pandas as pd
2
- from typing import Any
3
- from pandas.core.indexes.base import Index
1
+ from typing import TYPE_CHECKING, Any
2
+ from rapidata.rapidata_client.config import managed_print
4
3
  import json
5
- from rapidata.rapidata_client.logging import managed_print
4
+
5
+ if TYPE_CHECKING:
6
+ import pandas as pd
7
+ from pandas.core.indexes.base import Index
8
+
6
9
 
7
10
  class RapidataResults(dict):
8
11
  """
9
12
  A specialized dictionary class for handling Rapidata API results.
10
13
  Extends the built-in dict class with specialized methods.
11
14
  """
12
- def to_pandas(self, split_details: bool = False) -> pd.DataFrame:
15
+
16
+ def to_pandas(self, split_details: bool = False) -> "pd.DataFrame":
13
17
  """
14
18
  Warning:
15
19
  This method is currently under development. The structure of the results may change in the future.
16
20
 
17
21
  Converts the results to a pandas DataFrame.
18
-
22
+
19
23
  For Compare results, creates standardized A/B columns for metrics.
20
24
  For regular results, flattens nested dictionaries into columns with underscore-separated names.
21
-
25
+
22
26
  Args:
23
27
  split_details: If True, splits each datapoint by its detailed results,
24
28
  creating a row for each response with global metrics copied.
25
-
29
+
26
30
  Returns:
27
31
  pd.DataFrame: A DataFrame containing the processed results
28
-
32
+
29
33
  Raises:
30
34
  ValueError: If split_details is True but no detailed results are found
31
35
  """
36
+ import pandas as pd
37
+ from pandas.core.indexes.base import Index
38
+
32
39
  if "results" not in self or not self["results"]:
33
40
  return pd.DataFrame()
34
-
41
+
35
42
  if self["info"].get("orderType") is None:
36
- managed_print("Warning: Results are old and Order type is not specified. Dataframe might be wrong.")
37
-
43
+ managed_print(
44
+ "Warning: Results are old and Order type is not specified. Dataframe might be wrong."
45
+ )
46
+
38
47
  # Check for detailed results if split_details is True
39
48
  if split_details:
40
49
  if not self._has_detailed_results():
41
50
  raise ValueError("No detailed results found in the data")
42
51
  return self._to_pandas_with_detailed_results()
43
-
44
- if self["info"].get("orderType") == "Compare" or self["info"].get("orderType") == "Ranking":
52
+
53
+ if (
54
+ self["info"].get("orderType") == "Compare"
55
+ or self["info"].get("orderType") == "Ranking"
56
+ ):
45
57
  return self._compare_to_pandas()
46
-
58
+
47
59
  # Get the structure from first item
48
60
  first_item = self["results"][0]
49
61
  columns = []
50
62
  path_map = {} # Maps flattened column names to paths to reach the values
51
-
63
+
52
64
  # Build the column structure once
53
65
  self._build_column_structure(first_item, columns, path_map)
54
-
66
+
55
67
  # Extract data using the known structure
56
68
  data = []
57
69
  for item in self["results"]:
@@ -60,82 +72,86 @@ class RapidataResults(dict):
60
72
  value = self._get_value_from_path(item, path)
61
73
  row.append(value)
62
74
  data.append(row)
63
-
75
+
64
76
  return pd.DataFrame(data, columns=Index(columns))
65
-
77
+
66
78
  def _has_detailed_results(self) -> bool:
67
79
  """
68
80
  Checks if the results contain detailed results.
69
-
81
+
70
82
  Returns:
71
83
  bool: True if detailed results exist, False otherwise
72
84
  """
73
85
  if not self.get("results"):
74
86
  return False
75
-
87
+
76
88
  first_result = self["results"][0]
77
- return "detailedResults" in first_result and isinstance(first_result["detailedResults"], list)
78
-
79
- def _to_pandas_with_detailed_results(self) -> pd.DataFrame:
89
+ return "detailedResults" in first_result and isinstance(
90
+ first_result["detailedResults"], list
91
+ )
92
+
93
+ def _to_pandas_with_detailed_results(self) -> "pd.DataFrame":
80
94
  """
81
95
  Converts results to a pandas DataFrame with detailed results split into separate rows.
82
-
96
+
83
97
  Returns:
84
98
  pd.DataFrame: A DataFrame with one row per detailed result
85
99
  """
100
+ import pandas as pd
101
+
86
102
  rows = []
87
-
103
+
88
104
  for result in self["results"]:
89
105
  # Get all non-detailed results fields
90
106
  base_data = {k: v for k, v in result.items() if k != "detailedResults"}
91
-
107
+
92
108
  # Process each detailed result
93
109
  for detailed_result in result["detailedResults"]:
94
110
  row = base_data.copy() # Copy base data for each detailed result
95
-
111
+
96
112
  # Add flattened detailed result data
97
113
  flattened = self._flatten_dict(detailed_result)
98
114
  for key, value in flattened.items():
99
115
  row[key] = value
100
-
116
+
101
117
  rows.append(row)
102
-
118
+
103
119
  return pd.DataFrame(rows)
104
-
105
- def _flatten_dict(self, d: dict[str, Any], parent_key: str = '') -> dict[str, Any]:
120
+
121
+ def _flatten_dict(self, d: dict[str, Any], parent_key: str = "") -> dict[str, Any]:
106
122
  """
107
123
  Flattens a nested dictionary into a single-level dictionary with underscore-separated keys.
108
-
124
+
109
125
  Args:
110
126
  d: The dictionary to flatten
111
127
  parent_key: The parent key for nested dictionaries
112
-
128
+
113
129
  Returns:
114
130
  dict: A flattened dictionary
115
131
  """
116
132
  items: list[tuple[str, Any]] = []
117
-
133
+
118
134
  for key, value in d.items():
119
135
  new_key = f"{parent_key}_{key}" if parent_key else key
120
-
136
+
121
137
  if isinstance(value, dict):
122
138
  items.extend(self._flatten_dict(value, new_key).items())
123
139
  else:
124
140
  items.append((new_key, value))
125
-
141
+
126
142
  return dict(items)
127
143
 
128
144
  def _build_column_structure(
129
- self,
130
- d: dict[str, Any],
131
- columns: list[str],
132
- path_map: dict[str, list[str]],
133
- parent_key: str = '',
134
- current_path: list[str] | None = None
145
+ self,
146
+ d: dict[str, Any],
147
+ columns: list[str],
148
+ path_map: dict[str, list[str]],
149
+ parent_key: str = "",
150
+ current_path: list[str] | None = None,
135
151
  ) -> None:
136
152
  """
137
153
  Builds the column structure and paths to reach values in nested dictionaries.
138
-
154
+
139
155
  Args:
140
156
  d: The dictionary to analyze
141
157
  columns: List to store column names
@@ -145,25 +161,27 @@ class RapidataResults(dict):
145
161
  """
146
162
  if current_path is None:
147
163
  current_path = []
148
-
164
+
149
165
  for key, value in d.items():
150
166
  new_key = f"{parent_key}_{key}" if parent_key else key
151
167
  new_path: list[str] = current_path + [key]
152
-
168
+
153
169
  if isinstance(value, dict):
154
- self._build_column_structure(value, columns, path_map, new_key, new_path)
170
+ self._build_column_structure(
171
+ value, columns, path_map, new_key, new_path
172
+ )
155
173
  else:
156
174
  columns.append(new_key)
157
175
  path_map[new_key] = new_path
158
-
176
+
159
177
  def _get_value_from_path(self, d: dict[str, Any], path: list[str]) -> Any:
160
178
  """
161
179
  Retrieves a value from a nested dictionary using a path list.
162
-
180
+
163
181
  Args:
164
182
  d: The dictionary to retrieve the value from
165
183
  path: List of keys forming the path to the desired value
166
-
184
+
167
185
  Returns:
168
186
  The value at the specified path, or None if the path doesn't exist
169
187
  """
@@ -171,10 +189,12 @@ class RapidataResults(dict):
171
189
  d = d.get(key, {})
172
190
  return d.get(path[-1])
173
191
 
174
- def _compare_to_pandas(self) -> pd.DataFrame:
192
+ def _compare_to_pandas(self) -> "pd.DataFrame":
175
193
  """
176
194
  Converts Compare results to a pandas DataFrame dynamically.
177
195
  """
196
+ import pandas as pd
197
+
178
198
  if not self.get("results"):
179
199
  return pd.DataFrame()
180
200
 
@@ -190,10 +210,11 @@ class RapidataResults(dict):
190
210
  continue
191
211
 
192
212
  assets = [asset for asset in assets if asset not in ["Both", "Neither"]]
193
-
213
+
194
214
  # Initialize row with non-comparative fields
195
215
  row = {
196
- key: value for key, value in result.items()
216
+ key: value
217
+ for key, value in result.items()
197
218
  if not isinstance(value, dict)
198
219
  }
199
220
  row["assetA"] = assets[0]
@@ -203,26 +224,28 @@ class RapidataResults(dict):
203
224
  for key, values in result.items():
204
225
  if isinstance(values, dict) and len(values) >= 2:
205
226
  # Add main asset columns
206
- for i, asset in enumerate(assets[:2]): # Limit to first 2 main assets
227
+ for i, asset in enumerate(
228
+ assets[:2]
229
+ ): # Limit to first 2 main assets
207
230
  column_prefix = "A_" if i == 0 else "B_"
208
- row[f'{column_prefix}{key}'] = values.get(asset, 0)
209
-
231
+ row[f"{column_prefix}{key}"] = values.get(asset, 0)
232
+
210
233
  # Add special option columns if they exist
211
234
  if "Both" in values:
212
- row[f'Both_{key}'] = values.get("Both", 0)
235
+ row[f"Both_{key}"] = values.get("Both", 0)
213
236
  if "Neither" in values:
214
- row[f'Neither_{key}'] = values.get("Neither", 0)
215
-
237
+ row[f"Neither_{key}"] = values.get("Neither", 0)
238
+
216
239
  rows.append(row)
217
-
240
+
218
241
  return pd.DataFrame(rows)
219
242
 
220
- def to_json(self, path: str="./results.json") -> None:
243
+ def to_json(self, path: str = "./results.json") -> None:
221
244
  """
222
245
  Saves the results to a JSON file.
223
-
246
+
224
247
  Args:
225
248
  path: The file path where the JSON should be saved. Defaults to "./results.json".
226
249
  """
227
- with open(path, 'w') as f:
250
+ with open(path, "w") as f:
228
251
  json.dump(self, f)
@@ -1,11 +1,16 @@
1
+ import json
2
+ from typing import Any
1
3
  import requests
2
4
  from packaging import version
3
5
  from rapidata import __version__
4
-
6
+ import uuid
7
+ import random
5
8
  from rapidata.service.openapi_service import OpenAPIService
6
9
 
7
10
  from rapidata.rapidata_client.order.rapidata_order_manager import RapidataOrderManager
8
- from rapidata.rapidata_client.leaderboard.rapidata_leaderboard_manager import RapidataLeaderboardManager
11
+ from rapidata.rapidata_client.benchmark.rapidata_benchmark_manager import (
12
+ RapidataBenchmarkManager,
13
+ )
9
14
 
10
15
  from rapidata.rapidata_client.validation.validation_set_manager import (
11
16
  ValidationSetManager,
@@ -13,20 +18,26 @@ from rapidata.rapidata_client.validation.validation_set_manager import (
13
18
 
14
19
  from rapidata.rapidata_client.demographic.demographic_manager import DemographicManager
15
20
 
16
- from rapidata.rapidata_client.logging import logger, managed_print
21
+ from rapidata.rapidata_client.config import (
22
+ logger,
23
+ tracer,
24
+ managed_print,
25
+ rapidata_config,
26
+ )
27
+
17
28
 
18
29
  class RapidataClient:
19
30
  """The Rapidata client is the main entry point for interacting with the Rapidata API. It allows you to create orders and validation sets."""
20
31
 
21
32
  def __init__(
22
- self,
23
- client_id: str | None = None,
24
- client_secret: str | None = None,
25
- environment: str = "rapidata.ai",
26
- oauth_scope: str = "openid",
27
- cert_path: str | None = None,
28
- token: dict | None = None,
29
- leeway: int = 60
33
+ self,
34
+ client_id: str | None = None,
35
+ client_secret: str | None = None,
36
+ environment: str = "rapidata.ai",
37
+ oauth_scope: str = "openid roles",
38
+ cert_path: str | None = None,
39
+ token: dict | None = None,
40
+ leeway: int = 60,
30
41
  ):
31
42
  """Initialize the RapidataClient. If both the client_id and client_secret are None, it will try using your credentials under "~/.config/rapidata/credentials.json".
32
43
  If this is not successful, it will open a browser window and ask you to log in, then save your new credentials in said json file.
@@ -43,48 +54,99 @@ class RapidataClient:
43
54
  Attributes:
44
55
  order (RapidataOrderManager): The RapidataOrderManager instance.
45
56
  validation (ValidationSetManager): The ValidationSetManager instance.
57
+ demographic (DemographicManager): The DemographicManager instance.
58
+ mri (RapidataBenchmarkManager): The RapidataBenchmarkManager instance.
46
59
  """
47
- logger.debug("Checking version")
48
- self._check_version()
49
-
50
- logger.debug("Initializing OpenAPIService")
51
- self._openapi_service = OpenAPIService(
52
- client_id=client_id,
53
- client_secret=client_secret,
54
- environment=environment,
55
- oauth_scope=oauth_scope,
56
- cert_path=cert_path,
57
- token=token,
58
- leeway=leeway,
60
+ tracer.set_session_id(
61
+ uuid.UUID(int=random.Random().getrandbits(128), version=4).hex
59
62
  )
60
63
 
61
- logger.debug("Initializing RapidataOrderManager")
62
- self.order = RapidataOrderManager(openapi_service=self._openapi_service)
64
+ with tracer.start_as_current_span("RapidataClient.__init__"):
65
+ logger.debug("Checking version")
66
+ self._check_version()
67
+ if environment != "rapidata.ai":
68
+ rapidata_config.logging.enable_otlp = False
63
69
 
64
- logger.debug("Initializing ValidationSetManager")
65
- self.validation = ValidationSetManager(openapi_service=self._openapi_service)
70
+ logger.debug("Initializing OpenAPIService")
71
+ self._openapi_service = OpenAPIService(
72
+ client_id=client_id,
73
+ client_secret=client_secret,
74
+ environment=environment,
75
+ oauth_scope=oauth_scope,
76
+ cert_path=cert_path,
77
+ token=token,
78
+ leeway=leeway,
79
+ )
66
80
 
67
- logger.debug("Initializing DemographicManager")
68
- self._demographic = DemographicManager(openapi_service=self._openapi_service)
81
+ logger.debug("Initializing RapidataOrderManager")
82
+ self.order = RapidataOrderManager(openapi_service=self._openapi_service)
83
+
84
+ logger.debug("Initializing ValidationSetManager")
85
+ self.validation = ValidationSetManager(
86
+ openapi_service=self._openapi_service
87
+ )
88
+
89
+ logger.debug("Initializing DemographicManager")
90
+ self._demographic = DemographicManager(
91
+ openapi_service=self._openapi_service
92
+ )
93
+
94
+ logger.debug("Initializing RapidataBenchmarkManager")
95
+ self.mri = RapidataBenchmarkManager(openapi_service=self._openapi_service)
96
+
97
+ self._check_beta_features() # can't be in the trace for some reason
69
98
 
70
- logger.debug("Initializing RapidataLeaderboardManager")
71
- self.mri = RapidataLeaderboardManager(openapi_service=self._openapi_service)
72
-
73
99
  def reset_credentials(self):
74
100
  """Reset the credentials saved in the configuration file for the current environment."""
75
101
  self._openapi_service.reset_credentials()
76
102
 
103
+ def clear_all_caches(self):
104
+ """Clear all caches for the client."""
105
+ self.order._asset_uploader.clear_cache()
106
+ logger.info("All caches cleared")
107
+
108
+ def _check_beta_features(self):
109
+ """Enable beta features for the client."""
110
+ with tracer.start_as_current_span("RapidataClient.check_beta_features"):
111
+ result: dict[str, Any] = json.loads(
112
+ self._openapi_service.api_client.call_api(
113
+ "GET",
114
+ f"https://auth.{self._openapi_service.environment}/connect/userinfo",
115
+ )
116
+ .read()
117
+ .decode("utf-8")
118
+ )
119
+ logger.debug("Userinfo: %s", result)
120
+ if "Admin" not in result.get("role", []):
121
+ logger.debug("User is not an admin, not enabling beta features")
122
+ return
123
+
124
+ logger.debug("User is an admin, enabling beta features")
125
+ rapidata_config.enableBetaFeatures = True
126
+
77
127
  def _check_version(self):
78
128
  try:
79
129
  response = requests.get(
80
130
  "https://api.github.com/repos/RapidataAI/rapidata-python-sdk/releases/latest",
81
131
  headers={"Accept": "application/vnd.github.v3+json"},
82
- timeout=3
132
+ timeout=3,
83
133
  )
84
134
  if response.status_code == 200:
85
135
  latest_version = response.json()["tag_name"].lstrip("v")
86
136
  if version.parse(latest_version) > version.parse(__version__):
87
- managed_print(f"""A new version of the Rapidata SDK is available: {latest_version}
88
- Your current version is: {__version__}""")
137
+ managed_print(
138
+ f"""A new version of the Rapidata SDK is available: {latest_version}
139
+ Your current version is: {__version__}"""
140
+ )
141
+ else:
142
+ logger.debug(
143
+ "Current version is up to date. Version: %s", __version__
144
+ )
89
145
  except Exception as e:
90
- logger.debug(f"Failed to check for updates: {e}")
146
+ logger.debug("Failed to check for updates: %s", e)
147
+
148
+ def __str__(self) -> str:
149
+ return f"RapidataClient(environment={self._openapi_service.environment})"
150
+
151
+ def __repr__(self) -> str:
152
+ return self.__str__()
@@ -1,3 +1,3 @@
1
1
  from ._base_referee import Referee
2
- from ._naive_referee import NaiveReferee #as MaxVoteReferee
2
+ from ._naive_referee import NaiveReferee # as MaxVoteReferee
3
3
  from ._early_stopping_referee import EarlyStoppingReferee
@@ -1,10 +1,14 @@
1
1
  from abc import ABC, abstractmethod
2
- from typing import Any, Mapping
2
+ from typing import Mapping
3
+
4
+ from rapidata.api_client.models.i_referee_model import IRefereeModel
5
+
3
6
 
4
7
  class Referee(ABC):
5
8
  """
6
- The referee defines when a rapid is considered complete.
9
+ The referee defines when a rapid is considered complete.
7
10
  """
11
+
8
12
  @abstractmethod
9
13
  def _to_dict(self) -> Mapping[str, str | int | float]:
10
14
  """
@@ -13,7 +17,7 @@ class Referee(ABC):
13
17
  pass
14
18
 
15
19
  @abstractmethod
16
- def _to_model(self) -> Any:
20
+ def _to_model(self) -> IRefereeModel:
17
21
  """
18
22
  Convert the referee to a referee configuration model.
19
23
  """
@@ -1,8 +1,10 @@
1
- from typing import Any
1
+ from __future__ import annotations
2
+
2
3
  from rapidata.rapidata_client.referee._base_referee import Referee
3
- from rapidata.api_client.models.early_stopping_referee_model import (
4
- EarlyStoppingRefereeModel,
5
- )
4
+ from typing import TYPE_CHECKING
5
+
6
+ if TYPE_CHECKING:
7
+ from rapidata.api_client.models.i_referee_model import IRefereeModel
6
8
 
7
9
 
8
10
  class EarlyStoppingReferee(Referee):
@@ -15,7 +17,7 @@ class EarlyStoppingReferee(Referee):
15
17
  The threshold behaves logarithmically, meaning small increments (e.g., from 0.99
16
18
  to 0.999) can significantly impact the stopping criteria.
17
19
 
18
- This referee is supported for the classification and compare tasks (in compare,
20
+ This referee is supported for the classification and compare tasks (in compare,
19
21
  the two options are treated as the categories).
20
22
 
21
23
  Args:
@@ -34,7 +36,7 @@ class EarlyStoppingReferee(Referee):
34
36
  raise ValueError("The threshold must be between 0 and 1.")
35
37
  if max_vote_count < 1:
36
38
  raise ValueError("The number of responses must be greater than 0.")
37
-
39
+
38
40
  self.threshold = threshold
39
41
  self.max_vote_count = max_vote_count
40
42
 
@@ -45,9 +47,16 @@ class EarlyStoppingReferee(Referee):
45
47
  "maxVotes": self.max_vote_count,
46
48
  }
47
49
 
48
- def _to_model(self) -> Any:
49
- return EarlyStoppingRefereeModel(
50
- _t="EarlyStoppingReferee",
51
- threshold=self.threshold,
52
- maxVotes=self.max_vote_count,
50
+ def _to_model(self) -> IRefereeModel:
51
+ from rapidata.api_client.models.i_referee_model_early_stopping_referee_model import (
52
+ IRefereeModelEarlyStoppingRefereeModel,
53
+ )
54
+ from rapidata.api_client.models.i_referee_model import IRefereeModel
55
+
56
+ return IRefereeModel(
57
+ actual_instance=IRefereeModelEarlyStoppingRefereeModel(
58
+ _t="EarlyStoppingReferee",
59
+ threshold=self.threshold,
60
+ maxVotes=self.max_vote_count,
61
+ )
53
62
  )
@@ -1,5 +1,10 @@
1
- from rapidata.api_client.models.naive_referee_model import NaiveRefereeModel
1
+ from __future__ import annotations
2
+
2
3
  from rapidata.rapidata_client.referee._base_referee import Referee
4
+ from typing import TYPE_CHECKING
5
+
6
+ if TYPE_CHECKING:
7
+ from rapidata.api_client.models.i_referee_model import IRefereeModel
3
8
 
4
9
 
5
10
  class NaiveReferee(Referee):
@@ -29,5 +34,15 @@ class NaiveReferee(Referee):
29
34
  "guessesRequired": self.responses,
30
35
  }
31
36
 
32
- def _to_model(self):
33
- return NaiveRefereeModel(_t="NaiveReferee", totalVotes=self.responses)
37
+ def _to_model(self) -> IRefereeModel:
38
+ from rapidata.api_client.models.i_referee_model_naive_referee_model import (
39
+ IRefereeModelNaiveRefereeModel,
40
+ )
41
+ from rapidata.api_client.models.i_referee_model import IRefereeModel
42
+
43
+ return IRefereeModel(
44
+ actual_instance=IRefereeModelNaiveRefereeModel(
45
+ _t="NaiveReferee",
46
+ totalVotes=self.responses,
47
+ )
48
+ )
@@ -7,5 +7,5 @@ from .capped_selection import CappedSelection
7
7
  from .shuffling_selection import ShufflingSelection
8
8
  from .ab_test_selection import AbTestSelection
9
9
  from .static_selection import StaticSelection
10
- from .retrieval_modes import RetrievalMode
11
- from .effort_selection import EffortEstimationSelection
10
+ from .rapidata_retrieval_modes import RapidataRetrievalMode
11
+ from .effort_selection import EffortSelection
@@ -1,9 +1,16 @@
1
1
  from abc import abstractmethod
2
- from typing import Any
2
+
3
+ from rapidata.api_client.models.i_selection import ISelection
3
4
 
4
5
 
5
6
  class RapidataSelection:
6
7
 
7
8
  @abstractmethod
8
- def _to_model(self) -> Any:
9
+ def _to_model(self) -> ISelection:
9
10
  pass
11
+
12
+ def __str__(self) -> str:
13
+ return f"{self.__class__.__name__}()"
14
+
15
+ def __repr__(self) -> str:
16
+ return f"{self.__class__.__name__}()"