rapidata 2.27.0__py3-none-any.whl → 2.44.4__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of rapidata might be problematic. Click here for more details.
- rapidata/__init__.py +12 -9
- rapidata/api_client/__init__.py +83 -329
- rapidata/api_client/api/__init__.py +9 -2
- rapidata/api_client/api/asset_api.py +853 -0
- rapidata/api_client/api/audience_api.py +1133 -0
- rapidata/api_client/api/benchmark_api.py +3966 -0
- rapidata/api_client/api/campaign_api.py +232 -207
- rapidata/api_client/api/client_api.py +349 -71
- rapidata/api_client/api/coco_api.py +0 -571
- rapidata/api_client/api/compare_workflow_api.py +11 -10
- rapidata/api_client/api/customer_rapid_api.py +644 -72
- rapidata/api_client/api/datapoint_api.py +8 -797
- rapidata/api_client/api/dataset_api.py +229 -3452
- rapidata/api_client/api/evaluation_workflow_api.py +29 -82
- rapidata/api_client/api/feedback_api.py +11 -281
- rapidata/api_client/api/grouped_ranking_workflow_api.py +319 -0
- rapidata/api_client/api/identity_api.py +83 -1171
- rapidata/api_client/api/leaderboard_api.py +2550 -0
- rapidata/api_client/api/newsletter_api.py +20 -19
- rapidata/api_client/api/order_api.py +758 -5487
- rapidata/api_client/api/participant_api.py +2181 -0
- rapidata/api_client/api/pipeline_api.py +24 -1783
- rapidata/api_client/api/prompt_api.py +320 -0
- rapidata/api_client/api/rapidata_identity_api_api.py +5 -4
- rapidata/api_client/api/sample_api.py +300 -0
- rapidata/api_client/api/simple_workflow_api.py +11 -10
- rapidata/api_client/api/survey_api.py +304 -0
- rapidata/api_client/api/user_rapid_api.py +35 -31
- rapidata/api_client/api/validation_set_api.py +513 -3233
- rapidata/api_client/api/workflow_api.py +32 -825
- rapidata/api_client/api_client.py +2 -2
- rapidata/api_client/configuration.py +16 -29
- rapidata/api_client/exceptions.py +2 -2
- rapidata/api_client/models/__init__.py +65 -307
- rapidata/api_client/models/ab_test_selection_a_inner.py +27 -13
- rapidata/api_client/models/add_campaign_model.py +3 -3
- rapidata/api_client/models/add_user_response_result.py +10 -5
- rapidata/api_client/models/add_validation_rapid_model.py +55 -24
- rapidata/api_client/models/add_validation_rapid_model_asset.py +154 -0
- rapidata/api_client/models/add_validation_rapid_model_context_asset.py +160 -0
- rapidata/api_client/models/add_validation_rapid_model_metadata_inner.py +140 -0
- rapidata/api_client/models/add_validation_rapid_model_truth.py +7 -1
- rapidata/api_client/models/add_validation_rapid_new_model.py +137 -0
- rapidata/api_client/models/add_validation_rapid_new_model_asset.py +182 -0
- rapidata/api_client/models/add_validation_rapid_new_model_truth.py +286 -0
- rapidata/api_client/models/add_validation_text_rapid_model.py +1 -3
- rapidata/api_client/models/age_user_filter_model.py +2 -2
- rapidata/api_client/models/age_user_filter_model_age_group.py +41 -0
- rapidata/api_client/models/aggregated_orders_model.py +98 -0
- rapidata/api_client/models/aggregator_type.py +4 -2
- rapidata/api_client/models/and_filter.py +121 -0
- rapidata/api_client/models/and_filter_filters_inner.py +282 -0
- rapidata/api_client/models/and_user_filter_model.py +106 -0
- rapidata/api_client/models/and_user_filter_model_filters_inner.py +282 -0
- rapidata/api_client/models/are_rapids_active_result.py +2 -2
- rapidata/api_client/models/asset_metadata.py +11 -9
- rapidata/api_client/models/asset_type.py +40 -0
- rapidata/api_client/models/attach_category_rapid_blueprint.py +13 -3
- rapidata/api_client/models/attach_category_rapid_blueprint_category.py +89 -0
- rapidata/api_client/models/audience_status.py +38 -0
- rapidata/api_client/models/benchmark_query_result.py +98 -0
- rapidata/api_client/models/benchmark_query_result_paged_result.py +105 -0
- rapidata/api_client/models/boost_leaderboard_model.py +89 -0
- rapidata/api_client/models/boost_mode.py +37 -0
- rapidata/api_client/models/boost_query_result.py +97 -0
- rapidata/api_client/models/boost_query_result_boost_mode.py +37 -0
- rapidata/api_client/models/boost_query_result_boost_status.py +39 -0
- rapidata/api_client/models/boost_status.py +39 -0
- rapidata/api_client/models/boosting_profile.py +89 -0
- rapidata/api_client/models/box_shape.py +4 -33
- rapidata/api_client/models/campaign_filter.py +98 -0
- rapidata/api_client/models/campaign_query_result.py +15 -13
- rapidata/api_client/models/campaign_status.py +2 -2
- rapidata/api_client/models/change_boost_model.py +89 -0
- rapidata/api_client/models/classification_metadata.py +12 -1
- rapidata/api_client/models/classify_payload.py +14 -15
- rapidata/api_client/models/classify_payload_category.py +89 -0
- rapidata/api_client/models/client_model.py +181 -0
- rapidata/api_client/models/clients_query_result.py +5 -5
- rapidata/api_client/models/clone_order_model.py +6 -8
- rapidata/api_client/models/clone_order_result.py +9 -4
- rapidata/api_client/models/compare_rapid_blueprint.py +5 -3
- rapidata/api_client/models/compare_rapid_blueprint1.py +96 -0
- rapidata/api_client/models/compare_workflow_config.py +34 -23
- rapidata/api_client/models/compare_workflow_config_context_asset.py +174 -0
- rapidata/api_client/models/compare_workflow_config_metadata_value.py +57 -15
- rapidata/api_client/models/compare_workflow_config_model.py +15 -5
- rapidata/api_client/models/compare_workflow_model.py +34 -6
- rapidata/api_client/models/compare_workflow_model1.py +20 -9
- rapidata/api_client/models/compare_workflow_model_context_asset.py +160 -0
- rapidata/api_client/models/compare_workflow_model_metadata_inner.py +154 -0
- rapidata/api_client/models/compare_workflow_model_pair_maker_config.py +1 -1
- rapidata/api_client/models/comparison_operator.py +2 -2
- rapidata/api_client/models/conditional_validation_selection.py +8 -11
- rapidata/api_client/models/conditional_validation_selection_validation_chance.py +103 -0
- rapidata/api_client/models/confidence_interval.py +89 -0
- rapidata/api_client/models/count_metadata.py +12 -1
- rapidata/api_client/models/country_filter.py +98 -0
- rapidata/api_client/models/create_audience_request.py +99 -0
- rapidata/api_client/models/create_audience_result.py +87 -0
- rapidata/api_client/models/create_benchmark_model.py +87 -0
- rapidata/api_client/models/create_benchmark_participant_model.py +87 -0
- rapidata/api_client/models/create_benchmark_participant_result.py +89 -0
- rapidata/api_client/models/create_benchmark_prompt_result.py +87 -0
- rapidata/api_client/models/create_benchmark_result.py +87 -0
- rapidata/api_client/models/create_bridge_token_result.py +2 -2
- rapidata/api_client/models/create_client_model.py +6 -13
- rapidata/api_client/models/create_complex_order_model.py +9 -9
- rapidata/api_client/models/create_complex_order_result.py +6 -4
- rapidata/api_client/models/create_customer_client_result.py +89 -0
- rapidata/api_client/models/create_datapoint_from_files_model.py +3 -3
- rapidata/api_client/models/create_datapoint_from_text_sources_model.py +3 -3
- rapidata/api_client/models/create_datapoint_from_urls_model.py +3 -3
- rapidata/api_client/models/create_datapoint_model.py +134 -0
- rapidata/api_client/models/create_datapoint_model_asset.py +154 -0
- rapidata/api_client/models/create_datapoint_model_context_asset.py +160 -0
- rapidata/api_client/models/create_datapoint_model_metadata_inner.py +154 -0
- rapidata/api_client/models/create_datapoint_result.py +6 -18
- rapidata/api_client/models/create_demographic_rapid_model.py +45 -7
- rapidata/api_client/models/create_demographic_rapid_model_asset.py +160 -0
- rapidata/api_client/models/create_demographic_rapid_model_context_asset.py +160 -0
- rapidata/api_client/models/create_demographic_rapid_model_new.py +119 -0
- rapidata/api_client/models/create_empty_validation_set_result.py +2 -2
- rapidata/api_client/models/create_leaderboard_model.py +140 -0
- rapidata/api_client/models/create_leaderboard_participant_model.py +87 -0
- rapidata/api_client/models/create_leaderboard_participant_result.py +89 -0
- rapidata/api_client/models/create_leaderboard_result.py +99 -0
- rapidata/api_client/models/create_order_model.py +30 -101
- rapidata/api_client/models/create_order_model_referee.py +12 -12
- rapidata/api_client/models/create_order_model_workflow.py +35 -21
- rapidata/api_client/models/create_order_result.py +6 -4
- rapidata/api_client/models/create_rapid_result.py +2 -2
- rapidata/api_client/models/create_sample_model.py +93 -0
- rapidata/api_client/models/create_sample_model_asset.py +154 -0
- rapidata/api_client/models/create_sample_model_obsolete.py +87 -0
- rapidata/api_client/models/create_simple_pipeline_model_pipeline_steps_inner.py +8 -22
- rapidata/api_client/models/create_unsupported_order_model.py +6 -6
- rapidata/api_client/models/create_validation_set_model.py +5 -5
- rapidata/api_client/models/datapoint_model.py +3 -3
- rapidata/api_client/models/datapoint_model_paged_result.py +105 -0
- rapidata/api_client/models/datapoint_state.py +2 -2
- rapidata/api_client/models/demographic_filter.py +100 -0
- rapidata/api_client/models/dynamic_client_registration_request.py +160 -0
- rapidata/api_client/models/early_stopping_referee_model.py +3 -3
- rapidata/api_client/models/effort_capped_selection.py +106 -0
- rapidata/api_client/models/elo_config.py +2 -2
- rapidata/api_client/models/elo_config_model.py +6 -6
- rapidata/api_client/models/entity_tag_header_value.py +93 -0
- rapidata/api_client/models/evaluation_workflow_config.py +13 -3
- rapidata/api_client/models/evaluation_workflow_model.py +16 -6
- rapidata/api_client/models/existing_asset_input.py +120 -0
- rapidata/api_client/models/existing_asset_input_metadata_value.py +126 -0
- rapidata/api_client/models/feature_flag.py +2 -2
- rapidata/api_client/models/feature_flag_model.py +6 -6
- rapidata/api_client/models/feedback_model.py +7 -7
- rapidata/api_client/models/file_asset.py +3 -5
- rapidata/api_client/models/file_asset_input.py +104 -0
- rapidata/api_client/models/file_asset_input1.py +104 -0
- rapidata/api_client/models/file_asset_input1_file.py +168 -0
- rapidata/api_client/models/file_asset_input2.py +104 -0
- rapidata/api_client/models/file_asset_input3.py +104 -0
- rapidata/api_client/models/file_asset_input_file.py +168 -0
- rapidata/api_client/models/file_asset_metadata_value.py +252 -0
- rapidata/api_client/models/file_asset_model_metadata_value.py +43 -71
- rapidata/api_client/models/file_stream_result.py +122 -0
- rapidata/api_client/models/file_type.py +39 -0
- rapidata/api_client/models/file_type_metadata.py +110 -0
- rapidata/api_client/models/file_type_metadata_model.py +97 -0
- rapidata/api_client/models/filter.py +7 -25
- rapidata/api_client/models/filter_operator.py +3 -2
- rapidata/api_client/models/fork_benchmark_result.py +87 -0
- rapidata/api_client/models/form_file_wrapper.py +135 -0
- rapidata/api_client/models/free_text_payload.py +10 -3
- rapidata/api_client/models/free_text_rapid_blueprint.py +10 -3
- rapidata/api_client/models/gender_user_filter_model.py +2 -2
- rapidata/api_client/models/gender_user_filter_model_gender.py +38 -0
- rapidata/api_client/models/get_asset_metadata_result.py +100 -0
- rapidata/api_client/models/get_audience_by_id_result.py +111 -0
- rapidata/api_client/models/get_available_validation_sets_result.py +2 -2
- rapidata/api_client/models/get_benchmark_by_id_query.py +96 -0
- rapidata/api_client/models/get_benchmark_by_id_query_result.py +94 -0
- rapidata/api_client/models/get_benchmark_by_id_query_result_paged_result.py +105 -0
- rapidata/api_client/models/get_benchmark_by_id_result.py +96 -0
- rapidata/api_client/models/get_boost_result.py +97 -0
- rapidata/api_client/models/get_boost_result_boost_mode.py +37 -0
- rapidata/api_client/models/get_boost_result_boost_status.py +39 -0
- rapidata/api_client/models/get_compare_ab_summary_result.py +5 -5
- rapidata/api_client/models/get_compare_workflow_results_model.py +7 -7
- rapidata/api_client/models/get_compare_workflow_results_result.py +5 -5
- rapidata/api_client/models/get_datapoint_by_id_result.py +10 -21
- rapidata/api_client/models/get_datapoint_by_id_result_asset.py +170 -0
- rapidata/api_client/models/get_dataset_by_id_result.py +2 -2
- rapidata/api_client/models/get_dataset_progress_result.py +2 -2
- rapidata/api_client/models/get_evaluation_workflow_results_model.py +119 -0
- rapidata/api_client/models/get_failed_datapoints_result.py +5 -5
- rapidata/api_client/models/get_failed_datapoints_result_datapoint.py +100 -0
- rapidata/api_client/models/get_file_metadata_result.py +100 -0
- rapidata/api_client/models/get_grouped_ranking_workflow_results_model.py +106 -0
- rapidata/api_client/models/get_grouped_ranking_workflow_results_result.py +97 -0
- rapidata/api_client/models/get_grouped_ranking_workflow_results_result_paged_result.py +105 -0
- rapidata/api_client/models/get_leaderboard_by_id_result.py +135 -0
- rapidata/api_client/models/get_order_by_id_result.py +12 -5
- rapidata/api_client/models/get_participant_by_id_result.py +91 -0
- rapidata/api_client/models/get_pipeline_by_id_result.py +5 -5
- rapidata/api_client/models/get_public_orders_result.py +2 -2
- rapidata/api_client/models/get_public_responses_result.py +95 -0
- rapidata/api_client/models/get_public_responses_result_response.py +112 -0
- rapidata/api_client/models/get_rapid_responses_result.py +6 -12
- rapidata/api_client/models/get_recommended_validation_set_result.py +95 -0
- rapidata/api_client/models/get_responses_for_rapid_result.py +106 -0
- rapidata/api_client/models/get_responses_for_rapid_result_response.py +103 -0
- rapidata/api_client/models/get_responses_for_rapid_result_response_result.py +266 -0
- rapidata/api_client/models/get_responses_result.py +5 -5
- rapidata/api_client/models/get_responses_result_response.py +103 -0
- rapidata/api_client/models/get_sample_by_id_result.py +125 -0
- rapidata/api_client/models/get_simple_workflow_results_model.py +20 -15
- rapidata/api_client/models/get_standing_by_id_result.py +96 -0
- rapidata/api_client/models/get_validation_rapids_result.py +32 -41
- rapidata/api_client/models/get_validation_set_by_id_result.py +10 -4
- rapidata/api_client/models/get_workflow_by_id_result.py +5 -5
- rapidata/api_client/models/get_workflow_by_id_result_workflow.py +23 -9
- rapidata/api_client/models/get_workflow_progress_result.py +5 -11
- rapidata/api_client/models/get_workflow_results_result.py +34 -23
- rapidata/api_client/models/get_workflow_results_result_response.py +103 -0
- rapidata/api_client/models/google_one_tap_login_model.py +4 -4
- rapidata/api_client/models/grouped_ranking_workflow_config.py +155 -0
- rapidata/api_client/models/grouped_ranking_workflow_config_context_assets_value.py +170 -0
- rapidata/api_client/models/grouped_ranking_workflow_model.py +147 -0
- rapidata/api_client/models/grouped_ranking_workflow_model1.py +121 -0
- rapidata/api_client/models/i_artifact_model.py +182 -0
- rapidata/api_client/models/i_artifact_model_campaign_artifact_model.py +98 -0
- rapidata/api_client/models/i_artifact_model_dataset_artifact_model.py +98 -0
- rapidata/api_client/models/i_artifact_model_file_artifact_model.py +98 -0
- rapidata/api_client/models/i_artifact_model_workflow_artifact_model.py +98 -0
- rapidata/api_client/models/i_artifact_model_workflow_config_artifact_model.py +102 -0
- rapidata/api_client/models/i_asset.py +170 -0
- rapidata/api_client/models/i_asset_file_asset.py +111 -0
- rapidata/api_client/models/i_asset_input.py +156 -0
- rapidata/api_client/models/i_asset_input_existing_asset_input.py +118 -0
- rapidata/api_client/models/i_asset_input_multi_asset_input.py +128 -0
- rapidata/api_client/models/i_asset_input_text_asset_input.py +118 -0
- rapidata/api_client/models/i_asset_model.py +170 -0
- rapidata/api_client/models/i_asset_model_file_asset_model.py +113 -0
- rapidata/api_client/models/i_asset_model_multi_asset_model.py +123 -0
- rapidata/api_client/models/i_asset_model_null_asset_model.py +111 -0
- rapidata/api_client/models/i_asset_model_text_asset_model.py +113 -0
- rapidata/api_client/models/i_asset_multi_asset.py +121 -0
- rapidata/api_client/models/i_asset_null_asset.py +109 -0
- rapidata/api_client/models/i_asset_text_asset.py +111 -0
- rapidata/api_client/models/i_campaign_filter.py +282 -0
- rapidata/api_client/models/i_campaign_filter_and_filter.py +117 -0
- rapidata/api_client/models/i_campaign_filter_campaign_filter.py +98 -0
- rapidata/api_client/models/i_campaign_filter_country_filter.py +98 -0
- rapidata/api_client/models/i_campaign_filter_demographic_filter.py +100 -0
- rapidata/api_client/models/i_campaign_filter_language_filter.py +98 -0
- rapidata/api_client/models/i_campaign_filter_new_user_filter.py +96 -0
- rapidata/api_client/models/i_campaign_filter_not_filter.py +113 -0
- rapidata/api_client/models/i_campaign_filter_or_filter.py +117 -0
- rapidata/api_client/models/i_campaign_filter_response_count_filter.py +103 -0
- rapidata/api_client/models/i_campaign_filter_user_action_restriction_filter.py +106 -0
- rapidata/api_client/models/i_campaign_filter_user_score_filter.py +102 -0
- rapidata/api_client/models/i_campaign_filter_user_state_filter.py +106 -0
- rapidata/api_client/models/i_dataset_metadata_input.py +154 -0
- rapidata/api_client/models/i_dataset_metadata_input_prompt_asset_metadata_input.py +100 -0
- rapidata/api_client/models/i_dataset_metadata_input_prompt_metadata_input.py +96 -0
- rapidata/api_client/models/i_dataset_metadata_input_transcription_metadata_input.py +96 -0
- rapidata/api_client/models/i_dataset_model.py +126 -0
- rapidata/api_client/models/i_dataset_model_clone_dataset_model.py +98 -0
- rapidata/api_client/models/i_metadata.py +252 -0
- rapidata/api_client/models/i_metadata_classification_metadata.py +109 -0
- rapidata/api_client/models/i_metadata_count_metadata.py +109 -0
- rapidata/api_client/models/i_metadata_file_type_metadata.py +110 -0
- rapidata/api_client/models/i_metadata_image_dimension_metadata.py +111 -0
- rapidata/api_client/models/i_metadata_input.py +126 -0
- rapidata/api_client/models/i_metadata_input_text_metadata_input.py +111 -0
- rapidata/api_client/models/i_metadata_location_metadata.py +111 -0
- rapidata/api_client/models/i_metadata_model.py +252 -0
- rapidata/api_client/models/i_metadata_model_classification_metadata_model.py +96 -0
- rapidata/api_client/models/i_metadata_model_count_metadata_model.py +96 -0
- rapidata/api_client/models/i_metadata_model_file_type_metadata_model.py +97 -0
- rapidata/api_client/models/i_metadata_model_image_dimension_metadata_model.py +98 -0
- rapidata/api_client/models/i_metadata_model_location_metadata_model.py +98 -0
- rapidata/api_client/models/i_metadata_model_original_filename_metadata_model.py +96 -0
- rapidata/api_client/models/i_metadata_model_source_url_metadata_model.py +96 -0
- rapidata/api_client/models/i_metadata_model_streams_metadata_model.py +100 -0
- rapidata/api_client/models/i_metadata_model_text_metadata_model.py +101 -0
- rapidata/api_client/models/i_metadata_model_video_duration_metadata_model.py +97 -0
- rapidata/api_client/models/i_metadata_original_filename_metadata.py +109 -0
- rapidata/api_client/models/i_metadata_source_url_metadata.py +109 -0
- rapidata/api_client/models/i_metadata_streams_metadata.py +113 -0
- rapidata/api_client/models/i_metadata_text_metadata.py +114 -0
- rapidata/api_client/models/i_metadata_video_duration_metadata.py +110 -0
- rapidata/api_client/models/i_order_workflow_model.py +168 -0
- rapidata/api_client/models/i_order_workflow_model_compare_workflow_model.py +146 -0
- rapidata/api_client/models/i_order_workflow_model_evaluation_workflow_model.py +108 -0
- rapidata/api_client/models/i_order_workflow_model_grouped_ranking_workflow_model.py +147 -0
- rapidata/api_client/models/i_order_workflow_model_simple_workflow_model.py +110 -0
- rapidata/api_client/models/i_pair_maker_config.py +126 -0
- rapidata/api_client/models/i_pair_maker_config_model.py +126 -0
- rapidata/api_client/models/i_pair_maker_config_model_online_pair_maker_config_model.py +98 -0
- rapidata/api_client/models/i_pair_maker_config_online_pair_maker_config.py +98 -0
- rapidata/api_client/models/i_pair_maker_information.py +126 -0
- rapidata/api_client/models/i_pair_maker_information_online_pair_maker_information.py +100 -0
- rapidata/api_client/models/i_pipeline_artifact_model.py +126 -0
- rapidata/api_client/models/i_pipeline_artifact_model_create_dataset_artifact_model.py +102 -0
- rapidata/api_client/models/i_pipeline_model.py +126 -0
- rapidata/api_client/models/i_pipeline_model_create_simple_pipeline_model.py +116 -0
- rapidata/api_client/models/i_pipeline_step_model.py +168 -0
- rapidata/api_client/models/i_pipeline_step_model_dataset_evaluation_step_model.py +102 -0
- rapidata/api_client/models/i_pipeline_step_model_send_completion_mail_step_model.py +98 -0
- rapidata/api_client/models/i_pipeline_step_model_workflow_aggregation_step_model.py +103 -0
- rapidata/api_client/models/i_pipeline_step_model_workflow_labeling_step_model.py +96 -0
- rapidata/api_client/models/i_rapid_blueprint.py +252 -0
- rapidata/api_client/models/i_rapid_blueprint_attach_category_rapid_blueprint.py +108 -0
- rapidata/api_client/models/i_rapid_blueprint_bounding_box_rapid_blueprint.py +96 -0
- rapidata/api_client/models/i_rapid_blueprint_compare_rapid_blueprint.py +98 -0
- rapidata/api_client/models/i_rapid_blueprint_free_text_rapid_blueprint.py +103 -0
- rapidata/api_client/models/i_rapid_blueprint_line_rapid_blueprint.py +96 -0
- rapidata/api_client/models/i_rapid_blueprint_locate_rapid_blueprint.py +96 -0
- rapidata/api_client/models/i_rapid_blueprint_named_entity_rapid_blueprint.py +98 -0
- rapidata/api_client/models/i_rapid_blueprint_polygon_rapid_blueprint.py +96 -0
- rapidata/api_client/models/i_rapid_blueprint_scrub_rapid_blueprint.py +96 -0
- rapidata/api_client/models/i_rapid_blueprint_transcription_rapid_blueprint.py +96 -0
- rapidata/api_client/models/i_rapid_payload.py +252 -0
- rapidata/api_client/models/i_rapid_payload_bounding_box_payload.py +96 -0
- rapidata/api_client/models/i_rapid_payload_classify_payload.py +106 -0
- rapidata/api_client/models/i_rapid_payload_compare_payload.py +96 -0
- rapidata/api_client/models/i_rapid_payload_free_text_payload.py +103 -0
- rapidata/api_client/models/i_rapid_payload_line_payload.py +96 -0
- rapidata/api_client/models/i_rapid_payload_locate_payload.py +96 -0
- rapidata/api_client/models/i_rapid_payload_named_entity_payload.py +98 -0
- rapidata/api_client/models/i_rapid_payload_polygon_payload.py +96 -0
- rapidata/api_client/models/i_rapid_payload_scrub_payload.py +96 -0
- rapidata/api_client/models/i_rapid_payload_transcription_payload.py +106 -0
- rapidata/api_client/models/i_rapid_result.py +266 -0
- rapidata/api_client/models/i_rapid_result_attach_category_result.py +98 -0
- rapidata/api_client/models/i_rapid_result_bounding_box_result.py +106 -0
- rapidata/api_client/models/i_rapid_result_compare_result.py +98 -0
- rapidata/api_client/models/i_rapid_result_free_text_result.py +98 -0
- rapidata/api_client/models/i_rapid_result_line_result.py +106 -0
- rapidata/api_client/models/i_rapid_result_locate_result.py +106 -0
- rapidata/api_client/models/i_rapid_result_named_entity_result.py +106 -0
- rapidata/api_client/models/i_rapid_result_polygon_result.py +106 -0
- rapidata/api_client/models/i_rapid_result_scrub_result.py +98 -0
- rapidata/api_client/models/i_rapid_result_skip_result.py +96 -0
- rapidata/api_client/models/i_rapid_result_transcription_result.py +106 -0
- rapidata/api_client/models/i_referee_config.py +154 -0
- rapidata/api_client/models/i_referee_config_naive_referee_config.py +96 -0
- rapidata/api_client/models/i_referee_config_never_ending_referee_config.py +94 -0
- rapidata/api_client/models/i_referee_config_probabilistic_attach_category_referee_config.py +98 -0
- rapidata/api_client/models/i_referee_info.py +154 -0
- rapidata/api_client/models/i_referee_info_naive_referee_info.py +96 -0
- rapidata/api_client/models/i_referee_info_never_ending_referee_info.py +94 -0
- rapidata/api_client/models/i_referee_info_probabilistic_attach_category_referee_info.py +98 -0
- rapidata/api_client/models/i_referee_model.py +140 -0
- rapidata/api_client/models/i_referee_model_early_stopping_referee_model.py +98 -0
- rapidata/api_client/models/i_referee_model_naive_referee_model.py +96 -0
- rapidata/api_client/models/i_selection.py +240 -0
- rapidata/api_client/models/i_selection_ab_test_selection.py +122 -0
- rapidata/api_client/models/i_selection_capped_selection.py +108 -0
- rapidata/api_client/models/i_selection_conditional_validation_selection.py +110 -0
- rapidata/api_client/models/i_selection_demographic_selection.py +98 -0
- rapidata/api_client/models/i_selection_effort_capped_selection.py +101 -0
- rapidata/api_client/models/i_selection_labeling_selection.py +103 -0
- rapidata/api_client/models/i_selection_shuffling_selection.py +106 -0
- rapidata/api_client/models/i_selection_static_selection.py +96 -0
- rapidata/api_client/models/i_selection_validation_selection.py +98 -0
- rapidata/api_client/models/i_user_filter_model.py +282 -0
- rapidata/api_client/models/i_user_filter_model_age_user_filter_model.py +104 -0
- rapidata/api_client/models/i_user_filter_model_and_user_filter_model.py +106 -0
- rapidata/api_client/models/i_user_filter_model_campaign_user_filter_model.py +96 -0
- rapidata/api_client/models/i_user_filter_model_country_user_filter_model.py +96 -0
- rapidata/api_client/models/i_user_filter_model_custom_user_filter_model.py +98 -0
- rapidata/api_client/models/i_user_filter_model_gender_user_filter_model.py +104 -0
- rapidata/api_client/models/i_user_filter_model_language_user_filter_model.py +96 -0
- rapidata/api_client/models/i_user_filter_model_new_user_filter_model.py +94 -0
- rapidata/api_client/models/i_user_filter_model_not_user_filter_model.py +102 -0
- rapidata/api_client/models/i_user_filter_model_or_user_filter_model.py +106 -0
- rapidata/api_client/models/i_user_filter_model_response_count_user_filter_model.py +101 -0
- rapidata/api_client/models/i_user_filter_model_user_score_user_filter_model.py +105 -0
- rapidata/api_client/models/i_validation_metadata_input.py +140 -0
- rapidata/api_client/models/i_validation_metadata_input_prompt_asset_metadata_input.py +100 -0
- rapidata/api_client/models/i_validation_metadata_input_prompt_metadata_input.py +96 -0
- rapidata/api_client/models/i_validation_truth.py +280 -0
- rapidata/api_client/models/i_validation_truth_attach_category_truth.py +96 -0
- rapidata/api_client/models/i_validation_truth_bounding_box_truth.py +102 -0
- rapidata/api_client/models/i_validation_truth_compare_truth.py +96 -0
- rapidata/api_client/models/i_validation_truth_empty_validation_truth.py +94 -0
- rapidata/api_client/models/i_validation_truth_line_truth.py +94 -0
- rapidata/api_client/models/i_validation_truth_locate_box_truth.py +104 -0
- rapidata/api_client/models/i_validation_truth_multi_compare_truth.py +96 -0
- rapidata/api_client/models/i_validation_truth_named_entity_truth.py +104 -0
- rapidata/api_client/models/i_validation_truth_polygon_truth.py +94 -0
- rapidata/api_client/models/i_validation_truth_scrub_truth.py +104 -0
- rapidata/api_client/models/i_validation_truth_skip_truth.py +94 -0
- rapidata/api_client/models/i_validation_truth_transcription_truth.py +115 -0
- rapidata/api_client/models/i_workflow_config.py +168 -0
- rapidata/api_client/models/i_workflow_config_compare_workflow_config.py +142 -0
- rapidata/api_client/models/i_workflow_config_evaluation_workflow_config.py +114 -0
- rapidata/api_client/models/i_workflow_config_grouped_ranking_workflow_config.py +155 -0
- rapidata/api_client/models/i_workflow_config_simple_workflow_config.py +116 -0
- rapidata/api_client/models/i_workflow_model.py +168 -0
- rapidata/api_client/models/i_workflow_model_compare_workflow_model.py +145 -0
- rapidata/api_client/models/i_workflow_model_evaluation_workflow_model.py +115 -0
- rapidata/api_client/models/i_workflow_model_grouped_ranking_workflow_model.py +121 -0
- rapidata/api_client/models/i_workflow_model_simple_workflow_model.py +119 -0
- rapidata/api_client/models/image_dimension_metadata.py +12 -1
- rapidata/api_client/models/inquire_file_metadata_result.py +100 -0
- rapidata/api_client/models/inspect_report_result.py +2 -2
- rapidata/api_client/models/json_web_key.py +224 -0
- rapidata/api_client/models/json_web_key_set.py +95 -0
- rapidata/api_client/models/labeling_selection.py +11 -13
- rapidata/api_client/models/language_filter.py +98 -0
- rapidata/api_client/models/leaderboard_query_result.py +135 -0
- rapidata/api_client/models/leaderboard_query_result_paged_result.py +105 -0
- rapidata/api_client/models/leaderboards_query_result.py +135 -0
- rapidata/api_client/models/line_result.py +3 -3
- rapidata/api_client/models/line_result_line.py +97 -0
- rapidata/api_client/models/line_result_line_point.py +89 -0
- rapidata/api_client/models/local_file_wrapper.py +120 -0
- rapidata/api_client/models/locate_coordinate.py +4 -13
- rapidata/api_client/models/location_metadata.py +12 -1
- rapidata/api_client/models/logic_operator.py +2 -2
- rapidata/api_client/models/metadata_i_order_metadata_input.py +154 -0
- rapidata/api_client/models/metadata_i_order_metadata_input_metadata_prompt_asset_metadata_input.py +100 -0
- rapidata/api_client/models/metadata_i_order_metadata_input_metadata_prompt_metadata_input.py +96 -0
- rapidata/api_client/models/metadata_i_order_metadata_input_metadata_transcription_metadata_input.py +96 -0
- rapidata/api_client/models/metadata_prompt_asset_metadata_input.py +100 -0
- rapidata/api_client/models/metadata_prompt_metadata_input.py +96 -0
- rapidata/api_client/models/metadata_transcription_metadata_input.py +96 -0
- rapidata/api_client/models/multi_asset.py +6 -6
- rapidata/api_client/models/multi_asset_assets_inner.py +170 -0
- rapidata/api_client/models/multi_asset_input.py +130 -0
- rapidata/api_client/models/multi_asset_input1.py +110 -0
- rapidata/api_client/models/multi_asset_input1_assets_inner.py +198 -0
- rapidata/api_client/models/multi_asset_input2.py +110 -0
- rapidata/api_client/models/multi_asset_input3.py +110 -0
- rapidata/api_client/models/multi_asset_input3_assets_inner.py +198 -0
- rapidata/api_client/models/multi_asset_input_assets_inner.py +156 -0
- rapidata/api_client/models/multi_asset_model.py +3 -3
- rapidata/api_client/models/naive_referee_model.py +2 -2
- rapidata/api_client/models/named_classification.py +4 -13
- rapidata/api_client/models/new_user_filter.py +96 -0
- rapidata/api_client/models/newsletter_model.py +6 -6
- rapidata/api_client/models/not_available_yet_result.py +4 -13
- rapidata/api_client/models/not_filter.py +117 -0
- rapidata/api_client/models/not_user_filter_model.py +3 -3
- rapidata/api_client/models/null_asset.py +3 -5
- rapidata/api_client/models/online_pair_maker_config_model.py +3 -3
- rapidata/api_client/models/or_filter.py +121 -0
- rapidata/api_client/models/or_user_filter_model.py +3 -3
- rapidata/api_client/models/order_model.py +15 -14
- rapidata/api_client/models/order_state.py +2 -2
- rapidata/api_client/models/original_filename_metadata.py +12 -1
- rapidata/api_client/models/page_info.py +2 -7
- rapidata/api_client/models/paged_result_aggregated_orders_model.py +105 -0
- rapidata/api_client/models/paged_result_benchmark_query_result.py +105 -0
- rapidata/api_client/models/paged_result_campaign_query_result.py +105 -0
- rapidata/api_client/models/paged_result_clients_query_result.py +105 -0
- rapidata/api_client/models/paged_result_datapoint_model.py +105 -0
- rapidata/api_client/models/paged_result_get_compare_workflow_results_result.py +105 -0
- rapidata/api_client/models/paged_result_get_grouped_ranking_workflow_results_result.py +105 -0
- rapidata/api_client/models/paged_result_get_validation_rapids_result.py +105 -0
- rapidata/api_client/models/paged_result_get_workflow_results_result.py +105 -0
- rapidata/api_client/models/paged_result_i_workflow_model.py +105 -0
- rapidata/api_client/models/paged_result_leaderboard_query_result.py +105 -0
- rapidata/api_client/models/paged_result_leaderboards_query_result.py +105 -0
- rapidata/api_client/models/paged_result_of_aggregated_orders_model.py +103 -0
- rapidata/api_client/models/paged_result_of_benchmark_query_result.py +103 -0
- rapidata/api_client/models/paged_result_of_campaign_query_result.py +103 -0
- rapidata/api_client/models/paged_result_of_clients_query_result.py +103 -0
- rapidata/api_client/models/paged_result_of_get_compare_workflow_results_result.py +103 -0
- rapidata/api_client/models/paged_result_of_get_grouped_ranking_workflow_results_result.py +103 -0
- rapidata/api_client/models/paged_result_of_get_validation_rapids_result.py +103 -0
- rapidata/api_client/models/paged_result_of_get_workflow_results_result.py +103 -0
- rapidata/api_client/models/paged_result_of_i_workflow_model.py +103 -0
- rapidata/api_client/models/paged_result_of_leaderboards_query_result.py +103 -0
- rapidata/api_client/models/paged_result_of_order_model.py +103 -0
- rapidata/api_client/models/paged_result_of_participant_by_benchmark.py +103 -0
- rapidata/api_client/models/paged_result_of_prompt_by_benchmark_result.py +103 -0
- rapidata/api_client/models/paged_result_of_query_audiences_result.py +103 -0
- rapidata/api_client/models/paged_result_of_query_datapoints_by_dataset_id_result.py +103 -0
- rapidata/api_client/models/paged_result_of_query_validation_rapid_eligibility_result.py +103 -0
- rapidata/api_client/models/paged_result_of_rapid_model.py +103 -0
- rapidata/api_client/models/paged_result_of_runs_by_leaderboard_result.py +103 -0
- rapidata/api_client/models/paged_result_of_sample_by_identifier.py +103 -0
- rapidata/api_client/models/paged_result_of_sample_by_participant.py +103 -0
- rapidata/api_client/models/paged_result_of_standing_by_leaderboard.py +103 -0
- rapidata/api_client/models/paged_result_of_validation_set_model.py +103 -0
- rapidata/api_client/models/paged_result_order_model.py +105 -0
- rapidata/api_client/models/paged_result_participant_by_benchmark.py +105 -0
- rapidata/api_client/models/paged_result_potential_validation_rapid.py +105 -0
- rapidata/api_client/models/paged_result_prompt_by_benchmark_result.py +105 -0
- rapidata/api_client/models/paged_result_query_audiences_result.py +105 -0
- rapidata/api_client/models/paged_result_query_datapoints_by_dataset_id_result.py +105 -0
- rapidata/api_client/models/paged_result_query_validation_rapid_eligibility_result.py +105 -0
- rapidata/api_client/models/paged_result_rapid_model.py +105 -0
- rapidata/api_client/models/paged_result_runs_by_leaderboard_result.py +105 -0
- rapidata/api_client/models/paged_result_sample_by_identifier.py +105 -0
- rapidata/api_client/models/paged_result_sample_by_participant.py +105 -0
- rapidata/api_client/models/paged_result_standing_by_leaderboard.py +105 -0
- rapidata/api_client/models/paged_result_validation_set_model.py +105 -0
- rapidata/api_client/models/participant_by_benchmark.py +94 -0
- rapidata/api_client/models/participant_by_benchmark_paged_result.py +105 -0
- rapidata/api_client/models/participant_by_leaderboard.py +113 -0
- rapidata/api_client/models/participant_by_leaderboard_paged_result.py +105 -0
- rapidata/api_client/models/participant_status.py +38 -0
- rapidata/api_client/models/pipeline_id_workflow_config_put_request.py +140 -0
- rapidata/api_client/models/polygon_result.py +3 -3
- rapidata/api_client/models/polygon_result_coordinate.py +89 -0
- rapidata/api_client/models/polygon_result_shape.py +95 -0
- rapidata/api_client/models/potential_validation_rapid.py +103 -0
- rapidata/api_client/models/potential_validation_rapid_paged_result.py +105 -0
- rapidata/api_client/models/potential_validation_rapid_truth.py +280 -0
- rapidata/api_client/models/preliminary_download_model.py +5 -5
- rapidata/api_client/models/preview_order_model.py +87 -0
- rapidata/api_client/models/problem_details.py +2 -20
- rapidata/api_client/models/prompt_asset_metadata_input.py +6 -8
- rapidata/api_client/models/prompt_asset_metadata_input_asset.py +154 -0
- rapidata/api_client/models/prompt_by_benchmark_result.py +112 -0
- rapidata/api_client/models/prompt_by_benchmark_result_paged_result.py +105 -0
- rapidata/api_client/models/prompt_by_leaderboard_result.py +90 -0
- rapidata/api_client/models/prompt_by_leaderboard_result_paged_result.py +105 -0
- rapidata/api_client/models/prompt_metadata.py +12 -1
- rapidata/api_client/models/prompt_metadata_input.py +2 -2
- rapidata/api_client/models/prompt_type.py +38 -0
- rapidata/api_client/models/proxy_file_wrapper.py +129 -0
- rapidata/api_client/models/public_order_model.py +2 -2
- rapidata/api_client/models/public_rapid_response.py +112 -0
- rapidata/api_client/models/query_audiences_result.py +111 -0
- rapidata/api_client/models/query_datapoints_by_dataset_id_result.py +95 -0
- rapidata/api_client/models/query_model.py +10 -5
- rapidata/api_client/models/query_validation_model.py +97 -0
- rapidata/api_client/models/query_validation_rapid_eligibility_model_query_validation_model.py +107 -0
- rapidata/api_client/models/query_validation_rapid_eligibility_result.py +103 -0
- rapidata/api_client/models/query_validation_rapid_eligibility_result_truth.py +280 -0
- rapidata/api_client/models/rapid_issue.py +2 -2
- rapidata/api_client/models/rapid_modality.py +46 -0
- rapidata/api_client/models/rapid_model.py +33 -49
- rapidata/api_client/models/rapid_result_model.py +7 -7
- rapidata/api_client/models/rapid_skipped_model.py +5 -5
- rapidata/api_client/models/rapid_state.py +2 -2
- rapidata/api_client/models/read_bridge_token_keys_result.py +10 -24
- rapidata/api_client/models/reference_asset_input.py +100 -0
- rapidata/api_client/models/report_model.py +9 -15
- rapidata/api_client/models/response_count_filter.py +103 -0
- rapidata/api_client/models/response_count_user_filter_model.py +2 -8
- rapidata/api_client/models/retrieval_mode.py +2 -2
- rapidata/api_client/models/root_filter.py +5 -14
- rapidata/api_client/models/run_status.py +39 -0
- rapidata/api_client/models/runs_by_leaderboard_result.py +104 -0
- rapidata/api_client/models/runs_by_leaderboard_result_paged_result.py +105 -0
- rapidata/api_client/models/sample_by_identifier.py +125 -0
- rapidata/api_client/models/sample_by_identifier_paged_result.py +105 -0
- rapidata/api_client/models/sample_by_participant.py +121 -0
- rapidata/api_client/models/sample_by_participant_paged_result.py +105 -0
- rapidata/api_client/models/scrub_range.py +2 -2
- rapidata/api_client/models/send_survey_model.py +87 -0
- rapidata/api_client/models/simple_workflow_config.py +15 -7
- rapidata/api_client/models/simple_workflow_config_blueprint.py +37 -23
- rapidata/api_client/models/simple_workflow_config_model.py +11 -3
- rapidata/api_client/models/simple_workflow_model.py +14 -4
- rapidata/api_client/models/simple_workflow_model1.py +4 -11
- rapidata/api_client/models/simple_workflow_model_blueprint.py +1 -1
- rapidata/api_client/models/sort_criterion.py +5 -11
- rapidata/api_client/models/sort_direction.py +2 -2
- rapidata/api_client/models/source_url_metadata.py +12 -1
- rapidata/api_client/models/standing_by_benchmark.py +113 -0
- rapidata/api_client/models/standing_by_leaderboard.py +113 -0
- rapidata/api_client/models/standing_by_leaderboard_paged_result.py +105 -0
- rapidata/api_client/models/standing_status.py +38 -0
- rapidata/api_client/models/standings_by_benchmark_result.py +95 -0
- rapidata/api_client/models/standings_by_leaderboard_result.py +95 -0
- rapidata/api_client/models/start_preliminary_download_result.py +87 -0
- rapidata/api_client/models/sticky_state.py +3 -2
- rapidata/api_client/models/stream_file_wrapper.py +138 -0
- rapidata/api_client/models/streams_metadata.py +113 -0
- rapidata/api_client/models/streams_metadata_model.py +100 -0
- rapidata/api_client/models/string_segment.py +105 -0
- rapidata/api_client/models/submit_coco_model.py +1 -3
- rapidata/api_client/models/submit_order_model.py +87 -0
- rapidata/api_client/models/submit_participant_result.py +89 -0
- rapidata/api_client/models/submit_prompt_model.py +107 -0
- rapidata/api_client/models/submit_prompt_model_prompt_asset.py +202 -0
- rapidata/api_client/models/tags_by_benchmark_result.py +87 -0
- rapidata/api_client/models/text_asset.py +3 -5
- rapidata/api_client/models/text_asset_input.py +120 -0
- rapidata/api_client/models/text_metadata.py +18 -2
- rapidata/api_client/models/text_metadata_input.py +111 -0
- rapidata/api_client/models/text_metadata_model.py +7 -2
- rapidata/api_client/models/transcription_metadata.py +9 -1
- rapidata/api_client/models/transcription_metadata_input.py +2 -2
- rapidata/api_client/models/transcription_word.py +2 -2
- rapidata/api_client/models/translated_string.py +2 -2
- rapidata/api_client/models/unlock_order_result.py +2 -2
- rapidata/api_client/models/update_audience_request.py +102 -0
- rapidata/api_client/models/update_benchmark_model.py +99 -0
- rapidata/api_client/models/update_benchmark_name_model.py +87 -0
- rapidata/api_client/models/update_campaign_model.py +11 -11
- rapidata/api_client/models/update_dataset_name_model.py +5 -5
- rapidata/api_client/models/update_dimensions_model.py +3 -3
- rapidata/api_client/models/update_leaderboard_model.py +106 -0
- rapidata/api_client/models/update_leaderboard_name_model.py +87 -0
- rapidata/api_client/models/update_leaderboard_response_config_model.py +89 -0
- rapidata/api_client/models/update_order_name_model.py +5 -5
- rapidata/api_client/models/update_participant_model.py +92 -0
- rapidata/api_client/models/update_participant_name_model.py +87 -0
- rapidata/api_client/models/update_priority_model.py +87 -0
- rapidata/api_client/models/update_prompt_tags_model.py +87 -0
- rapidata/api_client/models/update_should_alert_model.py +87 -0
- rapidata/api_client/models/update_validation_rapid_model.py +28 -10
- rapidata/api_client/models/update_validation_rapid_model_context_asset.py +160 -0
- rapidata/api_client/models/update_validation_set_model.py +120 -0
- rapidata/api_client/models/upload_asset_result.py +102 -0
- rapidata/api_client/models/upload_file_from_url_result.py +87 -0
- rapidata/api_client/models/upload_file_result.py +87 -0
- rapidata/api_client/models/user_action_restriction.py +37 -0
- rapidata/api_client/models/user_action_restriction_filter.py +101 -0
- rapidata/api_client/models/user_score_filter.py +102 -0
- rapidata/api_client/models/user_state.py +38 -0
- rapidata/api_client/models/user_state_filter.py +101 -0
- rapidata/api_client/models/validation_chance.py +20 -3
- rapidata/api_client/models/validation_set_model.py +39 -5
- rapidata/api_client/models/validation_set_overview_model.py +2 -2
- rapidata/api_client/models/validation_set_validation_set_id_rapid_post_payload_parameter.py +252 -0
- rapidata/api_client/models/validation_set_validation_set_id_rapid_post_truth_parameter.py +280 -0
- rapidata/api_client/models/validation_set_zip_post_request_blueprint.py +252 -0
- rapidata/api_client/models/video_duration_metadata.py +109 -0
- rapidata/api_client/models/video_duration_metadata_model.py +96 -0
- rapidata/api_client/models/workflow_aggregation_step_model.py +3 -12
- rapidata/api_client/models/workflow_config_artifact_model_workflow_config.py +23 -9
- rapidata/api_client/models/workflow_state.py +2 -2
- rapidata/api_client/models/zip_entry_file_wrapper.py +151 -0
- rapidata/api_client/rest.py +16 -9
- rapidata/api_client_README.md +389 -315
- rapidata/rapidata_client/__init__.py +10 -17
- rapidata/rapidata_client/api/rapidata_api_client.py +253 -0
- rapidata/rapidata_client/benchmark/__init__.py +0 -0
- rapidata/rapidata_client/benchmark/_detail_mapper.py +32 -0
- rapidata/rapidata_client/benchmark/leaderboard/__init__.py +0 -0
- rapidata/rapidata_client/benchmark/leaderboard/rapidata_leaderboard.py +221 -0
- rapidata/rapidata_client/benchmark/participant/__init__.py +0 -0
- rapidata/rapidata_client/benchmark/participant/_participant.py +145 -0
- rapidata/rapidata_client/benchmark/rapidata_benchmark.py +546 -0
- rapidata/rapidata_client/benchmark/rapidata_benchmark_manager.py +219 -0
- rapidata/rapidata_client/config/__init__.py +4 -0
- rapidata/rapidata_client/config/logger.py +135 -0
- rapidata/rapidata_client/config/logging_config.py +55 -0
- rapidata/rapidata_client/config/managed_print.py +6 -0
- rapidata/rapidata_client/config/order_config.py +14 -0
- rapidata/rapidata_client/config/rapidata_config.py +36 -0
- rapidata/rapidata_client/config/tracer.py +184 -0
- rapidata/rapidata_client/config/upload_config.py +64 -0
- rapidata/rapidata_client/datapoints/__init__.py +10 -0
- rapidata/rapidata_client/datapoints/_asset_uploader.py +169 -0
- rapidata/rapidata_client/datapoints/_datapoint.py +92 -0
- rapidata/rapidata_client/datapoints/_datapoint_uploader.py +47 -0
- rapidata/rapidata_client/datapoints/_datapoints_validator.py +70 -0
- rapidata/rapidata_client/datapoints/assets/__init__.py +0 -0
- rapidata/rapidata_client/datapoints/assets/constants.py +7 -0
- rapidata/rapidata_client/{metadata → datapoints/metadata}/__init__.py +1 -0
- rapidata/rapidata_client/datapoints/metadata/_media_asset_metadata.py +26 -0
- rapidata/rapidata_client/datapoints/metadata/_private_text_metadata.py +16 -0
- rapidata/rapidata_client/datapoints/metadata/_prompt_identifier_metadata.py +14 -0
- rapidata/rapidata_client/datapoints/metadata/_prompt_metadata.py +12 -0
- rapidata/rapidata_client/datapoints/metadata/_public_text_metadata.py +16 -0
- rapidata/rapidata_client/{metadata → datapoints/metadata}/_select_words_metadata.py +4 -5
- rapidata/rapidata_client/demographic/demographic_manager.py +44 -19
- rapidata/rapidata_client/exceptions/__init__.py +1 -0
- rapidata/rapidata_client/exceptions/failed_upload_exception.py +20 -0
- rapidata/rapidata_client/filter/__init__.py +1 -0
- rapidata/rapidata_client/filter/_base_filter.py +27 -6
- rapidata/rapidata_client/filter/age_filter.py +21 -10
- rapidata/rapidata_client/filter/and_filter.py +42 -0
- rapidata/rapidata_client/filter/campaign_filter.py +18 -10
- rapidata/rapidata_client/filter/country_filter.py +34 -12
- rapidata/rapidata_client/filter/custom_filter.py +22 -12
- rapidata/rapidata_client/filter/gender_filter.py +22 -10
- rapidata/rapidata_client/filter/language_filter.py +39 -21
- rapidata/rapidata_client/filter/models/age_group.py +14 -12
- rapidata/rapidata_client/filter/models/gender.py +12 -8
- rapidata/rapidata_client/filter/new_user_filter.py +11 -4
- rapidata/rapidata_client/filter/not_filter.py +23 -11
- rapidata/rapidata_client/filter/or_filter.py +23 -11
- rapidata/rapidata_client/filter/rapidata_filters.py +26 -20
- rapidata/rapidata_client/filter/response_count_filter.py +36 -20
- rapidata/rapidata_client/filter/user_score_filter.py +47 -24
- rapidata/rapidata_client/order/_rapidata_order_builder.py +286 -193
- rapidata/rapidata_client/order/dataset/_rapidata_dataset.py +153 -0
- rapidata/rapidata_client/order/rapidata_order.py +317 -160
- rapidata/rapidata_client/order/rapidata_order_manager.py +689 -428
- rapidata/rapidata_client/order/rapidata_results.py +98 -67
- rapidata/rapidata_client/rapidata_client.py +99 -33
- rapidata/rapidata_client/referee/__init__.py +1 -1
- rapidata/rapidata_client/referee/_base_referee.py +7 -3
- rapidata/rapidata_client/referee/_early_stopping_referee.py +20 -11
- rapidata/rapidata_client/referee/_naive_referee.py +18 -3
- rapidata/rapidata_client/selection/__init__.py +2 -1
- rapidata/rapidata_client/selection/_base_selection.py +9 -2
- rapidata/rapidata_client/selection/ab_test_selection.py +28 -20
- rapidata/rapidata_client/selection/capped_selection.py +23 -16
- rapidata/rapidata_client/selection/conditional_validation_selection.py +43 -24
- rapidata/rapidata_client/selection/demographic_selection.py +21 -6
- rapidata/rapidata_client/selection/effort_selection.py +49 -0
- rapidata/rapidata_client/selection/labeling_selection.py +34 -11
- rapidata/rapidata_client/selection/{retrieval_modes.py → rapidata_retrieval_modes.py} +7 -4
- rapidata/rapidata_client/selection/rapidata_selections.py +25 -15
- rapidata/rapidata_client/selection/shuffling_selection.py +21 -13
- rapidata/rapidata_client/selection/static_selection.py +19 -8
- rapidata/rapidata_client/selection/validation_selection.py +20 -4
- rapidata/rapidata_client/settings/__init__.py +4 -1
- rapidata/rapidata_client/settings/_rapidata_setting.py +15 -2
- rapidata/rapidata_client/settings/alert_on_fast_response.py +8 -5
- rapidata/rapidata_client/settings/allow_neither_both.py +17 -0
- rapidata/rapidata_client/settings/custom_setting.py +3 -2
- rapidata/rapidata_client/settings/free_text_minimum_characters.py +9 -4
- rapidata/rapidata_client/settings/models/translation_behaviour_options.py +3 -2
- rapidata/rapidata_client/settings/mute_video.py +15 -0
- rapidata/rapidata_client/settings/no_shuffle.py +4 -2
- rapidata/rapidata_client/settings/play_video_until_the_end.py +7 -4
- rapidata/rapidata_client/settings/rapidata_settings.py +23 -11
- rapidata/rapidata_client/settings/swap_context_instruction.py +20 -0
- rapidata/rapidata_client/settings/translation_behaviour.py +7 -5
- rapidata/rapidata_client/validation/rapidata_validation_set.py +106 -12
- rapidata/rapidata_client/validation/rapids/_validation_rapid_uploader.py +62 -0
- rapidata/rapidata_client/validation/rapids/box.py +37 -12
- rapidata/rapidata_client/validation/rapids/rapids.py +28 -103
- rapidata/rapidata_client/validation/rapids/rapids_manager.py +315 -208
- rapidata/rapidata_client/validation/validation_set_manager.py +531 -219
- rapidata/rapidata_client/workflow/__init__.py +2 -1
- rapidata/rapidata_client/workflow/_base_workflow.py +25 -7
- rapidata/rapidata_client/workflow/_classify_workflow.py +58 -15
- rapidata/rapidata_client/workflow/_compare_workflow.py +44 -9
- rapidata/rapidata_client/workflow/_draw_workflow.py +40 -10
- rapidata/rapidata_client/workflow/_evaluation_workflow.py +28 -7
- rapidata/rapidata_client/workflow/_free_text_workflow.py +46 -9
- rapidata/rapidata_client/workflow/_locate_workflow.py +40 -10
- rapidata/rapidata_client/workflow/_multi_ranking_workflow.py +87 -0
- rapidata/rapidata_client/workflow/_ranking_workflow.py +109 -25
- rapidata/rapidata_client/workflow/_select_words_workflow.py +51 -11
- rapidata/rapidata_client/workflow/_timestamp_workflow.py +42 -11
- rapidata/service/__init__.py +0 -1
- rapidata/service/credential_manager.py +18 -18
- rapidata/service/openapi_service.py +82 -22
- rapidata/types/__init__.py +166 -0
- rapidata-2.44.4.dist-info/METADATA +32 -0
- rapidata-2.44.4.dist-info/RECORD +1014 -0
- {rapidata-2.27.0.dist-info → rapidata-2.44.4.dist-info}/WHEEL +1 -1
- rapidata/rapidata_client/api/rapidata_exception.py +0 -107
- rapidata/rapidata_client/assets/__init__.py +0 -10
- rapidata/rapidata_client/assets/_base_asset.py +0 -11
- rapidata/rapidata_client/assets/_media_asset.py +0 -306
- rapidata/rapidata_client/assets/_multi_asset.py +0 -61
- rapidata/rapidata_client/assets/_sessions.py +0 -35
- rapidata/rapidata_client/assets/_text_asset.py +0 -34
- rapidata/rapidata_client/assets/data_type_enum.py +0 -7
- rapidata/rapidata_client/country_codes/__init__.py +0 -1
- rapidata/rapidata_client/country_codes/country_codes.py +0 -19
- rapidata/rapidata_client/logging/__init__.py +0 -2
- rapidata/rapidata_client/logging/logger.py +0 -47
- rapidata/rapidata_client/logging/output_manager.py +0 -16
- rapidata/rapidata_client/metadata/_media_asset_metadata.py +0 -15
- rapidata/rapidata_client/metadata/_private_text_metadata.py +0 -17
- rapidata/rapidata_client/metadata/_prompt_metadata.py +0 -18
- rapidata/rapidata_client/metadata/_public_text_metadata.py +0 -17
- rapidata/rapidata_client/order/_rapidata_dataset.py +0 -411
- rapidata/service/local_file_service.py +0 -25
- rapidata-2.27.0.dist-info/METADATA +0 -35
- rapidata-2.27.0.dist-info/RECORD +0 -540
- /rapidata/rapidata_client/{metadata → datapoints/metadata}/_base_metadata.py +0 -0
- {rapidata-2.27.0.dist-info → rapidata-2.44.4.dist-info/licenses}/LICENSE +0 -0
|
@@ -1,35 +1,51 @@
|
|
|
1
|
-
from
|
|
2
|
-
|
|
1
|
+
from __future__ import annotations
|
|
2
|
+
|
|
3
|
+
from typing import TYPE_CHECKING, Literal, Optional, Sequence, get_args
|
|
4
|
+
import random
|
|
5
|
+
import secrets
|
|
6
|
+
|
|
7
|
+
from rapidata.rapidata_client.datapoints._datapoint import Datapoint
|
|
8
|
+
|
|
9
|
+
if TYPE_CHECKING:
|
|
10
|
+
from rapidata.api_client.models.create_order_model import CreateOrderModel
|
|
11
|
+
from rapidata.rapidata_client.exceptions.failed_upload_exception import (
|
|
12
|
+
FailedUploadException,
|
|
3
13
|
)
|
|
4
|
-
from rapidata.
|
|
5
|
-
from rapidata.
|
|
6
|
-
|
|
14
|
+
from rapidata.rapidata_client.filter import RapidataFilter, UserScoreFilter
|
|
15
|
+
from rapidata.rapidata_client.config import (
|
|
16
|
+
logger,
|
|
17
|
+
managed_print,
|
|
18
|
+
rapidata_config,
|
|
19
|
+
tracer,
|
|
7
20
|
)
|
|
8
|
-
from rapidata.
|
|
9
|
-
|
|
21
|
+
from rapidata.rapidata_client.validation.validation_set_manager import (
|
|
22
|
+
ValidationSetManager,
|
|
10
23
|
)
|
|
11
|
-
from rapidata.
|
|
12
|
-
|
|
24
|
+
from rapidata.rapidata_client.validation.rapidata_validation_set import (
|
|
25
|
+
RapidataValidationSet,
|
|
13
26
|
)
|
|
14
|
-
|
|
15
|
-
from rapidata.rapidata_client.settings import RapidataSetting
|
|
16
|
-
from rapidata.rapidata_client.metadata._base_metadata import Metadata
|
|
17
|
-
from rapidata.rapidata_client.order._rapidata_dataset import RapidataDataset
|
|
18
|
-
from rapidata.rapidata_client.referee._naive_referee import NaiveReferee
|
|
19
|
-
from rapidata.rapidata_client.selection._base_selection import RapidataSelection
|
|
20
|
-
from rapidata.rapidata_client.filter import RapidataFilter
|
|
21
|
-
from rapidata.rapidata_client.workflow import Workflow
|
|
27
|
+
from rapidata.rapidata_client.order.dataset._rapidata_dataset import RapidataDataset
|
|
22
28
|
from rapidata.rapidata_client.order.rapidata_order import RapidataOrder
|
|
23
29
|
from rapidata.rapidata_client.referee import Referee
|
|
30
|
+
from rapidata.rapidata_client.referee._naive_referee import NaiveReferee
|
|
31
|
+
from rapidata.rapidata_client.selection._base_selection import RapidataSelection
|
|
32
|
+
from rapidata.rapidata_client.settings import RapidataSetting
|
|
33
|
+
from rapidata.rapidata_client.workflow import (
|
|
34
|
+
Workflow,
|
|
35
|
+
CompareWorkflow,
|
|
36
|
+
ClassifyWorkflow,
|
|
37
|
+
)
|
|
38
|
+
from rapidata.rapidata_client.selection import (
|
|
39
|
+
ConditionalValidationSelection,
|
|
40
|
+
LabelingSelection,
|
|
41
|
+
CappedSelection,
|
|
42
|
+
)
|
|
24
43
|
from rapidata.service.openapi_service import OpenAPIService
|
|
44
|
+
from rapidata.rapidata_client.api.rapidata_api_client import (
|
|
45
|
+
suppress_rapidata_error_logging,
|
|
46
|
+
)
|
|
25
47
|
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
from rapidata.rapidata_client.assets import MediaAsset, TextAsset, MultiAsset, BaseAsset
|
|
29
|
-
|
|
30
|
-
from typing import Optional, cast, Sequence
|
|
31
|
-
|
|
32
|
-
from rapidata.rapidata_client.logging import logger, managed_print
|
|
48
|
+
StickyStateLiteral = Literal["Temporary", "Permanent", "Passive"]
|
|
33
49
|
|
|
34
50
|
|
|
35
51
|
class RapidataOrderBuilder:
|
|
@@ -48,18 +64,21 @@ class RapidataOrderBuilder:
|
|
|
48
64
|
openapi_service: OpenAPIService,
|
|
49
65
|
):
|
|
50
66
|
self._name = name
|
|
51
|
-
self.
|
|
52
|
-
self.
|
|
53
|
-
self.
|
|
54
|
-
self.
|
|
55
|
-
self.
|
|
56
|
-
self.
|
|
57
|
-
self.
|
|
58
|
-
self.
|
|
59
|
-
self.
|
|
60
|
-
self.
|
|
61
|
-
self.
|
|
62
|
-
self.
|
|
67
|
+
self._openapi_service = openapi_service
|
|
68
|
+
self._dataset: Optional[RapidataDataset] = None
|
|
69
|
+
self._workflow: Workflow | None = None
|
|
70
|
+
self._referee: Referee | None = None
|
|
71
|
+
self._validation_set: RapidataValidationSet | None = None
|
|
72
|
+
self._settings: Sequence[RapidataSetting] | None = None
|
|
73
|
+
self._user_filters: list[RapidataFilter] = []
|
|
74
|
+
self._selections: Sequence[RapidataSelection] = []
|
|
75
|
+
self._priority: int | None = None
|
|
76
|
+
self._datapoints: list[Datapoint] = []
|
|
77
|
+
self._sticky_state_value: StickyStateLiteral | None = None
|
|
78
|
+
self._temporary_sticky_enabled: bool = False
|
|
79
|
+
self._validation_set_manager: ValidationSetManager = ValidationSetManager(
|
|
80
|
+
self._openapi_service
|
|
81
|
+
)
|
|
63
82
|
|
|
64
83
|
def _to_model(self) -> CreateOrderModel:
|
|
65
84
|
"""
|
|
@@ -71,41 +90,162 @@ class RapidataOrderBuilder:
|
|
|
71
90
|
Returns:
|
|
72
91
|
CreateOrderModel: The model representing the order configuration.
|
|
73
92
|
"""
|
|
74
|
-
if self.
|
|
93
|
+
if self._workflow is None:
|
|
75
94
|
raise ValueError("You must provide a workflow to create an order.")
|
|
76
95
|
|
|
77
|
-
if self.
|
|
96
|
+
if self._referee is None:
|
|
78
97
|
managed_print("No referee provided, using default NaiveReferee.")
|
|
79
|
-
self.
|
|
98
|
+
self._referee = NaiveReferee()
|
|
99
|
+
|
|
100
|
+
sticky_state = self._sticky_state_value
|
|
101
|
+
if not sticky_state and self._temporary_sticky_enabled:
|
|
102
|
+
sticky_state = "Temporary"
|
|
103
|
+
logger.debug(
|
|
104
|
+
"Setting sticky state to Temporary due to temporary sticky enabled."
|
|
105
|
+
)
|
|
106
|
+
|
|
107
|
+
validation_set_id = (
|
|
108
|
+
self._validation_set.id
|
|
109
|
+
if (self._validation_set and not self._selections)
|
|
110
|
+
else None
|
|
111
|
+
)
|
|
112
|
+
from rapidata.api_client.models.create_order_model import CreateOrderModel
|
|
113
|
+
from rapidata.api_client.models.sticky_state import StickyState
|
|
80
114
|
|
|
81
115
|
return CreateOrderModel(
|
|
82
|
-
_t="CreateOrderModel",
|
|
83
116
|
orderName=self._name,
|
|
84
|
-
workflow=
|
|
85
|
-
userFilters=[
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
],
|
|
89
|
-
referee=CreateOrderModelReferee(self.__referee._to_model()),
|
|
90
|
-
validationSetId=self.__validation_set_id,
|
|
117
|
+
workflow=self._workflow._to_model(),
|
|
118
|
+
userFilters=[user_filter._to_model() for user_filter in self._user_filters],
|
|
119
|
+
referee=self._referee._to_model(),
|
|
120
|
+
validationSetId=validation_set_id,
|
|
91
121
|
featureFlags=(
|
|
92
|
-
[setting._to_feature_flag() for setting in self.
|
|
93
|
-
if self.
|
|
122
|
+
[setting._to_feature_flag() for setting in self._settings]
|
|
123
|
+
if self._settings is not None
|
|
94
124
|
else None
|
|
95
125
|
),
|
|
96
|
-
selections=
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
126
|
+
selections=(
|
|
127
|
+
[selection._to_model() for selection in self._selections]
|
|
128
|
+
if self._selections
|
|
129
|
+
else None
|
|
130
|
+
),
|
|
131
|
+
priority=self._priority,
|
|
132
|
+
stickyState=(StickyState(sticky_state) if sticky_state else None),
|
|
101
133
|
)
|
|
102
134
|
|
|
103
|
-
def
|
|
135
|
+
def _generate_id(self, length=9):
|
|
136
|
+
"""Optimal balance: fast comparisons + low collision risk"""
|
|
137
|
+
alphabet = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
|
|
138
|
+
return "".join(secrets.choice(alphabet) for _ in range(length))
|
|
139
|
+
|
|
140
|
+
def _attach_validation_set_id(self) -> None:
|
|
104
141
|
"""
|
|
105
|
-
|
|
142
|
+
Sets the validation set for the order.
|
|
143
|
+
"""
|
|
144
|
+
assert self._workflow is not None
|
|
145
|
+
|
|
146
|
+
required_amount = min(int(len(self._datapoints) * 0.01) or 3, 15)
|
|
147
|
+
|
|
148
|
+
if self._validation_set is None:
|
|
149
|
+
try:
|
|
150
|
+
with suppress_rapidata_error_logging():
|
|
151
|
+
val_set_id = (
|
|
152
|
+
(
|
|
153
|
+
self._openapi_service.validation_api.validation_set_recommended_get(
|
|
154
|
+
asset_type=[self._datapoints[0].get_asset_type()],
|
|
155
|
+
modality=[self._workflow.modality],
|
|
156
|
+
instruction=self._workflow._get_instruction(),
|
|
157
|
+
prompt_type=[
|
|
158
|
+
t.value
|
|
159
|
+
for t in self._datapoints[0].get_prompt_type()
|
|
160
|
+
],
|
|
161
|
+
)
|
|
162
|
+
)
|
|
163
|
+
.validation_sets[0]
|
|
164
|
+
.id
|
|
165
|
+
)
|
|
166
|
+
self._validation_set = (
|
|
167
|
+
self._validation_set_manager.get_validation_set_by_id(
|
|
168
|
+
val_set_id
|
|
169
|
+
)
|
|
170
|
+
)
|
|
171
|
+
|
|
172
|
+
except Exception as e:
|
|
173
|
+
logger.debug("No recommended validation set found, error: %s", e)
|
|
174
|
+
|
|
175
|
+
sufficient_rapids_count = False
|
|
176
|
+
if self._validation_set is not None:
|
|
177
|
+
sufficient_rapids_count = (
|
|
178
|
+
self._validation_set_manager._get_total_and_labeled_rapids_count(
|
|
179
|
+
self._validation_set.id
|
|
180
|
+
)[1]
|
|
181
|
+
>= required_amount
|
|
182
|
+
)
|
|
106
183
|
|
|
107
|
-
|
|
108
|
-
|
|
184
|
+
if self._validation_set is None or not sufficient_rapids_count:
|
|
185
|
+
if (
|
|
186
|
+
len(self._datapoints)
|
|
187
|
+
< rapidata_config.order.minOrderDatapointsForValidation
|
|
188
|
+
):
|
|
189
|
+
logger.debug(
|
|
190
|
+
"No recommended validation set found, dataset too small to create one."
|
|
191
|
+
)
|
|
192
|
+
return
|
|
193
|
+
|
|
194
|
+
logger.info("No recommended validation set found, creating new one.")
|
|
195
|
+
managed_print()
|
|
196
|
+
managed_print(
|
|
197
|
+
f"No recommended validation set found, new one will be created."
|
|
198
|
+
)
|
|
199
|
+
|
|
200
|
+
new_dimension = self._generate_id()
|
|
201
|
+
logger.debug("New dimension created: %s", new_dimension)
|
|
202
|
+
rng = random.Random(42)
|
|
203
|
+
self._validation_set = (
|
|
204
|
+
self._validation_set_manager._create_order_validation_set(
|
|
205
|
+
workflow=self._workflow,
|
|
206
|
+
name=self._name,
|
|
207
|
+
datapoints=rng.sample(
|
|
208
|
+
self._datapoints, len(self._datapoints)
|
|
209
|
+
), # shuffle the datapoints with a specific seed
|
|
210
|
+
required_amount=required_amount,
|
|
211
|
+
settings=self._settings,
|
|
212
|
+
dimensions=[new_dimension],
|
|
213
|
+
)
|
|
214
|
+
)
|
|
215
|
+
|
|
216
|
+
self._validation_set.update_should_alert(False)
|
|
217
|
+
self._validation_set.update_can_be_flagged(False)
|
|
218
|
+
|
|
219
|
+
logger.debug("New validation set created for order: %s", self._validation_set)
|
|
220
|
+
|
|
221
|
+
self._selections = [
|
|
222
|
+
CappedSelection(
|
|
223
|
+
selections=[
|
|
224
|
+
ConditionalValidationSelection(
|
|
225
|
+
validation_set_id=self._validation_set.id,
|
|
226
|
+
dimensions=self._validation_set.dimensions,
|
|
227
|
+
thresholds=[0, 0.5, 0.7],
|
|
228
|
+
chances=[1, 1, 0.2],
|
|
229
|
+
rapid_counts=[10, 1, 1],
|
|
230
|
+
),
|
|
231
|
+
LabelingSelection(amount=1),
|
|
232
|
+
],
|
|
233
|
+
max_rapids=3,
|
|
234
|
+
)
|
|
235
|
+
]
|
|
236
|
+
|
|
237
|
+
for dimension in self._validation_set.dimensions:
|
|
238
|
+
self._user_filters.append(
|
|
239
|
+
UserScoreFilter(
|
|
240
|
+
lower_bound=0.3,
|
|
241
|
+
upper_bound=1,
|
|
242
|
+
dimension=dimension,
|
|
243
|
+
)
|
|
244
|
+
)
|
|
245
|
+
|
|
246
|
+
def _create(self) -> RapidataOrder:
|
|
247
|
+
"""
|
|
248
|
+
Create the Rapidata order by making the necessary API calls based on the builder's configuration.
|
|
109
249
|
|
|
110
250
|
Raises:
|
|
111
251
|
ValueError: If both media paths and texts are provided, or if neither is provided.
|
|
@@ -114,93 +254,56 @@ class RapidataOrderBuilder:
|
|
|
114
254
|
Returns:
|
|
115
255
|
RapidataOrder: The created RapidataOrder instance.
|
|
116
256
|
"""
|
|
257
|
+
if (
|
|
258
|
+
rapidata_config.order.autoValidationSetCreation
|
|
259
|
+
and isinstance(self._workflow, (CompareWorkflow, ClassifyWorkflow))
|
|
260
|
+
and not self._selections
|
|
261
|
+
and rapidata_config.enableBetaFeatures
|
|
262
|
+
):
|
|
263
|
+
self._attach_validation_set_id()
|
|
264
|
+
self._temporary_sticky_enabled = True
|
|
265
|
+
logger.debug("Temporary sticky enabled for order creation.")
|
|
266
|
+
|
|
117
267
|
order_model = self._to_model()
|
|
118
|
-
logger.debug(
|
|
119
|
-
if isinstance(
|
|
120
|
-
self.__workflow, CompareWorkflow
|
|
121
|
-
): # Temporary fix; will be handled by backend in the future
|
|
122
|
-
assert all(
|
|
123
|
-
isinstance(item, MultiAsset) for item in self.__assets
|
|
124
|
-
), "The media paths must be of type MultiAsset for comparison tasks."
|
|
125
|
-
|
|
126
|
-
result = self.__openapi_service.order_api.order_post(
|
|
127
|
-
create_order_model=order_model
|
|
128
|
-
)
|
|
268
|
+
logger.debug("Creating order with model: %s", order_model)
|
|
129
269
|
|
|
130
|
-
self.
|
|
131
|
-
logger.debug(
|
|
270
|
+
self._temporary_sticky_enabled = False
|
|
271
|
+
logger.debug("Disabling temporary sticky after order creation.")
|
|
132
272
|
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
if result.dataset_id
|
|
136
|
-
else None
|
|
273
|
+
result = self._openapi_service.order_api.order_post(
|
|
274
|
+
create_order_model=order_model
|
|
137
275
|
)
|
|
138
|
-
if self.__dataset:
|
|
139
|
-
logger.debug(f"Dataset created with ID: {self.__dataset.dataset_id}")
|
|
140
|
-
else:
|
|
141
|
-
logger.warning("No dataset created for this order.")
|
|
142
276
|
|
|
143
277
|
order = RapidataOrder(
|
|
144
|
-
order_id=
|
|
145
|
-
openapi_service=self.
|
|
278
|
+
order_id=str(result.order_id),
|
|
279
|
+
openapi_service=self._openapi_service,
|
|
146
280
|
name=self._name,
|
|
147
281
|
)
|
|
282
|
+
logger.debug("Order created: %s", order)
|
|
148
283
|
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
if all(isinstance(item, MediaAsset) for item in self.__assets) and self.__dataset:
|
|
153
|
-
assets = cast(list[MediaAsset], self.__assets)
|
|
154
|
-
self.__dataset._add_media_from_paths(assets, self.__multi_metadata, max_upload_workers)
|
|
155
|
-
|
|
156
|
-
elif (
|
|
157
|
-
all(isinstance(item, TextAsset) for item in self.__assets) and self.__dataset
|
|
158
|
-
):
|
|
159
|
-
assets = cast(list[TextAsset], self.__assets)
|
|
160
|
-
self.__dataset._add_texts(assets, self.__multi_metadata)
|
|
161
|
-
|
|
162
|
-
elif (
|
|
163
|
-
all(isinstance(item, MultiAsset) for item in self.__assets) and self.__dataset
|
|
164
|
-
):
|
|
165
|
-
multi_assets = cast(list[MultiAsset], self.__assets)
|
|
166
|
-
|
|
167
|
-
# Check if all MultiAssets contain the same type of assets
|
|
168
|
-
first_asset_type = type(multi_assets[0].assets[0])
|
|
169
|
-
if not all(
|
|
170
|
-
isinstance(asset, first_asset_type)
|
|
171
|
-
for multi_asset in multi_assets
|
|
172
|
-
for asset in multi_asset.assets
|
|
173
|
-
):
|
|
174
|
-
raise ValueError(
|
|
175
|
-
"All MultiAssets must contain the same type of assets (either all MediaAssets or all TextAssets)."
|
|
176
|
-
)
|
|
284
|
+
if not result.dataset_id:
|
|
285
|
+
logger.error("No Dataset was created for order %s", order.id)
|
|
286
|
+
return order
|
|
177
287
|
|
|
178
|
-
|
|
179
|
-
if issubclass(first_asset_type, MediaAsset):
|
|
180
|
-
self.__dataset._add_media_from_paths(
|
|
181
|
-
multi_assets, self.__multi_metadata, max_upload_workers
|
|
182
|
-
)
|
|
288
|
+
self._dataset = RapidataDataset(result.dataset_id, self._openapi_service)
|
|
183
289
|
|
|
184
|
-
|
|
185
|
-
|
|
290
|
+
logger.debug("Dataset created with ID: %s", self._dataset.id)
|
|
291
|
+
logger.debug("Adding datapoints to the order.")
|
|
292
|
+
with tracer.start_as_current_span("add_datapoints"):
|
|
293
|
+
_, failed_uploads = self._dataset.add_datapoints(self._datapoints)
|
|
186
294
|
|
|
187
|
-
|
|
188
|
-
raise
|
|
189
|
-
"MultiAsset must contain MediaAssets or TextAssets objects."
|
|
190
|
-
)
|
|
295
|
+
if failed_uploads:
|
|
296
|
+
raise FailedUploadException(self._dataset, order, failed_uploads)
|
|
191
297
|
|
|
192
|
-
|
|
193
|
-
raise ValueError(
|
|
194
|
-
"Media paths must all be of the same type: MediaAsset, TextAsset, or MultiAsset."
|
|
195
|
-
)
|
|
196
|
-
|
|
197
|
-
logger.debug("Media added to the order.")
|
|
298
|
+
logger.debug("Datapoints added to the order.")
|
|
198
299
|
logger.debug("Setting order to preview")
|
|
199
|
-
|
|
200
|
-
|
|
300
|
+
try:
|
|
301
|
+
self._openapi_service.order_api.order_order_id_preview_post(order.id)
|
|
302
|
+
except Exception:
|
|
303
|
+
raise FailedUploadException(self._dataset, order, failed_uploads)
|
|
201
304
|
return order
|
|
202
305
|
|
|
203
|
-
def
|
|
306
|
+
def _set_workflow(self, workflow: Workflow) -> RapidataOrderBuilder:
|
|
204
307
|
"""
|
|
205
308
|
Set the workflow for the order.
|
|
206
309
|
|
|
@@ -213,10 +316,10 @@ class RapidataOrderBuilder:
|
|
|
213
316
|
if not isinstance(workflow, Workflow):
|
|
214
317
|
raise TypeError("Workflow must be of type Workflow.")
|
|
215
318
|
|
|
216
|
-
self.
|
|
319
|
+
self._workflow = workflow
|
|
217
320
|
return self
|
|
218
321
|
|
|
219
|
-
def
|
|
322
|
+
def _set_referee(self, referee: Referee) -> "RapidataOrderBuilder":
|
|
220
323
|
"""
|
|
221
324
|
Set the referee for the order.
|
|
222
325
|
|
|
@@ -229,52 +332,33 @@ class RapidataOrderBuilder:
|
|
|
229
332
|
if not isinstance(referee, Referee):
|
|
230
333
|
raise TypeError("Referee must be of type Referee.")
|
|
231
334
|
|
|
232
|
-
self.
|
|
335
|
+
self._referee = referee
|
|
233
336
|
return self
|
|
234
337
|
|
|
235
|
-
def
|
|
338
|
+
def _set_datapoints(
|
|
236
339
|
self,
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
) -> "RapidataOrderBuilder":
|
|
340
|
+
datapoints: list[Datapoint],
|
|
341
|
+
) -> RapidataOrderBuilder:
|
|
240
342
|
"""
|
|
241
|
-
Set the
|
|
343
|
+
Set the datapoints for the order.
|
|
242
344
|
|
|
243
345
|
Args:
|
|
244
|
-
|
|
245
|
-
multi_metadata: (list[list[Metadata]] | None, optional): Metadatas for the media assets. Defaults to None.
|
|
346
|
+
datapoints: (Sequence[Datapoint]): The datapoints to be set.
|
|
246
347
|
|
|
247
348
|
Returns:
|
|
248
349
|
RapidataOrderBuilder: The updated RapidataOrderBuilder instance.
|
|
249
350
|
"""
|
|
250
|
-
if not isinstance(
|
|
251
|
-
raise TypeError(
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
if not isinstance(a, (MediaAsset, TextAsset, MultiAsset)):
|
|
255
|
-
raise TypeError(
|
|
256
|
-
"Media paths must be of type MediaAsset, TextAsset, or MultiAsset."
|
|
257
|
-
)
|
|
351
|
+
if not isinstance(datapoints, list):
|
|
352
|
+
raise TypeError(
|
|
353
|
+
"Datapoints must be provided as a list of Datapoint objects."
|
|
354
|
+
)
|
|
258
355
|
|
|
259
|
-
|
|
260
|
-
for data in multi_metadata:
|
|
261
|
-
if not isinstance(data, list):
|
|
262
|
-
raise TypeError("Metadata must be provided as a list of Metadata objects.")
|
|
263
|
-
for d in data:
|
|
264
|
-
if not isinstance(d, Metadata):
|
|
265
|
-
raise TypeError("Metadata must be of type Metadata.")
|
|
266
|
-
|
|
267
|
-
if multi_metadata and not len(multi_metadata) == len(assets):
|
|
268
|
-
raise ValueError("The number of assets must match the number of metadatas.")
|
|
269
|
-
|
|
270
|
-
if multi_metadata and not all(len(data) == len(multi_metadata[0]) for data in multi_metadata):
|
|
271
|
-
raise ValueError("All metadatas must have the same length.")
|
|
272
|
-
|
|
273
|
-
self.__assets = assets
|
|
274
|
-
self.__multi_metadata = multi_metadata
|
|
356
|
+
self._datapoints = datapoints
|
|
275
357
|
return self
|
|
276
358
|
|
|
277
|
-
def
|
|
359
|
+
def _set_settings(
|
|
360
|
+
self, settings: Sequence[RapidataSetting]
|
|
361
|
+
) -> RapidataOrderBuilder:
|
|
278
362
|
"""
|
|
279
363
|
Set the settings for the order.
|
|
280
364
|
|
|
@@ -287,15 +371,15 @@ class RapidataOrderBuilder:
|
|
|
287
371
|
|
|
288
372
|
if not isinstance(settings, list):
|
|
289
373
|
raise TypeError("Settings must be provided as a list of Setting objects.")
|
|
290
|
-
|
|
374
|
+
|
|
291
375
|
for s in settings:
|
|
292
376
|
if not isinstance(s, RapidataSetting):
|
|
293
377
|
raise TypeError("The settings list must only contain Setting objects.")
|
|
294
378
|
|
|
295
|
-
self.
|
|
379
|
+
self._settings = settings
|
|
296
380
|
return self
|
|
297
381
|
|
|
298
|
-
def
|
|
382
|
+
def _set_filters(self, filters: Sequence[RapidataFilter]) -> RapidataOrderBuilder:
|
|
299
383
|
"""
|
|
300
384
|
Set the filters for the order, e.g., country, language, userscore, etc.
|
|
301
385
|
|
|
@@ -312,13 +396,15 @@ class RapidataOrderBuilder:
|
|
|
312
396
|
if not isinstance(f, RapidataFilter):
|
|
313
397
|
raise TypeError("Filters must be of type Filter.")
|
|
314
398
|
|
|
315
|
-
if len(self.
|
|
399
|
+
if len(self._user_filters) > 0:
|
|
316
400
|
managed_print("Overwriting existing user filters.")
|
|
317
401
|
|
|
318
|
-
self.
|
|
402
|
+
self._user_filters = filters
|
|
319
403
|
return self
|
|
320
404
|
|
|
321
|
-
def
|
|
405
|
+
def _set_validation_set_id(
|
|
406
|
+
self, validation_set_id: str | None = None
|
|
407
|
+
) -> RapidataOrderBuilder:
|
|
322
408
|
"""
|
|
323
409
|
Set the validation set ID for the order.
|
|
324
410
|
|
|
@@ -328,28 +414,19 @@ class RapidataOrderBuilder:
|
|
|
328
414
|
Returns:
|
|
329
415
|
RapidataOrderBuilder: The updated RapidataOrderBuilder instance.
|
|
330
416
|
"""
|
|
331
|
-
if not isinstance(validation_set_id, str):
|
|
417
|
+
if validation_set_id is not None and not isinstance(validation_set_id, str):
|
|
332
418
|
raise TypeError("Validation set ID must be of type str.")
|
|
333
|
-
|
|
334
|
-
|
|
419
|
+
if validation_set_id is not None:
|
|
420
|
+
self._validation_set = (
|
|
421
|
+
self._validation_set_manager.get_validation_set_by_id(validation_set_id)
|
|
422
|
+
)
|
|
423
|
+
return self
|
|
424
|
+
self._validation_set = validation_set_id
|
|
335
425
|
return self
|
|
336
426
|
|
|
337
|
-
def
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
Args:
|
|
342
|
-
amount (int): The number of tasks a user sees in a single session.
|
|
343
|
-
|
|
344
|
-
Returns:
|
|
345
|
-
RapidataOrderBuilder: The updated RapidataOrderBuilder instance.
|
|
346
|
-
|
|
347
|
-
Raises:
|
|
348
|
-
NotImplementedError: This method is not implemented yet.
|
|
349
|
-
"""
|
|
350
|
-
raise NotImplementedError("Not implemented yet.")
|
|
351
|
-
|
|
352
|
-
def _selections(self, selections: Sequence[RapidataSelection]) -> "RapidataOrderBuilder":
|
|
427
|
+
def _set_selections(
|
|
428
|
+
self, selections: Sequence[RapidataSelection]
|
|
429
|
+
) -> RapidataOrderBuilder:
|
|
353
430
|
"""
|
|
354
431
|
Set the selections for the order.
|
|
355
432
|
|
|
@@ -368,10 +445,10 @@ class RapidataOrderBuilder:
|
|
|
368
445
|
if not isinstance(selection, RapidataSelection):
|
|
369
446
|
raise TypeError("Selections must be of type Selection.")
|
|
370
447
|
|
|
371
|
-
self.
|
|
448
|
+
self._selections = selections # type: ignore
|
|
372
449
|
return self
|
|
373
450
|
|
|
374
|
-
def
|
|
451
|
+
def _set_priority(self, priority: int | None = None) -> RapidataOrderBuilder:
|
|
375
452
|
"""
|
|
376
453
|
Set the priority for the order.
|
|
377
454
|
|
|
@@ -381,8 +458,24 @@ class RapidataOrderBuilder:
|
|
|
381
458
|
Returns:
|
|
382
459
|
RapidataOrderBuilder: The updated RapidataOrderBuilder instance.
|
|
383
460
|
"""
|
|
384
|
-
if not isinstance(priority, int):
|
|
461
|
+
if priority is not None and not isinstance(priority, int):
|
|
385
462
|
raise TypeError("Priority must be of type int.")
|
|
386
463
|
|
|
387
|
-
self.
|
|
464
|
+
self._priority = priority
|
|
465
|
+
return self
|
|
466
|
+
|
|
467
|
+
def _set_sticky_state(
|
|
468
|
+
self, sticky_state: StickyStateLiteral | None = None
|
|
469
|
+
) -> RapidataOrderBuilder:
|
|
470
|
+
"""
|
|
471
|
+
Set the sticky state for the order.
|
|
472
|
+
"""
|
|
473
|
+
sticky_state_valid_values = get_args(StickyStateLiteral)
|
|
474
|
+
|
|
475
|
+
if sticky_state is not None and sticky_state not in sticky_state_valid_values:
|
|
476
|
+
raise ValueError(
|
|
477
|
+
f"Sticky state must be one of {sticky_state_valid_values} or None"
|
|
478
|
+
)
|
|
479
|
+
|
|
480
|
+
self._sticky_state_value = sticky_state
|
|
388
481
|
return self
|