rapidata 2.35.1__py3-none-any.whl → 3.0.0a8__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 (790) hide show
  1. rapidata/__init__.py +25 -16
  2. rapidata/api_client/__init__.py +84 -408
  3. rapidata/api_client/api/__init__.py +6 -2
  4. rapidata/api_client/api/asset_api.py +853 -0
  5. rapidata/api_client/api/audience_api.py +2505 -0
  6. rapidata/api_client/api/benchmark_api.py +904 -245
  7. rapidata/api_client/api/campaign_api.py +582 -24
  8. rapidata/api_client/api/client_api.py +38 -33
  9. rapidata/api_client/api/compare_workflow_api.py +11 -10
  10. rapidata/api_client/api/customer_rapid_api.py +364 -123
  11. rapidata/api_client/api/datapoint_api.py +8 -6
  12. rapidata/api_client/api/dataset_api.py +240 -1516
  13. rapidata/api_client/api/evaluation_workflow_api.py +29 -82
  14. rapidata/api_client/api/feedback_api.py +11 -11
  15. rapidata/api_client/api/grouped_ranking_workflow_api.py +319 -0
  16. rapidata/api_client/api/identity_api.py +26 -300
  17. rapidata/api_client/api/job_api.py +3902 -0
  18. rapidata/api_client/api/job_definition_api.py +319 -0
  19. rapidata/api_client/api/job_revision_api.py +335 -0
  20. rapidata/api_client/api/leaderboard_api.py +140 -2067
  21. rapidata/api_client/api/newsletter_api.py +20 -19
  22. rapidata/api_client/api/order_api.py +375 -91
  23. rapidata/api_client/api/participant_api.py +80 -118
  24. rapidata/api_client/api/pipeline_api.py +24 -1480
  25. rapidata/api_client/api/prompt_api.py +11 -11
  26. rapidata/api_client/api/rapidata_identity_api_api.py +5 -4
  27. rapidata/api_client/api/sample_api.py +300 -0
  28. rapidata/api_client/api/simple_workflow_api.py +11 -10
  29. rapidata/api_client/api/survey_api.py +304 -0
  30. rapidata/api_client/api/user_rapid_api.py +35 -31
  31. rapidata/api_client/api/validation_set_api.py +377 -1835
  32. rapidata/api_client/api/workflow_api.py +32 -26
  33. rapidata/api_client/api_client.py +2 -2
  34. rapidata/api_client/configuration.py +16 -29
  35. rapidata/api_client/exceptions.py +2 -2
  36. rapidata/api_client/models/__init__.py +65 -382
  37. rapidata/api_client/models/ab_test_selection_a_inner.py +1 -1
  38. rapidata/api_client/models/add_rapid_to_audience_model.py +144 -0
  39. rapidata/api_client/models/add_user_response_result.py +10 -5
  40. rapidata/api_client/models/add_validation_rapid_model.py +49 -26
  41. rapidata/api_client/models/add_validation_rapid_model_asset.py +154 -0
  42. rapidata/api_client/models/add_validation_rapid_model_context_asset.py +160 -0
  43. rapidata/api_client/models/add_validation_rapid_model_metadata_inner.py +140 -0
  44. rapidata/api_client/models/add_validation_rapid_model_truth.py +7 -1
  45. rapidata/api_client/models/add_validation_rapid_new_model.py +137 -0
  46. rapidata/api_client/models/add_validation_rapid_new_model_asset.py +182 -0
  47. rapidata/api_client/models/add_validation_rapid_new_model_truth.py +286 -0
  48. rapidata/api_client/models/age_user_filter_model.py +2 -2
  49. rapidata/api_client/models/age_user_filter_model_age_group.py +41 -0
  50. rapidata/api_client/models/aggregated_orders_model.py +98 -0
  51. rapidata/api_client/models/aggregator_type.py +4 -2
  52. rapidata/api_client/models/and_filter.py +121 -0
  53. rapidata/api_client/models/and_filter_filters_inner.py +282 -0
  54. rapidata/api_client/models/are_rapids_active_result.py +2 -2
  55. rapidata/api_client/models/asset_metadata.py +11 -9
  56. rapidata/api_client/models/asset_type.py +40 -0
  57. rapidata/api_client/models/attach_category_rapid_blueprint.py +13 -3
  58. rapidata/api_client/models/attach_category_rapid_blueprint_category.py +89 -0
  59. rapidata/api_client/models/audience_job_state.py +38 -0
  60. rapidata/api_client/models/audience_status.py +39 -0
  61. rapidata/api_client/models/benchmark_query_result.py +5 -3
  62. rapidata/api_client/models/boost_leaderboard_model.py +5 -5
  63. rapidata/api_client/models/boost_mode.py +37 -0
  64. rapidata/api_client/models/boost_query_result.py +7 -10
  65. rapidata/api_client/models/boost_query_result_boost_mode.py +37 -0
  66. rapidata/api_client/models/boost_query_result_boost_status.py +39 -0
  67. rapidata/api_client/models/boosting_profile.py +91 -0
  68. rapidata/api_client/models/box_shape.py +4 -33
  69. rapidata/api_client/models/campaign_filter.py +98 -0
  70. rapidata/api_client/models/campaign_query_result.py +15 -13
  71. rapidata/api_client/models/campaign_status.py +2 -2
  72. rapidata/api_client/models/change_boost_model.py +89 -0
  73. rapidata/api_client/models/classification_metadata.py +12 -1
  74. rapidata/api_client/models/classify_payload.py +14 -15
  75. rapidata/api_client/models/classify_payload_category.py +89 -0
  76. rapidata/api_client/models/client_model.py +25 -35
  77. rapidata/api_client/models/clients_query_result.py +5 -5
  78. rapidata/api_client/models/clone_order_model.py +4 -4
  79. rapidata/api_client/models/clone_order_result.py +9 -4
  80. rapidata/api_client/models/compare_rapid_blueprint.py +5 -3
  81. rapidata/api_client/models/compare_rapid_blueprint1.py +96 -0
  82. rapidata/api_client/models/compare_workflow_config.py +34 -23
  83. rapidata/api_client/models/compare_workflow_config_context_asset.py +174 -0
  84. rapidata/api_client/models/compare_workflow_config_model.py +15 -5
  85. rapidata/api_client/models/compare_workflow_model.py +34 -6
  86. rapidata/api_client/models/compare_workflow_model1.py +20 -9
  87. rapidata/api_client/models/compare_workflow_model_context_asset.py +160 -0
  88. rapidata/api_client/models/compare_workflow_model_metadata_inner.py +154 -0
  89. rapidata/api_client/models/compare_workflow_model_pair_maker_config.py +1 -1
  90. rapidata/api_client/models/comparison_operator.py +2 -2
  91. rapidata/api_client/models/conditional_validation_selection.py +6 -11
  92. rapidata/api_client/models/conditional_validation_selection_validation_chance.py +103 -0
  93. rapidata/api_client/models/confidence_interval.py +89 -0
  94. rapidata/api_client/models/count_metadata.py +12 -1
  95. rapidata/api_client/models/country_filter.py +98 -0
  96. rapidata/api_client/models/create_audience_request.py +122 -0
  97. rapidata/api_client/models/create_audience_result.py +87 -0
  98. rapidata/api_client/models/create_benchmark_model.py +5 -5
  99. rapidata/api_client/models/create_benchmark_participant_model.py +5 -5
  100. rapidata/api_client/models/create_benchmark_participant_result.py +4 -4
  101. rapidata/api_client/models/create_benchmark_prompt_result.py +87 -0
  102. rapidata/api_client/models/create_benchmark_result.py +2 -2
  103. rapidata/api_client/models/create_bridge_token_result.py +2 -2
  104. rapidata/api_client/models/create_client_model.py +6 -13
  105. rapidata/api_client/models/create_complex_order_model.py +9 -9
  106. rapidata/api_client/models/create_complex_order_result.py +2 -2
  107. rapidata/api_client/models/create_customer_client_result.py +2 -2
  108. rapidata/api_client/models/create_datapoint_from_files_model.py +3 -3
  109. rapidata/api_client/models/create_datapoint_from_text_sources_model.py +3 -3
  110. rapidata/api_client/models/create_datapoint_from_urls_model.py +3 -3
  111. rapidata/api_client/models/create_datapoint_model.py +124 -0
  112. rapidata/api_client/models/create_datapoint_model_asset.py +154 -0
  113. rapidata/api_client/models/create_datapoint_model_context_asset.py +160 -0
  114. rapidata/api_client/models/create_datapoint_model_metadata_inner.py +154 -0
  115. rapidata/api_client/models/create_datapoint_result.py +2 -2
  116. rapidata/api_client/models/create_dataset_endpoint_input.py +87 -0
  117. rapidata/api_client/models/create_dataset_endpoint_output.py +87 -0
  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_job_definition_endpoint_input.py +119 -0
  124. rapidata/api_client/models/create_job_definition_endpoint_output.py +89 -0
  125. rapidata/api_client/models/create_job_endpoint_input.py +100 -0
  126. rapidata/api_client/models/create_job_endpoint_output.py +89 -0
  127. rapidata/api_client/models/create_job_revision_endpoint_input.py +127 -0
  128. rapidata/api_client/models/create_job_revision_endpoint_output.py +89 -0
  129. rapidata/api_client/models/create_leaderboard_model.py +42 -15
  130. rapidata/api_client/models/create_leaderboard_result.py +2 -2
  131. rapidata/api_client/models/create_order_definition_model.py +119 -0
  132. rapidata/api_client/models/create_order_definition_result.py +87 -0
  133. rapidata/api_client/models/create_order_definition_revision_model.py +117 -0
  134. rapidata/api_client/models/create_order_definition_revision_result.py +87 -0
  135. rapidata/api_client/models/create_order_model.py +30 -101
  136. rapidata/api_client/models/create_order_model_referee.py +12 -12
  137. rapidata/api_client/models/create_order_model_workflow.py +35 -21
  138. rapidata/api_client/models/create_order_result.py +2 -2
  139. rapidata/api_client/models/create_rapid_result.py +2 -2
  140. rapidata/api_client/models/create_sample_model.py +13 -7
  141. rapidata/api_client/models/create_sample_model_asset.py +154 -0
  142. rapidata/api_client/models/create_sample_model_obsolete.py +87 -0
  143. rapidata/api_client/models/create_simple_pipeline_model_pipeline_steps_inner.py +8 -22
  144. rapidata/api_client/models/create_unsupported_order_model.py +6 -6
  145. rapidata/api_client/models/create_validation_set_model.py +5 -5
  146. rapidata/api_client/models/datapoint_model.py +3 -3
  147. rapidata/api_client/models/datapoint_state.py +2 -2
  148. rapidata/api_client/models/definition_type.py +49 -0
  149. rapidata/api_client/models/demographic_filter.py +100 -0
  150. rapidata/api_client/models/dynamic_client_registration_request.py +21 -36
  151. rapidata/api_client/models/early_stopping_referee_model.py +3 -3
  152. rapidata/api_client/models/effort_capped_selection.py +2 -11
  153. rapidata/api_client/models/elo_config.py +2 -2
  154. rapidata/api_client/models/elo_config_model.py +6 -6
  155. rapidata/api_client/models/entity_tag_header_value.py +93 -0
  156. rapidata/api_client/models/evaluation_workflow_config.py +13 -3
  157. rapidata/api_client/models/evaluation_workflow_model.py +16 -6
  158. rapidata/api_client/models/existing_asset_input.py +109 -0
  159. rapidata/api_client/models/existing_asset_input_metadata_value.py +126 -0
  160. rapidata/api_client/models/feature_flag.py +2 -2
  161. rapidata/api_client/models/feature_flag_model.py +6 -6
  162. rapidata/api_client/models/feedback_model.py +7 -7
  163. rapidata/api_client/models/file_asset.py +3 -5
  164. rapidata/api_client/models/file_asset_input_file.py +8 -22
  165. rapidata/api_client/models/file_asset_metadata_value.py +252 -0
  166. rapidata/api_client/models/file_asset_model_metadata_value.py +18 -88
  167. rapidata/api_client/models/file_stream_result.py +122 -0
  168. rapidata/api_client/models/file_type.py +2 -2
  169. rapidata/api_client/models/file_type_metadata.py +11 -6
  170. rapidata/api_client/models/file_type_metadata_model.py +2 -8
  171. rapidata/api_client/models/filter.py +7 -25
  172. rapidata/api_client/models/filter_operator.py +2 -2
  173. rapidata/api_client/models/fork_benchmark_result.py +87 -0
  174. rapidata/api_client/models/form_file_wrapper.py +17 -2
  175. rapidata/api_client/models/free_text_payload.py +10 -3
  176. rapidata/api_client/models/free_text_rapid_blueprint.py +10 -3
  177. rapidata/api_client/models/gender_user_filter_model.py +2 -2
  178. rapidata/api_client/models/gender_user_filter_model_gender.py +38 -0
  179. rapidata/api_client/models/get_asset_metadata_result.py +100 -0
  180. rapidata/api_client/models/get_audience_by_id_result.py +118 -0
  181. rapidata/api_client/models/get_available_validation_sets_result.py +2 -2
  182. rapidata/api_client/models/get_benchmark_by_id_result.py +8 -4
  183. rapidata/api_client/models/get_boost_result.py +97 -0
  184. rapidata/api_client/models/get_boost_result_boost_mode.py +37 -0
  185. rapidata/api_client/models/get_boost_result_boost_status.py +39 -0
  186. rapidata/api_client/models/get_compare_ab_summary_result.py +5 -5
  187. rapidata/api_client/models/get_compare_workflow_results_model.py +7 -7
  188. rapidata/api_client/models/get_compare_workflow_results_result.py +5 -5
  189. rapidata/api_client/models/get_datapoint_by_id_result.py +10 -21
  190. rapidata/api_client/models/get_datapoint_by_id_result_asset.py +170 -0
  191. rapidata/api_client/models/get_dataset_by_id_result.py +2 -2
  192. rapidata/api_client/models/get_dataset_progress_result.py +2 -2
  193. rapidata/api_client/models/get_evaluation_workflow_results_model.py +119 -0
  194. rapidata/api_client/models/get_failed_datapoints_result.py +5 -5
  195. rapidata/api_client/models/get_failed_datapoints_result_datapoint.py +100 -0
  196. rapidata/api_client/models/get_file_metadata_result.py +100 -0
  197. rapidata/api_client/models/get_grouped_ranking_workflow_results_model.py +106 -0
  198. rapidata/api_client/models/get_grouped_ranking_workflow_results_result.py +97 -0
  199. rapidata/api_client/models/get_grouped_ranking_workflow_results_result_paged_result.py +105 -0
  200. rapidata/api_client/models/get_job_by_id_endpoint_output.py +130 -0
  201. rapidata/api_client/models/get_job_definition_by_id_endpoint_output.py +95 -0
  202. rapidata/api_client/models/get_job_revision_endpoint_output.py +133 -0
  203. rapidata/api_client/models/get_leaderboard_by_id_result.py +31 -4
  204. rapidata/api_client/models/get_order_by_id_result.py +12 -5
  205. rapidata/api_client/models/get_participant_by_id_result.py +4 -6
  206. rapidata/api_client/models/get_pipeline_by_id_result.py +5 -5
  207. rapidata/api_client/models/get_public_orders_result.py +2 -2
  208. rapidata/api_client/models/get_public_responses_result.py +95 -0
  209. rapidata/api_client/models/get_public_responses_result_response.py +112 -0
  210. rapidata/api_client/models/get_rapid_responses_result.py +6 -12
  211. rapidata/api_client/models/get_recommended_validation_set_result.py +95 -0
  212. rapidata/api_client/models/get_responses_for_rapid_result.py +106 -0
  213. rapidata/api_client/models/get_responses_for_rapid_result_response.py +103 -0
  214. rapidata/api_client/models/get_responses_for_rapid_result_response_result.py +266 -0
  215. rapidata/api_client/models/get_responses_result.py +5 -5
  216. rapidata/api_client/models/get_responses_result_response.py +103 -0
  217. rapidata/api_client/models/get_sample_by_id_result.py +125 -0
  218. rapidata/api_client/models/get_simple_workflow_results_model.py +20 -15
  219. rapidata/api_client/models/get_standing_by_id_result.py +6 -14
  220. rapidata/api_client/models/get_validation_rapids_result.py +32 -41
  221. rapidata/api_client/models/get_validation_set_by_id_result.py +10 -4
  222. rapidata/api_client/models/get_workflow_by_id_result.py +5 -5
  223. rapidata/api_client/models/get_workflow_by_id_result_workflow.py +23 -9
  224. rapidata/api_client/models/get_workflow_progress_result.py +5 -11
  225. rapidata/api_client/models/get_workflow_results_result.py +34 -23
  226. rapidata/api_client/models/get_workflow_results_result_response.py +103 -0
  227. rapidata/api_client/models/google_one_tap_login_model.py +4 -4
  228. rapidata/api_client/models/grouped_ranking_workflow_config.py +155 -0
  229. rapidata/api_client/models/grouped_ranking_workflow_config_context_assets_value.py +170 -0
  230. rapidata/api_client/models/grouped_ranking_workflow_model.py +147 -0
  231. rapidata/api_client/models/grouped_ranking_workflow_model1.py +121 -0
  232. rapidata/api_client/models/i_artifact_model.py +182 -0
  233. rapidata/api_client/models/i_artifact_model_campaign_artifact_model.py +98 -0
  234. rapidata/api_client/models/i_artifact_model_dataset_artifact_model.py +98 -0
  235. rapidata/api_client/models/i_artifact_model_file_artifact_model.py +98 -0
  236. rapidata/api_client/models/i_artifact_model_workflow_artifact_model.py +98 -0
  237. rapidata/api_client/models/i_artifact_model_workflow_config_artifact_model.py +102 -0
  238. rapidata/api_client/models/i_asset.py +170 -0
  239. rapidata/api_client/models/i_asset_file_asset.py +111 -0
  240. rapidata/api_client/models/i_asset_input.py +156 -0
  241. rapidata/api_client/models/i_asset_input_existing_asset_input.py +118 -0
  242. rapidata/api_client/models/i_asset_input_multi_asset_input.py +128 -0
  243. rapidata/api_client/models/i_asset_input_text_asset_input.py +118 -0
  244. rapidata/api_client/models/i_asset_model.py +170 -0
  245. rapidata/api_client/models/i_asset_model_file_asset_model.py +113 -0
  246. rapidata/api_client/models/i_asset_model_multi_asset_model.py +123 -0
  247. rapidata/api_client/models/i_asset_model_null_asset_model.py +111 -0
  248. rapidata/api_client/models/i_asset_model_text_asset_model.py +113 -0
  249. rapidata/api_client/models/i_asset_multi_asset.py +121 -0
  250. rapidata/api_client/models/i_asset_null_asset.py +109 -0
  251. rapidata/api_client/models/i_asset_text_asset.py +111 -0
  252. rapidata/api_client/models/i_audience_filter.py +184 -0
  253. rapidata/api_client/models/i_audience_filter_and_audience_filter.py +106 -0
  254. rapidata/api_client/models/i_audience_filter_country_audience_filter.py +96 -0
  255. rapidata/api_client/models/i_audience_filter_country_filter.py +96 -0
  256. rapidata/api_client/models/i_audience_filter_language_audience_filter.py +96 -0
  257. rapidata/api_client/models/i_audience_filter_language_filter.py +96 -0
  258. rapidata/api_client/models/i_audience_filter_not_audience_filter.py +102 -0
  259. rapidata/api_client/models/i_audience_filter_or_audience_filter.py +106 -0
  260. rapidata/api_client/models/i_campaign_filter.py +296 -0
  261. rapidata/api_client/models/i_campaign_filter_and_filter.py +117 -0
  262. rapidata/api_client/models/i_campaign_filter_campaign_filter.py +98 -0
  263. rapidata/api_client/models/i_campaign_filter_campaign_session_count_filter.py +101 -0
  264. rapidata/api_client/models/i_campaign_filter_country_filter.py +98 -0
  265. rapidata/api_client/models/i_campaign_filter_demographic_filter.py +100 -0
  266. rapidata/api_client/models/i_campaign_filter_device_filter.py +106 -0
  267. rapidata/api_client/models/i_campaign_filter_language_filter.py +98 -0
  268. rapidata/api_client/models/i_campaign_filter_new_user_filter.py +96 -0
  269. rapidata/api_client/models/i_campaign_filter_not_filter.py +113 -0
  270. rapidata/api_client/models/i_campaign_filter_or_filter.py +117 -0
  271. rapidata/api_client/models/i_campaign_filter_response_count_filter.py +103 -0
  272. rapidata/api_client/models/i_campaign_filter_user_action_restriction_filter.py +106 -0
  273. rapidata/api_client/models/i_campaign_filter_user_score_filter.py +102 -0
  274. rapidata/api_client/models/i_campaign_filter_user_state_filter.py +106 -0
  275. rapidata/api_client/models/i_dataset_metadata_input.py +154 -0
  276. rapidata/api_client/models/i_dataset_metadata_input_prompt_asset_metadata_input.py +100 -0
  277. rapidata/api_client/models/i_dataset_metadata_input_prompt_metadata_input.py +96 -0
  278. rapidata/api_client/models/i_dataset_metadata_input_transcription_metadata_input.py +96 -0
  279. rapidata/api_client/models/i_dataset_model.py +126 -0
  280. rapidata/api_client/models/i_dataset_model_clone_dataset_model.py +98 -0
  281. rapidata/api_client/models/i_metadata.py +252 -0
  282. rapidata/api_client/models/i_metadata_classification_metadata.py +109 -0
  283. rapidata/api_client/models/i_metadata_count_metadata.py +109 -0
  284. rapidata/api_client/models/i_metadata_duration_metadata.py +110 -0
  285. rapidata/api_client/models/i_metadata_file_type_metadata.py +110 -0
  286. rapidata/api_client/models/i_metadata_image_dimension_metadata.py +111 -0
  287. rapidata/api_client/models/i_metadata_input.py +126 -0
  288. rapidata/api_client/models/i_metadata_input_text_metadata_input.py +111 -0
  289. rapidata/api_client/models/i_metadata_location_metadata.py +111 -0
  290. rapidata/api_client/models/i_metadata_model.py +252 -0
  291. rapidata/api_client/models/i_metadata_model_classification_metadata_model.py +96 -0
  292. rapidata/api_client/models/i_metadata_model_count_metadata_model.py +96 -0
  293. rapidata/api_client/models/i_metadata_model_file_type_metadata_model.py +97 -0
  294. rapidata/api_client/models/i_metadata_model_image_dimension_metadata_model.py +98 -0
  295. rapidata/api_client/models/i_metadata_model_location_metadata_model.py +98 -0
  296. rapidata/api_client/models/i_metadata_model_original_filename_metadata_model.py +96 -0
  297. rapidata/api_client/models/i_metadata_model_source_url_metadata_model.py +96 -0
  298. rapidata/api_client/models/i_metadata_model_streams_metadata_model.py +100 -0
  299. rapidata/api_client/models/i_metadata_model_text_metadata_model.py +101 -0
  300. rapidata/api_client/models/i_metadata_model_video_duration_metadata_model.py +97 -0
  301. rapidata/api_client/models/i_metadata_original_filename_metadata.py +109 -0
  302. rapidata/api_client/models/i_metadata_source_url_metadata.py +109 -0
  303. rapidata/api_client/models/i_metadata_streams_metadata.py +113 -0
  304. rapidata/api_client/models/i_metadata_text_metadata.py +114 -0
  305. rapidata/api_client/models/i_metadata_video_duration_metadata.py +110 -0
  306. rapidata/api_client/models/i_order_workflow_model.py +168 -0
  307. rapidata/api_client/models/i_order_workflow_model_compare_workflow_model.py +146 -0
  308. rapidata/api_client/models/i_order_workflow_model_evaluation_workflow_model.py +108 -0
  309. rapidata/api_client/models/i_order_workflow_model_grouped_ranking_workflow_model.py +147 -0
  310. rapidata/api_client/models/i_order_workflow_model_simple_workflow_model.py +110 -0
  311. rapidata/api_client/models/i_pair_maker_config.py +126 -0
  312. rapidata/api_client/models/i_pair_maker_config_model.py +126 -0
  313. rapidata/api_client/models/i_pair_maker_config_model_online_pair_maker_config_model.py +98 -0
  314. rapidata/api_client/models/i_pair_maker_config_online_pair_maker_config.py +98 -0
  315. rapidata/api_client/models/i_pair_maker_information.py +126 -0
  316. rapidata/api_client/models/i_pair_maker_information_online_pair_maker_information.py +100 -0
  317. rapidata/api_client/models/i_pipeline_artifact_model.py +126 -0
  318. rapidata/api_client/models/i_pipeline_artifact_model_create_dataset_artifact_model.py +102 -0
  319. rapidata/api_client/models/i_pipeline_model.py +126 -0
  320. rapidata/api_client/models/i_pipeline_model_create_simple_pipeline_model.py +116 -0
  321. rapidata/api_client/models/i_pipeline_step_model.py +168 -0
  322. rapidata/api_client/models/i_pipeline_step_model_dataset_evaluation_step_model.py +102 -0
  323. rapidata/api_client/models/i_pipeline_step_model_send_completion_mail_step_model.py +98 -0
  324. rapidata/api_client/models/i_pipeline_step_model_workflow_aggregation_step_model.py +103 -0
  325. rapidata/api_client/models/i_pipeline_step_model_workflow_labeling_step_model.py +96 -0
  326. rapidata/api_client/models/i_rapid_blueprint.py +252 -0
  327. rapidata/api_client/models/i_rapid_blueprint_attach_category_rapid_blueprint.py +108 -0
  328. rapidata/api_client/models/i_rapid_blueprint_bounding_box_rapid_blueprint.py +96 -0
  329. rapidata/api_client/models/i_rapid_blueprint_compare_rapid_blueprint.py +98 -0
  330. rapidata/api_client/models/i_rapid_blueprint_free_text_rapid_blueprint.py +105 -0
  331. rapidata/api_client/models/i_rapid_blueprint_line_rapid_blueprint.py +96 -0
  332. rapidata/api_client/models/i_rapid_blueprint_locate_rapid_blueprint.py +96 -0
  333. rapidata/api_client/models/i_rapid_blueprint_named_entity_rapid_blueprint.py +98 -0
  334. rapidata/api_client/models/i_rapid_blueprint_polygon_rapid_blueprint.py +96 -0
  335. rapidata/api_client/models/i_rapid_blueprint_scrub_rapid_blueprint.py +96 -0
  336. rapidata/api_client/models/i_rapid_blueprint_transcription_rapid_blueprint.py +96 -0
  337. rapidata/api_client/models/i_rapid_payload.py +252 -0
  338. rapidata/api_client/models/i_rapid_payload_bounding_box_payload.py +96 -0
  339. rapidata/api_client/models/i_rapid_payload_classify_payload.py +106 -0
  340. rapidata/api_client/models/i_rapid_payload_compare_payload.py +96 -0
  341. rapidata/api_client/models/i_rapid_payload_free_text_payload.py +105 -0
  342. rapidata/api_client/models/i_rapid_payload_line_payload.py +96 -0
  343. rapidata/api_client/models/i_rapid_payload_locate_payload.py +96 -0
  344. rapidata/api_client/models/i_rapid_payload_named_entity_payload.py +98 -0
  345. rapidata/api_client/models/i_rapid_payload_polygon_payload.py +96 -0
  346. rapidata/api_client/models/i_rapid_payload_scrub_payload.py +96 -0
  347. rapidata/api_client/models/i_rapid_payload_transcription_payload.py +106 -0
  348. rapidata/api_client/models/i_rapid_result.py +266 -0
  349. rapidata/api_client/models/i_rapid_result_attach_category_result.py +98 -0
  350. rapidata/api_client/models/i_rapid_result_bounding_box_result.py +106 -0
  351. rapidata/api_client/models/i_rapid_result_compare_result.py +98 -0
  352. rapidata/api_client/models/i_rapid_result_free_text_result.py +98 -0
  353. rapidata/api_client/models/i_rapid_result_line_result.py +106 -0
  354. rapidata/api_client/models/i_rapid_result_locate_result.py +106 -0
  355. rapidata/api_client/models/i_rapid_result_named_entity_result.py +106 -0
  356. rapidata/api_client/models/i_rapid_result_polygon_result.py +106 -0
  357. rapidata/api_client/models/i_rapid_result_scrub_result.py +98 -0
  358. rapidata/api_client/models/i_rapid_result_skip_result.py +96 -0
  359. rapidata/api_client/models/i_rapid_result_transcription_result.py +106 -0
  360. rapidata/api_client/models/i_referee_config.py +154 -0
  361. rapidata/api_client/models/i_referee_config_naive_referee_config.py +96 -0
  362. rapidata/api_client/models/i_referee_config_never_ending_referee_config.py +94 -0
  363. rapidata/api_client/models/i_referee_config_probabilistic_attach_category_referee_config.py +98 -0
  364. rapidata/api_client/models/i_referee_info.py +154 -0
  365. rapidata/api_client/models/i_referee_info_naive_referee_info.py +96 -0
  366. rapidata/api_client/models/i_referee_info_never_ending_referee_info.py +94 -0
  367. rapidata/api_client/models/i_referee_info_probabilistic_attach_category_referee_info.py +98 -0
  368. rapidata/api_client/models/i_referee_model.py +140 -0
  369. rapidata/api_client/models/i_referee_model_early_stopping_referee_model.py +98 -0
  370. rapidata/api_client/models/i_referee_model_naive_referee_model.py +96 -0
  371. rapidata/api_client/models/i_selection.py +240 -0
  372. rapidata/api_client/models/i_selection_ab_test_selection.py +122 -0
  373. rapidata/api_client/models/i_selection_capped_selection.py +108 -0
  374. rapidata/api_client/models/i_selection_conditional_validation_selection.py +110 -0
  375. rapidata/api_client/models/i_selection_demographic_selection.py +98 -0
  376. rapidata/api_client/models/i_selection_effort_capped_selection.py +101 -0
  377. rapidata/api_client/models/i_selection_labeling_selection.py +103 -0
  378. rapidata/api_client/models/i_selection_shuffling_selection.py +106 -0
  379. rapidata/api_client/models/i_selection_static_selection.py +96 -0
  380. rapidata/api_client/models/i_selection_validation_selection.py +98 -0
  381. rapidata/api_client/models/i_user_filter_model.py +296 -0
  382. rapidata/api_client/models/i_user_filter_model_age_user_filter_model.py +104 -0
  383. rapidata/api_client/models/i_user_filter_model_and_user_filter_model.py +106 -0
  384. rapidata/api_client/models/i_user_filter_model_campaign_user_filter_model.py +96 -0
  385. rapidata/api_client/models/i_user_filter_model_country_user_filter_model.py +96 -0
  386. rapidata/api_client/models/i_user_filter_model_custom_user_filter_model.py +98 -0
  387. rapidata/api_client/models/i_user_filter_model_device_user_filter_model.py +104 -0
  388. rapidata/api_client/models/i_user_filter_model_gender_user_filter_model.py +104 -0
  389. rapidata/api_client/models/i_user_filter_model_language_user_filter_model.py +96 -0
  390. rapidata/api_client/models/i_user_filter_model_new_user_filter_model.py +94 -0
  391. rapidata/api_client/models/i_user_filter_model_not_user_filter_model.py +102 -0
  392. rapidata/api_client/models/i_user_filter_model_or_user_filter_model.py +106 -0
  393. rapidata/api_client/models/i_user_filter_model_response_count_user_filter_model.py +101 -0
  394. rapidata/api_client/models/i_user_filter_model_user_score_user_filter_model.py +105 -0
  395. rapidata/api_client/models/i_validation_metadata_input.py +140 -0
  396. rapidata/api_client/models/i_validation_metadata_input_prompt_asset_metadata_input.py +100 -0
  397. rapidata/api_client/models/i_validation_metadata_input_prompt_metadata_input.py +96 -0
  398. rapidata/api_client/models/i_validation_truth.py +280 -0
  399. rapidata/api_client/models/i_validation_truth_attach_category_truth.py +96 -0
  400. rapidata/api_client/models/i_validation_truth_bounding_box_truth.py +102 -0
  401. rapidata/api_client/models/i_validation_truth_compare_truth.py +96 -0
  402. rapidata/api_client/models/i_validation_truth_empty_validation_truth.py +94 -0
  403. rapidata/api_client/models/i_validation_truth_line_truth.py +94 -0
  404. rapidata/api_client/models/i_validation_truth_locate_box_truth.py +108 -0
  405. rapidata/api_client/models/i_validation_truth_model.py +294 -0
  406. rapidata/api_client/models/i_validation_truth_model_attach_category_truth_model.py +96 -0
  407. rapidata/api_client/models/i_validation_truth_model_bounding_box_truth_model.py +102 -0
  408. rapidata/api_client/models/i_validation_truth_model_classify_truth_model.py +96 -0
  409. rapidata/api_client/models/i_validation_truth_model_compare_truth_model.py +96 -0
  410. rapidata/api_client/models/i_validation_truth_model_empty_validation_truth_model.py +94 -0
  411. rapidata/api_client/models/i_validation_truth_model_line_truth_model.py +94 -0
  412. rapidata/api_client/models/i_validation_truth_model_locate_box_truth_model.py +108 -0
  413. rapidata/api_client/models/i_validation_truth_model_multi_compare_truth_model.py +96 -0
  414. rapidata/api_client/models/i_validation_truth_model_named_entity_truth_model.py +104 -0
  415. rapidata/api_client/models/i_validation_truth_model_polygon_truth_model.py +94 -0
  416. rapidata/api_client/models/i_validation_truth_model_scrub_truth_model.py +104 -0
  417. rapidata/api_client/models/i_validation_truth_model_skip_truth_model.py +94 -0
  418. rapidata/api_client/models/i_validation_truth_model_transcription_truth_model.py +115 -0
  419. rapidata/api_client/models/i_validation_truth_multi_compare_truth.py +96 -0
  420. rapidata/api_client/models/i_validation_truth_named_entity_truth.py +104 -0
  421. rapidata/api_client/models/i_validation_truth_polygon_truth.py +94 -0
  422. rapidata/api_client/models/i_validation_truth_scrub_truth.py +104 -0
  423. rapidata/api_client/models/i_validation_truth_skip_truth.py +94 -0
  424. rapidata/api_client/models/i_validation_truth_transcription_truth.py +115 -0
  425. rapidata/api_client/models/i_workflow_config.py +168 -0
  426. rapidata/api_client/models/i_workflow_config_compare_workflow_config.py +142 -0
  427. rapidata/api_client/models/i_workflow_config_evaluation_workflow_config.py +114 -0
  428. rapidata/api_client/models/i_workflow_config_grouped_ranking_workflow_config.py +155 -0
  429. rapidata/api_client/models/i_workflow_config_simple_workflow_config.py +116 -0
  430. rapidata/api_client/models/i_workflow_model.py +168 -0
  431. rapidata/api_client/models/i_workflow_model_compare_workflow_model.py +145 -0
  432. rapidata/api_client/models/i_workflow_model_evaluation_workflow_model.py +115 -0
  433. rapidata/api_client/models/i_workflow_model_grouped_ranking_workflow_model.py +121 -0
  434. rapidata/api_client/models/i_workflow_model_simple_workflow_model.py +119 -0
  435. rapidata/api_client/models/image_dimension_metadata.py +12 -1
  436. rapidata/api_client/models/inquire_file_metadata_result.py +100 -0
  437. rapidata/api_client/models/inspect_report_result.py +2 -2
  438. rapidata/api_client/models/job_definition_revision_state.py +38 -0
  439. rapidata/api_client/models/json_web_key.py +2 -36
  440. rapidata/api_client/models/json_web_key_set.py +2 -22
  441. rapidata/api_client/models/labeling_selection.py +11 -13
  442. rapidata/api_client/models/language_filter.py +98 -0
  443. rapidata/api_client/models/leaderboard_query_result.py +29 -2
  444. rapidata/api_client/models/leaderboards_query_result.py +135 -0
  445. rapidata/api_client/models/line_result.py +3 -3
  446. rapidata/api_client/models/line_result_line.py +97 -0
  447. rapidata/api_client/models/line_result_line_point.py +89 -0
  448. rapidata/api_client/models/locate_coordinate.py +4 -13
  449. rapidata/api_client/models/location_metadata.py +12 -1
  450. rapidata/api_client/models/logic_operator.py +2 -2
  451. rapidata/api_client/models/metadata_i_order_metadata_input.py +154 -0
  452. rapidata/api_client/models/metadata_i_order_metadata_input_metadata_prompt_asset_metadata_input.py +100 -0
  453. rapidata/api_client/models/metadata_i_order_metadata_input_metadata_prompt_metadata_input.py +96 -0
  454. rapidata/api_client/models/metadata_i_order_metadata_input_metadata_transcription_metadata_input.py +96 -0
  455. rapidata/api_client/models/metadata_prompt_asset_metadata_input.py +100 -0
  456. rapidata/api_client/models/metadata_prompt_metadata_input.py +96 -0
  457. rapidata/api_client/models/metadata_transcription_metadata_input.py +96 -0
  458. rapidata/api_client/models/multi_asset.py +6 -6
  459. rapidata/api_client/models/multi_asset_assets_inner.py +170 -0
  460. rapidata/api_client/models/multi_asset_input.py +21 -1
  461. rapidata/api_client/models/multi_asset_input1_assets_inner.py +40 -12
  462. rapidata/api_client/models/multi_asset_input3_assets_inner.py +40 -12
  463. rapidata/api_client/models/multi_asset_input_assets_inner.py +16 -30
  464. rapidata/api_client/models/multi_asset_model.py +3 -3
  465. rapidata/api_client/models/naive_referee_model.py +2 -2
  466. rapidata/api_client/models/named_classification.py +4 -13
  467. rapidata/api_client/models/new_user_filter.py +96 -0
  468. rapidata/api_client/models/newsletter_model.py +6 -6
  469. rapidata/api_client/models/not_available_yet_result.py +4 -13
  470. rapidata/api_client/models/not_filter.py +117 -0
  471. rapidata/api_client/models/null_asset.py +3 -5
  472. rapidata/api_client/models/online_pair_maker_config_model.py +3 -3
  473. rapidata/api_client/models/option_of_aggregator_type.py +49 -0
  474. rapidata/api_client/models/or_filter.py +121 -0
  475. rapidata/api_client/models/order_model.py +15 -14
  476. rapidata/api_client/models/order_state.py +2 -2
  477. rapidata/api_client/models/original_filename_metadata.py +12 -1
  478. rapidata/api_client/models/page_info.py +2 -7
  479. rapidata/api_client/models/paged_result_aggregated_orders_model.py +105 -0
  480. rapidata/api_client/models/paged_result_benchmark_query_result.py +105 -0
  481. rapidata/api_client/models/paged_result_campaign_query_result.py +105 -0
  482. rapidata/api_client/models/paged_result_clients_query_result.py +105 -0
  483. rapidata/api_client/models/paged_result_datapoint_model.py +105 -0
  484. rapidata/api_client/models/paged_result_get_compare_workflow_results_result.py +105 -0
  485. rapidata/api_client/models/paged_result_get_grouped_ranking_workflow_results_result.py +105 -0
  486. rapidata/api_client/models/paged_result_get_validation_rapids_result.py +105 -0
  487. rapidata/api_client/models/paged_result_get_workflow_results_result.py +105 -0
  488. rapidata/api_client/models/paged_result_i_workflow_model.py +105 -0
  489. rapidata/api_client/models/paged_result_leaderboard_query_result.py +105 -0
  490. rapidata/api_client/models/paged_result_leaderboards_query_result.py +105 -0
  491. rapidata/api_client/models/paged_result_of_aggregated_orders_model.py +103 -0
  492. rapidata/api_client/models/paged_result_of_benchmark_query_result.py +103 -0
  493. rapidata/api_client/models/paged_result_of_campaign_query_result.py +103 -0
  494. rapidata/api_client/models/paged_result_of_clients_query_result.py +103 -0
  495. rapidata/api_client/models/paged_result_of_get_compare_workflow_results_result.py +103 -0
  496. rapidata/api_client/models/paged_result_of_get_grouped_ranking_workflow_results_result.py +103 -0
  497. rapidata/api_client/models/paged_result_of_get_validation_rapids_result.py +103 -0
  498. rapidata/api_client/models/paged_result_of_get_workflow_results_result.py +103 -0
  499. rapidata/api_client/models/paged_result_of_i_workflow_model.py +103 -0
  500. rapidata/api_client/models/paged_result_of_leaderboards_query_result.py +103 -0
  501. rapidata/api_client/models/paged_result_of_order_model.py +103 -0
  502. rapidata/api_client/models/paged_result_of_participant_by_benchmark.py +103 -0
  503. rapidata/api_client/models/paged_result_of_prompt_by_benchmark_result.py +103 -0
  504. rapidata/api_client/models/paged_result_of_query_audiences_result.py +103 -0
  505. rapidata/api_client/models/paged_result_of_query_datapoints_by_dataset_id_result.py +103 -0
  506. rapidata/api_client/models/paged_result_of_query_job_definitions_result.py +103 -0
  507. rapidata/api_client/models/paged_result_of_query_job_revisions_result.py +103 -0
  508. rapidata/api_client/models/paged_result_of_query_jobs_result.py +103 -0
  509. rapidata/api_client/models/paged_result_of_query_rapids_for_audience_result.py +103 -0
  510. rapidata/api_client/models/paged_result_of_query_validation_rapid_eligibility_result.py +103 -0
  511. rapidata/api_client/models/paged_result_of_rapid_model.py +103 -0
  512. rapidata/api_client/models/paged_result_of_runs_by_leaderboard_result.py +103 -0
  513. rapidata/api_client/models/paged_result_of_sample_by_identifier.py +103 -0
  514. rapidata/api_client/models/paged_result_of_sample_by_participant.py +103 -0
  515. rapidata/api_client/models/paged_result_of_standing_by_leaderboard.py +103 -0
  516. rapidata/api_client/models/paged_result_of_validation_set_model.py +103 -0
  517. rapidata/api_client/models/paged_result_order_model.py +105 -0
  518. rapidata/api_client/models/paged_result_participant_by_benchmark.py +105 -0
  519. rapidata/api_client/models/paged_result_potential_validation_rapid.py +105 -0
  520. rapidata/api_client/models/paged_result_prompt_by_benchmark_result.py +105 -0
  521. rapidata/api_client/models/paged_result_query_audiences_result.py +105 -0
  522. rapidata/api_client/models/paged_result_query_datapoints_by_dataset_id_result.py +105 -0
  523. rapidata/api_client/models/paged_result_query_validation_rapid_eligibility_result.py +105 -0
  524. rapidata/api_client/models/paged_result_rapid_model.py +105 -0
  525. rapidata/api_client/models/paged_result_runs_by_leaderboard_result.py +105 -0
  526. rapidata/api_client/models/paged_result_sample_by_identifier.py +105 -0
  527. rapidata/api_client/models/paged_result_sample_by_participant.py +105 -0
  528. rapidata/api_client/models/paged_result_standing_by_leaderboard.py +105 -0
  529. rapidata/api_client/models/paged_result_validation_set_model.py +105 -0
  530. rapidata/api_client/models/participant_by_benchmark.py +6 -14
  531. rapidata/api_client/models/participant_status.py +2 -2
  532. rapidata/api_client/models/polygon_result.py +3 -3
  533. rapidata/api_client/models/polygon_result_coordinate.py +89 -0
  534. rapidata/api_client/models/polygon_result_shape.py +95 -0
  535. rapidata/api_client/models/preliminary_download_model.py +5 -5
  536. rapidata/api_client/models/preview_order_model.py +5 -5
  537. rapidata/api_client/models/problem_details.py +2 -20
  538. rapidata/api_client/models/prompt_asset_metadata_input.py +4 -6
  539. rapidata/api_client/models/prompt_asset_metadata_input_asset.py +25 -41
  540. rapidata/api_client/models/prompt_by_benchmark_result.py +5 -5
  541. rapidata/api_client/models/prompt_metadata.py +12 -1
  542. rapidata/api_client/models/prompt_metadata_input.py +5 -7
  543. rapidata/api_client/models/prompt_type.py +38 -0
  544. rapidata/api_client/models/proxy_file_wrapper.py +17 -2
  545. rapidata/api_client/models/public_order_model.py +2 -2
  546. rapidata/api_client/models/public_rapid_response.py +112 -0
  547. rapidata/api_client/models/query_audiences_result.py +118 -0
  548. rapidata/api_client/models/query_datapoints_by_dataset_id_result.py +95 -0
  549. rapidata/api_client/models/query_job_definitions_result.py +97 -0
  550. rapidata/api_client/models/query_job_revisions_result.py +95 -0
  551. rapidata/api_client/models/query_jobs_result.py +103 -0
  552. rapidata/api_client/models/query_model.py +10 -5
  553. rapidata/api_client/models/query_rapids_for_audience_result.py +150 -0
  554. rapidata/api_client/models/query_validation_rapid_eligibility_model_query_validation_model.py +107 -0
  555. rapidata/api_client/models/query_validation_rapid_eligibility_result.py +103 -0
  556. rapidata/api_client/models/query_validation_rapid_eligibility_result_truth.py +280 -0
  557. rapidata/api_client/models/rapid_issue.py +2 -2
  558. rapidata/api_client/models/rapid_modality.py +46 -0
  559. rapidata/api_client/models/rapid_model.py +33 -49
  560. rapidata/api_client/models/rapid_result_model.py +7 -7
  561. rapidata/api_client/models/rapid_skipped_model.py +5 -5
  562. rapidata/api_client/models/rapid_state.py +2 -2
  563. rapidata/api_client/models/read_bridge_token_keys_result.py +10 -24
  564. rapidata/api_client/models/reference_asset_input.py +100 -0
  565. rapidata/api_client/models/report_model.py +9 -15
  566. rapidata/api_client/models/response_count_filter.py +103 -0
  567. rapidata/api_client/models/response_count_user_filter_model.py +2 -8
  568. rapidata/api_client/models/retrieval_mode.py +2 -2
  569. rapidata/api_client/models/root_filter.py +5 -14
  570. rapidata/api_client/models/run_status.py +2 -2
  571. rapidata/api_client/models/runs_by_leaderboard_result.py +6 -12
  572. rapidata/api_client/models/sample_by_identifier.py +125 -0
  573. rapidata/api_client/models/sample_by_identifier_paged_result.py +105 -0
  574. rapidata/api_client/models/sample_by_participant.py +7 -8
  575. rapidata/api_client/models/scrub_range.py +2 -2
  576. rapidata/api_client/models/send_survey_model.py +87 -0
  577. rapidata/api_client/models/simple_workflow_config.py +15 -5
  578. rapidata/api_client/models/simple_workflow_config_blueprint.py +37 -23
  579. rapidata/api_client/models/simple_workflow_config_model.py +11 -3
  580. rapidata/api_client/models/simple_workflow_model.py +14 -4
  581. rapidata/api_client/models/simple_workflow_model1.py +4 -11
  582. rapidata/api_client/models/simple_workflow_model_blueprint.py +1 -1
  583. rapidata/api_client/models/sort_criterion.py +5 -11
  584. rapidata/api_client/models/sort_direction.py +2 -2
  585. rapidata/api_client/models/source_url_metadata.py +12 -1
  586. rapidata/api_client/models/standing_by_benchmark.py +113 -0
  587. rapidata/api_client/models/standing_by_leaderboard.py +19 -21
  588. rapidata/api_client/models/standing_status.py +2 -2
  589. rapidata/api_client/models/standings_by_benchmark_result.py +95 -0
  590. rapidata/api_client/models/standings_by_leaderboard_result.py +2 -2
  591. rapidata/api_client/models/start_preliminary_download_result.py +87 -0
  592. rapidata/api_client/models/sticky_state.py +3 -2
  593. rapidata/api_client/models/stream_file_wrapper.py +25 -3
  594. rapidata/api_client/models/streams_metadata.py +12 -1
  595. rapidata/api_client/models/string_segment.py +105 -0
  596. rapidata/api_client/models/submit_order_model.py +5 -5
  597. rapidata/api_client/models/submit_participant_result.py +2 -2
  598. rapidata/api_client/models/submit_prompt_model.py +9 -14
  599. rapidata/api_client/models/submit_prompt_model_prompt_asset.py +40 -12
  600. rapidata/api_client/models/tags_by_benchmark_result.py +2 -2
  601. rapidata/api_client/models/text_asset.py +3 -5
  602. rapidata/api_client/models/text_asset_input.py +21 -1
  603. rapidata/api_client/models/text_metadata.py +18 -2
  604. rapidata/api_client/models/text_metadata_input.py +111 -0
  605. rapidata/api_client/models/text_metadata_model.py +7 -2
  606. rapidata/api_client/models/transcription_metadata.py +9 -1
  607. rapidata/api_client/models/transcription_metadata_input.py +5 -7
  608. rapidata/api_client/models/transcription_word.py +2 -2
  609. rapidata/api_client/models/translated_string.py +2 -2
  610. rapidata/api_client/models/unlock_order_result.py +2 -2
  611. rapidata/api_client/models/update_audience_request.py +113 -0
  612. rapidata/api_client/models/update_benchmark_model.py +99 -0
  613. rapidata/api_client/models/update_benchmark_name_model.py +5 -5
  614. rapidata/api_client/models/update_campaign_model.py +11 -11
  615. rapidata/api_client/models/update_dataset_name_model.py +5 -5
  616. rapidata/api_client/models/update_dimensions_model.py +3 -3
  617. rapidata/api_client/models/update_job_definition_endpoint_input.py +92 -0
  618. rapidata/api_client/models/update_leaderboard_model.py +106 -0
  619. rapidata/api_client/models/update_leaderboard_name_model.py +5 -5
  620. rapidata/api_client/models/update_leaderboard_response_config_model.py +5 -5
  621. rapidata/api_client/models/update_order_name_model.py +5 -5
  622. rapidata/api_client/models/update_participant_model.py +92 -0
  623. rapidata/api_client/models/update_participant_name_model.py +5 -5
  624. rapidata/api_client/models/update_priority_model.py +87 -0
  625. rapidata/api_client/models/update_prompt_tags_model.py +5 -5
  626. rapidata/api_client/models/update_should_alert_model.py +4 -4
  627. rapidata/api_client/models/update_validation_rapid_model.py +35 -14
  628. rapidata/api_client/models/update_validation_rapid_model_context_asset.py +160 -0
  629. rapidata/api_client/models/update_validation_set_model.py +120 -0
  630. rapidata/api_client/models/upload_asset_result.py +102 -0
  631. rapidata/api_client/models/upload_file_from_url_result.py +87 -0
  632. rapidata/api_client/models/upload_file_result.py +87 -0
  633. rapidata/api_client/models/user_action_restriction.py +37 -0
  634. rapidata/api_client/models/user_action_restriction_filter.py +101 -0
  635. rapidata/api_client/models/user_score_filter.py +102 -0
  636. rapidata/api_client/models/user_state.py +38 -0
  637. rapidata/api_client/models/user_state_filter.py +101 -0
  638. rapidata/api_client/models/validation_chance.py +20 -3
  639. rapidata/api_client/models/validation_problem_details.py +117 -0
  640. rapidata/api_client/models/validation_set_model.py +39 -5
  641. rapidata/api_client/models/validation_set_overview_model.py +2 -2
  642. rapidata/api_client/models/video_duration_metadata.py +12 -1
  643. rapidata/api_client/models/workflow_aggregation_step_model.py +3 -12
  644. rapidata/api_client/models/workflow_config_artifact_model_workflow_config.py +23 -9
  645. rapidata/api_client/models/workflow_state.py +2 -2
  646. rapidata/api_client/models/zip_entry_file_wrapper.py +33 -2
  647. rapidata/api_client/rest.py +2 -2
  648. rapidata/api_client_README.md +384 -318
  649. rapidata/rapidata_client/__init__.py +17 -22
  650. rapidata/rapidata_client/api/rapidata_api_client.py +253 -0
  651. rapidata/rapidata_client/audience/__init__.py +2 -0
  652. rapidata/rapidata_client/audience/audience_example_handler.py +168 -0
  653. rapidata/rapidata_client/audience/rapidata_audience.py +287 -0
  654. rapidata/rapidata_client/audience/rapidata_audience_manager.py +162 -0
  655. rapidata/rapidata_client/benchmark/_detail_mapper.py +11 -9
  656. rapidata/rapidata_client/benchmark/leaderboard/rapidata_leaderboard.py +98 -54
  657. rapidata/rapidata_client/benchmark/participant/_participant.py +90 -46
  658. rapidata/rapidata_client/benchmark/rapidata_benchmark.py +388 -225
  659. rapidata/rapidata_client/benchmark/rapidata_benchmark_manager.py +172 -65
  660. rapidata/rapidata_client/config/__init__.py +4 -0
  661. rapidata/rapidata_client/config/logger.py +135 -0
  662. rapidata/rapidata_client/config/logging_config.py +55 -0
  663. rapidata/rapidata_client/config/managed_print.py +6 -0
  664. rapidata/rapidata_client/config/order_config.py +14 -0
  665. rapidata/rapidata_client/config/rapidata_config.py +36 -0
  666. rapidata/rapidata_client/config/tracer.py +184 -0
  667. rapidata/rapidata_client/config/upload_config.py +64 -0
  668. rapidata/rapidata_client/datapoints/__init__.py +8 -3
  669. rapidata/rapidata_client/datapoints/_asset_uploader.py +184 -0
  670. rapidata/rapidata_client/datapoints/_datapoint.py +92 -0
  671. rapidata/rapidata_client/datapoints/_datapoint_uploader.py +47 -0
  672. rapidata/rapidata_client/datapoints/_datapoints_validator.py +70 -0
  673. rapidata/rapidata_client/datapoints/assets/__init__.py +0 -10
  674. rapidata/rapidata_client/datapoints/assets/constants.py +7 -0
  675. rapidata/rapidata_client/datapoints/metadata/__init__.py +0 -2
  676. rapidata/rapidata_client/datapoints/metadata/_private_text_metadata.py +5 -6
  677. rapidata/rapidata_client/datapoints/metadata/_prompt_identifier_metadata.py +4 -5
  678. rapidata/rapidata_client/datapoints/metadata/_public_text_metadata.py +5 -6
  679. rapidata/rapidata_client/datapoints/metadata/_select_words_metadata.py +3 -4
  680. rapidata/rapidata_client/dataset/__init__.py +1 -0
  681. rapidata/rapidata_client/dataset/_rapidata_dataset.py +55 -0
  682. rapidata/rapidata_client/demographic/demographic_manager.py +44 -19
  683. rapidata/rapidata_client/exceptions/failed_upload_exception.py +15 -41
  684. rapidata/rapidata_client/filter/_backend_filter_mapper.py +134 -0
  685. rapidata/rapidata_client/filter/_base_filter.py +13 -8
  686. rapidata/rapidata_client/filter/age_filter.py +26 -10
  687. rapidata/rapidata_client/filter/and_filter.py +36 -11
  688. rapidata/rapidata_client/filter/campaign_filter.py +21 -10
  689. rapidata/rapidata_client/filter/country_filter.py +46 -12
  690. rapidata/rapidata_client/filter/custom_filter.py +25 -12
  691. rapidata/rapidata_client/filter/gender_filter.py +25 -10
  692. rapidata/rapidata_client/filter/language_filter.py +51 -21
  693. rapidata/rapidata_client/filter/models/age_group.py +14 -12
  694. rapidata/rapidata_client/filter/models/gender.py +12 -8
  695. rapidata/rapidata_client/filter/new_user_filter.py +14 -4
  696. rapidata/rapidata_client/filter/not_filter.py +35 -11
  697. rapidata/rapidata_client/filter/or_filter.py +36 -11
  698. rapidata/rapidata_client/filter/rapidata_filters.py +17 -23
  699. rapidata/rapidata_client/filter/response_count_filter.py +51 -20
  700. rapidata/rapidata_client/filter/user_score_filter.py +62 -24
  701. rapidata/rapidata_client/job/__init__.py +3 -0
  702. rapidata/rapidata_client/job/job_definition.py +110 -0
  703. rapidata/rapidata_client/job/job_manager.py +758 -0
  704. rapidata/rapidata_client/job/rapidata_job.py +326 -0
  705. rapidata/rapidata_client/order/__init__.py +2 -0
  706. rapidata/rapidata_client/order/_rapidata_order_builder.py +273 -122
  707. rapidata/rapidata_client/order/rapidata_order.py +316 -160
  708. rapidata/rapidata_client/order/rapidata_order_manager.py +680 -421
  709. rapidata/rapidata_client/rapidata_client.py +115 -37
  710. rapidata/rapidata_client/referee/__init__.py +1 -1
  711. rapidata/rapidata_client/referee/_base_referee.py +14 -3
  712. rapidata/rapidata_client/referee/_early_stopping_referee.py +32 -17
  713. rapidata/rapidata_client/referee/_naive_referee.py +24 -3
  714. rapidata/rapidata_client/results/__init__.py +3 -0
  715. rapidata/rapidata_client/{order → results}/rapidata_results.py +86 -63
  716. rapidata/rapidata_client/selection/__init__.py +1 -1
  717. rapidata/rapidata_client/selection/_base_selection.py +9 -2
  718. rapidata/rapidata_client/selection/ab_test_selection.py +28 -20
  719. rapidata/rapidata_client/selection/capped_selection.py +23 -16
  720. rapidata/rapidata_client/selection/conditional_validation_selection.py +43 -24
  721. rapidata/rapidata_client/selection/demographic_selection.py +21 -6
  722. rapidata/rapidata_client/selection/effort_selection.py +31 -8
  723. rapidata/rapidata_client/selection/labeling_selection.py +34 -11
  724. rapidata/rapidata_client/selection/{retrieval_modes.py → rapidata_retrieval_modes.py} +7 -4
  725. rapidata/rapidata_client/selection/rapidata_selections.py +23 -14
  726. rapidata/rapidata_client/selection/shuffling_selection.py +21 -13
  727. rapidata/rapidata_client/selection/static_selection.py +19 -8
  728. rapidata/rapidata_client/selection/validation_selection.py +20 -4
  729. rapidata/rapidata_client/settings/__init__.py +2 -0
  730. rapidata/rapidata_client/settings/_rapidata_setting.py +22 -3
  731. rapidata/rapidata_client/settings/alert_on_fast_response.py +8 -5
  732. rapidata/rapidata_client/settings/allow_neither_both.py +3 -0
  733. rapidata/rapidata_client/settings/custom_setting.py +3 -2
  734. rapidata/rapidata_client/settings/free_text_minimum_characters.py +9 -4
  735. rapidata/rapidata_client/settings/models/translation_behaviour_options.py +3 -2
  736. rapidata/rapidata_client/settings/mute_video.py +15 -0
  737. rapidata/rapidata_client/settings/no_shuffle.py +4 -2
  738. rapidata/rapidata_client/settings/play_video_until_the_end.py +7 -4
  739. rapidata/rapidata_client/settings/rapidata_settings.py +22 -9
  740. rapidata/rapidata_client/settings/swap_context_instruction.py +20 -0
  741. rapidata/rapidata_client/settings/translation_behaviour.py +7 -5
  742. rapidata/rapidata_client/utils/__init__.py +3 -0
  743. rapidata/rapidata_client/utils/threaded_uploader.py +153 -0
  744. rapidata/rapidata_client/validation/__init__.py +2 -0
  745. rapidata/rapidata_client/validation/rapidata_validation_set.py +96 -18
  746. rapidata/rapidata_client/validation/rapids/__init__.py +2 -0
  747. rapidata/rapidata_client/validation/rapids/_validation_rapid_uploader.py +48 -0
  748. rapidata/rapidata_client/validation/rapids/box.py +37 -12
  749. rapidata/rapidata_client/validation/rapids/rapids.py +29 -83
  750. rapidata/rapidata_client/validation/rapids/rapids_manager.py +369 -211
  751. rapidata/rapidata_client/validation/validation_set_manager.py +505 -276
  752. rapidata/rapidata_client/workflow/__init__.py +2 -2
  753. rapidata/rapidata_client/workflow/_base_workflow.py +25 -7
  754. rapidata/rapidata_client/workflow/_classify_workflow.py +58 -15
  755. rapidata/rapidata_client/workflow/_compare_workflow.py +44 -9
  756. rapidata/rapidata_client/workflow/_draw_workflow.py +40 -10
  757. rapidata/rapidata_client/workflow/_evaluation_workflow.py +28 -7
  758. rapidata/rapidata_client/workflow/_free_text_workflow.py +46 -9
  759. rapidata/rapidata_client/workflow/_locate_workflow.py +40 -10
  760. rapidata/rapidata_client/workflow/_multi_ranking_workflow.py +90 -0
  761. rapidata/rapidata_client/workflow/_select_words_workflow.py +51 -11
  762. rapidata/rapidata_client/workflow/_timestamp_workflow.py +42 -11
  763. rapidata/service/__init__.py +0 -1
  764. rapidata/service/credential_manager.py +14 -14
  765. rapidata/service/openapi_service.py +119 -34
  766. rapidata/types/__init__.py +149 -0
  767. rapidata-3.0.0a8.dist-info/METADATA +32 -0
  768. rapidata-3.0.0a8.dist-info/RECORD +1083 -0
  769. {rapidata-2.35.1.dist-info → rapidata-3.0.0a8.dist-info}/WHEEL +1 -1
  770. rapidata/rapidata_client/api/rapidata_exception.py +0 -107
  771. rapidata/rapidata_client/country_codes/__init__.py +0 -1
  772. rapidata/rapidata_client/country_codes/country_codes.py +0 -19
  773. rapidata/rapidata_client/datapoints/assets/_base_asset.py +0 -11
  774. rapidata/rapidata_client/datapoints/assets/_media_asset.py +0 -306
  775. rapidata/rapidata_client/datapoints/assets/_multi_asset.py +0 -61
  776. rapidata/rapidata_client/datapoints/assets/_sessions.py +0 -35
  777. rapidata/rapidata_client/datapoints/assets/_text_asset.py +0 -34
  778. rapidata/rapidata_client/datapoints/assets/data_type_enum.py +0 -8
  779. rapidata/rapidata_client/datapoints/datapoint.py +0 -108
  780. rapidata/rapidata_client/datapoints/metadata/_media_asset_metadata.py +0 -22
  781. rapidata/rapidata_client/datapoints/metadata/_prompt_metadata.py +0 -18
  782. rapidata/rapidata_client/logging/__init__.py +0 -2
  783. rapidata/rapidata_client/logging/logger.py +0 -122
  784. rapidata/rapidata_client/logging/output_manager.py +0 -20
  785. rapidata/rapidata_client/order/_rapidata_dataset.py +0 -396
  786. rapidata/rapidata_client/workflow/_ranking_workflow.py +0 -47
  787. rapidata/service/local_file_service.py +0 -25
  788. rapidata-2.35.1.dist-info/METADATA +0 -35
  789. rapidata-2.35.1.dist-info/RECORD +0 -657
  790. {rapidata-2.35.1.dist-info → rapidata-3.0.0a8.dist-info/licenses}/LICENSE +0 -0
