rapidata 1.8.3__py3-none-any.whl → 2.44.4__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


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

Files changed (899) hide show
  1. rapidata/__init__.py +32 -16
  2. rapidata/api_client/__init__.py +83 -279
  3. rapidata/api_client/api/__init__.py +14 -4
  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 +926 -125
  8. rapidata/api_client/api/client_api.py +589 -42
  9. rapidata/api_client/api/coco_api.py +45 -45
  10. rapidata/api_client/api/compare_workflow_api.py +47 -45
  11. rapidata/api_client/api/{validation_api.py → customer_rapid_api.py} +367 -378
  12. rapidata/api_client/api/datapoint_api.py +69 -336
  13. rapidata/api_client/api/dataset_api.py +263 -872
  14. rapidata/api_client/api/evaluation_workflow_api.py +319 -0
  15. rapidata/api_client/api/feedback_api.py +306 -0
  16. rapidata/api_client/api/grouped_ranking_workflow_api.py +319 -0
  17. rapidata/api_client/api/identity_api.py +365 -120
  18. rapidata/api_client/api/leaderboard_api.py +2550 -0
  19. rapidata/api_client/api/newsletter_api.py +35 -34
  20. rapidata/api_client/api/order_api.py +1111 -787
  21. rapidata/api_client/api/participant_api.py +2181 -0
  22. rapidata/api_client/api/pipeline_api.py +156 -139
  23. rapidata/api_client/api/prompt_api.py +320 -0
  24. rapidata/api_client/api/rapid_api.py +1288 -189
  25. rapidata/api_client/api/rapidata_identity_api_api.py +5 -4
  26. rapidata/api_client/api/sample_api.py +300 -0
  27. rapidata/api_client/api/simple_workflow_api.py +47 -79
  28. rapidata/api_client/api/survey_api.py +304 -0
  29. rapidata/api_client/api/user_rapid_api.py +1389 -0
  30. rapidata/api_client/api/validation_set_api.py +3052 -0
  31. rapidata/api_client/api/workflow_api.py +410 -96
  32. rapidata/api_client/api_client.py +2 -2
  33. rapidata/api_client/configuration.py +16 -29
  34. rapidata/api_client/exceptions.py +2 -2
  35. rapidata/api_client/models/__init__.py +65 -260
  36. rapidata/api_client/models/ab_test_selection.py +122 -0
  37. rapidata/api_client/models/ab_test_selection_a_inner.py +240 -0
  38. rapidata/api_client/models/add_campaign_model.py +52 -11
  39. rapidata/api_client/models/add_campaign_model_user_filters_inner.py +224 -0
  40. rapidata/api_client/models/add_user_response_result.py +111 -0
  41. rapidata/api_client/models/add_user_response_result_validation_truth.py +258 -0
  42. rapidata/api_client/models/add_validation_rapid_model.py +61 -23
  43. rapidata/api_client/models/add_validation_rapid_model_asset.py +154 -0
  44. rapidata/api_client/models/add_validation_rapid_model_context_asset.py +160 -0
  45. rapidata/api_client/models/add_validation_rapid_model_metadata_inner.py +140 -0
  46. rapidata/api_client/models/add_validation_rapid_model_payload.py +30 -16
  47. rapidata/api_client/models/add_validation_rapid_model_truth.py +65 -17
  48. rapidata/api_client/models/add_validation_rapid_new_model.py +137 -0
  49. rapidata/api_client/models/add_validation_rapid_new_model_asset.py +182 -0
  50. rapidata/api_client/models/add_validation_rapid_new_model_truth.py +286 -0
  51. rapidata/api_client/models/add_validation_text_rapid_model.py +14 -9
  52. rapidata/api_client/models/age_group.py +5 -4
  53. rapidata/api_client/models/age_user_filter_model.py +2 -2
  54. rapidata/api_client/models/age_user_filter_model_age_group.py +41 -0
  55. rapidata/api_client/models/aggregated_orders_model.py +98 -0
  56. rapidata/api_client/models/aggregator_type.py +5 -2
  57. rapidata/api_client/models/and_filter.py +121 -0
  58. rapidata/api_client/models/and_filter_filters_inner.py +282 -0
  59. rapidata/api_client/models/and_user_filter_model.py +106 -0
  60. rapidata/api_client/models/and_user_filter_model_filters_inner.py +282 -0
  61. rapidata/api_client/models/are_rapids_active_result.py +87 -0
  62. rapidata/api_client/models/asset_metadata.py +106 -0
  63. rapidata/api_client/models/asset_metadata_asset.py +170 -0
  64. rapidata/api_client/models/asset_metadata_model.py +96 -0
  65. rapidata/api_client/models/asset_metadata_model_asset.py +170 -0
  66. rapidata/api_client/models/asset_type.py +40 -0
  67. rapidata/api_client/models/attach_category_rapid_blueprint.py +13 -3
  68. rapidata/api_client/models/attach_category_rapid_blueprint_category.py +89 -0
  69. rapidata/api_client/models/audience_status.py +38 -0
  70. rapidata/api_client/models/base_error.py +1 -4
  71. rapidata/api_client/models/benchmark_query_result.py +98 -0
  72. rapidata/api_client/models/benchmark_query_result_paged_result.py +105 -0
  73. rapidata/api_client/models/boost_leaderboard_model.py +89 -0
  74. rapidata/api_client/models/boost_mode.py +37 -0
  75. rapidata/api_client/models/boost_query_result.py +97 -0
  76. rapidata/api_client/models/boost_query_result_boost_mode.py +37 -0
  77. rapidata/api_client/models/boost_query_result_boost_status.py +39 -0
  78. rapidata/api_client/models/boost_status.py +39 -0
  79. rapidata/api_client/models/boosting_profile.py +89 -0
  80. rapidata/api_client/models/box_shape.py +4 -33
  81. rapidata/api_client/models/campaign_filter.py +98 -0
  82. rapidata/api_client/models/campaign_query_result.py +107 -0
  83. rapidata/api_client/models/campaign_query_result_paged_result.py +105 -0
  84. rapidata/api_client/models/campaign_status.py +4 -2
  85. rapidata/api_client/models/capped_selection.py +3 -3
  86. rapidata/api_client/models/change_boost_model.py +89 -0
  87. rapidata/api_client/models/classification_metadata.py +14 -5
  88. rapidata/api_client/models/classification_metadata_model.py +2 -4
  89. rapidata/api_client/models/classify_payload.py +14 -15
  90. rapidata/api_client/models/classify_payload_category.py +89 -0
  91. rapidata/api_client/models/client_model.py +181 -0
  92. rapidata/api_client/models/clients_query_result.py +2 -2
  93. rapidata/api_client/models/clone_order_model.py +6 -8
  94. rapidata/api_client/models/clone_order_result.py +9 -4
  95. rapidata/api_client/models/compare_match_status.py +39 -0
  96. rapidata/api_client/models/compare_rapid_blueprint.py +5 -3
  97. rapidata/api_client/models/compare_rapid_blueprint1.py +96 -0
  98. rapidata/api_client/models/compare_result.py +4 -4
  99. rapidata/api_client/models/compare_workflow_config.py +31 -22
  100. rapidata/api_client/models/compare_workflow_config_context_asset.py +174 -0
  101. rapidata/api_client/models/compare_workflow_config_metadata_value.py +296 -0
  102. rapidata/api_client/models/compare_workflow_config_model.py +32 -29
  103. rapidata/api_client/models/compare_workflow_config_model_pair_maker_config.py +126 -0
  104. rapidata/api_client/models/compare_workflow_config_pair_maker_config.py +126 -0
  105. rapidata/api_client/models/compare_workflow_model.py +59 -14
  106. rapidata/api_client/models/compare_workflow_model1.py +32 -19
  107. rapidata/api_client/models/compare_workflow_model1_pair_maker_information.py +126 -0
  108. rapidata/api_client/models/compare_workflow_model_context_asset.py +160 -0
  109. rapidata/api_client/models/compare_workflow_model_metadata_inner.py +154 -0
  110. rapidata/api_client/models/compare_workflow_model_pair_maker_config.py +126 -0
  111. rapidata/api_client/models/comparison_operator.py +41 -0
  112. rapidata/api_client/models/conditional_validation_selection.py +9 -5
  113. rapidata/api_client/models/conditional_validation_selection_validation_chance.py +103 -0
  114. rapidata/api_client/models/confidence_interval.py +89 -0
  115. rapidata/api_client/models/coordinate.py +2 -2
  116. rapidata/api_client/models/count_metadata.py +13 -4
  117. rapidata/api_client/models/count_metadata_model.py +2 -4
  118. rapidata/api_client/models/country_filter.py +98 -0
  119. rapidata/api_client/models/create_audience_request.py +99 -0
  120. rapidata/api_client/models/create_audience_result.py +87 -0
  121. rapidata/api_client/models/create_benchmark_model.py +87 -0
  122. rapidata/api_client/models/create_benchmark_participant_model.py +87 -0
  123. rapidata/api_client/models/create_benchmark_participant_result.py +89 -0
  124. rapidata/api_client/models/create_benchmark_prompt_result.py +87 -0
  125. rapidata/api_client/models/create_benchmark_result.py +87 -0
  126. rapidata/api_client/models/create_bridge_token_result.py +2 -2
  127. rapidata/api_client/models/create_client_model.py +6 -13
  128. rapidata/api_client/models/create_complex_order_model.py +9 -9
  129. rapidata/api_client/models/create_complex_order_result.py +6 -4
  130. rapidata/api_client/models/create_customer_client_result.py +89 -0
  131. rapidata/api_client/models/create_datapoint_from_files_model.py +102 -0
  132. rapidata/api_client/models/create_datapoint_from_files_model_metadata_inner.py +182 -0
  133. rapidata/api_client/models/create_datapoint_from_text_sources_model.py +109 -0
  134. rapidata/api_client/models/create_datapoint_from_urls_model.py +109 -0
  135. rapidata/api_client/models/create_datapoint_from_urls_model_metadata_inner.py +168 -0
  136. rapidata/api_client/models/create_datapoint_model.py +134 -0
  137. rapidata/api_client/models/create_datapoint_model_asset.py +154 -0
  138. rapidata/api_client/models/create_datapoint_model_context_asset.py +160 -0
  139. rapidata/api_client/models/create_datapoint_model_metadata_inner.py +154 -0
  140. rapidata/api_client/models/create_datapoint_result.py +87 -0
  141. rapidata/api_client/models/create_datapoints_from_s3_bucket_model.py +124 -0
  142. rapidata/api_client/models/create_demographic_rapid_model.py +45 -7
  143. rapidata/api_client/models/create_demographic_rapid_model_asset.py +160 -0
  144. rapidata/api_client/models/create_demographic_rapid_model_context_asset.py +160 -0
  145. rapidata/api_client/models/create_demographic_rapid_model_new.py +119 -0
  146. rapidata/api_client/models/create_empty_validation_set_result.py +2 -2
  147. rapidata/api_client/models/create_leaderboard_model.py +140 -0
  148. rapidata/api_client/models/create_leaderboard_participant_model.py +87 -0
  149. rapidata/api_client/models/create_leaderboard_participant_result.py +89 -0
  150. rapidata/api_client/models/create_leaderboard_result.py +99 -0
  151. rapidata/api_client/models/create_order_model.py +41 -52
  152. rapidata/api_client/models/create_order_model_referee.py +12 -12
  153. rapidata/api_client/models/create_order_model_user_filters_inner.py +83 -11
  154. rapidata/api_client/models/create_order_model_workflow.py +35 -21
  155. rapidata/api_client/models/create_order_result.py +6 -4
  156. rapidata/api_client/models/create_rapid_result.py +87 -0
  157. rapidata/api_client/models/create_sample_model.py +93 -0
  158. rapidata/api_client/models/create_sample_model_asset.py +154 -0
  159. rapidata/api_client/models/create_sample_model_obsolete.py +87 -0
  160. rapidata/api_client/models/create_simple_pipeline_model_pipeline_steps_inner.py +8 -22
  161. rapidata/api_client/models/create_unsupported_order_model.py +6 -6
  162. rapidata/api_client/models/create_validation_set_model.py +87 -0
  163. rapidata/api_client/models/custom_user_filter_model.py +98 -0
  164. rapidata/api_client/models/datapoint.py +12 -28
  165. rapidata/api_client/models/datapoint_asset.py +40 -40
  166. rapidata/api_client/models/datapoint_metadata_model.py +13 -6
  167. rapidata/api_client/models/datapoint_model_paged_result.py +105 -0
  168. rapidata/api_client/models/datapoint_state.py +38 -0
  169. rapidata/api_client/models/dataset_dataset_id_datapoints_post_request_metadata_inner.py +182 -0
  170. rapidata/api_client/models/demographic.py +89 -0
  171. rapidata/api_client/models/demographic_filter.py +100 -0
  172. rapidata/api_client/models/demographic_metadata_model.py +18 -9
  173. rapidata/api_client/models/dynamic_client_registration_request.py +160 -0
  174. rapidata/api_client/models/early_stopping_referee_model.py +3 -3
  175. rapidata/api_client/models/effort_capped_selection.py +106 -0
  176. rapidata/api_client/models/elo_config.py +91 -0
  177. rapidata/api_client/models/elo_config_model.py +91 -0
  178. rapidata/api_client/models/entity_tag_header_value.py +93 -0
  179. rapidata/api_client/models/evaluation_workflow_config.py +13 -3
  180. rapidata/api_client/models/evaluation_workflow_model.py +16 -6
  181. rapidata/api_client/models/evaluation_workflow_model1.py +115 -0
  182. rapidata/api_client/models/existing_asset_input.py +120 -0
  183. rapidata/api_client/models/existing_asset_input_metadata_value.py +126 -0
  184. rapidata/api_client/models/feature_flag.py +2 -2
  185. rapidata/api_client/models/feature_flag_model.py +6 -6
  186. rapidata/api_client/models/feedback_model.py +7 -7
  187. rapidata/api_client/models/file_asset.py +15 -12
  188. rapidata/api_client/models/file_asset_input.py +104 -0
  189. rapidata/api_client/models/file_asset_input1.py +104 -0
  190. rapidata/api_client/models/file_asset_input1_file.py +168 -0
  191. rapidata/api_client/models/file_asset_input2.py +104 -0
  192. rapidata/api_client/models/file_asset_input3.py +104 -0
  193. rapidata/api_client/models/file_asset_input_file.py +168 -0
  194. rapidata/api_client/models/file_asset_metadata_value.py +252 -0
  195. rapidata/api_client/models/file_asset_model.py +18 -13
  196. rapidata/api_client/models/file_asset_model_metadata_inner.py +8 -22
  197. rapidata/api_client/models/file_asset_model_metadata_value.py +252 -0
  198. rapidata/api_client/models/file_stream_result.py +122 -0
  199. rapidata/api_client/models/file_type.py +39 -0
  200. rapidata/api_client/models/file_type_metadata.py +110 -0
  201. rapidata/api_client/models/file_type_metadata_model.py +97 -0
  202. rapidata/api_client/models/filter.py +7 -25
  203. rapidata/api_client/models/filter_operator.py +3 -2
  204. rapidata/api_client/models/fork_benchmark_result.py +87 -0
  205. rapidata/api_client/models/form_file_wrapper.py +135 -0
  206. rapidata/api_client/models/free_text_payload.py +10 -3
  207. rapidata/api_client/models/free_text_rapid_blueprint.py +10 -3
  208. rapidata/api_client/models/gender_user_filter_model.py +2 -2
  209. rapidata/api_client/models/gender_user_filter_model_gender.py +38 -0
  210. rapidata/api_client/models/get_asset_metadata_result.py +100 -0
  211. rapidata/api_client/models/get_audience_by_id_result.py +111 -0
  212. rapidata/api_client/models/get_available_validation_sets_result.py +2 -2
  213. rapidata/api_client/models/get_benchmark_by_id_query.py +96 -0
  214. rapidata/api_client/models/get_benchmark_by_id_query_result.py +94 -0
  215. rapidata/api_client/models/get_benchmark_by_id_query_result_paged_result.py +105 -0
  216. rapidata/api_client/models/get_benchmark_by_id_result.py +96 -0
  217. rapidata/api_client/models/get_boost_result.py +97 -0
  218. rapidata/api_client/models/get_boost_result_boost_mode.py +37 -0
  219. rapidata/api_client/models/get_boost_result_boost_status.py +39 -0
  220. rapidata/api_client/models/get_classify_workflow_result_overview_result.py +144 -0
  221. rapidata/api_client/models/get_compare_ab_summary_result.py +87 -0
  222. rapidata/api_client/models/get_compare_workflow_results_model.py +106 -0
  223. rapidata/api_client/models/get_compare_workflow_results_result.py +95 -0
  224. rapidata/api_client/models/get_compare_workflow_results_result_asset.py +170 -0
  225. rapidata/api_client/models/get_compare_workflow_results_result_paged_result.py +105 -0
  226. rapidata/api_client/models/get_datapoint_by_id_result.py +103 -0
  227. rapidata/api_client/models/get_datapoint_by_id_result_asset.py +170 -0
  228. rapidata/api_client/models/get_dataset_by_id_result.py +2 -2
  229. rapidata/api_client/models/get_dataset_progress_result.py +93 -0
  230. rapidata/api_client/models/get_evaluation_workflow_results_model.py +119 -0
  231. rapidata/api_client/models/get_failed_datapoints_result.py +95 -0
  232. rapidata/api_client/models/get_failed_datapoints_result_datapoint.py +100 -0
  233. rapidata/api_client/models/get_file_metadata_result.py +100 -0
  234. rapidata/api_client/models/get_grouped_ranking_workflow_results_model.py +106 -0
  235. rapidata/api_client/models/get_grouped_ranking_workflow_results_result.py +97 -0
  236. rapidata/api_client/models/get_grouped_ranking_workflow_results_result_paged_result.py +105 -0
  237. rapidata/api_client/models/get_leaderboard_by_id_result.py +135 -0
  238. rapidata/api_client/models/get_order_by_id_result.py +12 -5
  239. rapidata/api_client/models/get_participant_by_id_result.py +91 -0
  240. rapidata/api_client/models/get_pipeline_by_id_result.py +18 -8
  241. rapidata/api_client/models/get_public_orders_result.py +2 -2
  242. rapidata/api_client/models/get_public_responses_result.py +95 -0
  243. rapidata/api_client/models/get_public_responses_result_response.py +112 -0
  244. rapidata/api_client/models/get_rapid_responses_result.py +106 -0
  245. rapidata/api_client/models/get_recommended_validation_set_result.py +95 -0
  246. rapidata/api_client/models/get_responses_for_rapid_result.py +106 -0
  247. rapidata/api_client/models/get_responses_for_rapid_result_response.py +103 -0
  248. rapidata/api_client/models/get_responses_for_rapid_result_response_result.py +266 -0
  249. rapidata/api_client/models/get_responses_result.py +95 -0
  250. rapidata/api_client/models/get_responses_result_response.py +103 -0
  251. rapidata/api_client/models/get_sample_by_id_result.py +125 -0
  252. rapidata/api_client/models/get_simple_workflow_results_model.py +119 -0
  253. rapidata/api_client/models/get_simple_workflow_results_result.py +118 -0
  254. rapidata/api_client/models/get_simple_workflow_results_result_paged_result.py +105 -0
  255. rapidata/api_client/models/get_standing_by_id_result.py +96 -0
  256. rapidata/api_client/models/get_validation_rapids_query.py +123 -0
  257. rapidata/api_client/models/get_validation_rapids_query_paged_result.py +105 -0
  258. rapidata/api_client/models/get_validation_rapids_result.py +150 -0
  259. rapidata/api_client/models/get_validation_rapids_result_asset.py +174 -0
  260. rapidata/api_client/models/get_validation_rapids_result_paged_result.py +105 -0
  261. rapidata/api_client/models/get_validation_rapids_result_payload.py +252 -0
  262. rapidata/api_client/models/get_validation_rapids_result_truth.py +286 -0
  263. rapidata/api_client/models/get_validation_set_by_id_result.py +10 -4
  264. rapidata/api_client/models/get_workflow_by_id_result.py +5 -5
  265. rapidata/api_client/models/get_workflow_by_id_result_workflow.py +37 -9
  266. rapidata/api_client/models/get_workflow_progress_result.py +5 -11
  267. rapidata/api_client/models/get_workflow_results_result.py +129 -0
  268. rapidata/api_client/models/get_workflow_results_result_paged_result.py +105 -0
  269. rapidata/api_client/models/get_workflow_results_result_response.py +103 -0
  270. rapidata/api_client/models/google_one_tap_login_model.py +87 -0
  271. rapidata/api_client/models/grouped_ranking_workflow_config.py +155 -0
  272. rapidata/api_client/models/grouped_ranking_workflow_config_context_assets_value.py +170 -0
  273. rapidata/api_client/models/grouped_ranking_workflow_model.py +147 -0
  274. rapidata/api_client/models/grouped_ranking_workflow_model1.py +121 -0
  275. rapidata/api_client/models/i_artifact_model.py +182 -0
  276. rapidata/api_client/models/i_artifact_model_campaign_artifact_model.py +98 -0
  277. rapidata/api_client/models/i_artifact_model_dataset_artifact_model.py +98 -0
  278. rapidata/api_client/models/i_artifact_model_file_artifact_model.py +98 -0
  279. rapidata/api_client/models/i_artifact_model_workflow_artifact_model.py +98 -0
  280. rapidata/api_client/models/i_artifact_model_workflow_config_artifact_model.py +102 -0
  281. rapidata/api_client/models/i_asset.py +170 -0
  282. rapidata/api_client/models/i_asset_file_asset.py +111 -0
  283. rapidata/api_client/models/i_asset_input.py +156 -0
  284. rapidata/api_client/models/i_asset_input_existing_asset_input.py +118 -0
  285. rapidata/api_client/models/i_asset_input_multi_asset_input.py +128 -0
  286. rapidata/api_client/models/i_asset_input_text_asset_input.py +118 -0
  287. rapidata/api_client/models/i_asset_model.py +170 -0
  288. rapidata/api_client/models/i_asset_model_file_asset_model.py +113 -0
  289. rapidata/api_client/models/i_asset_model_multi_asset_model.py +123 -0
  290. rapidata/api_client/models/i_asset_model_null_asset_model.py +111 -0
  291. rapidata/api_client/models/i_asset_model_text_asset_model.py +113 -0
  292. rapidata/api_client/models/i_asset_multi_asset.py +121 -0
  293. rapidata/api_client/models/i_asset_null_asset.py +109 -0
  294. rapidata/api_client/models/i_asset_text_asset.py +111 -0
  295. rapidata/api_client/models/i_campaign_filter.py +282 -0
  296. rapidata/api_client/models/i_campaign_filter_and_filter.py +117 -0
  297. rapidata/api_client/models/i_campaign_filter_campaign_filter.py +98 -0
  298. rapidata/api_client/models/i_campaign_filter_country_filter.py +98 -0
  299. rapidata/api_client/models/i_campaign_filter_demographic_filter.py +100 -0
  300. rapidata/api_client/models/i_campaign_filter_language_filter.py +98 -0
  301. rapidata/api_client/models/i_campaign_filter_new_user_filter.py +96 -0
  302. rapidata/api_client/models/i_campaign_filter_not_filter.py +113 -0
  303. rapidata/api_client/models/i_campaign_filter_or_filter.py +117 -0
  304. rapidata/api_client/models/i_campaign_filter_response_count_filter.py +103 -0
  305. rapidata/api_client/models/i_campaign_filter_user_action_restriction_filter.py +106 -0
  306. rapidata/api_client/models/i_campaign_filter_user_score_filter.py +102 -0
  307. rapidata/api_client/models/i_campaign_filter_user_state_filter.py +106 -0
  308. rapidata/api_client/models/i_dataset_metadata_input.py +154 -0
  309. rapidata/api_client/models/i_dataset_metadata_input_prompt_asset_metadata_input.py +100 -0
  310. rapidata/api_client/models/i_dataset_metadata_input_prompt_metadata_input.py +96 -0
  311. rapidata/api_client/models/i_dataset_metadata_input_transcription_metadata_input.py +96 -0
  312. rapidata/api_client/models/i_dataset_model.py +126 -0
  313. rapidata/api_client/models/i_dataset_model_clone_dataset_model.py +98 -0
  314. rapidata/api_client/models/i_metadata.py +252 -0
  315. rapidata/api_client/models/i_metadata_classification_metadata.py +109 -0
  316. rapidata/api_client/models/i_metadata_count_metadata.py +109 -0
  317. rapidata/api_client/models/i_metadata_file_type_metadata.py +110 -0
  318. rapidata/api_client/models/i_metadata_image_dimension_metadata.py +111 -0
  319. rapidata/api_client/models/i_metadata_input.py +126 -0
  320. rapidata/api_client/models/i_metadata_input_text_metadata_input.py +111 -0
  321. rapidata/api_client/models/i_metadata_location_metadata.py +111 -0
  322. rapidata/api_client/models/i_metadata_model.py +252 -0
  323. rapidata/api_client/models/i_metadata_model_classification_metadata_model.py +96 -0
  324. rapidata/api_client/models/i_metadata_model_count_metadata_model.py +96 -0
  325. rapidata/api_client/models/i_metadata_model_file_type_metadata_model.py +97 -0
  326. rapidata/api_client/models/i_metadata_model_image_dimension_metadata_model.py +98 -0
  327. rapidata/api_client/models/i_metadata_model_location_metadata_model.py +98 -0
  328. rapidata/api_client/models/i_metadata_model_original_filename_metadata_model.py +96 -0
  329. rapidata/api_client/models/i_metadata_model_source_url_metadata_model.py +96 -0
  330. rapidata/api_client/models/i_metadata_model_streams_metadata_model.py +100 -0
  331. rapidata/api_client/models/i_metadata_model_text_metadata_model.py +101 -0
  332. rapidata/api_client/models/i_metadata_model_video_duration_metadata_model.py +97 -0
  333. rapidata/api_client/models/i_metadata_original_filename_metadata.py +109 -0
  334. rapidata/api_client/models/i_metadata_source_url_metadata.py +109 -0
  335. rapidata/api_client/models/i_metadata_streams_metadata.py +113 -0
  336. rapidata/api_client/models/i_metadata_text_metadata.py +114 -0
  337. rapidata/api_client/models/i_metadata_video_duration_metadata.py +110 -0
  338. rapidata/api_client/models/i_order_workflow_model.py +168 -0
  339. rapidata/api_client/models/i_order_workflow_model_compare_workflow_model.py +146 -0
  340. rapidata/api_client/models/i_order_workflow_model_evaluation_workflow_model.py +108 -0
  341. rapidata/api_client/models/i_order_workflow_model_grouped_ranking_workflow_model.py +147 -0
  342. rapidata/api_client/models/i_order_workflow_model_simple_workflow_model.py +110 -0
  343. rapidata/api_client/models/i_pair_maker_config.py +126 -0
  344. rapidata/api_client/models/i_pair_maker_config_model.py +126 -0
  345. rapidata/api_client/models/i_pair_maker_config_model_online_pair_maker_config_model.py +98 -0
  346. rapidata/api_client/models/i_pair_maker_config_online_pair_maker_config.py +98 -0
  347. rapidata/api_client/models/i_pair_maker_information.py +126 -0
  348. rapidata/api_client/models/i_pair_maker_information_online_pair_maker_information.py +100 -0
  349. rapidata/api_client/models/i_pipeline_artifact_model.py +126 -0
  350. rapidata/api_client/models/i_pipeline_artifact_model_create_dataset_artifact_model.py +102 -0
  351. rapidata/api_client/models/i_pipeline_model.py +126 -0
  352. rapidata/api_client/models/i_pipeline_model_create_simple_pipeline_model.py +116 -0
  353. rapidata/api_client/models/i_pipeline_step_model.py +168 -0
  354. rapidata/api_client/models/i_pipeline_step_model_dataset_evaluation_step_model.py +102 -0
  355. rapidata/api_client/models/i_pipeline_step_model_send_completion_mail_step_model.py +98 -0
  356. rapidata/api_client/models/i_pipeline_step_model_workflow_aggregation_step_model.py +103 -0
  357. rapidata/api_client/models/i_pipeline_step_model_workflow_labeling_step_model.py +96 -0
  358. rapidata/api_client/models/i_rapid_blueprint.py +252 -0
  359. rapidata/api_client/models/i_rapid_blueprint_attach_category_rapid_blueprint.py +108 -0
  360. rapidata/api_client/models/i_rapid_blueprint_bounding_box_rapid_blueprint.py +96 -0
  361. rapidata/api_client/models/i_rapid_blueprint_compare_rapid_blueprint.py +98 -0
  362. rapidata/api_client/models/i_rapid_blueprint_free_text_rapid_blueprint.py +103 -0
  363. rapidata/api_client/models/i_rapid_blueprint_line_rapid_blueprint.py +96 -0
  364. rapidata/api_client/models/i_rapid_blueprint_locate_rapid_blueprint.py +96 -0
  365. rapidata/api_client/models/i_rapid_blueprint_named_entity_rapid_blueprint.py +98 -0
  366. rapidata/api_client/models/i_rapid_blueprint_polygon_rapid_blueprint.py +96 -0
  367. rapidata/api_client/models/i_rapid_blueprint_scrub_rapid_blueprint.py +96 -0
  368. rapidata/api_client/models/i_rapid_blueprint_transcription_rapid_blueprint.py +96 -0
  369. rapidata/api_client/models/i_rapid_payload.py +252 -0
  370. rapidata/api_client/models/i_rapid_payload_bounding_box_payload.py +96 -0
  371. rapidata/api_client/models/i_rapid_payload_classify_payload.py +106 -0
  372. rapidata/api_client/models/i_rapid_payload_compare_payload.py +96 -0
  373. rapidata/api_client/models/i_rapid_payload_free_text_payload.py +103 -0
  374. rapidata/api_client/models/i_rapid_payload_line_payload.py +96 -0
  375. rapidata/api_client/models/i_rapid_payload_locate_payload.py +96 -0
  376. rapidata/api_client/models/i_rapid_payload_named_entity_payload.py +98 -0
  377. rapidata/api_client/models/i_rapid_payload_polygon_payload.py +96 -0
  378. rapidata/api_client/models/i_rapid_payload_scrub_payload.py +96 -0
  379. rapidata/api_client/models/i_rapid_payload_transcription_payload.py +106 -0
  380. rapidata/api_client/models/i_rapid_result.py +266 -0
  381. rapidata/api_client/models/i_rapid_result_attach_category_result.py +98 -0
  382. rapidata/api_client/models/i_rapid_result_bounding_box_result.py +106 -0
  383. rapidata/api_client/models/i_rapid_result_compare_result.py +98 -0
  384. rapidata/api_client/models/i_rapid_result_free_text_result.py +98 -0
  385. rapidata/api_client/models/i_rapid_result_line_result.py +106 -0
  386. rapidata/api_client/models/i_rapid_result_locate_result.py +106 -0
  387. rapidata/api_client/models/i_rapid_result_named_entity_result.py +106 -0
  388. rapidata/api_client/models/i_rapid_result_polygon_result.py +106 -0
  389. rapidata/api_client/models/i_rapid_result_scrub_result.py +98 -0
  390. rapidata/api_client/models/i_rapid_result_skip_result.py +96 -0
  391. rapidata/api_client/models/i_rapid_result_transcription_result.py +106 -0
  392. rapidata/api_client/models/i_referee_config.py +154 -0
  393. rapidata/api_client/models/i_referee_config_naive_referee_config.py +96 -0
  394. rapidata/api_client/models/i_referee_config_never_ending_referee_config.py +94 -0
  395. rapidata/api_client/models/i_referee_config_probabilistic_attach_category_referee_config.py +98 -0
  396. rapidata/api_client/models/i_referee_info.py +154 -0
  397. rapidata/api_client/models/i_referee_info_naive_referee_info.py +96 -0
  398. rapidata/api_client/models/i_referee_info_never_ending_referee_info.py +94 -0
  399. rapidata/api_client/models/i_referee_info_probabilistic_attach_category_referee_info.py +98 -0
  400. rapidata/api_client/models/i_referee_model.py +140 -0
  401. rapidata/api_client/models/i_referee_model_early_stopping_referee_model.py +98 -0
  402. rapidata/api_client/models/i_referee_model_naive_referee_model.py +96 -0
  403. rapidata/api_client/models/i_selection.py +240 -0
  404. rapidata/api_client/models/i_selection_ab_test_selection.py +122 -0
  405. rapidata/api_client/models/i_selection_capped_selection.py +108 -0
  406. rapidata/api_client/models/i_selection_conditional_validation_selection.py +110 -0
  407. rapidata/api_client/models/i_selection_demographic_selection.py +98 -0
  408. rapidata/api_client/models/i_selection_effort_capped_selection.py +101 -0
  409. rapidata/api_client/models/i_selection_labeling_selection.py +103 -0
  410. rapidata/api_client/models/i_selection_shuffling_selection.py +106 -0
  411. rapidata/api_client/models/i_selection_static_selection.py +96 -0
  412. rapidata/api_client/models/i_selection_validation_selection.py +98 -0
  413. rapidata/api_client/models/i_user_filter_model.py +282 -0
  414. rapidata/api_client/models/i_user_filter_model_age_user_filter_model.py +104 -0
  415. rapidata/api_client/models/i_user_filter_model_and_user_filter_model.py +106 -0
  416. rapidata/api_client/models/i_user_filter_model_campaign_user_filter_model.py +96 -0
  417. rapidata/api_client/models/i_user_filter_model_country_user_filter_model.py +96 -0
  418. rapidata/api_client/models/i_user_filter_model_custom_user_filter_model.py +98 -0
  419. rapidata/api_client/models/i_user_filter_model_gender_user_filter_model.py +104 -0
  420. rapidata/api_client/models/i_user_filter_model_language_user_filter_model.py +96 -0
  421. rapidata/api_client/models/i_user_filter_model_new_user_filter_model.py +94 -0
  422. rapidata/api_client/models/i_user_filter_model_not_user_filter_model.py +102 -0
  423. rapidata/api_client/models/i_user_filter_model_or_user_filter_model.py +106 -0
  424. rapidata/api_client/models/i_user_filter_model_response_count_user_filter_model.py +101 -0
  425. rapidata/api_client/models/i_user_filter_model_user_score_user_filter_model.py +105 -0
  426. rapidata/api_client/models/i_validation_metadata_input.py +140 -0
  427. rapidata/api_client/models/i_validation_metadata_input_prompt_asset_metadata_input.py +100 -0
  428. rapidata/api_client/models/i_validation_metadata_input_prompt_metadata_input.py +96 -0
  429. rapidata/api_client/models/i_validation_truth.py +280 -0
  430. rapidata/api_client/models/i_validation_truth_attach_category_truth.py +96 -0
  431. rapidata/api_client/models/i_validation_truth_bounding_box_truth.py +102 -0
  432. rapidata/api_client/models/i_validation_truth_compare_truth.py +96 -0
  433. rapidata/api_client/models/i_validation_truth_empty_validation_truth.py +94 -0
  434. rapidata/api_client/models/i_validation_truth_line_truth.py +94 -0
  435. rapidata/api_client/models/i_validation_truth_locate_box_truth.py +104 -0
  436. rapidata/api_client/models/i_validation_truth_multi_compare_truth.py +96 -0
  437. rapidata/api_client/models/i_validation_truth_named_entity_truth.py +104 -0
  438. rapidata/api_client/models/i_validation_truth_polygon_truth.py +94 -0
  439. rapidata/api_client/models/i_validation_truth_scrub_truth.py +104 -0
  440. rapidata/api_client/models/i_validation_truth_skip_truth.py +94 -0
  441. rapidata/api_client/models/i_validation_truth_transcription_truth.py +115 -0
  442. rapidata/api_client/models/i_workflow_config.py +168 -0
  443. rapidata/api_client/models/i_workflow_config_compare_workflow_config.py +142 -0
  444. rapidata/api_client/models/i_workflow_config_evaluation_workflow_config.py +114 -0
  445. rapidata/api_client/models/i_workflow_config_grouped_ranking_workflow_config.py +155 -0
  446. rapidata/api_client/models/i_workflow_config_simple_workflow_config.py +116 -0
  447. rapidata/api_client/models/i_workflow_model.py +168 -0
  448. rapidata/api_client/models/i_workflow_model_compare_workflow_model.py +145 -0
  449. rapidata/api_client/models/i_workflow_model_evaluation_workflow_model.py +115 -0
  450. rapidata/api_client/models/i_workflow_model_grouped_ranking_workflow_model.py +121 -0
  451. rapidata/api_client/models/i_workflow_model_simple_workflow_model.py +119 -0
  452. rapidata/api_client/models/identity_read_bridge_token_get202_response.py +140 -0
  453. rapidata/api_client/models/image_dimension_metadata.py +13 -4
  454. rapidata/api_client/models/image_dimension_metadata_model.py +2 -4
  455. rapidata/api_client/models/inquire_file_metadata_result.py +100 -0
  456. rapidata/api_client/models/inspect_report_result.py +92 -0
  457. rapidata/api_client/models/json_web_key.py +224 -0
  458. rapidata/api_client/models/json_web_key_set.py +95 -0
  459. rapidata/api_client/models/labeling_selection.py +21 -4
  460. rapidata/api_client/models/language_filter.py +98 -0
  461. rapidata/api_client/models/leaderboard_query_result.py +135 -0
  462. rapidata/api_client/models/leaderboard_query_result_paged_result.py +105 -0
  463. rapidata/api_client/models/leaderboards_query_result.py +135 -0
  464. rapidata/api_client/models/line_result.py +3 -3
  465. rapidata/api_client/models/line_result_line.py +97 -0
  466. rapidata/api_client/models/line_result_line_point.py +89 -0
  467. rapidata/api_client/models/local_file_wrapper.py +120 -0
  468. rapidata/api_client/models/locate_coordinate.py +4 -13
  469. rapidata/api_client/models/location_metadata.py +14 -5
  470. rapidata/api_client/models/location_metadata_model.py +2 -4
  471. rapidata/api_client/models/logic_operator.py +3 -2
  472. rapidata/api_client/models/metadata_i_order_metadata_input.py +154 -0
  473. rapidata/api_client/models/metadata_i_order_metadata_input_metadata_prompt_asset_metadata_input.py +100 -0
  474. rapidata/api_client/models/metadata_i_order_metadata_input_metadata_prompt_metadata_input.py +96 -0
  475. rapidata/api_client/models/metadata_i_order_metadata_input_metadata_transcription_metadata_input.py +96 -0
  476. rapidata/api_client/models/metadata_prompt_asset_metadata_input.py +100 -0
  477. rapidata/api_client/models/metadata_prompt_metadata_input.py +96 -0
  478. rapidata/api_client/models/metadata_transcription_metadata_input.py +96 -0
  479. rapidata/api_client/models/metadata_visibilities.py +1 -0
  480. rapidata/api_client/models/multi_asset.py +17 -12
  481. rapidata/api_client/models/multi_asset_assets_inner.py +170 -0
  482. rapidata/api_client/models/multi_asset_input.py +130 -0
  483. rapidata/api_client/models/multi_asset_input1.py +110 -0
  484. rapidata/api_client/models/multi_asset_input1_assets_inner.py +198 -0
  485. rapidata/api_client/models/multi_asset_input2.py +110 -0
  486. rapidata/api_client/models/multi_asset_input3.py +110 -0
  487. rapidata/api_client/models/multi_asset_input3_assets_inner.py +198 -0
  488. rapidata/api_client/models/multi_asset_input_assets_inner.py +156 -0
  489. rapidata/api_client/models/multi_asset_model.py +21 -16
  490. rapidata/api_client/models/multi_asset_model2.py +3 -3
  491. rapidata/api_client/models/multi_compare_truth.py +96 -0
  492. rapidata/api_client/models/naive_referee_info.py +96 -0
  493. rapidata/api_client/models/naive_referee_model.py +2 -2
  494. rapidata/api_client/models/named_classification.py +4 -13
  495. rapidata/api_client/models/never_ending_referee_info.py +94 -0
  496. rapidata/api_client/models/new_user_filter.py +96 -0
  497. rapidata/api_client/models/new_user_filter_model.py +94 -0
  498. rapidata/api_client/models/new_user_filter_model1.py +94 -0
  499. rapidata/api_client/models/newsletter_model.py +6 -6
  500. rapidata/api_client/models/not_available_yet_result.py +87 -0
  501. rapidata/api_client/models/not_filter.py +117 -0
  502. rapidata/api_client/models/not_user_filter_model.py +102 -0
  503. rapidata/api_client/models/null_asset.py +14 -9
  504. rapidata/api_client/models/null_asset_model.py +18 -13
  505. rapidata/api_client/models/online_pair_maker_config.py +98 -0
  506. rapidata/api_client/models/online_pair_maker_config_model.py +98 -0
  507. rapidata/api_client/models/online_pair_maker_information.py +100 -0
  508. rapidata/api_client/models/or_filter.py +121 -0
  509. rapidata/api_client/models/or_user_filter_model.py +106 -0
  510. rapidata/api_client/models/order_model.py +16 -13
  511. rapidata/api_client/models/order_state.py +3 -2
  512. rapidata/api_client/models/original_filename_metadata.py +14 -5
  513. rapidata/api_client/models/original_filename_metadata_model.py +2 -4
  514. rapidata/api_client/models/page_info.py +2 -7
  515. rapidata/api_client/models/paged_result_aggregated_orders_model.py +105 -0
  516. rapidata/api_client/models/paged_result_benchmark_query_result.py +105 -0
  517. rapidata/api_client/models/paged_result_campaign_query_result.py +105 -0
  518. rapidata/api_client/models/paged_result_clients_query_result.py +105 -0
  519. rapidata/api_client/models/paged_result_datapoint_model.py +105 -0
  520. rapidata/api_client/models/paged_result_get_compare_workflow_results_result.py +105 -0
  521. rapidata/api_client/models/paged_result_get_grouped_ranking_workflow_results_result.py +105 -0
  522. rapidata/api_client/models/paged_result_get_validation_rapids_result.py +105 -0
  523. rapidata/api_client/models/paged_result_get_workflow_results_result.py +105 -0
  524. rapidata/api_client/models/paged_result_i_workflow_model.py +105 -0
  525. rapidata/api_client/models/paged_result_leaderboard_query_result.py +105 -0
  526. rapidata/api_client/models/paged_result_leaderboards_query_result.py +105 -0
  527. rapidata/api_client/models/paged_result_of_aggregated_orders_model.py +103 -0
  528. rapidata/api_client/models/paged_result_of_benchmark_query_result.py +103 -0
  529. rapidata/api_client/models/paged_result_of_campaign_query_result.py +103 -0
  530. rapidata/api_client/models/paged_result_of_clients_query_result.py +103 -0
  531. rapidata/api_client/models/paged_result_of_get_compare_workflow_results_result.py +103 -0
  532. rapidata/api_client/models/paged_result_of_get_grouped_ranking_workflow_results_result.py +103 -0
  533. rapidata/api_client/models/paged_result_of_get_validation_rapids_result.py +103 -0
  534. rapidata/api_client/models/paged_result_of_get_workflow_results_result.py +103 -0
  535. rapidata/api_client/models/paged_result_of_i_workflow_model.py +103 -0
  536. rapidata/api_client/models/paged_result_of_leaderboards_query_result.py +103 -0
  537. rapidata/api_client/models/paged_result_of_order_model.py +103 -0
  538. rapidata/api_client/models/paged_result_of_participant_by_benchmark.py +103 -0
  539. rapidata/api_client/models/paged_result_of_prompt_by_benchmark_result.py +103 -0
  540. rapidata/api_client/models/paged_result_of_query_audiences_result.py +103 -0
  541. rapidata/api_client/models/paged_result_of_query_datapoints_by_dataset_id_result.py +103 -0
  542. rapidata/api_client/models/paged_result_of_query_validation_rapid_eligibility_result.py +103 -0
  543. rapidata/api_client/models/paged_result_of_rapid_model.py +103 -0
  544. rapidata/api_client/models/paged_result_of_runs_by_leaderboard_result.py +103 -0
  545. rapidata/api_client/models/paged_result_of_sample_by_identifier.py +103 -0
  546. rapidata/api_client/models/paged_result_of_sample_by_participant.py +103 -0
  547. rapidata/api_client/models/paged_result_of_standing_by_leaderboard.py +103 -0
  548. rapidata/api_client/models/paged_result_of_validation_set_model.py +103 -0
  549. rapidata/api_client/models/paged_result_order_model.py +105 -0
  550. rapidata/api_client/models/paged_result_participant_by_benchmark.py +105 -0
  551. rapidata/api_client/models/paged_result_potential_validation_rapid.py +105 -0
  552. rapidata/api_client/models/paged_result_prompt_by_benchmark_result.py +105 -0
  553. rapidata/api_client/models/paged_result_query_audiences_result.py +105 -0
  554. rapidata/api_client/models/paged_result_query_datapoints_by_dataset_id_result.py +105 -0
  555. rapidata/api_client/models/paged_result_query_validation_rapid_eligibility_result.py +105 -0
  556. rapidata/api_client/models/paged_result_rapid_model.py +105 -0
  557. rapidata/api_client/models/paged_result_runs_by_leaderboard_result.py +105 -0
  558. rapidata/api_client/models/paged_result_sample_by_identifier.py +105 -0
  559. rapidata/api_client/models/paged_result_sample_by_participant.py +105 -0
  560. rapidata/api_client/models/paged_result_standing_by_leaderboard.py +105 -0
  561. rapidata/api_client/models/paged_result_validation_set_model.py +105 -0
  562. rapidata/api_client/models/participant_by_benchmark.py +94 -0
  563. rapidata/api_client/models/participant_by_benchmark_paged_result.py +105 -0
  564. rapidata/api_client/models/participant_by_leaderboard.py +113 -0
  565. rapidata/api_client/models/participant_by_leaderboard_paged_result.py +105 -0
  566. rapidata/api_client/models/participant_status.py +38 -0
  567. rapidata/api_client/models/pipeline_id_workflow_artifact_id_put_request.py +140 -0
  568. rapidata/api_client/models/pipeline_id_workflow_config_put_request.py +140 -0
  569. rapidata/api_client/models/pipeline_id_workflow_put_request.py +140 -0
  570. rapidata/api_client/models/polygon_result.py +3 -3
  571. rapidata/api_client/models/polygon_result_coordinate.py +89 -0
  572. rapidata/api_client/models/polygon_result_shape.py +95 -0
  573. rapidata/api_client/models/potential_validation_rapid.py +103 -0
  574. rapidata/api_client/models/potential_validation_rapid_paged_result.py +105 -0
  575. rapidata/api_client/models/potential_validation_rapid_truth.py +280 -0
  576. rapidata/api_client/models/pre_arranged_pair_maker_config.py +100 -0
  577. rapidata/api_client/models/pre_arranged_pair_maker_config_model.py +96 -0
  578. rapidata/api_client/models/pre_arranged_pair_maker_information.py +102 -0
  579. rapidata/api_client/models/preliminary_download_model.py +87 -0
  580. rapidata/api_client/models/preliminary_download_result.py +87 -0
  581. rapidata/api_client/models/preview_order_model.py +87 -0
  582. rapidata/api_client/models/probabilistic_attach_category_referee_info.py +98 -0
  583. rapidata/api_client/models/problem_details.py +2 -20
  584. rapidata/api_client/models/prompt_asset_metadata_input.py +100 -0
  585. rapidata/api_client/models/prompt_asset_metadata_input_asset.py +154 -0
  586. rapidata/api_client/models/prompt_by_benchmark_result.py +112 -0
  587. rapidata/api_client/models/prompt_by_benchmark_result_paged_result.py +105 -0
  588. rapidata/api_client/models/prompt_by_leaderboard_result.py +90 -0
  589. rapidata/api_client/models/prompt_by_leaderboard_result_paged_result.py +105 -0
  590. rapidata/api_client/models/prompt_metadata.py +13 -4
  591. rapidata/api_client/models/prompt_metadata_input.py +4 -6
  592. rapidata/api_client/models/prompt_metadata_model.py +2 -4
  593. rapidata/api_client/models/prompt_type.py +38 -0
  594. rapidata/api_client/models/proxy_file_wrapper.py +129 -0
  595. rapidata/api_client/models/public_order_model.py +2 -2
  596. rapidata/api_client/models/public_rapid_response.py +112 -0
  597. rapidata/api_client/models/query_audiences_result.py +111 -0
  598. rapidata/api_client/models/query_datapoints_by_dataset_id_result.py +95 -0
  599. rapidata/api_client/models/query_model.py +10 -5
  600. rapidata/api_client/models/query_validation_model.py +97 -0
  601. rapidata/api_client/models/query_validation_rapid_eligibility_model_query_validation_model.py +107 -0
  602. rapidata/api_client/models/query_validation_rapid_eligibility_result.py +103 -0
  603. rapidata/api_client/models/query_validation_rapid_eligibility_result_truth.py +280 -0
  604. rapidata/api_client/models/query_validation_rapids_result.py +50 -5
  605. rapidata/api_client/models/query_validation_rapids_result_asset.py +40 -40
  606. rapidata/api_client/models/query_validation_rapids_result_payload.py +252 -0
  607. rapidata/api_client/models/query_validation_rapids_result_truth.py +258 -0
  608. rapidata/api_client/models/rapid_answer.py +3 -1
  609. rapidata/api_client/models/rapid_answer_result.py +31 -17
  610. rapidata/api_client/models/rapid_issue.py +45 -0
  611. rapidata/api_client/models/rapid_modality.py +46 -0
  612. rapidata/api_client/models/rapid_model.py +157 -0
  613. rapidata/api_client/models/rapid_model_paged_result.py +105 -0
  614. rapidata/api_client/models/rapid_model_referee.py +154 -0
  615. rapidata/api_client/models/rapid_response.py +103 -0
  616. rapidata/api_client/models/rapid_response_result.py +266 -0
  617. rapidata/api_client/models/rapid_result_model.py +7 -7
  618. rapidata/api_client/models/rapid_result_model_result.py +31 -17
  619. rapidata/api_client/models/rapid_skipped_model.py +5 -5
  620. rapidata/api_client/models/rapid_state.py +41 -0
  621. rapidata/api_client/models/read_bridge_token_keys_result.py +3 -8
  622. rapidata/api_client/models/reference_asset_input.py +100 -0
  623. rapidata/api_client/models/report_model.py +109 -0
  624. rapidata/api_client/models/response_count_filter.py +103 -0
  625. rapidata/api_client/models/response_count_user_filter_model.py +101 -0
  626. rapidata/api_client/models/retrieval_mode.py +38 -0
  627. rapidata/api_client/models/root_filter.py +5 -14
  628. rapidata/api_client/models/run_status.py +39 -0
  629. rapidata/api_client/models/runs_by_leaderboard_result.py +104 -0
  630. rapidata/api_client/models/runs_by_leaderboard_result_paged_result.py +105 -0
  631. rapidata/api_client/models/sample_by_identifier.py +125 -0
  632. rapidata/api_client/models/sample_by_identifier_paged_result.py +105 -0
  633. rapidata/api_client/models/sample_by_participant.py +121 -0
  634. rapidata/api_client/models/sample_by_participant_paged_result.py +105 -0
  635. rapidata/api_client/models/scrub_payload.py +96 -0
  636. rapidata/api_client/models/scrub_range.py +89 -0
  637. rapidata/api_client/models/scrub_rapid_blueprint.py +96 -0
  638. rapidata/api_client/models/scrub_result.py +98 -0
  639. rapidata/api_client/models/scrub_truth.py +104 -0
  640. rapidata/api_client/models/send_survey_model.py +87 -0
  641. rapidata/api_client/models/shuffling_selection.py +106 -0
  642. rapidata/api_client/models/simple_workflow_config.py +6 -17
  643. rapidata/api_client/models/simple_workflow_config_blueprint.py +37 -23
  644. rapidata/api_client/models/simple_workflow_config_model.py +6 -22
  645. rapidata/api_client/models/simple_workflow_config_model_blueprint.py +31 -17
  646. rapidata/api_client/models/simple_workflow_get_result_overview_get200_response.py +16 -16
  647. rapidata/api_client/models/simple_workflow_model.py +14 -4
  648. rapidata/api_client/models/simple_workflow_model1.py +5 -12
  649. rapidata/api_client/models/simple_workflow_model_blueprint.py +31 -17
  650. rapidata/api_client/models/skip_truth.py +94 -0
  651. rapidata/api_client/models/sort_criterion.py +5 -11
  652. rapidata/api_client/models/sort_direction.py +2 -2
  653. rapidata/api_client/models/source_url_metadata.py +109 -0
  654. rapidata/api_client/models/source_url_metadata_model.py +96 -0
  655. rapidata/api_client/models/standing_by_benchmark.py +113 -0
  656. rapidata/api_client/models/standing_by_leaderboard.py +113 -0
  657. rapidata/api_client/models/standing_by_leaderboard_paged_result.py +105 -0
  658. rapidata/api_client/models/standing_status.py +38 -0
  659. rapidata/api_client/models/standings_by_benchmark_result.py +95 -0
  660. rapidata/api_client/models/standings_by_leaderboard_result.py +95 -0
  661. rapidata/api_client/models/start_preliminary_download_result.py +87 -0
  662. rapidata/api_client/models/sticky_state.py +39 -0
  663. rapidata/api_client/models/stream_file_wrapper.py +138 -0
  664. rapidata/api_client/models/streams_metadata.py +113 -0
  665. rapidata/api_client/models/streams_metadata_model.py +100 -0
  666. rapidata/api_client/models/string_segment.py +105 -0
  667. rapidata/api_client/models/submit_coco_model.py +1 -3
  668. rapidata/api_client/models/submit_order_model.py +87 -0
  669. rapidata/api_client/models/submit_participant_result.py +89 -0
  670. rapidata/api_client/models/submit_prompt_model.py +107 -0
  671. rapidata/api_client/models/submit_prompt_model_prompt_asset.py +202 -0
  672. rapidata/api_client/models/tags_by_benchmark_result.py +87 -0
  673. rapidata/api_client/models/text_asset.py +15 -10
  674. rapidata/api_client/models/text_asset_input.py +120 -0
  675. rapidata/api_client/models/text_asset_model.py +18 -13
  676. rapidata/api_client/models/text_metadata.py +20 -6
  677. rapidata/api_client/models/text_metadata_input.py +111 -0
  678. rapidata/api_client/models/text_metadata_model.py +9 -6
  679. rapidata/api_client/models/transcription_metadata.py +10 -4
  680. rapidata/api_client/models/transcription_metadata_input.py +4 -6
  681. rapidata/api_client/models/transcription_metadata_model.py +1 -3
  682. rapidata/api_client/models/transcription_truth.py +23 -4
  683. rapidata/api_client/models/transcription_word.py +2 -2
  684. rapidata/api_client/models/translated_prompt_metadata_model.py +2 -4
  685. rapidata/api_client/models/translated_string.py +2 -2
  686. rapidata/api_client/models/unlock_order_result.py +2 -2
  687. rapidata/api_client/models/update_access_model.py +1 -1
  688. rapidata/api_client/models/update_audience_request.py +102 -0
  689. rapidata/api_client/models/update_benchmark_model.py +99 -0
  690. rapidata/api_client/models/update_benchmark_name_model.py +87 -0
  691. rapidata/api_client/models/update_campaign_model.py +99 -0
  692. rapidata/api_client/models/update_dataset_name_model.py +87 -0
  693. rapidata/api_client/models/update_dimensions_model.py +87 -0
  694. rapidata/api_client/models/update_leaderboard_model.py +106 -0
  695. rapidata/api_client/models/update_leaderboard_name_model.py +87 -0
  696. rapidata/api_client/models/update_leaderboard_response_config_model.py +89 -0
  697. rapidata/api_client/models/update_order_name_model.py +87 -0
  698. rapidata/api_client/models/update_participant_model.py +92 -0
  699. rapidata/api_client/models/update_participant_name_model.py +87 -0
  700. rapidata/api_client/models/update_priority_model.py +87 -0
  701. rapidata/api_client/models/update_prompt_tags_model.py +87 -0
  702. rapidata/api_client/models/update_should_alert_model.py +87 -0
  703. rapidata/api_client/models/update_validation_rapid_model.py +125 -0
  704. rapidata/api_client/models/update_validation_rapid_model_context_asset.py +160 -0
  705. rapidata/api_client/models/update_validation_rapid_model_truth.py +280 -0
  706. rapidata/api_client/models/update_validation_set_model.py +120 -0
  707. rapidata/api_client/models/upload_asset_result.py +102 -0
  708. rapidata/api_client/models/upload_file_from_url_result.py +87 -0
  709. rapidata/api_client/models/upload_file_result.py +87 -0
  710. rapidata/api_client/models/upload_files_from_s3_bucket_model.py +15 -5
  711. rapidata/api_client/models/upload_from_s3_result.py +87 -0
  712. rapidata/api_client/models/upload_text_sources_to_dataset_model.py +26 -4
  713. rapidata/api_client/models/url_asset_input.py +100 -0
  714. rapidata/api_client/models/user_action_restriction.py +37 -0
  715. rapidata/api_client/models/user_action_restriction_filter.py +101 -0
  716. rapidata/api_client/models/user_score_filter.py +102 -0
  717. rapidata/api_client/models/user_score_user_filter_model.py +9 -2
  718. rapidata/api_client/models/user_state.py +38 -0
  719. rapidata/api_client/models/user_state_filter.py +101 -0
  720. rapidata/api_client/models/validation_chance.py +20 -3
  721. rapidata/api_client/models/validation_import_post_request_blueprint.py +31 -17
  722. rapidata/api_client/models/validation_set_model.py +39 -5
  723. rapidata/api_client/models/validation_set_overview_model.py +2 -2
  724. rapidata/api_client/models/validation_set_validation_set_id_rapid_post_payload_parameter.py +252 -0
  725. rapidata/api_client/models/validation_set_validation_set_id_rapid_post_truth_parameter.py +280 -0
  726. rapidata/api_client/models/validation_set_zip_post_request_blueprint.py +252 -0
  727. rapidata/api_client/models/video_duration_metadata.py +109 -0
  728. rapidata/api_client/models/video_duration_metadata_model.py +96 -0
  729. rapidata/api_client/models/workflow_aggregation_step_model.py +3 -12
  730. rapidata/api_client/models/workflow_config_artifact_model_workflow_config.py +23 -9
  731. rapidata/api_client/models/workflow_state.py +2 -2
  732. rapidata/api_client/models/zip_entry_file_wrapper.py +151 -0
  733. rapidata/api_client/rest.py +193 -154
  734. rapidata/api_client_README.md +488 -293
  735. rapidata/rapidata_client/__init__.py +27 -13
  736. rapidata/rapidata_client/api/rapidata_api_client.py +253 -0
  737. rapidata/rapidata_client/benchmark/_detail_mapper.py +32 -0
  738. rapidata/rapidata_client/benchmark/leaderboard/__init__.py +0 -0
  739. rapidata/rapidata_client/benchmark/leaderboard/rapidata_leaderboard.py +221 -0
  740. rapidata/rapidata_client/benchmark/participant/__init__.py +0 -0
  741. rapidata/rapidata_client/benchmark/participant/_participant.py +145 -0
  742. rapidata/rapidata_client/benchmark/rapidata_benchmark.py +546 -0
  743. rapidata/rapidata_client/benchmark/rapidata_benchmark_manager.py +219 -0
  744. rapidata/rapidata_client/config/__init__.py +4 -0
  745. rapidata/rapidata_client/config/logger.py +135 -0
  746. rapidata/rapidata_client/config/logging_config.py +55 -0
  747. rapidata/rapidata_client/config/managed_print.py +6 -0
  748. rapidata/rapidata_client/config/order_config.py +14 -0
  749. rapidata/rapidata_client/config/rapidata_config.py +36 -0
  750. rapidata/rapidata_client/config/tracer.py +184 -0
  751. rapidata/rapidata_client/config/upload_config.py +64 -0
  752. rapidata/rapidata_client/datapoints/__init__.py +10 -0
  753. rapidata/rapidata_client/datapoints/_asset_uploader.py +169 -0
  754. rapidata/rapidata_client/datapoints/_datapoint.py +92 -0
  755. rapidata/rapidata_client/datapoints/_datapoint_uploader.py +47 -0
  756. rapidata/rapidata_client/datapoints/_datapoints_validator.py +70 -0
  757. rapidata/rapidata_client/datapoints/assets/__init__.py +0 -0
  758. rapidata/rapidata_client/datapoints/assets/constants.py +7 -0
  759. rapidata/rapidata_client/datapoints/metadata/__init__.py +7 -0
  760. rapidata/rapidata_client/{selection/base_selection.py → datapoints/metadata/_base_metadata.py} +2 -1
  761. rapidata/rapidata_client/datapoints/metadata/_media_asset_metadata.py +26 -0
  762. rapidata/rapidata_client/datapoints/metadata/_private_text_metadata.py +16 -0
  763. rapidata/rapidata_client/datapoints/metadata/_prompt_identifier_metadata.py +14 -0
  764. rapidata/rapidata_client/datapoints/metadata/_prompt_metadata.py +12 -0
  765. rapidata/rapidata_client/datapoints/metadata/_public_text_metadata.py +16 -0
  766. rapidata/rapidata_client/datapoints/metadata/_select_words_metadata.py +17 -0
  767. rapidata/rapidata_client/demographic/__init__.py +0 -0
  768. rapidata/rapidata_client/demographic/demographic_manager.py +54 -0
  769. rapidata/rapidata_client/exceptions/__init__.py +1 -0
  770. rapidata/rapidata_client/exceptions/failed_upload_exception.py +20 -0
  771. rapidata/rapidata_client/filter/__init__.py +7 -1
  772. rapidata/rapidata_client/filter/_base_filter.py +62 -0
  773. rapidata/rapidata_client/filter/age_filter.py +28 -10
  774. rapidata/rapidata_client/filter/and_filter.py +42 -0
  775. rapidata/rapidata_client/filter/campaign_filter.py +28 -11
  776. rapidata/rapidata_client/filter/country_filter.py +42 -13
  777. rapidata/rapidata_client/filter/custom_filter.py +39 -0
  778. rapidata/rapidata_client/filter/gender_filter.py +29 -10
  779. rapidata/rapidata_client/filter/language_filter.py +49 -15
  780. rapidata/rapidata_client/filter/models/__init__.py +0 -0
  781. rapidata/rapidata_client/filter/models/age_group.py +28 -0
  782. rapidata/rapidata_client/filter/models/gender.py +23 -0
  783. rapidata/rapidata_client/filter/new_user_filter.py +20 -0
  784. rapidata/rapidata_client/filter/not_filter.py +42 -0
  785. rapidata/rapidata_client/filter/or_filter.py +42 -0
  786. rapidata/rapidata_client/filter/rapidata_filters.py +60 -0
  787. rapidata/rapidata_client/filter/response_count_filter.py +62 -0
  788. rapidata/rapidata_client/filter/user_score_filter.py +60 -14
  789. rapidata/rapidata_client/order/_rapidata_order_builder.py +481 -0
  790. rapidata/rapidata_client/order/dataset/_rapidata_dataset.py +153 -0
  791. rapidata/rapidata_client/order/rapidata_order.py +393 -90
  792. rapidata/rapidata_client/order/rapidata_order_manager.py +922 -0
  793. rapidata/rapidata_client/order/rapidata_results.py +251 -0
  794. rapidata/rapidata_client/rapidata_client.py +125 -180
  795. rapidata/rapidata_client/referee/__init__.py +3 -3
  796. rapidata/rapidata_client/referee/{base_referee.py → _base_referee.py} +9 -5
  797. rapidata/rapidata_client/referee/_early_stopping_referee.py +62 -0
  798. rapidata/rapidata_client/referee/_naive_referee.py +48 -0
  799. rapidata/rapidata_client/selection/__init__.py +6 -1
  800. rapidata/rapidata_client/selection/_base_selection.py +16 -0
  801. rapidata/rapidata_client/selection/ab_test_selection.py +46 -0
  802. rapidata/rapidata_client/selection/capped_selection.py +34 -17
  803. rapidata/rapidata_client/selection/conditional_validation_selection.py +71 -21
  804. rapidata/rapidata_client/selection/demographic_selection.py +43 -8
  805. rapidata/rapidata_client/selection/effort_selection.py +49 -0
  806. rapidata/rapidata_client/selection/labeling_selection.py +45 -8
  807. rapidata/rapidata_client/selection/rapidata_retrieval_modes.py +21 -0
  808. rapidata/rapidata_client/selection/rapidata_selections.py +47 -0
  809. rapidata/rapidata_client/selection/shuffling_selection.py +44 -0
  810. rapidata/rapidata_client/selection/static_selection.py +33 -0
  811. rapidata/rapidata_client/selection/validation_selection.py +29 -6
  812. rapidata/rapidata_client/settings/__init__.py +12 -2
  813. rapidata/rapidata_client/settings/_rapidata_setting.py +24 -0
  814. rapidata/rapidata_client/settings/alert_on_fast_response.py +25 -0
  815. rapidata/rapidata_client/settings/allow_neither_both.py +17 -0
  816. rapidata/rapidata_client/settings/custom_setting.py +17 -0
  817. rapidata/rapidata_client/settings/free_text_minimum_characters.py +22 -0
  818. rapidata/rapidata_client/settings/models/__init__.py +1 -0
  819. rapidata/rapidata_client/settings/models/translation_behaviour_options.py +15 -0
  820. rapidata/rapidata_client/settings/mute_video.py +15 -0
  821. rapidata/rapidata_client/settings/no_shuffle.py +18 -0
  822. rapidata/rapidata_client/settings/play_video_until_the_end.py +19 -0
  823. rapidata/rapidata_client/settings/rapidata_settings.py +51 -0
  824. rapidata/rapidata_client/settings/swap_context_instruction.py +20 -0
  825. rapidata/rapidata_client/settings/translation_behaviour.py +20 -0
  826. rapidata/rapidata_client/validation/__init__.py +1 -0
  827. rapidata/rapidata_client/validation/rapidata_validation_set.py +141 -0
  828. rapidata/rapidata_client/validation/rapids/__init__.py +1 -0
  829. rapidata/rapidata_client/validation/rapids/_validation_rapid_uploader.py +62 -0
  830. rapidata/rapidata_client/validation/rapids/box.py +42 -0
  831. rapidata/rapidata_client/validation/rapids/rapids.py +29 -0
  832. rapidata/rapidata_client/validation/rapids/rapids_manager.py +469 -0
  833. rapidata/rapidata_client/validation/validation_set_manager.py +814 -0
  834. rapidata/rapidata_client/workflow/__init__.py +11 -6
  835. rapidata/rapidata_client/workflow/_base_workflow.py +43 -0
  836. rapidata/rapidata_client/workflow/_classify_workflow.py +92 -0
  837. rapidata/rapidata_client/workflow/_compare_workflow.py +76 -0
  838. rapidata/rapidata_client/workflow/_draw_workflow.py +52 -0
  839. rapidata/rapidata_client/workflow/_evaluation_workflow.py +47 -0
  840. rapidata/rapidata_client/workflow/_free_text_workflow.py +81 -0
  841. rapidata/rapidata_client/workflow/_locate_workflow.py +52 -0
  842. rapidata/rapidata_client/workflow/_multi_ranking_workflow.py +87 -0
  843. rapidata/rapidata_client/workflow/_ranking_workflow.py +131 -0
  844. rapidata/rapidata_client/workflow/_select_words_workflow.py +74 -0
  845. rapidata/rapidata_client/workflow/_timestamp_workflow.py +65 -0
  846. rapidata/service/__init__.py +0 -1
  847. rapidata/service/credential_manager.py +41 -32
  848. rapidata/service/openapi_service.py +153 -35
  849. rapidata/types/__init__.py +166 -0
  850. rapidata-2.44.4.dist-info/METADATA +32 -0
  851. rapidata-2.44.4.dist-info/RECORD +1014 -0
  852. {rapidata-1.8.3.dist-info → rapidata-2.44.4.dist-info}/WHEEL +1 -1
  853. rapidata/constants.py +0 -1
  854. rapidata/rapidata_client/assets/__init__.py +0 -8
  855. rapidata/rapidata_client/assets/base_asset.py +0 -11
  856. rapidata/rapidata_client/assets/media_asset.py +0 -88
  857. rapidata/rapidata_client/assets/multi_asset.py +0 -55
  858. rapidata/rapidata_client/assets/text_asset.py +0 -28
  859. rapidata/rapidata_client/country_codes/__init__.py +0 -1
  860. rapidata/rapidata_client/country_codes/country_codes.py +0 -19
  861. rapidata/rapidata_client/dataset/rapid_builders/__init__.py +0 -4
  862. rapidata/rapidata_client/dataset/rapid_builders/base_rapid_builder.py +0 -33
  863. rapidata/rapidata_client/dataset/rapid_builders/classify_rapid_builders.py +0 -166
  864. rapidata/rapidata_client/dataset/rapid_builders/compare_rapid_builders.py +0 -145
  865. rapidata/rapidata_client/dataset/rapid_builders/rapids.py +0 -32
  866. rapidata/rapidata_client/dataset/rapid_builders/transcription_rapid_builders.py +0 -132
  867. rapidata/rapidata_client/dataset/rapidata_dataset.py +0 -126
  868. rapidata/rapidata_client/dataset/rapidata_validation_set.py +0 -300
  869. rapidata/rapidata_client/dataset/validation_rapid_parts.py +0 -55
  870. rapidata/rapidata_client/dataset/validation_set_builder.py +0 -324
  871. rapidata/rapidata_client/filter/base_filter.py +0 -9
  872. rapidata/rapidata_client/metadata/__init__.py +0 -5
  873. rapidata/rapidata_client/metadata/base_metadata.py +0 -12
  874. rapidata/rapidata_client/metadata/private_text_metadata.py +0 -16
  875. rapidata/rapidata_client/metadata/prompt_metadata.py +0 -17
  876. rapidata/rapidata_client/metadata/public_text_metadata.py +0 -16
  877. rapidata/rapidata_client/metadata/transcription_metadata.py +0 -19
  878. rapidata/rapidata_client/order/rapidata_order_builder.py +0 -463
  879. rapidata/rapidata_client/referee/early_stopping_referee.py +0 -50
  880. rapidata/rapidata_client/referee/naive_referee.py +0 -33
  881. rapidata/rapidata_client/settings/feature_flags.py +0 -125
  882. rapidata/rapidata_client/settings/settings.py +0 -124
  883. rapidata/rapidata_client/simple_builders/simple_classification_builders.py +0 -245
  884. rapidata/rapidata_client/simple_builders/simple_compare_builders.py +0 -250
  885. rapidata/rapidata_client/simple_builders/simple_free_text_builders.py +0 -180
  886. rapidata/rapidata_client/simple_builders/simple_transcription_builders.py +0 -194
  887. rapidata/rapidata_client/workflow/base_workflow.py +0 -42
  888. rapidata/rapidata_client/workflow/classify_workflow.py +0 -49
  889. rapidata/rapidata_client/workflow/compare_workflow.py +0 -47
  890. rapidata/rapidata_client/workflow/evaluation_workflow.py +0 -15
  891. rapidata/rapidata_client/workflow/free_text_workflow.py +0 -50
  892. rapidata/rapidata_client/workflow/transcription_workflow.py +0 -40
  893. rapidata/service/local_file_service.py +0 -25
  894. rapidata/service/token_manager.py +0 -175
  895. rapidata-1.8.3.dist-info/METADATA +0 -28
  896. rapidata-1.8.3.dist-info/RECORD +0 -396
  897. /rapidata/rapidata_client/{dataset → api}/__init__.py +0 -0
  898. /rapidata/rapidata_client/{simple_builders → benchmark}/__init__.py +0 -0
  899. {rapidata-1.8.3.dist-info → rapidata-2.44.4.dist-info/licenses}/LICENSE +0 -0
