rapidata 2.37.0__py3-none-any.whl → 3.0.0a8__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of rapidata might be problematic. Click here for more details.
- rapidata/__init__.py +23 -15
- rapidata/api_client/__init__.py +84 -427
- rapidata/api_client/api/__init__.py +5 -2
- rapidata/api_client/api/asset_api.py +853 -0
- rapidata/api_client/api/audience_api.py +2505 -0
- rapidata/api_client/api/benchmark_api.py +618 -253
- rapidata/api_client/api/campaign_api.py +322 -32
- rapidata/api_client/api/client_api.py +38 -33
- rapidata/api_client/api/compare_workflow_api.py +11 -10
- rapidata/api_client/api/customer_rapid_api.py +119 -125
- rapidata/api_client/api/datapoint_api.py +8 -6
- rapidata/api_client/api/dataset_api.py +240 -1516
- rapidata/api_client/api/evaluation_workflow_api.py +29 -82
- rapidata/api_client/api/feedback_api.py +11 -11
- rapidata/api_client/api/grouped_ranking_workflow_api.py +319 -0
- rapidata/api_client/api/identity_api.py +26 -300
- rapidata/api_client/api/job_api.py +3902 -0
- rapidata/api_client/api/job_definition_api.py +319 -0
- rapidata/api_client/api/job_revision_api.py +335 -0
- rapidata/api_client/api/leaderboard_api.py +139 -2355
- rapidata/api_client/api/newsletter_api.py +20 -19
- rapidata/api_client/api/order_api.py +375 -91
- rapidata/api_client/api/participant_api.py +80 -118
- rapidata/api_client/api/pipeline_api.py +24 -607
- rapidata/api_client/api/prompt_api.py +11 -11
- rapidata/api_client/api/rapidata_identity_api_api.py +5 -4
- rapidata/api_client/api/sample_api.py +5 -4
- 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 +337 -2043
- rapidata/api_client/api/workflow_api.py +32 -26
- 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 -400
- rapidata/api_client/models/ab_test_selection_a_inner.py +1 -1
- rapidata/api_client/models/add_rapid_to_audience_model.py +144 -0
- rapidata/api_client/models/add_user_response_result.py +10 -5
- rapidata/api_client/models/add_validation_rapid_model.py +34 -36
- 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_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/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_filters_inner.py +24 -10
- rapidata/api_client/models/are_rapids_active_result.py +2 -2
- rapidata/api_client/models/asset_metadata.py +2 -8
- 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_job_state.py +38 -0
- rapidata/api_client/models/audience_status.py +39 -0
- rapidata/api_client/models/benchmark_query_result.py +5 -3
- rapidata/api_client/models/boost_leaderboard_model.py +5 -5
- rapidata/api_client/models/boost_query_result.py +4 -4
- 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/boosting_profile.py +91 -0
- rapidata/api_client/models/box_shape.py +4 -33
- rapidata/api_client/models/campaign_query_result.py +13 -5
- rapidata/api_client/models/campaign_status.py +2 -2
- rapidata/api_client/models/change_boost_model.py +5 -5
- 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 +25 -35
- rapidata/api_client/models/clients_query_result.py +5 -5
- rapidata/api_client/models/clone_order_model.py +4 -4
- rapidata/api_client/models/clone_order_result.py +9 -4
- rapidata/api_client/models/compare_workflow_config.py +19 -18
- rapidata/api_client/models/compare_workflow_config_context_asset.py +174 -0
- rapidata/api_client/models/compare_workflow_config_model.py +3 -3
- rapidata/api_client/models/compare_workflow_model.py +25 -7
- 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 +6 -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/create_audience_request.py +122 -0
- rapidata/api_client/models/create_audience_result.py +87 -0
- rapidata/api_client/models/create_benchmark_model.py +5 -5
- rapidata/api_client/models/create_benchmark_participant_model.py +5 -5
- rapidata/api_client/models/create_benchmark_participant_result.py +4 -4
- rapidata/api_client/models/create_benchmark_prompt_result.py +87 -0
- rapidata/api_client/models/create_benchmark_result.py +2 -2
- 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 +2 -2
- rapidata/api_client/models/create_customer_client_result.py +2 -2
- 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 +124 -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 +2 -2
- rapidata/api_client/models/create_dataset_endpoint_input.py +87 -0
- rapidata/api_client/models/create_dataset_endpoint_output.py +87 -0
- rapidata/api_client/models/create_demographic_rapid_model.py +33 -10
- 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_job_definition_endpoint_input.py +119 -0
- rapidata/api_client/models/create_job_definition_endpoint_output.py +89 -0
- rapidata/api_client/models/create_job_endpoint_input.py +100 -0
- rapidata/api_client/models/create_job_endpoint_output.py +89 -0
- rapidata/api_client/models/create_job_revision_endpoint_input.py +127 -0
- rapidata/api_client/models/create_job_revision_endpoint_output.py +89 -0
- rapidata/api_client/models/create_leaderboard_model.py +23 -26
- rapidata/api_client/models/create_leaderboard_result.py +2 -2
- rapidata/api_client/models/create_order_definition_model.py +119 -0
- rapidata/api_client/models/create_order_definition_result.py +87 -0
- rapidata/api_client/models/create_order_definition_revision_model.py +117 -0
- rapidata/api_client/models/create_order_definition_revision_result.py +87 -0
- rapidata/api_client/models/create_order_model.py +33 -62
- 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 +2 -2
- rapidata/api_client/models/create_rapid_result.py +2 -2
- rapidata/api_client/models/create_sample_model.py +13 -7
- 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_state.py +2 -2
- rapidata/api_client/models/definition_type.py +49 -0
- rapidata/api_client/models/dynamic_client_registration_request.py +21 -36
- rapidata/api_client/models/early_stopping_referee_model.py +3 -3
- 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_model.py +4 -4
- rapidata/api_client/models/existing_asset_input.py +109 -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 +2 -2
- 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_file.py +8 -22
- rapidata/api_client/models/file_asset_metadata_value.py +252 -0
- rapidata/api_client/models/file_asset_model_metadata_value.py +18 -88
- rapidata/api_client/models/file_stream_result.py +122 -0
- rapidata/api_client/models/file_type.py +2 -2
- rapidata/api_client/models/filter.py +2 -2
- rapidata/api_client/models/filter_operator.py +2 -2
- rapidata/api_client/models/fork_benchmark_result.py +87 -0
- rapidata/api_client/models/form_file_wrapper.py +17 -2
- 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 +118 -0
- rapidata/api_client/models/get_available_validation_sets_result.py +2 -2
- rapidata/api_client/models/get_benchmark_by_id_result.py +8 -4
- 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 +3 -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 +7 -12
- 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_job_by_id_endpoint_output.py +130 -0
- rapidata/api_client/models/get_job_definition_by_id_endpoint_output.py +95 -0
- rapidata/api_client/models/get_job_revision_endpoint_output.py +133 -0
- rapidata/api_client/models/get_leaderboard_by_id_result.py +5 -5
- rapidata/api_client/models/get_order_by_id_result.py +12 -5
- rapidata/api_client/models/get_participant_by_id_result.py +4 -6
- 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 +5 -5
- rapidata/api_client/models/get_public_responses_result_response.py +112 -0
- rapidata/api_client/models/get_rapid_responses_result.py +3 -3
- rapidata/api_client/models/get_recommended_validation_set_result.py +2 -2
- 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 +7 -8
- rapidata/api_client/models/get_simple_workflow_results_model.py +20 -15
- rapidata/api_client/models/get_standing_by_id_result.py +3 -5
- rapidata/api_client/models/get_validation_rapids_result.py +29 -32
- 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 +2 -2
- rapidata/api_client/models/get_workflow_results_result.py +31 -14
- 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_audience_filter.py +184 -0
- rapidata/api_client/models/i_audience_filter_and_audience_filter.py +106 -0
- rapidata/api_client/models/i_audience_filter_country_audience_filter.py +96 -0
- rapidata/api_client/models/i_audience_filter_country_filter.py +96 -0
- rapidata/api_client/models/i_audience_filter_language_audience_filter.py +96 -0
- rapidata/api_client/models/i_audience_filter_language_filter.py +96 -0
- rapidata/api_client/models/i_audience_filter_not_audience_filter.py +102 -0
- rapidata/api_client/models/i_audience_filter_or_audience_filter.py +106 -0
- rapidata/api_client/models/i_campaign_filter.py +296 -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_campaign_session_count_filter.py +101 -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_device_filter.py +106 -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_duration_metadata.py +110 -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 +105 -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 +105 -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 +296 -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_device_user_filter_model.py +104 -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 +108 -0
- rapidata/api_client/models/i_validation_truth_model.py +294 -0
- rapidata/api_client/models/i_validation_truth_model_attach_category_truth_model.py +96 -0
- rapidata/api_client/models/i_validation_truth_model_bounding_box_truth_model.py +102 -0
- rapidata/api_client/models/i_validation_truth_model_classify_truth_model.py +96 -0
- rapidata/api_client/models/i_validation_truth_model_compare_truth_model.py +96 -0
- rapidata/api_client/models/i_validation_truth_model_empty_validation_truth_model.py +94 -0
- rapidata/api_client/models/i_validation_truth_model_line_truth_model.py +94 -0
- rapidata/api_client/models/i_validation_truth_model_locate_box_truth_model.py +108 -0
- rapidata/api_client/models/i_validation_truth_model_multi_compare_truth_model.py +96 -0
- rapidata/api_client/models/i_validation_truth_model_named_entity_truth_model.py +104 -0
- rapidata/api_client/models/i_validation_truth_model_polygon_truth_model.py +94 -0
- rapidata/api_client/models/i_validation_truth_model_scrub_truth_model.py +104 -0
- rapidata/api_client/models/i_validation_truth_model_skip_truth_model.py +94 -0
- rapidata/api_client/models/i_validation_truth_model_transcription_truth_model.py +115 -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/inquire_file_metadata_result.py +100 -0
- rapidata/api_client/models/inspect_report_result.py +2 -2
- rapidata/api_client/models/job_definition_revision_state.py +38 -0
- rapidata/api_client/models/json_web_key.py +2 -36
- rapidata/api_client/models/json_web_key_set.py +2 -22
- rapidata/api_client/models/labeling_selection.py +9 -2
- 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/locate_coordinate.py +4 -13
- 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 +21 -1
- rapidata/api_client/models/multi_asset_input1_assets_inner.py +40 -12
- rapidata/api_client/models/multi_asset_input3_assets_inner.py +40 -12
- rapidata/api_client/models/multi_asset_input_assets_inner.py +16 -30
- 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/newsletter_model.py +6 -6
- rapidata/api_client/models/not_available_yet_result.py +4 -13
- 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/option_of_aggregator_type.py +49 -0
- rapidata/api_client/models/order_model.py +12 -5
- rapidata/api_client/models/order_state.py +2 -2
- 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_job_definitions_result.py +103 -0
- rapidata/api_client/models/paged_result_of_query_job_revisions_result.py +103 -0
- rapidata/api_client/models/paged_result_of_query_jobs_result.py +103 -0
- rapidata/api_client/models/paged_result_of_query_rapids_for_audience_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 +3 -5
- rapidata/api_client/models/participant_status.py +2 -2
- 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/preliminary_download_model.py +5 -5
- rapidata/api_client/models/preview_order_model.py +5 -5
- rapidata/api_client/models/problem_details.py +2 -20
- rapidata/api_client/models/prompt_asset_metadata_input.py +4 -6
- rapidata/api_client/models/prompt_asset_metadata_input_asset.py +25 -41
- rapidata/api_client/models/prompt_by_benchmark_result.py +5 -5
- rapidata/api_client/models/prompt_metadata_input.py +5 -7
- rapidata/api_client/models/proxy_file_wrapper.py +17 -2
- rapidata/api_client/models/public_order_model.py +2 -2
- rapidata/api_client/models/query_audiences_result.py +118 -0
- rapidata/api_client/models/query_datapoints_by_dataset_id_result.py +95 -0
- rapidata/api_client/models/query_job_definitions_result.py +97 -0
- rapidata/api_client/models/query_job_revisions_result.py +95 -0
- rapidata/api_client/models/query_jobs_result.py +103 -0
- rapidata/api_client/models/query_model.py +10 -5
- rapidata/api_client/models/query_rapids_for_audience_result.py +150 -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_model.py +30 -40
- 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 +7 -7
- rapidata/api_client/models/retrieval_mode.py +2 -2
- rapidata/api_client/models/root_filter.py +2 -2
- rapidata/api_client/models/run_status.py +2 -2
- rapidata/api_client/models/runs_by_leaderboard_result.py +3 -3
- rapidata/api_client/models/sample_by_identifier.py +7 -8
- rapidata/api_client/models/sample_by_participant.py +7 -8
- 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 +3 -3
- rapidata/api_client/models/simple_workflow_model.py +2 -2
- 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 +2 -2
- rapidata/api_client/models/sort_direction.py +2 -2
- rapidata/api_client/models/standing_by_benchmark.py +113 -0
- rapidata/api_client/models/standing_by_leaderboard.py +16 -12
- rapidata/api_client/models/standing_status.py +2 -2
- rapidata/api_client/models/standings_by_benchmark_result.py +95 -0
- rapidata/api_client/models/standings_by_leaderboard_result.py +2 -2
- 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 +25 -3
- rapidata/api_client/models/string_segment.py +105 -0
- rapidata/api_client/models/submit_order_model.py +5 -5
- rapidata/api_client/models/submit_participant_result.py +2 -2
- rapidata/api_client/models/submit_prompt_model.py +9 -14
- rapidata/api_client/models/submit_prompt_model_prompt_asset.py +40 -12
- rapidata/api_client/models/tags_by_benchmark_result.py +2 -2
- rapidata/api_client/models/text_asset.py +3 -5
- rapidata/api_client/models/text_asset_input.py +21 -1
- rapidata/api_client/models/text_metadata.py +6 -1
- 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_input.py +5 -7
- 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 +113 -0
- rapidata/api_client/models/update_benchmark_model.py +99 -0
- rapidata/api_client/models/update_benchmark_name_model.py +5 -5
- 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_job_definition_endpoint_input.py +92 -0
- rapidata/api_client/models/update_leaderboard_model.py +18 -3
- rapidata/api_client/models/update_leaderboard_name_model.py +5 -5
- rapidata/api_client/models/update_leaderboard_response_config_model.py +5 -5
- 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 +5 -5
- rapidata/api_client/models/update_priority_model.py +87 -0
- rapidata/api_client/models/update_prompt_tags_model.py +5 -5
- rapidata/api_client/models/update_should_alert_model.py +4 -4
- rapidata/api_client/models/update_validation_rapid_model.py +35 -14
- 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/validation_chance.py +20 -3
- rapidata/api_client/models/validation_problem_details.py +117 -0
- rapidata/api_client/models/validation_set_model.py +11 -16
- rapidata/api_client/models/validation_set_overview_model.py +2 -2
- 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 +33 -2
- rapidata/api_client/rest.py +2 -2
- rapidata/api_client_README.md +371 -326
- rapidata/rapidata_client/__init__.py +14 -11
- rapidata/rapidata_client/api/{rapidata_exception.py → rapidata_api_client.py} +119 -2
- rapidata/rapidata_client/audience/__init__.py +2 -0
- rapidata/rapidata_client/audience/audience_example_handler.py +168 -0
- rapidata/rapidata_client/audience/rapidata_audience.py +287 -0
- rapidata/rapidata_client/audience/rapidata_audience_manager.py +162 -0
- rapidata/rapidata_client/benchmark/_detail_mapper.py +11 -9
- rapidata/rapidata_client/benchmark/leaderboard/rapidata_leaderboard.py +98 -54
- rapidata/rapidata_client/benchmark/participant/_participant.py +57 -32
- rapidata/rapidata_client/benchmark/rapidata_benchmark.py +384 -246
- rapidata/rapidata_client/benchmark/rapidata_benchmark_manager.py +137 -81
- rapidata/rapidata_client/config/__init__.py +3 -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 +15 -10
- rapidata/rapidata_client/config/tracer.py +184 -0
- rapidata/rapidata_client/config/upload_config.py +64 -0
- rapidata/rapidata_client/datapoints/__init__.py +0 -3
- rapidata/rapidata_client/datapoints/_asset_uploader.py +184 -0
- rapidata/rapidata_client/datapoints/_datapoint.py +72 -176
- 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 -10
- rapidata/rapidata_client/datapoints/metadata/__init__.py +0 -2
- rapidata/rapidata_client/datapoints/metadata/_private_text_metadata.py +5 -6
- rapidata/rapidata_client/datapoints/metadata/_prompt_identifier_metadata.py +4 -5
- rapidata/rapidata_client/datapoints/metadata/_public_text_metadata.py +5 -6
- rapidata/rapidata_client/datapoints/metadata/_select_words_metadata.py +3 -4
- rapidata/rapidata_client/dataset/__init__.py +1 -0
- rapidata/rapidata_client/dataset/_rapidata_dataset.py +55 -0
- rapidata/rapidata_client/demographic/demographic_manager.py +44 -19
- rapidata/rapidata_client/exceptions/failed_upload_exception.py +10 -65
- rapidata/rapidata_client/filter/_backend_filter_mapper.py +134 -0
- rapidata/rapidata_client/filter/_base_filter.py +13 -8
- rapidata/rapidata_client/filter/age_filter.py +26 -10
- rapidata/rapidata_client/filter/and_filter.py +36 -11
- rapidata/rapidata_client/filter/campaign_filter.py +21 -10
- rapidata/rapidata_client/filter/country_filter.py +46 -12
- rapidata/rapidata_client/filter/custom_filter.py +25 -12
- rapidata/rapidata_client/filter/gender_filter.py +25 -10
- rapidata/rapidata_client/filter/language_filter.py +51 -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 +14 -4
- rapidata/rapidata_client/filter/not_filter.py +35 -11
- rapidata/rapidata_client/filter/or_filter.py +36 -11
- rapidata/rapidata_client/filter/rapidata_filters.py +17 -23
- rapidata/rapidata_client/filter/response_count_filter.py +40 -14
- rapidata/rapidata_client/filter/user_score_filter.py +62 -24
- rapidata/rapidata_client/job/__init__.py +3 -0
- rapidata/rapidata_client/job/job_definition.py +110 -0
- rapidata/rapidata_client/job/job_manager.py +758 -0
- rapidata/rapidata_client/job/rapidata_job.py +326 -0
- rapidata/rapidata_client/order/__init__.py +2 -0
- rapidata/rapidata_client/order/_rapidata_order_builder.py +236 -196
- rapidata/rapidata_client/order/rapidata_order.py +271 -176
- rapidata/rapidata_client/order/rapidata_order_manager.py +520 -364
- rapidata/rapidata_client/rapidata_client.py +96 -29
- rapidata/rapidata_client/referee/__init__.py +1 -1
- rapidata/rapidata_client/referee/_base_referee.py +14 -3
- rapidata/rapidata_client/referee/_early_stopping_referee.py +32 -17
- rapidata/rapidata_client/referee/_naive_referee.py +24 -3
- rapidata/rapidata_client/results/__init__.py +3 -0
- rapidata/rapidata_client/{order → results}/rapidata_results.py +86 -63
- 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 +20 -8
- rapidata/rapidata_client/selection/labeling_selection.py +21 -10
- rapidata/rapidata_client/selection/rapidata_selections.py +23 -14
- 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 +2 -0
- rapidata/rapidata_client/settings/_rapidata_setting.py +22 -3
- rapidata/rapidata_client/settings/alert_on_fast_response.py +8 -5
- rapidata/rapidata_client/settings/allow_neither_both.py +3 -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 +22 -9
- rapidata/rapidata_client/settings/swap_context_instruction.py +20 -0
- rapidata/rapidata_client/settings/translation_behaviour.py +7 -5
- rapidata/rapidata_client/utils/__init__.py +3 -0
- rapidata/rapidata_client/utils/threaded_uploader.py +153 -0
- rapidata/rapidata_client/validation/__init__.py +2 -0
- rapidata/rapidata_client/validation/rapidata_validation_set.py +68 -21
- rapidata/rapidata_client/validation/rapids/__init__.py +2 -0
- rapidata/rapidata_client/validation/rapids/_validation_rapid_uploader.py +48 -0
- rapidata/rapidata_client/validation/rapids/box.py +37 -12
- rapidata/rapidata_client/validation/rapids/rapids.py +28 -109
- rapidata/rapidata_client/validation/rapids/rapids_manager.py +369 -211
- rapidata/rapidata_client/validation/validation_set_manager.py +417 -294
- rapidata/rapidata_client/workflow/__init__.py +2 -2
- rapidata/rapidata_client/workflow/_base_workflow.py +17 -26
- rapidata/rapidata_client/workflow/_classify_workflow.py +44 -17
- rapidata/rapidata_client/workflow/_compare_workflow.py +33 -14
- rapidata/rapidata_client/workflow/_draw_workflow.py +35 -13
- rapidata/rapidata_client/workflow/_evaluation_workflow.py +20 -6
- rapidata/rapidata_client/workflow/_free_text_workflow.py +34 -15
- rapidata/rapidata_client/workflow/_locate_workflow.py +35 -13
- rapidata/rapidata_client/workflow/_multi_ranking_workflow.py +90 -0
- rapidata/rapidata_client/workflow/_select_words_workflow.py +38 -32
- rapidata/rapidata_client/workflow/_timestamp_workflow.py +35 -13
- rapidata/service/__init__.py +0 -1
- rapidata/service/credential_manager.py +1 -1
- rapidata/service/openapi_service.py +99 -23
- rapidata/types/__init__.py +149 -0
- rapidata-3.0.0a8.dist-info/METADATA +32 -0
- rapidata-3.0.0a8.dist-info/RECORD +1083 -0
- {rapidata-2.37.0.dist-info → rapidata-3.0.0a8.dist-info}/WHEEL +1 -1
- rapidata/rapidata_client/country_codes/__init__.py +0 -1
- rapidata/rapidata_client/country_codes/country_codes.py +0 -19
- rapidata/rapidata_client/datapoints/assets/_base_asset.py +0 -11
- rapidata/rapidata_client/datapoints/assets/_media_asset.py +0 -318
- rapidata/rapidata_client/datapoints/assets/_multi_asset.py +0 -61
- rapidata/rapidata_client/datapoints/assets/_sessions.py +0 -40
- rapidata/rapidata_client/datapoints/assets/_text_asset.py +0 -34
- rapidata/rapidata_client/datapoints/assets/data_type_enum.py +0 -8
- rapidata/rapidata_client/datapoints/metadata/_media_asset_metadata.py +0 -22
- rapidata/rapidata_client/datapoints/metadata/_prompt_metadata.py +0 -18
- rapidata/rapidata_client/logging/__init__.py +0 -2
- rapidata/rapidata_client/logging/logger.py +0 -122
- rapidata/rapidata_client/logging/output_manager.py +0 -20
- rapidata/rapidata_client/order/_rapidata_dataset.py +0 -447
- rapidata/rapidata_client/workflow/_ranking_workflow.py +0 -71
- rapidata/service/local_file_service.py +0 -25
- rapidata-2.37.0.dist-info/METADATA +0 -35
- rapidata-2.37.0.dist-info/RECORD +0 -687
- {rapidata-2.37.0.dist-info → rapidata-3.0.0a8.dist-info/licenses}/LICENSE +0 -0
|
@@ -1,45 +1,52 @@
|
|
|
1
|
-
from
|
|
1
|
+
from __future__ import annotations
|
|
2
|
+
|
|
3
|
+
from typing import TYPE_CHECKING, Literal, Optional, Sequence, get_args
|
|
2
4
|
import random
|
|
3
|
-
|
|
4
|
-
from rapidata.api_client.models.and_user_filter_model_filters_inner import (
|
|
5
|
-
AndUserFilterModelFiltersInner,
|
|
6
|
-
)
|
|
7
|
-
from rapidata.api_client.models.create_order_model import CreateOrderModel
|
|
8
|
-
from rapidata.api_client.models.create_order_model_referee import (
|
|
9
|
-
CreateOrderModelReferee,
|
|
10
|
-
)
|
|
11
|
-
from rapidata.api_client.models.create_order_model_workflow import (
|
|
12
|
-
CreateOrderModelWorkflow,
|
|
13
|
-
)
|
|
14
|
-
from rapidata.api_client.models.sticky_state import StickyState
|
|
5
|
+
import secrets
|
|
15
6
|
|
|
16
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
|
|
17
11
|
from rapidata.rapidata_client.exceptions.failed_upload_exception import (
|
|
18
12
|
FailedUploadException,
|
|
19
|
-
_parse_failed_uploads,
|
|
20
13
|
)
|
|
21
|
-
from rapidata.rapidata_client.filter import RapidataFilter
|
|
22
|
-
from rapidata.rapidata_client.
|
|
14
|
+
from rapidata.rapidata_client.filter import RapidataFilter, UserScoreFilter
|
|
15
|
+
from rapidata.rapidata_client.config import (
|
|
23
16
|
logger,
|
|
24
17
|
managed_print,
|
|
25
|
-
|
|
18
|
+
rapidata_config,
|
|
19
|
+
tracer,
|
|
26
20
|
)
|
|
27
21
|
from rapidata.rapidata_client.validation.validation_set_manager import (
|
|
28
22
|
ValidationSetManager,
|
|
29
23
|
)
|
|
30
|
-
from rapidata.rapidata_client.
|
|
24
|
+
from rapidata.rapidata_client.validation.rapidata_validation_set import (
|
|
25
|
+
RapidataValidationSet,
|
|
26
|
+
)
|
|
27
|
+
from rapidata.rapidata_client.dataset._rapidata_dataset import RapidataDataset
|
|
31
28
|
from rapidata.rapidata_client.order.rapidata_order import RapidataOrder
|
|
32
29
|
from rapidata.rapidata_client.referee import Referee
|
|
33
30
|
from rapidata.rapidata_client.referee._naive_referee import NaiveReferee
|
|
34
31
|
from rapidata.rapidata_client.selection._base_selection import RapidataSelection
|
|
35
32
|
from rapidata.rapidata_client.settings import RapidataSetting
|
|
36
|
-
from rapidata.rapidata_client.workflow import
|
|
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
|
+
)
|
|
37
43
|
from rapidata.service.openapi_service import OpenAPIService
|
|
38
|
-
from rapidata.rapidata_client.
|
|
39
|
-
from rapidata.rapidata_client.api.rapidata_exception import (
|
|
44
|
+
from rapidata.rapidata_client.api.rapidata_api_client import (
|
|
40
45
|
suppress_rapidata_error_logging,
|
|
41
46
|
)
|
|
42
47
|
|
|
48
|
+
StickyStateLiteral = Literal["Temporary", "Permanent", "Passive"]
|
|
49
|
+
|
|
43
50
|
|
|
44
51
|
class RapidataOrderBuilder:
|
|
45
52
|
"""Builder object for creating Rapidata orders.
|
|
@@ -57,22 +64,20 @@ class RapidataOrderBuilder:
|
|
|
57
64
|
openapi_service: OpenAPIService,
|
|
58
65
|
):
|
|
59
66
|
self._name = name
|
|
60
|
-
self.
|
|
61
|
-
self.
|
|
62
|
-
self.
|
|
63
|
-
self.
|
|
64
|
-
self.
|
|
65
|
-
self.
|
|
66
|
-
self.
|
|
67
|
-
self.
|
|
68
|
-
self.
|
|
69
|
-
self.
|
|
70
|
-
self.
|
|
71
|
-
self.
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
self.__validation_set_manager: ValidationSetManager = ValidationSetManager(
|
|
75
|
-
self.__openapi_service
|
|
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
|
|
76
81
|
)
|
|
77
82
|
|
|
78
83
|
def _to_model(self) -> CreateOrderModel:
|
|
@@ -85,106 +90,163 @@ class RapidataOrderBuilder:
|
|
|
85
90
|
Returns:
|
|
86
91
|
CreateOrderModel: The model representing the order configuration.
|
|
87
92
|
"""
|
|
88
|
-
if self.
|
|
93
|
+
if self._workflow is None:
|
|
89
94
|
raise ValueError("You must provide a workflow to create an order.")
|
|
90
95
|
|
|
91
|
-
if self.
|
|
96
|
+
if self._referee is None:
|
|
92
97
|
managed_print("No referee provided, using default NaiveReferee.")
|
|
93
|
-
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
|
|
94
114
|
|
|
95
115
|
return CreateOrderModel(
|
|
96
|
-
_t="CreateOrderModel",
|
|
97
116
|
orderName=self._name,
|
|
98
|
-
workflow=
|
|
99
|
-
userFilters=[
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
],
|
|
103
|
-
referee=CreateOrderModelReferee(self.__referee._to_model()),
|
|
104
|
-
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,
|
|
105
121
|
featureFlags=(
|
|
106
|
-
[setting.
|
|
107
|
-
if self.
|
|
122
|
+
[setting._to_feature_flag_model() for setting in self._settings]
|
|
123
|
+
if self._settings is not None
|
|
108
124
|
else None
|
|
109
125
|
),
|
|
110
126
|
selections=(
|
|
111
|
-
[
|
|
112
|
-
|
|
113
|
-
for selection in self.__selections
|
|
114
|
-
]
|
|
115
|
-
if self.__selections
|
|
116
|
-
else None
|
|
117
|
-
),
|
|
118
|
-
priority=self.__priority,
|
|
119
|
-
stickyState=(
|
|
120
|
-
StickyState(self.__sticky_state_value)
|
|
121
|
-
if self.__sticky_state_value
|
|
127
|
+
[selection._to_model() for selection in self._selections]
|
|
128
|
+
if self._selections
|
|
122
129
|
else None
|
|
123
130
|
),
|
|
131
|
+
priority=self._priority,
|
|
132
|
+
stickyState=(StickyState(sticky_state) if sticky_state else None),
|
|
124
133
|
)
|
|
125
134
|
|
|
126
|
-
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:
|
|
127
141
|
"""
|
|
128
|
-
|
|
142
|
+
Sets the validation set for the order.
|
|
129
143
|
"""
|
|
130
|
-
assert self.
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
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
|
+
)
|
|
147
162
|
)
|
|
163
|
+
.validation_sets[0]
|
|
164
|
+
.id
|
|
148
165
|
)
|
|
149
|
-
.
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
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
|
|
154
182
|
)
|
|
155
|
-
except Exception as e:
|
|
156
|
-
logger.info("No recommended validation set found, creating new one.")
|
|
157
183
|
|
|
158
|
-
if
|
|
159
|
-
|
|
160
|
-
|
|
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."
|
|
161
198
|
)
|
|
162
|
-
return
|
|
163
199
|
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
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
|
+
)
|
|
177
215
|
|
|
178
|
-
|
|
179
|
-
self.
|
|
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
|
+
)
|
|
180
245
|
|
|
181
246
|
def _create(self) -> RapidataOrder:
|
|
182
247
|
"""
|
|
183
248
|
Create the Rapidata order by making the necessary API calls based on the builder's configuration.
|
|
184
249
|
|
|
185
|
-
Args:
|
|
186
|
-
max_upload_workers (int, optional): The maximum number of worker threads for processing media paths. Defaults to 10.
|
|
187
|
-
|
|
188
250
|
Raises:
|
|
189
251
|
ValueError: If both media paths and texts are provided, or if neither is provided.
|
|
190
252
|
AssertionError: If the workflow is a CompareWorkflow and media paths are not in pairs.
|
|
@@ -192,67 +254,56 @@ class RapidataOrderBuilder:
|
|
|
192
254
|
Returns:
|
|
193
255
|
RapidataOrder: The created RapidataOrder instance.
|
|
194
256
|
"""
|
|
195
|
-
if
|
|
196
|
-
|
|
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.")
|
|
197
266
|
|
|
198
267
|
order_model = self._to_model()
|
|
199
268
|
logger.debug("Creating order with model: %s", order_model)
|
|
200
269
|
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
)
|
|
204
|
-
|
|
205
|
-
self.order_id = str(result.order_id)
|
|
206
|
-
logger.debug("Order created with ID: %s", self.order_id)
|
|
270
|
+
self._temporary_sticky_enabled = False
|
|
271
|
+
logger.debug("Disabling temporary sticky after order creation.")
|
|
207
272
|
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
if result.dataset_id
|
|
211
|
-
else None
|
|
273
|
+
result = self._openapi_service.order_api.order_post(
|
|
274
|
+
create_order_model=order_model
|
|
212
275
|
)
|
|
213
|
-
if self.__dataset:
|
|
214
|
-
logger.debug("Dataset created with ID: %s", self.__dataset.id)
|
|
215
|
-
else:
|
|
216
|
-
logger.warning("No dataset created for this order.")
|
|
217
276
|
|
|
218
277
|
order = RapidataOrder(
|
|
219
|
-
order_id=
|
|
220
|
-
openapi_service=self.
|
|
278
|
+
order_id=str(result.order_id),
|
|
279
|
+
openapi_service=self._openapi_service,
|
|
221
280
|
name=self._name,
|
|
222
281
|
)
|
|
223
|
-
|
|
224
282
|
logger.debug("Order created: %s", order)
|
|
225
|
-
logger.debug("Adding media to the order.")
|
|
226
283
|
|
|
227
|
-
if
|
|
228
|
-
|
|
284
|
+
if not result.dataset_id:
|
|
285
|
+
logger.error("No Dataset was created for order %s", order.id)
|
|
286
|
+
return order
|
|
229
287
|
|
|
230
|
-
|
|
231
|
-
raise FailedUploadException(self.__dataset, order, failed_uploads)
|
|
288
|
+
self._dataset = RapidataDataset(result.dataset_id, self._openapi_service)
|
|
232
289
|
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
)
|
|
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)
|
|
294
|
+
|
|
295
|
+
if failed_uploads:
|
|
296
|
+
raise FailedUploadException(self._dataset, failed_uploads, order=order)
|
|
237
297
|
|
|
238
|
-
logger.debug("
|
|
298
|
+
logger.debug("Datapoints added to the order.")
|
|
239
299
|
logger.debug("Setting order to preview")
|
|
240
300
|
try:
|
|
241
|
-
self.
|
|
301
|
+
self._openapi_service.order_api.order_order_id_preview_post(order.id)
|
|
242
302
|
except Exception:
|
|
243
|
-
failed_uploads =
|
|
244
|
-
self.__openapi_service.dataset_api.dataset_dataset_id_datapoints_failed_get(
|
|
245
|
-
self.__dataset.id
|
|
246
|
-
)
|
|
247
|
-
)
|
|
248
|
-
logger.error(
|
|
249
|
-
"Internal download error for datapoints: %s\nWARNING: Failed Datapoints in error do not contain metadata.",
|
|
250
|
-
failed_uploads,
|
|
251
|
-
)
|
|
252
|
-
raise FailedUploadException(self.__dataset, order, failed_uploads)
|
|
303
|
+
raise FailedUploadException(self._dataset, failed_uploads, order=order)
|
|
253
304
|
return order
|
|
254
305
|
|
|
255
|
-
def
|
|
306
|
+
def _set_workflow(self, workflow: Workflow) -> RapidataOrderBuilder:
|
|
256
307
|
"""
|
|
257
308
|
Set the workflow for the order.
|
|
258
309
|
|
|
@@ -265,10 +316,10 @@ class RapidataOrderBuilder:
|
|
|
265
316
|
if not isinstance(workflow, Workflow):
|
|
266
317
|
raise TypeError("Workflow must be of type Workflow.")
|
|
267
318
|
|
|
268
|
-
self.
|
|
319
|
+
self._workflow = workflow
|
|
269
320
|
return self
|
|
270
321
|
|
|
271
|
-
def
|
|
322
|
+
def _set_referee(self, referee: Referee) -> "RapidataOrderBuilder":
|
|
272
323
|
"""
|
|
273
324
|
Set the referee for the order.
|
|
274
325
|
|
|
@@ -281,13 +332,13 @@ class RapidataOrderBuilder:
|
|
|
281
332
|
if not isinstance(referee, Referee):
|
|
282
333
|
raise TypeError("Referee must be of type Referee.")
|
|
283
334
|
|
|
284
|
-
self.
|
|
335
|
+
self._referee = referee
|
|
285
336
|
return self
|
|
286
337
|
|
|
287
|
-
def
|
|
338
|
+
def _set_datapoints(
|
|
288
339
|
self,
|
|
289
340
|
datapoints: list[Datapoint],
|
|
290
|
-
) ->
|
|
341
|
+
) -> RapidataOrderBuilder:
|
|
291
342
|
"""
|
|
292
343
|
Set the datapoints for the order.
|
|
293
344
|
|
|
@@ -302,10 +353,12 @@ class RapidataOrderBuilder:
|
|
|
302
353
|
"Datapoints must be provided as a list of Datapoint objects."
|
|
303
354
|
)
|
|
304
355
|
|
|
305
|
-
self.
|
|
356
|
+
self._datapoints = datapoints
|
|
306
357
|
return self
|
|
307
358
|
|
|
308
|
-
def
|
|
359
|
+
def _set_settings(
|
|
360
|
+
self, settings: Sequence[RapidataSetting]
|
|
361
|
+
) -> RapidataOrderBuilder:
|
|
309
362
|
"""
|
|
310
363
|
Set the settings for the order.
|
|
311
364
|
|
|
@@ -323,10 +376,10 @@ class RapidataOrderBuilder:
|
|
|
323
376
|
if not isinstance(s, RapidataSetting):
|
|
324
377
|
raise TypeError("The settings list must only contain Setting objects.")
|
|
325
378
|
|
|
326
|
-
self.
|
|
379
|
+
self._settings = settings
|
|
327
380
|
return self
|
|
328
381
|
|
|
329
|
-
def
|
|
382
|
+
def _set_filters(self, filters: Sequence[RapidataFilter]) -> RapidataOrderBuilder:
|
|
330
383
|
"""
|
|
331
384
|
Set the filters for the order, e.g., country, language, userscore, etc.
|
|
332
385
|
|
|
@@ -343,15 +396,15 @@ class RapidataOrderBuilder:
|
|
|
343
396
|
if not isinstance(f, RapidataFilter):
|
|
344
397
|
raise TypeError("Filters must be of type Filter.")
|
|
345
398
|
|
|
346
|
-
if len(self.
|
|
399
|
+
if len(self._user_filters) > 0:
|
|
347
400
|
managed_print("Overwriting existing user filters.")
|
|
348
401
|
|
|
349
|
-
self.
|
|
402
|
+
self._user_filters = filters
|
|
350
403
|
return self
|
|
351
404
|
|
|
352
|
-
def
|
|
405
|
+
def _set_validation_set_id(
|
|
353
406
|
self, validation_set_id: str | None = None
|
|
354
|
-
) ->
|
|
407
|
+
) -> RapidataOrderBuilder:
|
|
355
408
|
"""
|
|
356
409
|
Set the validation set ID for the order.
|
|
357
410
|
|
|
@@ -363,28 +416,17 @@ class RapidataOrderBuilder:
|
|
|
363
416
|
"""
|
|
364
417
|
if validation_set_id is not None and not isinstance(validation_set_id, str):
|
|
365
418
|
raise TypeError("Validation set ID must be of type str.")
|
|
366
|
-
|
|
367
|
-
|
|
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
|
|
368
425
|
return self
|
|
369
426
|
|
|
370
|
-
def
|
|
371
|
-
"""
|
|
372
|
-
Define the number of tasks a user sees in a single session.
|
|
373
|
-
|
|
374
|
-
Args:
|
|
375
|
-
amount (int): The number of tasks a user sees in a single session.
|
|
376
|
-
|
|
377
|
-
Returns:
|
|
378
|
-
RapidataOrderBuilder: The updated RapidataOrderBuilder instance.
|
|
379
|
-
|
|
380
|
-
Raises:
|
|
381
|
-
NotImplementedError: This method is not implemented yet.
|
|
382
|
-
"""
|
|
383
|
-
raise NotImplementedError("Not implemented yet.")
|
|
384
|
-
|
|
385
|
-
def _selections(
|
|
427
|
+
def _set_selections(
|
|
386
428
|
self, selections: Sequence[RapidataSelection]
|
|
387
|
-
) ->
|
|
429
|
+
) -> RapidataOrderBuilder:
|
|
388
430
|
"""
|
|
389
431
|
Set the selections for the order.
|
|
390
432
|
|
|
@@ -403,10 +445,10 @@ class RapidataOrderBuilder:
|
|
|
403
445
|
if not isinstance(selection, RapidataSelection):
|
|
404
446
|
raise TypeError("Selections must be of type Selection.")
|
|
405
447
|
|
|
406
|
-
self.
|
|
448
|
+
self._selections = selections # type: ignore
|
|
407
449
|
return self
|
|
408
450
|
|
|
409
|
-
def
|
|
451
|
+
def _set_priority(self, priority: int | None = None) -> RapidataOrderBuilder:
|
|
410
452
|
"""
|
|
411
453
|
Set the priority for the order.
|
|
412
454
|
|
|
@@ -419,23 +461,21 @@ class RapidataOrderBuilder:
|
|
|
419
461
|
if priority is not None and not isinstance(priority, int):
|
|
420
462
|
raise TypeError("Priority must be of type int.")
|
|
421
463
|
|
|
422
|
-
self.
|
|
464
|
+
self._priority = priority
|
|
423
465
|
return self
|
|
424
466
|
|
|
425
|
-
def
|
|
426
|
-
self, sticky_state:
|
|
427
|
-
) ->
|
|
467
|
+
def _set_sticky_state(
|
|
468
|
+
self, sticky_state: StickyStateLiteral | None = None
|
|
469
|
+
) -> RapidataOrderBuilder:
|
|
428
470
|
"""
|
|
429
471
|
Set the sticky state for the order.
|
|
430
472
|
"""
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
raise TypeError(
|
|
437
|
-
"Sticky state must be of type Literal['None', 'Temporary', 'Permanent']."
|
|
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"
|
|
438
478
|
)
|
|
439
479
|
|
|
440
|
-
self.
|
|
480
|
+
self._sticky_state_value = sticky_state
|
|
441
481
|
return self
|