rapidata 2.35.1__py3-none-any.whl → 3.0.0a8__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of rapidata might be problematic. Click here for more details.
- rapidata/__init__.py +25 -16
- rapidata/api_client/__init__.py +84 -408
- rapidata/api_client/api/__init__.py +6 -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 +904 -245
- rapidata/api_client/api/campaign_api.py +582 -24
- 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 +364 -123
- 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 +140 -2067
- 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 -1480
- 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 +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 +377 -1835
- 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 -382
- 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 +49 -26
- 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/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/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_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_mode.py +37 -0
- rapidata/api_client/models/boost_query_result.py +7 -10
- 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_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 +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_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_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 +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/count_metadata.py +12 -1
- rapidata/api_client/models/country_filter.py +98 -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 +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_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 +42 -15
- 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 +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 +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/demographic_filter.py +100 -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/effort_capped_selection.py +2 -11
- 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 +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 +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_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/file_type_metadata.py +11 -6
- rapidata/api_client/models/file_type_metadata_model.py +2 -8
- rapidata/api_client/models/filter.py +7 -25
- 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/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 +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 +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_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 +31 -4
- 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 +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 +6 -14
- 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_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/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/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 +11 -13
- rapidata/api_client/models/language_filter.py +98 -0
- rapidata/api_client/models/leaderboard_query_result.py +29 -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/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 +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/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/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/or_filter.py +121 -0
- 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_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 +6 -14
- 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.py +12 -1
- rapidata/api_client/models/prompt_metadata_input.py +5 -7
- rapidata/api_client/models/prompt_type.py +38 -0
- rapidata/api_client/models/proxy_file_wrapper.py +17 -2
- 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 +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_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 +2 -2
- rapidata/api_client/models/runs_by_leaderboard_result.py +6 -12
- 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 +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 +15 -5
- 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 +19 -21
- 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/streams_metadata.py +12 -1
- 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 +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 +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 +106 -0
- 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/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_problem_details.py +117 -0
- 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/video_duration_metadata.py +12 -1
- 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 +33 -2
- rapidata/api_client/rest.py +2 -2
- rapidata/api_client_README.md +384 -318
- rapidata/rapidata_client/__init__.py +17 -22
- rapidata/rapidata_client/api/rapidata_api_client.py +253 -0
- 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 +90 -46
- rapidata/rapidata_client/benchmark/rapidata_benchmark.py +388 -225
- rapidata/rapidata_client/benchmark/rapidata_benchmark_manager.py +172 -65
- 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 +8 -3
- rapidata/rapidata_client/datapoints/_asset_uploader.py +184 -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 -10
- rapidata/rapidata_client/datapoints/assets/constants.py +7 -0
- 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 +15 -41
- 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 +51 -20
- 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 +273 -122
- rapidata/rapidata_client/order/rapidata_order.py +316 -160
- rapidata/rapidata_client/order/rapidata_order_manager.py +680 -421
- rapidata/rapidata_client/rapidata_client.py +115 -37
- 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/__init__.py +1 -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 +31 -8
- 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 +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 +96 -18
- 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 +29 -83
- rapidata/rapidata_client/validation/rapids/rapids_manager.py +369 -211
- rapidata/rapidata_client/validation/validation_set_manager.py +505 -276
- rapidata/rapidata_client/workflow/__init__.py +2 -2
- 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 +90 -0
- 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 +14 -14
- rapidata/service/openapi_service.py +119 -34
- 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.35.1.dist-info → rapidata-3.0.0a8.dist-info}/WHEEL +1 -1
- rapidata/rapidata_client/api/rapidata_exception.py +0 -107
- 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 -306
- rapidata/rapidata_client/datapoints/assets/_multi_asset.py +0 -61
- rapidata/rapidata_client/datapoints/assets/_sessions.py +0 -35
- 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/datapoint.py +0 -108
- 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 -396
- rapidata/rapidata_client/workflow/_ranking_workflow.py +0 -47
- rapidata/service/local_file_service.py +0 -25
- rapidata-2.35.1.dist-info/METADATA +0 -35
- rapidata-2.35.1.dist-info/RECORD +0 -657
- {rapidata-2.35.1.dist-info → rapidata-3.0.0a8.dist-info/licenses}/LICENSE +0 -0
|
@@ -1,76 +1,103 @@
|
|
|
1
|
+
from __future__ import annotations
|
|
2
|
+
|
|
1
3
|
import os
|
|
2
|
-
from
|
|
3
|
-
from rapidata.rapidata_client.datapoints.assets import MediaAsset, TextAsset, MultiAsset
|
|
4
|
-
from rapidata.rapidata_client.datapoints.metadata import Metadata
|
|
5
|
-
from rapidata.rapidata_client.validation.rapids.box import Box
|
|
4
|
+
from typing import Literal, TYPE_CHECKING
|
|
6
5
|
|
|
7
|
-
|
|
6
|
+
if TYPE_CHECKING:
|
|
7
|
+
from rapidata.rapidata_client.validation.rapids.rapids import Rapid
|
|
8
|
+
from rapidata.service.openapi_service import OpenAPIService
|
|
9
|
+
|
|
10
|
+
from rapidata.rapidata_client.validation.rapids.box import Box
|
|
8
11
|
|
|
9
|
-
from rapidata.rapidata_client.validation.rapids.rapids import Rapid
|
|
10
12
|
|
|
11
13
|
class RapidsManager:
|
|
12
14
|
"""
|
|
13
15
|
Can be used to build different types of rapids. That can then be added to Validation sets
|
|
14
16
|
"""
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
17
|
+
|
|
18
|
+
def __init__(self, openapi_service: OpenAPIService):
|
|
19
|
+
self._openapi_service = openapi_service
|
|
20
|
+
|
|
21
|
+
def classification_rapid(
|
|
22
|
+
self,
|
|
23
|
+
instruction: str,
|
|
24
|
+
answer_options: list[str],
|
|
25
|
+
datapoint: str,
|
|
26
|
+
truths: list[str],
|
|
27
|
+
data_type: Literal["media", "text"] = "media",
|
|
28
|
+
context: str | None = None,
|
|
29
|
+
media_context: str | None = None,
|
|
30
|
+
explanation: str | None = None,
|
|
26
31
|
) -> Rapid:
|
|
27
32
|
"""Build a classification rapid
|
|
28
|
-
|
|
33
|
+
|
|
29
34
|
Args:
|
|
30
35
|
instruction (str): The instruction/question to be shown to the labeler.
|
|
31
36
|
answer_options (list[str]): The options that the labeler can choose from to answer the question.
|
|
32
37
|
datapoint (str): The datapoint that the labeler will be labeling.
|
|
33
38
|
truths (list[str]): The correct answers to the question.
|
|
34
39
|
data_type (str, optional): The type of the datapoint. Defaults to "media" (any form of image, video or audio).
|
|
35
|
-
|
|
40
|
+
context (str, optional): The context is text that will be shown in addition to the instruction. Defaults to None.
|
|
41
|
+
media_context (str, optional): The media context is a link to an image / video that will be shown in addition to the instruction (can be combined with context). Defaults to None.
|
|
42
|
+
explanation (str, optional): The explanation that will be shown to the labeler if the answer is wrong. Defaults to None.
|
|
36
43
|
"""
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
+
from rapidata.api_client.models.i_rapid_payload import IRapidPayload
|
|
45
|
+
from rapidata.api_client.models.i_rapid_payload_classify_payload import (
|
|
46
|
+
IRapidPayloadClassifyPayload,
|
|
47
|
+
)
|
|
48
|
+
from rapidata.api_client.models.classify_payload_category import (
|
|
49
|
+
ClassifyPayloadCategory,
|
|
50
|
+
)
|
|
51
|
+
from rapidata.api_client.models.i_validation_truth_model import (
|
|
52
|
+
IValidationTruthModel,
|
|
53
|
+
)
|
|
54
|
+
from rapidata.api_client.models.i_validation_truth_model_attach_category_truth_model import (
|
|
55
|
+
IValidationTruthModelAttachCategoryTruthModel,
|
|
56
|
+
)
|
|
57
|
+
from rapidata.rapidata_client.validation.rapids.rapids import Rapid
|
|
44
58
|
|
|
45
59
|
if not isinstance(truths, list):
|
|
46
60
|
raise ValueError("Truths must be a list of strings")
|
|
47
|
-
|
|
61
|
+
|
|
48
62
|
if not all(truth in answer_options for truth in truths):
|
|
49
63
|
raise ValueError("Truths must be part of the answer options")
|
|
50
64
|
|
|
51
|
-
payload =
|
|
52
|
-
|
|
65
|
+
payload = IRapidPayload(
|
|
66
|
+
actual_instance=IRapidPayloadClassifyPayload(
|
|
67
|
+
_t="ClassifyPayload",
|
|
68
|
+
categories=[
|
|
69
|
+
ClassifyPayloadCategory(label=option, value=option)
|
|
70
|
+
for option in answer_options
|
|
71
|
+
],
|
|
72
|
+
title=instruction,
|
|
73
|
+
)
|
|
53
74
|
)
|
|
54
|
-
model_truth =
|
|
55
|
-
|
|
75
|
+
model_truth = IValidationTruthModel(
|
|
76
|
+
actual_instance=IValidationTruthModelAttachCategoryTruthModel(
|
|
77
|
+
correctCategories=truths, _t="AttachCategoryTruth"
|
|
78
|
+
)
|
|
56
79
|
)
|
|
57
80
|
|
|
58
81
|
return Rapid(
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
82
|
+
asset=datapoint,
|
|
83
|
+
data_type=data_type,
|
|
84
|
+
context=context,
|
|
85
|
+
media_context=media_context,
|
|
86
|
+
explanation=explanation,
|
|
87
|
+
payload=payload,
|
|
88
|
+
truth=model_truth,
|
|
89
|
+
random_correct_probability=len(truths) / len(answer_options),
|
|
90
|
+
)
|
|
91
|
+
|
|
92
|
+
def compare_rapid(
|
|
93
|
+
self,
|
|
94
|
+
instruction: str,
|
|
95
|
+
truth: str,
|
|
96
|
+
datapoint: list[str],
|
|
97
|
+
data_type: Literal["media", "text"] = "media",
|
|
98
|
+
context: str | None = None,
|
|
99
|
+
media_context: str | None = None,
|
|
100
|
+
explanation: str | None = None,
|
|
74
101
|
) -> Rapid:
|
|
75
102
|
"""Build a compare rapid
|
|
76
103
|
|
|
@@ -79,45 +106,57 @@ class RapidsManager:
|
|
|
79
106
|
truth (str): The correct answer to the comparison. (has to be one of the assets)
|
|
80
107
|
datapoint (list[str]): The two assets that the labeler will be comparing.
|
|
81
108
|
data_type (str, optional): The type of the datapoint. Defaults to "media" (any form of image, video or audio).
|
|
82
|
-
|
|
109
|
+
context (str, optional): The context is text that will be shown in addition to the instruction. Defaults to None.
|
|
110
|
+
media_context (str, optional): The media context is a link to an image / video that will be shown in addition to the instruction (can be combined with context). Defaults to None.
|
|
111
|
+
explanation (str, optional): The explanation that will be shown to the labeler if the answer is wrong. Defaults to None.
|
|
83
112
|
"""
|
|
113
|
+
from rapidata.api_client.models.i_rapid_payload import IRapidPayload
|
|
114
|
+
from rapidata.api_client.models.i_rapid_payload_compare_payload import (
|
|
115
|
+
IRapidPayloadComparePayload,
|
|
116
|
+
)
|
|
117
|
+
from rapidata.api_client.models.i_validation_truth_model import (
|
|
118
|
+
IValidationTruthModel,
|
|
119
|
+
)
|
|
120
|
+
from rapidata.api_client.models.i_validation_truth_model_compare_truth_model import (
|
|
121
|
+
IValidationTruthModelCompareTruthModel,
|
|
122
|
+
)
|
|
123
|
+
from rapidata.rapidata_client.validation.rapids.rapids import Rapid
|
|
84
124
|
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
truth = os.path.basename(truth)
|
|
97
|
-
model_truth = CompareTruth(_t="CompareTruth", winnerId=truth)
|
|
98
|
-
|
|
99
|
-
if len(asset) != 2:
|
|
100
|
-
raise ValueError("Compare rapid requires exactly two media paths")
|
|
125
|
+
payload = IRapidPayload(
|
|
126
|
+
actual_instance=IRapidPayloadComparePayload(
|
|
127
|
+
_t="ComparePayload", criteria=instruction
|
|
128
|
+
)
|
|
129
|
+
)
|
|
130
|
+
truth_basename = os.path.basename(truth)
|
|
131
|
+
model_truth = IValidationTruthModel(
|
|
132
|
+
actual_instance=IValidationTruthModelCompareTruthModel(
|
|
133
|
+
_t="CompareTruth", winnerId=truth_basename
|
|
134
|
+
)
|
|
135
|
+
)
|
|
101
136
|
|
|
137
|
+
if len(datapoint) != 2:
|
|
138
|
+
raise ValueError("Compare rapid requires exactly two media paths")
|
|
102
139
|
|
|
103
140
|
return Rapid(
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
141
|
+
asset=datapoint,
|
|
142
|
+
data_type=data_type,
|
|
143
|
+
truth=model_truth,
|
|
144
|
+
context=context,
|
|
145
|
+
media_context=media_context,
|
|
146
|
+
payload=payload,
|
|
147
|
+
explanation=explanation,
|
|
148
|
+
random_correct_probability=0.5,
|
|
149
|
+
)
|
|
150
|
+
|
|
151
|
+
def select_words_rapid(
|
|
152
|
+
self,
|
|
153
|
+
instruction: str,
|
|
154
|
+
truths: list[int],
|
|
155
|
+
datapoint: str,
|
|
156
|
+
sentence: str,
|
|
157
|
+
required_precision: float = 1,
|
|
158
|
+
required_completeness: float = 1,
|
|
159
|
+
explanation: str | None = None,
|
|
121
160
|
) -> Rapid:
|
|
122
161
|
"""Build a select words rapid
|
|
123
162
|
|
|
@@ -128,10 +167,21 @@ class RapidsManager:
|
|
|
128
167
|
sentence (str): The sentence that the labeler will be selecting words from. (split up by spaces)
|
|
129
168
|
required_precision (float): The required precision for the labeler to get the rapid correct (minimum ratio of the words selected that need to be correct). defaults to 1. (no wrong words can be selected)
|
|
130
169
|
required_completeness (float): The required completeness for the labeler to get the rapid correct (miminum ratio of total correct words selected). defaults to 1. (all correct words need to be selected)
|
|
131
|
-
|
|
170
|
+
explanation (str, optional): The explanation that will be shown to the labeler if the answer is wrong. Defaults to None.
|
|
132
171
|
"""
|
|
133
|
-
|
|
134
|
-
|
|
172
|
+
from rapidata.api_client.models.i_rapid_payload import IRapidPayload
|
|
173
|
+
from rapidata.api_client.models.i_rapid_payload_transcription_payload import (
|
|
174
|
+
IRapidPayloadTranscriptionPayload,
|
|
175
|
+
)
|
|
176
|
+
from rapidata.api_client.models.transcription_word import TranscriptionWord
|
|
177
|
+
from rapidata.api_client.models.i_validation_truth_model import (
|
|
178
|
+
IValidationTruthModel,
|
|
179
|
+
)
|
|
180
|
+
from rapidata.api_client.models.i_validation_truth_model_transcription_truth_model import (
|
|
181
|
+
IValidationTruthModelTranscriptionTruthModel,
|
|
182
|
+
)
|
|
183
|
+
from rapidata.rapidata_client.validation.rapids.rapids import Rapid
|
|
184
|
+
|
|
135
185
|
transcription_words = [
|
|
136
186
|
TranscriptionWord(word=word, wordIndex=i)
|
|
137
187
|
for i, word in enumerate(sentence.split(" "))
|
|
@@ -143,32 +193,41 @@ class RapidsManager:
|
|
|
143
193
|
TranscriptionWord(word=transcription_words[index].word, wordIndex=index)
|
|
144
194
|
)
|
|
145
195
|
|
|
146
|
-
payload =
|
|
147
|
-
|
|
196
|
+
payload = IRapidPayload(
|
|
197
|
+
actual_instance=IRapidPayloadTranscriptionPayload(
|
|
198
|
+
_t="TranscriptionPayload",
|
|
199
|
+
title=instruction,
|
|
200
|
+
transcription=transcription_words,
|
|
201
|
+
)
|
|
148
202
|
)
|
|
149
203
|
|
|
150
|
-
model_truth =
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
204
|
+
model_truth = IValidationTruthModel(
|
|
205
|
+
actual_instance=IValidationTruthModelTranscriptionTruthModel(
|
|
206
|
+
_t="TranscriptionTruth",
|
|
207
|
+
correctWords=correct_transcription_words,
|
|
208
|
+
requiredPrecision=required_precision,
|
|
209
|
+
requiredCompleteness=required_completeness,
|
|
210
|
+
)
|
|
155
211
|
)
|
|
156
212
|
|
|
157
213
|
return Rapid(
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
)
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
214
|
+
payload=payload,
|
|
215
|
+
truth=model_truth,
|
|
216
|
+
asset=datapoint,
|
|
217
|
+
sentence=sentence,
|
|
218
|
+
explanation=explanation,
|
|
219
|
+
random_correct_probability=len(correct_transcription_words)
|
|
220
|
+
/ len(transcription_words),
|
|
221
|
+
)
|
|
222
|
+
|
|
223
|
+
def locate_rapid(
|
|
224
|
+
self,
|
|
225
|
+
instruction: str,
|
|
226
|
+
truths: list[Box],
|
|
227
|
+
datapoint: str,
|
|
228
|
+
context: str | None = None,
|
|
229
|
+
media_context: str | None = None,
|
|
230
|
+
explanation: str | None = None,
|
|
172
231
|
) -> Rapid:
|
|
173
232
|
"""Build a locate rapid
|
|
174
233
|
|
|
@@ -176,47 +235,57 @@ class RapidsManager:
|
|
|
176
235
|
instruction (str): The instruction on what the labeler should do.
|
|
177
236
|
truths (list[Box]): The bounding boxes of the object that the labeler ought to be locating.
|
|
178
237
|
datapoint (str): The asset that the labeler will be locating the object in.
|
|
179
|
-
|
|
238
|
+
context (str, optional): The context is text that will be shown in addition to the instruction. Defaults to None.
|
|
239
|
+
media_context (str, optional): The media context is a link to an image / video that will be shown in addition to the instruction (can be combined with context). Defaults to None.
|
|
240
|
+
explanation (str, optional): The explanation that will be shown to the labeler if the answer is wrong. Defaults to None.
|
|
180
241
|
"""
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
_t="LocatePayload", target=instruction
|
|
242
|
+
from rapidata.api_client.models.i_rapid_payload import IRapidPayload
|
|
243
|
+
from rapidata.api_client.models.i_rapid_payload_locate_payload import (
|
|
244
|
+
IRapidPayloadLocatePayload,
|
|
185
245
|
)
|
|
246
|
+
from rapidata.api_client.models.i_validation_truth_model import (
|
|
247
|
+
IValidationTruthModel,
|
|
248
|
+
)
|
|
249
|
+
from rapidata.api_client.models.i_validation_truth_model_locate_box_truth_model import (
|
|
250
|
+
IValidationTruthModelLocateBoxTruthModel,
|
|
251
|
+
)
|
|
252
|
+
from rapidata.rapidata_client.validation.rapids.rapids import Rapid
|
|
186
253
|
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
254
|
+
payload = IRapidPayload(
|
|
255
|
+
actual_instance=IRapidPayloadLocatePayload(
|
|
256
|
+
_t="LocatePayload", target=instruction
|
|
257
|
+
)
|
|
258
|
+
)
|
|
191
259
|
|
|
192
|
-
model_truth =
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
xMax=truth.x_max / img_dimensions[0] * 100,
|
|
198
|
-
yMax=truth.y_max / img_dimensions[1] * 100,
|
|
199
|
-
yMin=truth.y_min / img_dimensions[1] * 100,
|
|
200
|
-
) for truth in truths]
|
|
260
|
+
model_truth = IValidationTruthModel(
|
|
261
|
+
actual_instance=IValidationTruthModelLocateBoxTruthModel(
|
|
262
|
+
_t="LocateBoxTruth",
|
|
263
|
+
boundingBoxes=[truth.to_model() for truth in truths],
|
|
264
|
+
)
|
|
201
265
|
)
|
|
202
266
|
|
|
203
|
-
coverage = self._calculate_boxes_coverage(
|
|
267
|
+
coverage = self._calculate_boxes_coverage(
|
|
268
|
+
truths,
|
|
269
|
+
)
|
|
204
270
|
|
|
205
271
|
return Rapid(
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
272
|
+
payload=payload,
|
|
273
|
+
truth=model_truth,
|
|
274
|
+
asset=datapoint,
|
|
275
|
+
context=context,
|
|
276
|
+
media_context=media_context,
|
|
277
|
+
explanation=explanation,
|
|
278
|
+
random_correct_probability=coverage,
|
|
279
|
+
)
|
|
280
|
+
|
|
281
|
+
def draw_rapid(
|
|
282
|
+
self,
|
|
283
|
+
instruction: str,
|
|
284
|
+
truths: list[Box],
|
|
285
|
+
datapoint: str,
|
|
286
|
+
context: str | None = None,
|
|
287
|
+
media_context: str | None = None,
|
|
288
|
+
explanation: str | None = None,
|
|
220
289
|
) -> Rapid:
|
|
221
290
|
"""Build a draw rapid
|
|
222
291
|
|
|
@@ -224,46 +293,60 @@ class RapidsManager:
|
|
|
224
293
|
instruction (str): The instructions on what the labeler
|
|
225
294
|
truths (list[Box]): The bounding boxes of the object that the labeler ought to be drawing.
|
|
226
295
|
datapoint (str): The asset that the labeler will be drawing the object in.
|
|
227
|
-
|
|
296
|
+
context (str, optional): The context is text that will be shown in addition to the instruction. Defaults to None.
|
|
297
|
+
media_context (str, optional): The media context is a link to an image / video that will be shown in addition to the instruction (can be combined with context). Defaults to None.
|
|
298
|
+
explanation (str, optional): The explanation that will be shown to the labeler if the answer is wrong. Defaults to None.
|
|
228
299
|
"""
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
payload = LinePayload(
|
|
233
|
-
_t="LinePayload", target=instruction
|
|
300
|
+
from rapidata.api_client.models.i_rapid_payload import IRapidPayload
|
|
301
|
+
from rapidata.api_client.models.i_rapid_payload_line_payload import (
|
|
302
|
+
IRapidPayloadLinePayload,
|
|
234
303
|
)
|
|
304
|
+
from rapidata.api_client.models.i_validation_truth_model import (
|
|
305
|
+
IValidationTruthModel,
|
|
306
|
+
)
|
|
307
|
+
from rapidata.api_client.models.i_validation_truth_model_bounding_box_truth_model import (
|
|
308
|
+
IValidationTruthModelBoundingBoxTruthModel,
|
|
309
|
+
)
|
|
310
|
+
from rapidata.rapidata_client.validation.rapids.rapids import Rapid
|
|
235
311
|
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
312
|
+
payload = IRapidPayload(
|
|
313
|
+
actual_instance=IRapidPayloadLinePayload(
|
|
314
|
+
_t="LinePayload", target=instruction
|
|
315
|
+
)
|
|
316
|
+
)
|
|
240
317
|
|
|
241
|
-
model_truth =
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
318
|
+
model_truth = IValidationTruthModel(
|
|
319
|
+
actual_instance=IValidationTruthModelBoundingBoxTruthModel(
|
|
320
|
+
_t="BoundingBoxTruth",
|
|
321
|
+
xMax=truths[0].x_max * 100,
|
|
322
|
+
xMin=truths[0].x_min * 100,
|
|
323
|
+
yMax=truths[0].y_max * 100,
|
|
324
|
+
yMin=truths[0].y_min * 100,
|
|
325
|
+
)
|
|
247
326
|
)
|
|
248
327
|
|
|
249
|
-
coverage = self._calculate_boxes_coverage(
|
|
328
|
+
coverage = self._calculate_boxes_coverage(
|
|
329
|
+
truths,
|
|
330
|
+
)
|
|
250
331
|
|
|
251
332
|
return Rapid(
|
|
252
333
|
payload=payload,
|
|
253
334
|
truth=model_truth,
|
|
254
|
-
asset=
|
|
255
|
-
|
|
335
|
+
asset=datapoint,
|
|
336
|
+
context=context,
|
|
337
|
+
media_context=media_context,
|
|
256
338
|
explanation=explanation,
|
|
257
|
-
|
|
339
|
+
random_correct_probability=coverage,
|
|
258
340
|
)
|
|
259
341
|
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
342
|
+
def timestamp_rapid(
|
|
343
|
+
self,
|
|
344
|
+
instruction: str,
|
|
345
|
+
truths: list[tuple[int, int]],
|
|
346
|
+
datapoint: str,
|
|
347
|
+
context: str | None = None,
|
|
348
|
+
media_context: str | None = None,
|
|
349
|
+
explanation: str | None = None,
|
|
267
350
|
) -> Rapid:
|
|
268
351
|
"""Build a timestamp rapid
|
|
269
352
|
|
|
@@ -272,90 +355,165 @@ class RapidsManager:
|
|
|
272
355
|
truths (list[tuple[int, int]]): The possible accepted timestamps intervals for the labeler (in miliseconds).
|
|
273
356
|
The first element of the tuple is the start of the interval and the second element is the end of the interval.
|
|
274
357
|
datapoint (str): The asset that the labeler will be timestamping.
|
|
275
|
-
|
|
358
|
+
context (str, optional): The context is text that will be shown in addition to the instruction. Defaults to None.
|
|
359
|
+
media_context (str, optional): The media context is a link to an image / video that will be shown in addition to the instruction (can be combined with context). Defaults to None.
|
|
360
|
+
explanation (str, optional): The explanation that will be shown to the labeler if the answer is wrong. Defaults to None.
|
|
276
361
|
"""
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
362
|
+
from rapidata.api_client.models.i_rapid_payload import IRapidPayload
|
|
363
|
+
from rapidata.api_client.models.i_rapid_payload_scrub_payload import (
|
|
364
|
+
IRapidPayloadScrubPayload,
|
|
365
|
+
)
|
|
366
|
+
from rapidata.api_client.models.scrub_range import ScrubRange
|
|
367
|
+
from rapidata.api_client.models.i_validation_truth_model import (
|
|
368
|
+
IValidationTruthModel,
|
|
369
|
+
)
|
|
370
|
+
from rapidata.api_client.models.i_validation_truth_model_scrub_truth_model import (
|
|
371
|
+
IValidationTruthModelScrubTruthModel,
|
|
372
|
+
)
|
|
373
|
+
from rapidata.rapidata_client.validation.rapids.rapids import Rapid
|
|
374
|
+
|
|
280
375
|
for truth in truths:
|
|
281
376
|
if len(truth) != 2:
|
|
282
|
-
raise ValueError(
|
|
377
|
+
raise ValueError(
|
|
378
|
+
"The truths per datapoint must be a tuple of exactly two integers."
|
|
379
|
+
)
|
|
283
380
|
if truth[0] > truth[1]:
|
|
284
|
-
raise ValueError(
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
381
|
+
raise ValueError(
|
|
382
|
+
"The start of the interval must be smaller than the end of the interval."
|
|
383
|
+
)
|
|
384
|
+
|
|
385
|
+
payload = IRapidPayload(
|
|
386
|
+
actual_instance=IRapidPayloadScrubPayload(
|
|
387
|
+
_t="ScrubPayload", target=instruction
|
|
388
|
+
)
|
|
289
389
|
)
|
|
290
390
|
|
|
291
|
-
model_truth =
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
391
|
+
model_truth = IValidationTruthModel(
|
|
392
|
+
actual_instance=IValidationTruthModelScrubTruthModel(
|
|
393
|
+
_t="ScrubTruth",
|
|
394
|
+
validRanges=[
|
|
395
|
+
ScrubRange(start=truth[0], end=truth[1]) for truth in truths
|
|
396
|
+
],
|
|
397
|
+
)
|
|
297
398
|
)
|
|
298
399
|
|
|
299
400
|
return Rapid(
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
401
|
+
payload=payload,
|
|
402
|
+
truth=model_truth,
|
|
403
|
+
asset=datapoint,
|
|
404
|
+
context=context,
|
|
405
|
+
media_context=media_context,
|
|
406
|
+
explanation=explanation,
|
|
407
|
+
random_correct_probability=0.5, # TODO: implement coverage ratio
|
|
408
|
+
)
|
|
409
|
+
|
|
410
|
+
def _calculate_boxes_coverage(self, boxes: list[Box]) -> float:
|
|
411
|
+
"""
|
|
412
|
+
Calculate the ratio of area covered by a list of boxes.
|
|
413
|
+
|
|
414
|
+
Args:
|
|
415
|
+
boxes: List of Box objects with coordinates in range [0, 1]
|
|
307
416
|
|
|
308
|
-
|
|
417
|
+
Returns:
|
|
418
|
+
float: Coverage ratio between 0.0 and 1.0
|
|
419
|
+
"""
|
|
309
420
|
if not boxes:
|
|
310
421
|
return 0.0
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
422
|
+
|
|
423
|
+
# Convert boxes to intervals for sweep line algorithm
|
|
424
|
+
events = []
|
|
425
|
+
|
|
426
|
+
# Create events for x-coordinates
|
|
427
|
+
for i, box in enumerate(boxes):
|
|
428
|
+
events.append((box.x_min, "start", i, box))
|
|
429
|
+
events.append((box.x_max, "end", i, box))
|
|
430
|
+
|
|
431
|
+
# Sort events by x-coordinate
|
|
432
|
+
events.sort(key=lambda x: (x[0], x[1] == "end"))
|
|
433
|
+
|
|
434
|
+
total_area = 0.0
|
|
435
|
+
active_boxes = set()
|
|
436
|
+
prev_x = 0.0
|
|
437
|
+
|
|
438
|
+
for x, event_type, box_id, box in events:
|
|
439
|
+
# Calculate area for the previous x-interval
|
|
440
|
+
if active_boxes and x > prev_x:
|
|
441
|
+
# Merge y-intervals for active boxes
|
|
442
|
+
y_intervals = [(boxes[i].y_min, boxes[i].y_max) for i in active_boxes]
|
|
443
|
+
y_intervals.sort()
|
|
444
|
+
|
|
445
|
+
# Merge overlapping y-intervals
|
|
446
|
+
merged_intervals = []
|
|
447
|
+
for start, end in y_intervals:
|
|
448
|
+
if merged_intervals and start <= merged_intervals[-1][1]:
|
|
449
|
+
# Overlapping intervals - merge them
|
|
450
|
+
merged_intervals[-1] = (
|
|
451
|
+
merged_intervals[-1][0],
|
|
452
|
+
max(merged_intervals[-1][1], end),
|
|
453
|
+
)
|
|
454
|
+
else:
|
|
455
|
+
# Non-overlapping interval
|
|
456
|
+
merged_intervals.append((start, end))
|
|
457
|
+
|
|
458
|
+
# Calculate total y-coverage for this x-interval
|
|
459
|
+
y_coverage = sum(end - start for start, end in merged_intervals)
|
|
460
|
+
total_area += (x - prev_x) * y_coverage
|
|
461
|
+
|
|
462
|
+
# Update active boxes
|
|
463
|
+
if event_type == "start":
|
|
464
|
+
active_boxes.add(box_id)
|
|
465
|
+
else:
|
|
466
|
+
active_boxes.discard(box_id)
|
|
467
|
+
|
|
468
|
+
prev_x = x
|
|
469
|
+
|
|
470
|
+
return total_area
|
|
471
|
+
|
|
472
|
+
@staticmethod
|
|
473
|
+
def _calculate_coverage_ratio(
|
|
474
|
+
total_duration: int, subsections: list[tuple[int, int]]
|
|
475
|
+
) -> float:
|
|
323
476
|
"""
|
|
324
477
|
Calculate the ratio of total_duration that is covered by subsections, handling overlaps.
|
|
325
|
-
|
|
478
|
+
|
|
326
479
|
Args:
|
|
327
480
|
total_duration: The total duration to consider
|
|
328
481
|
subsections: List of tuples containing (start, end) times
|
|
329
|
-
|
|
482
|
+
|
|
330
483
|
Returns:
|
|
331
484
|
float: Ratio of coverage (0 to 1)
|
|
332
485
|
"""
|
|
333
486
|
if not subsections:
|
|
334
487
|
return 0.0
|
|
335
|
-
|
|
488
|
+
|
|
336
489
|
# Sort subsections by start time and clamp to valid range
|
|
337
490
|
sorted_ranges = sorted(
|
|
338
|
-
(max(0, start), min(end, total_duration))
|
|
339
|
-
for start, end in subsections
|
|
491
|
+
(max(0, start), min(end, total_duration)) for start, end in subsections
|
|
340
492
|
)
|
|
341
|
-
|
|
493
|
+
|
|
342
494
|
# Merge overlapping ranges
|
|
343
495
|
merged_ranges = []
|
|
344
496
|
current_range = list(sorted_ranges[0])
|
|
345
|
-
|
|
497
|
+
|
|
346
498
|
for next_start, next_end in sorted_ranges[1:]:
|
|
347
499
|
current_start, current_end = current_range
|
|
348
|
-
|
|
500
|
+
|
|
349
501
|
# If ranges overlap or are adjacent
|
|
350
502
|
if next_start <= current_end:
|
|
351
503
|
current_range[1] = max(current_end, next_end)
|
|
352
504
|
else:
|
|
353
505
|
merged_ranges.append(current_range)
|
|
354
506
|
current_range = [next_start, next_end]
|
|
355
|
-
|
|
507
|
+
|
|
356
508
|
merged_ranges.append(current_range)
|
|
357
|
-
|
|
509
|
+
|
|
358
510
|
# Calculate total coverage
|
|
359
511
|
total_coverage = sum(end - start for start, end in merged_ranges)
|
|
360
|
-
|
|
512
|
+
|
|
361
513
|
return total_coverage / total_duration
|
|
514
|
+
|
|
515
|
+
def __str__(self) -> str:
|
|
516
|
+
return "RapidsManager"
|
|
517
|
+
|
|
518
|
+
def __repr__(self) -> str:
|
|
519
|
+
return self.__str__()
|