@@ -0,0 +1,922 @@
1
+ from __future__ import annotations
2
+
3
+ from typing import Literal, Optional, Sequence, get_args, TYPE_CHECKING
4
+
5
+ from rapidata.rapidata_client.config import logger
6
+ from rapidata.rapidata_client.config.tracer import tracer
7
+ from rapidata.rapidata_client.datapoints._asset_uploader import AssetUploader
8
+ from rapidata.rapidata_client.datapoints._datapoint import Datapoint
9
+ from rapidata.rapidata_client.datapoints._datapoints_validator import (
10
+ DatapointsValidator,
11
+ )
12
+ from rapidata.rapidata_client.filter import RapidataFilter
13
+ from rapidata.rapidata_client.filter.rapidata_filters import RapidataFilters
14
+ from rapidata.rapidata_client.settings import RapidataSetting, RapidataSettings
15
+ from rapidata.rapidata_client.selection.rapidata_selections import RapidataSelections
16
+ from rapidata.service.openapi_service import OpenAPIService
17
+
18
+ if TYPE_CHECKING:
19
+ from rapidata.rapidata_client.order._rapidata_order_builder import (
20
+ StickyStateLiteral,
21
+ )
22
+ from rapidata.rapidata_client.order.rapidata_order import RapidataOrder
23
+ from rapidata.rapidata_client.selection._base_selection import RapidataSelection
24
+ from rapidata.rapidata_client.workflow import (
25
+ Workflow,
26
+ )
27
+
28
+
29
+ class RapidataOrderManager:
30
+ """
31
+ Handels everything regarding the orders from creation to retrieval.
32
+
33
+ Attributes:
34
+ filters (RapidataFilters): The RapidataFilters instance.
35
+ settings (RapidataSettings): The RapidataSettings instance.
36
+ selections (RapidataSelections): The RapidataSelections instance."""
37
+
38
+ def __init__(self, openapi_service: OpenAPIService):
39
+ self.__openapi_service = openapi_service
40
+ self.filters = RapidataFilters
41
+ self.settings = RapidataSettings
42
+ self.selections = RapidataSelections
43
+ from rapidata.rapidata_client.order._rapidata_order_builder import (
44
+ StickyStateLiteral,
45
+ )
46
+
47
+ self.__priority: int | None = None
48
+ self.__sticky_state: StickyStateLiteral | None = None
49
+ self._asset_uploader = AssetUploader(openapi_service)
50
+ logger.debug("RapidataOrderManager initialized")
51
+
52
+ def _create_general_order(
53
+ self,
54
+ name: str,
55
+ workflow: Workflow,
56
+ datapoints: list[Datapoint],
57
+ responses_per_datapoint: int = 10,
58
+ validation_set_id: str | None = None,
59
+ confidence_threshold: float | None = None,
60
+ filters: Sequence[RapidataFilter] | None = None,
61
+ settings: Sequence[RapidataSetting] | None = None,
62
+ selections: Sequence[RapidataSelection] | None = None,
63
+ ) -> RapidataOrder:
64
+ if filters is None:
65
+ filters = []
66
+ if settings is None:
67
+ settings = []
68
+ if selections is None:
69
+ selections = []
70
+
71
+ if not confidence_threshold:
72
+ from rapidata.rapidata_client.referee._naive_referee import NaiveReferee
73
+
74
+ referee = NaiveReferee(responses=responses_per_datapoint)
75
+ else:
76
+ from rapidata.rapidata_client.referee._early_stopping_referee import (
77
+ EarlyStoppingReferee,
78
+ )
79
+
80
+ referee = EarlyStoppingReferee(
81
+ threshold=confidence_threshold,
82
+ max_vote_count=responses_per_datapoint,
83
+ )
84
+
85
+ logger.debug(
86
+ "Creating order with parameters: name %s, workflow %s, datapoints %s, responses_per_datapoint %s, validation_set_id %s, confidence_threshold %s, filters %s, settings %s, selections %s",
87
+ name,
88
+ workflow,
89
+ datapoints,
90
+ responses_per_datapoint,
91
+ validation_set_id,
92
+ confidence_threshold,
93
+ filters,
94
+ settings,
95
+ selections,
96
+ )
97
+
98
+ from rapidata.rapidata_client.order._rapidata_order_builder import (
99
+ RapidataOrderBuilder,
100
+ )
101
+
102
+ order_builder = RapidataOrderBuilder(
103
+ name=name, openapi_service=self.__openapi_service
104
+ )
105
+
106
+ if selections and validation_set_id:
107
+ logger.warning(
108
+ "Warning: Both selections and validation_set_id provided. Ignoring validation_set_id."
109
+ )
110
+
111
+ order = (
112
+ order_builder._set_workflow(workflow)
113
+ ._set_datapoints(datapoints=datapoints)
114
+ ._set_referee(referee)
115
+ ._set_filters(filters)
116
+ ._set_selections(selections)
117
+ ._set_settings(settings)
118
+ ._set_validation_set_id(validation_set_id if not selections else None)
119
+ ._set_priority(self.__priority)
120
+ ._set_sticky_state(self.__sticky_state)
121
+ ._create()
122
+ )
123
+ logger.debug("Order created: %s", order)
124
+ return order
125
+
126
+ def _set_priority(self, priority: int | None):
127
+ if priority is not None and not isinstance(priority, int):
128
+ raise TypeError("Priority must be an integer or None")
129
+
130
+ if priority is not None and priority < 0:
131
+ raise ValueError("Priority must be greater than 0 or None")
132
+
133
+ self.__priority = priority
134
+
135
+ def _set_sticky_state(self, sticky_state: StickyStateLiteral | None):
136
+ from rapidata.rapidata_client.order._rapidata_order_builder import (
137
+ StickyStateLiteral,
138
+ )
139
+
140
+ sticky_state_valid_values = get_args(StickyStateLiteral)
141
+
142
+ if sticky_state is not None and sticky_state not in sticky_state_valid_values:
143
+ raise ValueError(
144
+ f"Sticky state must be one of {sticky_state_valid_values} or None"
145
+ )
146
+
147
+ self.__sticky_state = sticky_state
148
+
149
+ def create_classification_order(
150
+ self,
151
+ name: str,
152
+ instruction: str,
153
+ answer_options: list[str],
154
+ datapoints: list[str],
155
+ data_type: Literal["media", "text"] = "media",
156
+ responses_per_datapoint: int = 10,
157
+ contexts: list[str] | None = None,
158
+ media_contexts: list[str] | None = None,
159
+ validation_set_id: str | None = None,
160
+ confidence_threshold: float | None = None,
161
+ filters: Sequence[RapidataFilter] | None = None,
162
+ settings: Sequence[RapidataSetting] | None = None,
163
+ selections: Sequence[RapidataSelection] | None = None,
164
+ private_notes: list[str] | None = None,
165
+ ) -> RapidataOrder:
166
+ """Create a classification order.
167
+
168
+ With this order you can have a datapoint (image, text, video, audio) be classified into one of the answer options.
169
+ Each response will be exactly one of the answer options.
170
+
171
+ Args:
172
+ name (str): The name of the order. (Will not be shown to the labeler)
173
+ instruction (str): The instruction for how the data should be classified.
174
+ answer_options (list[str]): The list of options for the classification.
175
+ datapoints (list[str]): The list of datapoints for the classification - each datapoint will be labeled.
176
+ data_type (str, optional): The data type of the datapoints. Defaults to "media" (any form of image, video or audio). \n
177
+ Other option: "text".
178
+ responses_per_datapoint (int, optional): The number of responses that will be collected per datapoint. Defaults to 10.
179
+ contexts (list[str], optional): The list of contexts for the classification. Defaults to None.\n
180
+ If provided has to be the same length as datapoints and will be shown in addition to the instruction and options. (Therefore will be different for each datapoint)
181
+ Will be match up with the datapoints using the list index.
182
+ media_contexts (list[str], optional): The list of media contexts for the classification i.e links to the images / videos. Defaults to None.\n
183
+ If provided has to be the same length as datapoints and will be shown in addition to the instruction and options. (Therefore will be different for each datapoint)
184
+ validation_set_id (str, optional): The ID of the validation set. Defaults to None.\n
185
+ If provided, one validation task will be shown infront of the datapoints that will be labeled.
186
+ confidence_threshold (float, optional): The probability threshold for the classification. Defaults to None.\n
187
+ If provided, the classification datapoint will stop after the threshold is reached or at the number of responses, whatever happens first.
188
+ filters (Sequence[RapidataFilter], optional): The list of filters for the classification. Defaults to []. Decides who the tasks should be shown to.
189
+ settings (Sequence[RapidataSetting], optional): The list of settings for the classification. Defaults to []. Decides how the tasks should be shown.
190
+ selections (Sequence[RapidataSelection], optional): The list of selections for the classification. Defaults to []. Decides in what order the tasks should be shown.
191
+ private_notes (list[str], optional): The list of private notes for the classification. Defaults to None.
192
+ If provided has to be the same length as datapoints.\n
193
+ This will NOT be shown to the labelers but will be included in the result purely for your own reference.
194
+
195
+ Example:
196
+ ```python
197
+ from rapidata import RapidataClient, NoShuffle
198
+
199
+ rapi = RapidataClient()
200
+ order = rapi.order.create_classification_order(
201
+ name="Image Quality Rating",
202
+ instruction="How would you rate the quality of this image?",
203
+ answer_options=["1: Poor", "2: Fair", "3: Good", "4: Excellent"],
204
+ datapoints=["https://example.com/image1.jpg", "https://example.com/image2.jpg"],
205
+ responses_per_datapoint=15,
206
+ settings=[NoShuffle()], # Keep options in order for Likert scale
207
+ ).run()
208
+
209
+ results = order.get_results()
210
+ ```
211
+ """
212
+ with tracer.start_as_current_span(
213
+ "RapidataOrderManager.create_classification_order"
214
+ ):
215
+ if not isinstance(datapoints, list) or not all(
216
+ isinstance(datapoint, str) for datapoint in datapoints
217
+ ):
218
+ raise ValueError("Datapoints must be a list of strings")
219
+
220
+ from rapidata.rapidata_client.workflow import ClassifyWorkflow
221
+
222
+ datapoints_instances = DatapointsValidator.map_datapoints(
223
+ datapoints=datapoints,
224
+ contexts=contexts,
225
+ media_contexts=media_contexts,
226
+ private_notes=private_notes,
227
+ data_type=data_type,
228
+ )
229
+ return self._create_general_order(
230
+ name=name,
231
+ workflow=ClassifyWorkflow(
232
+ instruction=instruction, answer_options=answer_options
233
+ ),
234
+ datapoints=datapoints_instances,
235
+ responses_per_datapoint=responses_per_datapoint,
236
+ validation_set_id=validation_set_id,
237
+ confidence_threshold=confidence_threshold,
238
+ filters=filters,
239
+ selections=selections,
240
+ settings=settings,
241
+ )
242
+
243
+ def create_compare_order(
244
+ self,
245
+ name: str,
246
+ instruction: str,
247
+ datapoints: list[list[str]],
248
+ data_type: Literal["media", "text"] = "media",
249
+ responses_per_datapoint: int = 10,
250
+ contexts: list[str] | None = None,
251
+ media_contexts: list[str] | None = None,
252
+ a_b_names: list[str] | None = None,
253
+ validation_set_id: str | None = None,
254
+ confidence_threshold: float | None = None,
255
+ filters: Sequence[RapidataFilter] | None = None,
256
+ settings: Sequence[RapidataSetting] | None = None,
257
+ selections: Sequence[RapidataSelection] | None = None,
258
+ private_notes: list[str] | None = None,
259
+ ) -> RapidataOrder:
260
+ """Create a compare order.
261
+
262
+ With this order you compare two datapoints (image, text, video, audio) and the annotators will choose one of the two based on the instruction.
263
+
264
+ Args:
265
+ name (str): The name of the order. (Will not be shown to the labeler)
266
+ instruction (str): The instruction for the comparison. Will be shown along side each datapoint.
267
+ datapoints (list[list[str]]): Outher list is the datapoints, inner list is the options for the comparison - each datapoint will be labeled.
268
+ data_type (str, optional): The data type of the datapoints. Defaults to "media" (any form of image, video or audio). \n
269
+ Other option: "text".
270
+ responses_per_datapoint (int, optional): The number of responses that will be collected per datapoint. Defaults to 10.
271
+ contexts (list[str], optional): The list of contexts for the comparison. Defaults to None.\n
272
+ If provided has to be the same length as datapoints and will be shown in addition to the instruction. (Therefore will be different for each datapoint)
273
+ Will be matched up with the datapoints using the list index.
274
+ media_contexts (list[str], optional): The list of media contexts i.e. links to the images / videos for the comparison. Defaults to None.\n
275
+ If provided has to be the same length as datapoints and will be shown in addition to the instruction. (Therefore will be different for each datapoint)
276
+ Will be matched up with the datapoints using the list index.
277
+ a_b_names (list[str], optional): Custom naming for the two opposing models defined by the index in the datapoints list. Defaults to None.\n
278
+ If provided has to be a list of exactly two strings.
279
+ example:
280
+ ```python
281
+ datapoints = [["path_to_image_A", "path_to_image_B"], ["path_to_text_A", "path_to_text_B"]]
282
+ a_b_naming = ["Model A", "Model B"]
283
+ ```
284
+ The results will then correctly show "Model A" and "Model B".
285
+ If not provided, the results will be shown as "A" and "B".
286
+ validation_set_id (str, optional): The ID of the validation set. Defaults to None.\n
287
+ If provided, one validation task will be shown infront of the datapoints that will be labeled.
288
+ confidence_threshold (float, optional): The probability threshold for the comparison. Defaults to None.\n
289
+ If provided, the comparison datapoint will stop after the threshold is reached or at the number of responses, whatever happens first.
290
+ filters (Sequence[RapidataFilter], optional): The list of filters for the comparison. Defaults to []. Decides who the tasks should be shown to.
291
+ settings (Sequence[RapidataSetting], optional): The list of settings for the comparison. Defaults to []. Decides how the tasks should be shown.
292
+ selections (Sequence[RapidataSelection], optional): The list of selections for the comparison. Defaults to []. Decides in what order the tasks should be shown.
293
+ private_notes (list[str], optional): The list of private notes for the comparison. Defaults to None.\n
294
+ If provided has to be the same length as datapoints.\n
295
+ This will NOT be shown to the labelers but will be included in the result purely for your own reference.
296
+
297
+ Example:
298
+ ```python
299
+ from rapidata import RapidataClient
300
+
301
+ rapi = RapidataClient()
302
+ order = rapi.order.create_compare_order(
303
+ name="Image Prompt Alignment",
304
+ instruction="Which image follows the prompt more accurately?",
305
+ datapoints=[
306
+ ["https://example.com/model_a_img1.jpg", "https://example.com/model_b_img1.jpg"],
307
+ ["https://example.com/model_a_img2.jpg", "https://example.com/model_b_img2.jpg"],
308
+ ],
309
+ contexts=["A cat sitting on a red couch", "A blue car in the rain"],
310
+ responses_per_datapoint=25,
311
+ a_b_names=["Flux", "Midjourney"], # Optional: label the models in results
312
+ ).run()
313
+
314
+ results = order.get_results()
315
+ ```
316
+ """
317
+ with tracer.start_as_current_span("RapidataOrderManager.create_compare_order"):
318
+ if any(not isinstance(datapoint, list) for datapoint in datapoints):
319
+ raise ValueError("Each datapoint must be a list of 2 paths/texts")
320
+
321
+ if any(len(set(datapoint)) != 2 for datapoint in datapoints):
322
+ raise ValueError(
323
+ "Each datapoint must contain exactly two unique options"
324
+ )
325
+
326
+ if a_b_names is not None and len(a_b_names) != 2:
327
+ raise ValueError(
328
+ "A_B_naming must be a list of exactly two strings or None"
329
+ )
330
+
331
+ from rapidata.rapidata_client.workflow import CompareWorkflow
332
+
333
+ datapoints_instances = DatapointsValidator.map_datapoints(
334
+ datapoints=datapoints,
335
+ contexts=contexts,
336
+ media_contexts=media_contexts,
337
+ private_notes=private_notes,
338
+ data_type=data_type,
339
+ )
340
+ return self._create_general_order(
341
+ name=name,
342
+ workflow=CompareWorkflow(instruction=instruction, a_b_names=a_b_names),
343
+ datapoints=datapoints_instances,
344
+ responses_per_datapoint=responses_per_datapoint,
345
+ validation_set_id=validation_set_id,
346
+ confidence_threshold=confidence_threshold,
347
+ filters=filters,
348
+ selections=selections,
349
+ settings=settings,
350
+ )
351
+
352
+ def create_ranking_order(
353
+ self,
354
+ name: str,
355
+ instruction: str,
356
+ datapoints: list[list[str]],
357
+ comparison_budget_per_ranking: int,
358
+ responses_per_comparison: int = 1,
359
+ data_type: Literal["media", "text"] = "media",
360
+ random_comparisons_ratio: float = 0.5,
361
+ contexts: Optional[list[str]] = None,
362
+ media_contexts: Optional[list[str]] = None,
363
+ validation_set_id: Optional[str] = None,
364
+ filters: Sequence[RapidataFilter] | None = None,
365
+ settings: Sequence[RapidataSetting] | None = None,
366
+ selections: Sequence[RapidataSelection] | None = None,
367
+ ) -> RapidataOrder:
368
+ """
369
+ Create a ranking order.
370
+
371
+ With this order you can have a multiple lists of datapoints (image, text, video, audio) be ranked based on the instruction.
372
+ Each list will be ranked independently, based on comparison matchups.
373
+
374
+ Args:
375
+ name (str): The name of the order.
376
+ instruction (str): The instruction for the ranking. Will be shown with each matchup.
377
+ datapoints (list[list[str]]): The outer list is determines the independent rankings, the inner list is the datapoints for each ranking.
378
+ comparison_budget_per_ranking (int): The number of comparisons that will be collected per ranking (outer list of datapoints).
379
+ responses_per_comparison (int, optional): The number of responses that will be collected per comparison. Defaults to 1.
380
+ data_type (str, optional): The data type of the datapoints. Defaults to "media" (any form of image, video or audio). \n
381
+ Other option: "text".
382
+ random_comparisons_ratio (float, optional): The ratio of random comparisons to the total number of comparisons. Defaults to 0.5.
383
+ contexts (list[str], optional): The list of contexts for the ranking. Defaults to None.\n
384
+ If provided has to be the same length as the outer list of datapoints and will be shown in addition to the instruction. (Therefore will be different for each ranking)
385
+ Will be matched up with the datapoints using the list index.
386
+ media_contexts (list[str], optional): The list of media contexts for the ranking i.e links to the images / videos. Defaults to None.\n
387
+ If provided has to be the same length as the outer list of datapoints and will be shown in addition to the instruction. (Therefore will be different for each ranking)
388
+ Will be matched up with the datapoints using the list index.
389
+ validation_set_id (str, optional): The ID of the validation set. Defaults to None.\n
390
+ If provided, one validation task will be shown infront of the datapoints that will be labeled.
391
+ filters (Sequence[RapidataFilter], optional): The list of filters for the ranking. Defaults to []. Decides who the tasks should be shown to.
392
+ settings (Sequence[RapidataSetting], optional): The list of settings for the ranking. Defaults to []. Decides how the tasks should be shown.
393
+ selections (Sequence[RapidataSelection], optional): The list of selections for the ranking. Defaults to []. Decides in what order the tasks should be shown.
394
+
395
+ Example:
396
+ ```python
397
+ from rapidata import RapidataClient
398
+
399
+ rapi = RapidataClient()
400
+ # Rank 12 images by preference using 50 pairwise comparisons
401
+ order = rapi.order.create_ranking_order(
402
+ name="Image Quality Ranking",
403
+ instruction="Which image looks better?",
404
+ datapoints=[["img1.jpg", "img2.jpg", "img3.jpg", "img4.jpg", "img5.jpg",
405
+ "img6.jpg", "img7.jpg", "img8.jpg", "img9.jpg", "img10.jpg",
406
+ "img11.jpg", "img12.jpg"]],
407
+ comparison_budget_per_ranking=50,
408
+ random_comparisons_ratio=0.5, # 50% random, 50% close matchups
409
+ ).run()
410
+
411
+ results = order.get_results() # Returns ranked list with scores
412
+ ```
413
+ """
414
+ with tracer.start_as_current_span("RapidataOrderManager.create_ranking_order"):
415
+ if contexts and len(contexts) != len(datapoints):
416
+ raise ValueError(
417
+ "Number of contexts must match the number of sets that will be ranked"
418
+ )
419
+ if media_contexts and len(media_contexts) != len(datapoints):
420
+ raise ValueError(
421
+ "Number of media contexts must match the number of sets that will be ranked"
422
+ )
423
+ if not isinstance(datapoints, list) or not all(
424
+ isinstance(dp, list) for dp in datapoints
425
+ ):
426
+ raise ValueError(
427
+ "Datapoints must be a list of lists. Outer list is the independent rankings, inner list is the datapoints for each ranking."
428
+ )
429
+ if not all(len(set(dp)) == len(dp) for dp in datapoints):
430
+ raise ValueError("Each inner list must contain unique datapoints.")
431
+
432
+ if not all(len(inner_list) >= 2 for inner_list in datapoints):
433
+ raise ValueError(
434
+ "Each ranking must contain at least two unique datapoints."
435
+ )
436
+
437
+ from rapidata.rapidata_client.workflow import MultiRankingWorkflow
438
+ from rapidata.api_client.models.i_asset_input import IAssetInput
439
+ from rapidata.api_client.models.i_asset_input_existing_asset_input import (
440
+ IAssetInputExistingAssetInput,
441
+ )
442
+
443
+ datapoints_instances = []
444
+ for i, datapoint in enumerate(datapoints):
445
+ for d in datapoint:
446
+ datapoints_instances.append(
447
+ Datapoint(
448
+ asset=d,
449
+ data_type=data_type,
450
+ context=contexts[i] if contexts else None,
451
+ media_context=media_contexts[i] if media_contexts else None,
452
+ group=str(i),
453
+ )
454
+ )
455
+
456
+ contexts_dict = (
457
+ {str(i): context for i, context in enumerate(contexts)}
458
+ if contexts
459
+ else None
460
+ )
461
+
462
+ media_contexts_dict = (
463
+ {
464
+ str(i): IAssetInput(
465
+ actual_instance=IAssetInputExistingAssetInput(
466
+ _t="ExistingAssetInput",
467
+ name=self._asset_uploader.upload_asset(media_context),
468
+ )
469
+ )
470
+ for i, media_context in enumerate(media_contexts)
471
+ }
472
+ if media_contexts
473
+ else None
474
+ )
475
+
476
+ return self._create_general_order(
477
+ name=name,
478
+ workflow=MultiRankingWorkflow(
479
+ instruction=instruction,
480
+ comparison_budget_per_ranking=comparison_budget_per_ranking,
481
+ random_comparisons_ratio=random_comparisons_ratio,
482
+ contexts=contexts_dict,
483
+ media_contexts=media_contexts_dict,
484
+ ),
485
+ datapoints=datapoints_instances,
486
+ responses_per_datapoint=responses_per_comparison,
487
+ validation_set_id=validation_set_id,
488
+ filters=filters,
489
+ selections=selections,
490
+ settings=settings,
491
+ )
492
+
493
+ def create_free_text_order(
494
+ self,
495
+ name: str,
496
+ instruction: str,
497
+ datapoints: list[str],
498
+ data_type: Literal["media", "text"] = "media",
499
+ responses_per_datapoint: int = 10,
500
+ contexts: list[str] | None = None,
501
+ media_contexts: list[str] | None = None,
502
+ filters: Sequence[RapidataFilter] | None = None,
503
+ settings: Sequence[RapidataSetting] | None = None,
504
+ selections: Sequence[RapidataSelection] | None = None,
505
+ private_notes: list[str] | None = None,
506
+ ) -> RapidataOrder:
507
+ """Create a free text order.
508
+
509
+ With this order you can have a datapoint (image, text, video, audio) be labeled with free text.
510
+ The annotators will be shown a datapoint and will be asked to answer a question with free text.
511
+
512
+ Args:
513
+ name (str): The name of the order.
514
+ instruction (str): The instruction to answer with free text. Will be shown along side each datapoint.
515
+ datapoints (list[str]): The list of datapoints for the free text - each datapoint will be labeled.
516
+ data_type (str, optional): The data type of the datapoints. Defaults to "media" (any form of image, video or audio). \n
517
+ Other option: "text".
518
+ responses_per_datapoint (int, optional): The number of responses that will be collected per datapoint. Defaults to 10.
519
+ contexts (list[str], optional): The list of contexts for the free text. Defaults to None.\n
520
+ If provided has to be the same length as datapoints and will be shown in addition to the instruction. (Therefore will be different for each datapoint)
521
+ Will be matched up with the datapoints using the list index.
522
+ media_contexts (list[str], optional): The list of media contexts for the free text i.e links to the images / videos. Defaults to None.\n
523
+ If provided has to be the same length as datapoints and will be shown in addition to the instruction. (Therefore will be different for each datapoint)
524
+ Will be matched up with the datapoints using the list index.
525
+ filters (Sequence[RapidataFilter], optional): The list of filters for the free text. Defaults to []. Decides who the tasks should be shown to.
526
+ settings (Sequence[RapidataSetting], optional): The list of settings for the free text. Defaults to []. Decides how the tasks should be shown.
527
+ selections (Sequence[RapidataSelection], optional): The list of selections for the free text. Defaults to []. Decides in what order the tasks should be shown.
528
+ private_notes (list[str], optional): The list of private notes for the free text. Defaults to None.\n
529
+ If provided has to be the same length as datapoints.\n
530
+ This will NOT be shown to the labelers but will be included in the result purely for your own reference.
531
+
532
+ Example:
533
+ ```python
534
+ from rapidata import RapidataClient, FreeTextMinimumCharacters
535
+
536
+ rapi = RapidataClient()
537
+ order = rapi.order.create_free_text_order(
538
+ name="Image Captioning",
539
+ instruction="Describe what you see in this image in detail",
540
+ datapoints=["https://example.com/image1.jpg", "https://example.com/image2.jpg"],
541
+ responses_per_datapoint=5,
542
+ settings=[FreeTextMinimumCharacters(20)], # Require at least 20 characters
543
+ ).run()
544
+
545
+ results = order.get_results()
546
+ ```
547
+ """
548
+ with tracer.start_as_current_span(
549
+ "RapidataOrderManager.create_free_text_order"
550
+ ):
551
+ from rapidata.rapidata_client.workflow import FreeTextWorkflow
552
+
553
+ datapoints_instances = DatapointsValidator.map_datapoints(
554
+ datapoints=datapoints,
555
+ contexts=contexts,
556
+ media_contexts=media_contexts,
557
+ private_notes=private_notes,
558
+ data_type=data_type,
559
+ )
560
+ return self._create_general_order(
561
+ name=name,
562
+ workflow=FreeTextWorkflow(instruction=instruction),
563
+ datapoints=datapoints_instances,
564
+ responses_per_datapoint=responses_per_datapoint,
565
+ filters=filters,
566
+ selections=selections,
567
+ settings=settings,
568
+ )
569
+
570
+ def create_select_words_order(
571
+ self,
572
+ name: str,
573
+ instruction: str,
574
+ datapoints: list[str],
575
+ sentences: list[str],
576
+ responses_per_datapoint: int = 10,
577
+ validation_set_id: str | None = None,
578
+ filters: Sequence[RapidataFilter] | None = None,
579
+ settings: Sequence[RapidataSetting] | None = None,
580
+ selections: Sequence[RapidataSelection] | None = None,
581
+ private_notes: list[str] | None = None,
582
+ ) -> RapidataOrder:
583
+ """Create a select words order.
584
+
585
+ With this order you can have a datapoint (image, text, video, audio) be labeled with a list of words.
586
+ The annotators will be shown a datapoint as well as a list of sentences split up by spaces.
587
+ They will then select specific words based on the instruction.
588
+
589
+ Args:
590
+ name (str): The name of the order.
591
+ instruction (str): The instruction for how the words should be selected. Will be shown along side each datapoint.
592
+ datapoints (list[str]): The list of datapoints for the select words - each datapoint will be labeled.
593
+ sentences (list[str]): The list of sentences for the select words - Will be split up by spaces and shown along side each datapoint.\n
594
+ Must be the same length as datapoints.
595
+ responses_per_datapoint (int, optional): The number of responses that will be collected per datapoint. Defaults to 10.
596
+ validation_set_id (str, optional): The ID of the validation set. Defaults to None.\n
597
+ If provided, one validation task will be shown infront of the datapoints that will be labeled.
598
+ filters (Sequence[RapidataFilter], optional): The list of filters for the select words. Defaults to []. Decides who the tasks should be shown to.
599
+ settings (Sequence[RapidataSetting], optional): The list of settings for the select words. Defaults to []. Decides how the tasks should be shown.
600
+ selections (Sequence[RapidataSelection], optional): The list of selections for the select words. Defaults to []. Decides in what order the tasks should be shown.
601
+ private_notes (list[str], optional): The list of private notes for the select words. Defaults to None.\n
602
+ If provided has to be the same length as datapoints.\n
603
+ This will NOT be shown to the labelers but will be included in the result purely for your own reference.
604
+
605
+ Example:
606
+ ```python
607
+ from rapidata import RapidataClient
608
+
609
+ rapi = RapidataClient()
610
+ order = rapi.order.create_select_words_order(
611
+ name="Find Text-Image Mismatches",
612
+ instruction="Select words that don't match what's shown in the image",
613
+ datapoints=["https://example.com/image1.jpg", "https://example.com/image2.jpg"],
614
+ sentences=["A red car on a blue road", "Two cats playing with yarn"],
615
+ responses_per_datapoint=15,
616
+ ).run()
617
+
618
+ results = order.get_results()
619
+ ```
620
+ """
621
+ with tracer.start_as_current_span(
622
+ "RapidataOrderManager.create_select_words_order"
623
+ ):
624
+ from rapidata.rapidata_client.workflow import SelectWordsWorkflow
625
+
626
+ datapoints_instances = DatapointsValidator.map_datapoints(
627
+ datapoints=datapoints,
628
+ sentences=sentences,
629
+ private_notes=private_notes,
630
+ )
631
+ return self._create_general_order(
632
+ name=name,
633
+ workflow=SelectWordsWorkflow(
634
+ instruction=instruction,
635
+ ),
636
+ datapoints=datapoints_instances,
637
+ responses_per_datapoint=responses_per_datapoint,
638
+ validation_set_id=validation_set_id,
639
+ filters=filters,
640
+ selections=selections,
641
+ settings=settings,
642
+ )
643
+
644
+ def create_locate_order(
645
+ self,
646
+ name: str,
647
+ instruction: str,
648
+ datapoints: list[str],
649
+ responses_per_datapoint: int = 10,
650
+ contexts: list[str] | None = None,
651
+ media_contexts: list[str] | None = None,
652
+ validation_set_id: str | None = None,
653
+ filters: Sequence[RapidataFilter] | None = None,
654
+ settings: Sequence[RapidataSetting] | None = None,
655
+ selections: Sequence[RapidataSelection] | None = None,
656
+ private_notes: list[str] | None = None,
657
+ ) -> RapidataOrder:
658
+ """Create a locate order.
659
+
660
+ With this order you can have people locate specific objects in a datapoint (image, text, video, audio).
661
+ The annotators will be shown a datapoint and will be asked to select locations based on the instruction.
662
+
663
+ Args:
664
+ name (str): The name of the order.
665
+ instruction (str): The instruction what should be located. Will be shown along side each datapoint.
666
+ datapoints (list[str]): The list of datapoints for the locate - each datapoint will be labeled.
667
+ responses_per_datapoint (int, optional): The number of responses that will be collected per datapoint. Defaults to 10.
668
+ contexts (list[str], optional): The list of contexts for the locate. Defaults to None.\n
669
+ If provided has to be the same length as datapoints and will be shown in addition to the instruction. (Therefore will be different for each datapoint)
670
+ Will be match up with the datapoints using the list index.
671
+ media_contexts (list[str], optional): The list of media contexts for the locate i.e links to the images / videos. Defaults to None.\n
672
+ If provided has to be the same length as datapoints and will be shown in addition to the instruction. (Therefore will be different for each datapoint)
673
+ validation_set_id (str, optional): The ID of the validation set. Defaults to None.\n
674
+ If provided, one validation task will be shown infront of the datapoints that will be labeled.
675
+ filters (Sequence[RapidataFilter], optional): The list of filters for the locate. Defaults to []. Decides who the tasks should be shown to.
676
+ settings (Sequence[RapidataSetting], optional): The list of settings for the locate. Defaults to []. Decides how the tasks should be shown.
677
+ selections (Sequence[RapidataSelection], optional): The list of selections for the locate. Defaults to []. Decides in what order the tasks should be shown.
678
+ private_notes (list[str], optional): The list of private notes for the locate. Defaults to None.\n
679
+ If provided has to be the same length as datapoints.\n
680
+ This will NOT be shown to the labelers but will be included in the result purely for your own reference.
681
+
682
+ Example:
683
+ ```python
684
+ from rapidata import RapidataClient
685
+
686
+ rapi = RapidataClient()
687
+ order = rapi.order.create_locate_order(
688
+ name="Find Artifacts",
689
+ instruction="Tap on any visual glitches or errors in the image",
690
+ datapoints=["https://example.com/ai_generated1.jpg", "https://example.com/ai_generated2.jpg"],
691
+ responses_per_datapoint=35,
692
+ ).run()
693
+
694
+ results = order.get_results()
695
+ ```
696
+ """
697
+ with tracer.start_as_current_span("RapidataOrderManager.create_locate_order"):
698
+ from rapidata.rapidata_client.workflow import LocateWorkflow
699
+
700
+ datapoints_instances = DatapointsValidator.map_datapoints(
701
+ datapoints=datapoints,
702
+ contexts=contexts,
703
+ media_contexts=media_contexts,
704
+ private_notes=private_notes,
705
+ )
706
+ return self._create_general_order(
707
+ name=name,
708
+ workflow=LocateWorkflow(target=instruction),
709
+ datapoints=datapoints_instances,
710
+ responses_per_datapoint=responses_per_datapoint,
711
+ validation_set_id=validation_set_id,
712
+ filters=filters,
713
+ selections=selections,
714
+ settings=settings,
715
+ )
716
+
717
+ def create_draw_order(
718
+ self,
719
+ name: str,
720
+ instruction: str,
721
+ datapoints: list[str],
722
+ responses_per_datapoint: int = 10,
723
+ contexts: list[str] | None = None,
724
+ media_contexts: list[str] | None = None,
725
+ validation_set_id: str | None = None,
726
+ filters: Sequence[RapidataFilter] = [],
727
+ settings: Sequence[RapidataSetting] = [],
728
+ selections: Sequence[RapidataSelection] = [],
729
+ private_notes: list[str] | None = None,
730
+ ) -> RapidataOrder:
731
+ """Create a draw order.
732
+
733
+ With this order you can have people draw lines on a datapoint (image, text, video, audio).
734
+ The annotators will be shown a datapoint and will be asked to draw lines based on the instruction.
735
+
736
+ Args:
737
+ name (str): The name of the order.
738
+ instruction (str): The instruction for how the lines should be drawn. Will be shown along side each datapoint.
739
+ datapoints (list[str]): The list of datapoints for the draw lines - each datapoint will be labeled.
740
+ responses_per_datapoint (int, optional): The number of responses that will be collected per datapoint. Defaults to 10.
741
+ contexts (list[str], optional): The list of contexts for the comparison. Defaults to None.\n
742
+ If provided has to be the same length as datapoints and will be shown in addition to the instruction. (Therefore will be different for each datapoint)
743
+ Will be match up with the datapoints using the list index.
744
+ media_contexts (list[str], optional): The list of media contexts for the draw lines i.e links to the images / videos. Defaults to None.\n
745
+ If provided has to be the same length as datapoints and will be shown in addition to the instruction. (Therefore will be different for each datapoint)
746
+ validation_set_id (str, optional): The ID of the validation set. Defaults to None.\n
747
+ If provided, one validation task will be shown infront of the datapoints that will be labeled.
748
+ filters (Sequence[RapidataFilter], optional): The list of filters for the draw lines. Defaults to []. Decides who the tasks should be shown to.
749
+ settings (Sequence[RapidataSetting], optional): The list of settings for the draw lines. Defaults to []. Decides how the tasks should be shown.
750
+ selections (Sequence[RapidataSelection], optional): The list of selections for the draw lines. Defaults to []. Decides in what order the tasks should be shown.
751
+ private_notes (list[str], optional): The list of private notes for the draw lines. Defaults to None.\n
752
+ If provided has to be the same length as datapoints.\n
753
+ This will NOT be shown to the labelers but will be included in the result purely for your own reference.
754
+
755
+ Example:
756
+ ```python
757
+ from rapidata import RapidataClient
758
+
759
+ rapi = RapidataClient()
760
+ order = rapi.order.create_draw_order(
761
+ name="Segment Objects",
762
+ instruction="Color in all the cars in the image",
763
+ datapoints=["https://example.com/street1.jpg", "https://example.com/street2.jpg"],
764
+ responses_per_datapoint=35,
765
+ ).run()
766
+
767
+ results = order.get_results()
768
+ ```
769
+ """
770
+ with tracer.start_as_current_span("RapidataOrderManager.create_draw_order"):
771
+ from rapidata.rapidata_client.workflow import DrawWorkflow
772
+
773
+ datapoints_instances = DatapointsValidator.map_datapoints(
774
+ datapoints=datapoints,
775
+ contexts=contexts,
776
+ media_contexts=media_contexts,
777
+ private_notes=private_notes,
778
+ )
779
+ return self._create_general_order(
780
+ name=name,
781
+ workflow=DrawWorkflow(target=instruction),
782
+ datapoints=datapoints_instances,
783
+ responses_per_datapoint=responses_per_datapoint,
784
+ validation_set_id=validation_set_id,
785
+ filters=filters,
786
+ selections=selections,
787
+ settings=settings,
788
+ )
789
+
790
+ def create_timestamp_order(
791
+ self,
792
+ name: str,
793
+ instruction: str,
794
+ datapoints: list[str],
795
+ responses_per_datapoint: int = 10,
796
+ contexts: list[str] | None = None,
797
+ media_contexts: list[str] | None = None,
798
+ validation_set_id: str | None = None,
799
+ filters: Sequence[RapidataFilter] | None = None,
800
+ settings: Sequence[RapidataSetting] | None = None,
801
+ selections: Sequence[RapidataSelection] | None = None,
802
+ private_notes: list[str] | None = None,
803
+ ) -> RapidataOrder:
804
+ """Create a timestamp order.
805
+
806
+ Warning:
807
+ This order is currently not fully supported and may give unexpected results.
808
+
809
+ With this order you can have people mark specific timestamps in a datapoint (video, audio).
810
+ The annotators will be shown a datapoint and will be asked to select a timestamp based on the instruction.
811
+
812
+ Args:
813
+ name (str): The name of the order.
814
+ instruction (str): The instruction for the timestamp task. Will be shown along side each datapoint.
815
+ datapoints (list[str]): The list of datapoints for the timestamp - each datapoint will be labeled.
816
+ responses_per_datapoint (int, optional): The number of responses that will be collected per datapoint. Defaults to 10.
817
+ contexts (list[str], optional): The list of contexts for the comparison. Defaults to None.\n
818
+ If provided has to be the same length as datapoints and will be shown in addition to the instruction. (Therefore will be different for each datapoint)
819
+ Will be match up with the datapoints using the list index.
820
+ media_contexts (list[str], optional): The list of media contexts for the timestamp i.e links to the images / videos. Defaults to None.\n
821
+ If provided has to be the same length as datapoints and will be shown in addition to the instruction. (Therefore will be different for each datapoint)
822
+ validation_set_id (str, optional): The ID of the validation set. Defaults to None.\n
823
+ If provided, one validation task will be shown infront of the datapoints that will be labeled.
824
+ filters (Sequence[RapidataFilter], optional): The list of filters for the timestamp. Defaults to []. Decides who the tasks should be shown to.
825
+ settings (Sequence[RapidataSetting], optional): The list of settings for the timestamp. Defaults to []. Decides how the tasks should be shown.
826
+ selections (Sequence[RapidataSelection], optional): The list of selections for the timestamp. Defaults to []. Decides in what order the tasks should be shown.
827
+ private_notes (list[str], optional): The list of private notes for the timestamp. Defaults to None.\n
828
+ If provided has to be the same length as datapoints.\n
829
+ This will NOT be shown to the labelers but will be included in the result purely for your own reference.
830
+ """
831
+
832
+ with tracer.start_as_current_span(
833
+ "RapidataOrderManager.create_timestamp_order"
834
+ ):
835
+ from rapidata.rapidata_client.workflow import TimestampWorkflow
836
+
837
+ datapoints_instances = DatapointsValidator.map_datapoints(
838
+ datapoints=datapoints,
839
+ contexts=contexts,
840
+ media_contexts=media_contexts,
841
+ private_notes=private_notes,
842
+ )
843
+ return self._create_general_order(
844
+ name=name,
845
+ workflow=TimestampWorkflow(instruction=instruction),
846
+ datapoints=datapoints_instances,
847
+ responses_per_datapoint=responses_per_datapoint,
848
+ validation_set_id=validation_set_id,
849
+ filters=filters,
850
+ selections=selections,
851
+ settings=settings,
852
+ )
853
+
854
+ def get_order_by_id(self, order_id: str) -> RapidataOrder:
855
+ """Get an order by ID.
856
+
857
+ Args:
858
+ order_id (str): The ID of the order.
859
+
860
+ Returns:
861
+ RapidataOrder: The Order instance.
862
+ """
863
+ with tracer.start_as_current_span("RapidataOrderManager.get_order_by_id"):
864
+ from rapidata.rapidata_client.order.rapidata_order import RapidataOrder
865
+
866
+ order = self.__openapi_service.order_api.order_order_id_get(order_id)
867
+
868
+ return RapidataOrder(
869
+ order_id=order_id,
870
+ name=order.order_name,
871
+ openapi_service=self.__openapi_service,
872
+ )
873
+
874
+ def find_orders(self, name: str = "", amount: int = 10) -> list[RapidataOrder]:
875
+ """Find your recent orders given criteria. If nothing is provided, it will return the most recent order.
876
+
877
+ Args:
878
+ name (str, optional): The name of the order - matching order will contain the name. Defaults to "" for any order.
879
+ amount (int, optional): The amount of orders to return. Defaults to 10.
880
+
881
+ Returns:
882
+ list[RapidataOrder]: A list of RapidataOrder instances.
883
+ """
884
+ with tracer.start_as_current_span("RapidataOrderManager.find_orders"):
885
+ from rapidata.api_client.models.page_info import PageInfo
886
+ from rapidata.api_client.models.query_model import QueryModel
887
+ from rapidata.api_client.models.root_filter import RootFilter
888
+ from rapidata.api_client.models.filter import Filter
889
+ from rapidata.api_client.models.filter_operator import FilterOperator
890
+ from rapidata.api_client.models.sort_criterion import SortCriterion
891
+ from rapidata.api_client.models.sort_direction import SortDirection
892
+
893
+ order_page_result = self.__openapi_service.order_api.orders_get(
894
+ QueryModel(
895
+ page=PageInfo(index=1, size=amount),
896
+ filter=RootFilter(
897
+ filters=[
898
+ Filter(
899
+ field="OrderName",
900
+ operator=FilterOperator.CONTAINS,
901
+ value=name,
902
+ )
903
+ ]
904
+ ),
905
+ sortCriteria=[
906
+ SortCriterion(
907
+ direction=SortDirection.DESC, propertyName="OrderDate"
908
+ )
909
+ ],
910
+ )
911
+ )
912
+
913
+ orders = [
914
+ self.get_order_by_id(order.id) for order in order_page_result.items
915
+ ]
916
+ return orders
917
+
918
+ def __str__(self) -> str:
919
+ return "RapidataOrderManager"
920
+
921
+ def __repr__(self) -> str:
922
+ return self.__str__()