@@ -0,0 +1,287 @@
1
+ from __future__ import annotations
2
+
3
+ from typing import TYPE_CHECKING, Literal
4
+ from rapidata.rapidata_client.config import logger, tracer, rapidata_config
5
+ from rapidata.rapidata_client.audience.audience_example_handler import (
6
+ AudienceExampleHandler,
7
+ )
8
+
9
+ if TYPE_CHECKING:
10
+ from rapidata.service.openapi_service import OpenAPIService
11
+ from rapidata.rapidata_client.filter import RapidataFilter
12
+ from rapidata.rapidata_client.job.job_definition import (
13
+ JobDefinition,
14
+ )
15
+ from rapidata.rapidata_client.job.rapidata_job import RapidataJob
16
+
17
+
18
+ class RapidataAudience:
19
+ """Represents a Rapidata audience.
20
+
21
+ An audience is a group of annotators that can be recruited based on example tasks and assigned jobs.
22
+
23
+ Attributes:
24
+ id (str): The unique identifier of the audience.
25
+ name (str): The name of the audience.
26
+ filters (list[RapidataFilter]): The list of filters applied to the audience.
27
+ """
28
+
29
+ def __init__(
30
+ self,
31
+ id: str,
32
+ name: str,
33
+ filters: list[RapidataFilter],
34
+ openapi_service: OpenAPIService,
35
+ ):
36
+ self.id = id
37
+ self._name = name
38
+ self._filters = filters
39
+ self._openapi_service = openapi_service
40
+ self._example_handler = AudienceExampleHandler(openapi_service, id)
41
+
42
+ @property
43
+ def name(self) -> str:
44
+ """The name of the audience."""
45
+ return self._name
46
+
47
+ @property
48
+ def filters(self) -> list[RapidataFilter]:
49
+ """The list of filters applied to the audience."""
50
+ return self._filters
51
+
52
+ def update_filters(self, filters: list[RapidataFilter]) -> RapidataAudience:
53
+ """Update the filters for this audience.
54
+
55
+ Args:
56
+ filters (list[RapidataFilter]): The new list of filters to apply to the audience.
57
+
58
+ Returns:
59
+ RapidataAudience: The updated audience instance (self) for method chaining.
60
+ """
61
+ with tracer.start_as_current_span("RapidataAudience.update_filters"):
62
+ from rapidata.api_client.models.update_audience_request import (
63
+ UpdateAudienceRequest,
64
+ )
65
+
66
+ logger.debug(f"Updating filters for audience: {self.id} to {filters}")
67
+ self._openapi_service.audience_api.audience_audience_id_patch(
68
+ audience_id=self.id,
69
+ update_audience_request=UpdateAudienceRequest(
70
+ filters=[filter._to_audience_model() for filter in filters],
71
+ ),
72
+ )
73
+ self._filters = filters
74
+ return self
75
+
76
+ def update_name(self, name: str) -> RapidataAudience:
77
+ """Update the name of this audience.
78
+
79
+ Args:
80
+ name (str): The new name for the audience.
81
+
82
+ Returns:
83
+ RapidataAudience: The updated audience instance (self) for method chaining.
84
+ """
85
+ with tracer.start_as_current_span("RapidataAudience.update_name"):
86
+ from rapidata.api_client.models.update_audience_request import (
87
+ UpdateAudienceRequest,
88
+ )
89
+
90
+ logger.debug(f"Updating name for audience: {self.id} to {name}")
91
+ self._openapi_service.audience_api.audience_audience_id_patch(
92
+ audience_id=self.id,
93
+ update_audience_request=UpdateAudienceRequest(name=name),
94
+ )
95
+ self._name = name
96
+ return self
97
+
98
+ def start_recruiting(self) -> RapidataAudience:
99
+ """Start recruiting annotators for this audience.
100
+
101
+ This will begin the process of onboarding annotators for this audience.
102
+
103
+ Returns:
104
+ RapidataAudience: The audience instance (self) for method chaining.
105
+ """
106
+ with tracer.start_as_current_span("RapidataAudience.start_recruiting"):
107
+ logger.debug(f"Sending request to start recruiting for audience: {self.id}")
108
+ self._openapi_service.audience_api.audience_audience_id_recruit_post(
109
+ audience_id=self.id,
110
+ )
111
+ logger.info(f"Started recruiting for audience: {self.id}")
112
+ return self
113
+
114
+ def assign_job(self, job_definition: JobDefinition) -> RapidataJob:
115
+ """Assign a job to this audience.
116
+
117
+ Creates a new job instance from the job definition and assigns it to this audience.
118
+ The job will be executed by the annotators in this audience.
119
+
120
+ Args:
121
+ job_definition (JobDefinition): The job definition to create and assign to the audience.
122
+
123
+ Returns:
124
+ RapidataJob: The created job instance.
125
+ """
126
+ with tracer.start_as_current_span("RapidataAudience.assign_job"):
127
+ from rapidata.api_client.models.create_job_endpoint_input import (
128
+ CreateJobEndpointInput,
129
+ )
130
+ from rapidata.rapidata_client.job.rapidata_job import RapidataJob
131
+
132
+ logger.debug(f"Assigning job to audience: {self.id}")
133
+ response = self._openapi_service.job_api.job_post(
134
+ create_job_endpoint_input=CreateJobEndpointInput(
135
+ audienceId=self.id,
136
+ jobDefinitionId=job_definition._id,
137
+ ),
138
+ )
139
+ job = RapidataJob(
140
+ response.job_id, job_definition._name, self._openapi_service
141
+ )
142
+ logger.info(f"Assigned job to audience: {self.id}")
143
+ return job
144
+
145
+ def add_classification_example(
146
+ self,
147
+ instruction: str,
148
+ answer_options: list[str],
149
+ datapoint: str,
150
+ truth: list[str],
151
+ data_type: Literal["media", "text"] = "media",
152
+ context: str | None = None,
153
+ media_context: str | None = None,
154
+ explanation: str | None = None,
155
+ ) -> RapidataAudience:
156
+ """Add a classification training example to this audience.
157
+
158
+ Training examples help annotators understand the task by showing them
159
+ a sample datapoint with the correct answer before they start labeling.
160
+
161
+ Args:
162
+ instruction (str): The instruction for how the data should be classified.
163
+ answer_options (list[str]): The list of possible answer options for the classification.
164
+ datapoint (str): The datapoint (URL or path) to use as the training example.
165
+ truth (list[str]): The correct answer(s) for this training example.
166
+ data_type (Literal["media", "text"], optional): The data type of the datapoint. Defaults to "media".
167
+ context (str, optional): Additional text context to display with the example. Defaults to None.
168
+ media_context (str, optional): Additional media (URL or path) to display with the example. Defaults to None.
169
+ explanation (str, optional): An explanation of why the truth is correct. Defaults to None.
170
+
171
+ Returns:
172
+ RapidataAudience: The audience instance (self) for method chaining.
173
+ """
174
+ with tracer.start_as_current_span(
175
+ "RapidataAudience.add_classification_example"
176
+ ):
177
+ logger.debug(
178
+ f"Adding classification example to audience: {self.id} with instruction: {instruction}, answer_options: {answer_options}, datapoint: {datapoint}, truths: {truth}, data_type: {data_type}, context: {context}, media_context: {media_context}, explanation: {explanation}"
179
+ )
180
+ self._example_handler.add_classification_example(
181
+ instruction,
182
+ answer_options,
183
+ datapoint,
184
+ truth,
185
+ data_type,
186
+ context,
187
+ media_context,
188
+ explanation,
189
+ )
190
+ return self
191
+
192
+ def add_compare_example(
193
+ self,
194
+ instruction: str,
195
+ truth: str,
196
+ datapoint: list[str],
197
+ data_type: Literal["media", "text"] = "media",
198
+ context: str | None = None,
199
+ media_context: str | None = None,
200
+ explanation: str | None = None,
201
+ ) -> RapidataAudience:
202
+ """Add a comparison training example to this audience.
203
+
204
+ Training examples help annotators understand the task by showing them
205
+ a sample comparison with the correct answer before they start labeling.
206
+
207
+ Args:
208
+ instruction (str): The instruction for the comparison task.
209
+ truth (str): The correct answer for this training example (which option should be selected).
210
+ datapoint (list[str]): A list of exactly two datapoints (URLs or paths) to compare.
211
+ data_type (Literal["media", "text"], optional): The data type of the datapoints. Defaults to "media".
212
+ context (str, optional): Additional text context to display with the example. Defaults to None.
213
+ media_context (str, optional): Additional media (URL or path) to display with the example. Defaults to None.
214
+ explanation (str, optional): An explanation of why the truth is correct. Defaults to None.
215
+
216
+ Returns:
217
+ RapidataAudience: The audience instance (self) for method chaining.
218
+ """
219
+ with tracer.start_as_current_span("RapidataAudience.add_compare_example"):
220
+ logger.debug(
221
+ f"Adding compare example to audience: {self.id} with instruction: {instruction}, truth: {truth}, datapoint: {datapoint}, data_type: {data_type}, context: {context}, media_context: {media_context}, explanation: {explanation}"
222
+ )
223
+ self._example_handler.add_compare_example(
224
+ instruction,
225
+ truth,
226
+ datapoint,
227
+ data_type,
228
+ context,
229
+ media_context,
230
+ explanation,
231
+ )
232
+ return self
233
+
234
+ def find_jobs(self, name: str = "", amount: int = 10) -> list[RapidataJob]:
235
+ """Find jobs assigned to this audience.
236
+
237
+ Args:
238
+ name (str, optional): Filter jobs by name (matching jobs will contain this string). Defaults to "" for any job.
239
+ amount (int, optional): The maximum number of jobs to return. Defaults to 10.
240
+
241
+ Returns:
242
+ list[RapidataJob]: A list of RapidataJob instances assigned to this audience.
243
+ """
244
+ with tracer.start_as_current_span("RapidataAudience.find_jobs"):
245
+ from rapidata.rapidata_client.job.rapidata_job import RapidataJob
246
+ from rapidata.api_client.models.query_model import QueryModel
247
+ from rapidata.api_client.models.root_filter import RootFilter
248
+ from rapidata.api_client.models.filter import Filter
249
+ from rapidata.api_client.models.filter_operator import FilterOperator
250
+ from rapidata.api_client.models.page_info import PageInfo
251
+ from rapidata.api_client.models.sort_criterion import SortCriterion
252
+ from rapidata.api_client.models.sort_direction import SortDirection
253
+
254
+ response = self._openapi_service.job_api.jobs_get(
255
+ request=QueryModel(
256
+ page=PageInfo(index=1, size=amount),
257
+ filter=RootFilter(
258
+ filters=[
259
+ Filter(
260
+ field="AudienceId",
261
+ operator=FilterOperator.EQ,
262
+ value=self.id,
263
+ ),
264
+ Filter(
265
+ field="Name",
266
+ operator=FilterOperator.CONTAINS,
267
+ value=name,
268
+ ),
269
+ ]
270
+ ),
271
+ sortCriteria=[
272
+ SortCriterion(
273
+ direction=SortDirection.DESC, propertyName="CreatedAt"
274
+ )
275
+ ],
276
+ ),
277
+ )
278
+ return [
279
+ RapidataJob(job.job_id, job.name, self._openapi_service)
280
+ for job in response.items
281
+ ]
282
+
283
+ def __str__(self) -> str:
284
+ return f"RapidataAudience(id={self.id}, name={self._name}, filters={self._filters})"
285
+
286
+ def __repr__(self) -> str:
287
+ return self.__str__()
@@ -0,0 +1,162 @@
1
+ from __future__ import annotations
2
+ from typing import TYPE_CHECKING
3
+ from rapidata.rapidata_client.config import tracer
4
+ from rapidata.rapidata_client.config import logger
5
+
6
+ if TYPE_CHECKING:
7
+ from rapidata.rapidata_client.audience.rapidata_audience import RapidataAudience
8
+ from rapidata.service.openapi_service import OpenAPIService
9
+ from rapidata.rapidata_client.filter import RapidataFilter
10
+
11
+
12
+ class RapidataAudienceManager:
13
+ """Handles everything regarding audiences from creation to retrieval.
14
+
15
+ A manager for creating, retrieving, and searching for audiences.
16
+ Audiences are groups of annotators that can be recruited based on example tasks and assigned jobs.
17
+ """
18
+
19
+ def __init__(self, openapi_service: OpenAPIService):
20
+ self._openapi_service = openapi_service
21
+
22
+ def create_audience(
23
+ self,
24
+ name: str,
25
+ filters: list[RapidataFilter] | None = None,
26
+ ) -> RapidataAudience:
27
+ """Create a new audience.
28
+
29
+ Creates a new audience with the specified name and optional filters.
30
+
31
+ Args:
32
+ name (str): The name of the audience.
33
+ filters (list[RapidataFilter], optional): The list of filters to apply to the audience. Defaults to None (no filters).
34
+
35
+ Returns:
36
+ RapidataAudience: The created audience instance.
37
+ """
38
+ with tracer.start_as_current_span("RapidataAudienceManager.create_audience"):
39
+ from rapidata.rapidata_client.audience.rapidata_audience import (
40
+ RapidataAudience,
41
+ )
42
+ from rapidata.api_client.models.create_audience_request import (
43
+ CreateAudienceRequest,
44
+ )
45
+
46
+ logger.debug(f"Creating audience: {name}")
47
+ if filters is None:
48
+ filters = []
49
+ response = self._openapi_service.audience_api.audience_post(
50
+ create_audience_request=CreateAudienceRequest(
51
+ name=name,
52
+ filters=[filter._to_audience_model() for filter in filters],
53
+ ),
54
+ )
55
+ return RapidataAudience(
56
+ id=response.audience_id,
57
+ name=name,
58
+ filters=filters,
59
+ openapi_service=self._openapi_service,
60
+ )
61
+
62
+ def get_audience_by_id(self, audience_id: str) -> RapidataAudience:
63
+ """Get an audience by its ID.
64
+
65
+ Args:
66
+ audience_id (str): The unique identifier of the audience.
67
+
68
+ Returns:
69
+ RapidataAudience: The audience instance.
70
+ """
71
+ with tracer.start_as_current_span("RapidataAudienceManager.get_audience_by_id"):
72
+ from rapidata.rapidata_client.filter._backend_filter_mapper import (
73
+ BackendFilterMapper,
74
+ )
75
+ from rapidata.rapidata_client.audience.rapidata_audience import (
76
+ RapidataAudience,
77
+ )
78
+
79
+ logger.debug(f"Getting audience by id: {audience_id}")
80
+ response = self._openapi_service.audience_api.audience_audience_id_get(
81
+ audience_id=audience_id,
82
+ )
83
+ return RapidataAudience(
84
+ id=audience_id,
85
+ name=response.name,
86
+ filters=[
87
+ BackendFilterMapper.backend_filter_from_rapidata_filter(filter)
88
+ for filter in response.filters
89
+ ],
90
+ openapi_service=self._openapi_service,
91
+ )
92
+
93
+ def find_audiences(
94
+ self, name: str = "", amount: int = 10
95
+ ) -> list[RapidataAudience]:
96
+ """Find your audiences by name.
97
+
98
+ Args:
99
+ name (str, optional): Filter audiences by name (matching audiences will contain this string). Defaults to "" for any audience.
100
+ amount (int, optional): The maximum number of audiences to return. Defaults to 10.
101
+
102
+ Returns:
103
+ list[RapidataAudience]: A list of RapidataAudience instances.
104
+ """
105
+ with tracer.start_as_current_span("RapidataAudienceManager.find_audiences"):
106
+ from rapidata.rapidata_client.filter._backend_filter_mapper import (
107
+ BackendFilterMapper,
108
+ )
109
+ from rapidata.api_client.models.page_info import PageInfo
110
+ from rapidata.api_client.models.query_model import QueryModel
111
+ from rapidata.api_client.models.root_filter import RootFilter
112
+ from rapidata.api_client.models.filter import Filter
113
+ from rapidata.api_client.models.filter_operator import FilterOperator
114
+ from rapidata.api_client.models.sort_criterion import SortCriterion
115
+ from rapidata.api_client.models.sort_direction import SortDirection
116
+ from rapidata.rapidata_client.audience.rapidata_audience import (
117
+ RapidataAudience,
118
+ )
119
+
120
+ logger.debug(f"Finding audiences: {name}, {amount}")
121
+ response = self._openapi_service.audience_api.audiences_get(
122
+ request=QueryModel(
123
+ page=PageInfo(index=1, size=amount),
124
+ filter=RootFilter(
125
+ filters=[
126
+ Filter(
127
+ field="Name",
128
+ operator=FilterOperator.CONTAINS,
129
+ value=name,
130
+ )
131
+ ]
132
+ ),
133
+ sortCriteria=[
134
+ SortCriterion(
135
+ direction=SortDirection.DESC, propertyName="CreatedAt"
136
+ )
137
+ ],
138
+ )
139
+ )
140
+ audiences = []
141
+ for item in response.items:
142
+ audiences.append(
143
+ RapidataAudience(
144
+ id=item.id,
145
+ name=item.name,
146
+ filters=[
147
+ BackendFilterMapper.backend_filter_from_rapidata_filter(
148
+ filter
149
+ )
150
+ for filter in item.filters
151
+ ],
152
+ openapi_service=self._openapi_service,
153
+ )
154
+ )
155
+
156
+ return audiences
157
+
158
+ def __str__(self) -> str:
159
+ return "RapidataAudienceManager"
160
+
161
+ def __repr__(self) -> str:
162
+ return self.__str__()
@@ -1,12 +1,14 @@
1
1
  from typing import Literal
2
2
 
3
+ LevelOfDetail = Literal["debug", "low", "medium", "high", "very high"]
4
+
3
5
 
4
6
  class DetailMapper:
5
7
  @staticmethod
6
- def get_budget(
7
- level_of_detail: Literal["low", "medium", "high", "very high"]
8
- ) -> int:
9
- if level_of_detail == "low":
8
+ def get_budget(level_of_detail: LevelOfDetail) -> int:
9
+ if level_of_detail == "debug":
10
+ return 20
11
+ elif level_of_detail == "low":
10
12
  return 2_000
11
13
  elif level_of_detail == "medium":
12
14
  return 4_000
@@ -16,14 +18,14 @@ class DetailMapper:
16
18
  return 16_000
17
19
  else:
18
20
  raise ValueError(
19
- "Invalid level of detail. Must be one of: 'low', 'medium', 'high', 'very high'"
21
+ "Invalid level of detail. Must be one of: 'debug', 'low', 'medium', 'high', 'very high'"
20
22
  )
21
23
 
22
24
  @staticmethod
23
- def get_level_of_detail(
24
- response_budget: int,
25
- ) -> Literal["low", "medium", "high", "very high"]:
26
- if response_budget < 4_000:
25
+ def get_level_of_detail(response_budget: int) -> LevelOfDetail:
26
+ if response_budget <= 20:
27
+ return "debug"
28
+ elif response_budget < 4_000:
27
29
  return "low"
28
30
  elif response_budget < 8_000:
29
31
  return "medium"