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,14 +1,26 @@
|
|
|
1
|
-
from rapidata.api_client.models.
|
|
2
|
-
from rapidata.api_client.models.
|
|
3
|
-
|
|
1
|
+
from rapidata.api_client.models.i_order_workflow_model import IOrderWorkflowModel
|
|
2
|
+
from rapidata.api_client.models.i_order_workflow_model_simple_workflow_model import (
|
|
3
|
+
IOrderWorkflowModelSimpleWorkflowModel,
|
|
4
|
+
)
|
|
5
|
+
from rapidata.api_client.models.i_rapid_blueprint import IRapidBlueprint
|
|
6
|
+
from rapidata.api_client.models.i_rapid_blueprint_transcription_rapid_blueprint import (
|
|
7
|
+
IRapidBlueprintTranscriptionRapidBlueprint,
|
|
8
|
+
)
|
|
4
9
|
from rapidata.rapidata_client.workflow._base_workflow import Workflow
|
|
10
|
+
from rapidata.api_client.models.i_rapid_payload_transcription_payload import (
|
|
11
|
+
IRapidPayloadTranscriptionPayload,
|
|
12
|
+
)
|
|
13
|
+
from rapidata.api_client.models.transcription_word import TranscriptionWord
|
|
14
|
+
from rapidata.rapidata_client.datapoints._datapoint import Datapoint
|
|
15
|
+
from rapidata.api_client.models.rapid_modality import RapidModality
|
|
16
|
+
from rapidata.api_client.models.i_rapid_payload import IRapidPayload
|
|
5
17
|
|
|
6
18
|
|
|
7
19
|
class SelectWordsWorkflow(Workflow):
|
|
8
20
|
"""
|
|
9
21
|
A workflow for select words tasks.
|
|
10
22
|
|
|
11
|
-
This class represents a select words workflow
|
|
23
|
+
This class represents a select words workflow
|
|
12
24
|
where datapoints have a sentence attached to them where words can be selected.
|
|
13
25
|
|
|
14
26
|
Attributes:
|
|
@@ -18,17 +30,45 @@ class SelectWordsWorkflow(Workflow):
|
|
|
18
30
|
instruction (str): The instruction to be provided for the select words task.
|
|
19
31
|
"""
|
|
20
32
|
|
|
33
|
+
modality = RapidModality.TRANSCRIPTION
|
|
34
|
+
|
|
21
35
|
def __init__(self, instruction: str):
|
|
22
36
|
super().__init__(type="SimpleWorkflowConfig")
|
|
23
37
|
self._instruction = instruction
|
|
24
38
|
|
|
25
|
-
def
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
39
|
+
def _get_instruction(self) -> str:
|
|
40
|
+
return self._instruction
|
|
41
|
+
|
|
42
|
+
def _to_model(self) -> IOrderWorkflowModel:
|
|
43
|
+
blueprint = IRapidBlueprintTranscriptionRapidBlueprint(
|
|
44
|
+
_t="TranscriptionBlueprint", title=self._instruction
|
|
29
45
|
)
|
|
30
46
|
|
|
31
|
-
return
|
|
32
|
-
|
|
33
|
-
|
|
47
|
+
return IOrderWorkflowModel(
|
|
48
|
+
actual_instance=IOrderWorkflowModelSimpleWorkflowModel(
|
|
49
|
+
_t="SimpleWorkflow",
|
|
50
|
+
blueprint=IRapidBlueprint(actual_instance=blueprint),
|
|
51
|
+
)
|
|
34
52
|
)
|
|
53
|
+
|
|
54
|
+
def _to_payload(self, datapoint: Datapoint) -> IRapidPayload:
|
|
55
|
+
assert (
|
|
56
|
+
datapoint.sentence is not None
|
|
57
|
+
), "SelectWordsWorkflow requires a sentence datapoint"
|
|
58
|
+
|
|
59
|
+
return IRapidPayload(
|
|
60
|
+
actual_instance=IRapidPayloadTranscriptionPayload(
|
|
61
|
+
_t="TranscriptionPayload",
|
|
62
|
+
title=self._instruction,
|
|
63
|
+
transcription=[
|
|
64
|
+
TranscriptionWord(word=word, wordIndex=i)
|
|
65
|
+
for i, word in enumerate(datapoint.sentence.split())
|
|
66
|
+
],
|
|
67
|
+
)
|
|
68
|
+
)
|
|
69
|
+
|
|
70
|
+
def __str__(self) -> str:
|
|
71
|
+
return f"SelectWordsWorkflow(instruction='{self._instruction}')"
|
|
72
|
+
|
|
73
|
+
def __repr__(self) -> str:
|
|
74
|
+
return f"SelectWordsWorkflow(instruction={self._instruction!r})"
|
|
@@ -1,14 +1,25 @@
|
|
|
1
|
-
from rapidata.api_client.models.
|
|
2
|
-
from rapidata.api_client.models.
|
|
3
|
-
|
|
1
|
+
from rapidata.api_client.models.i_order_workflow_model import IOrderWorkflowModel
|
|
2
|
+
from rapidata.api_client.models.i_order_workflow_model_simple_workflow_model import (
|
|
3
|
+
IOrderWorkflowModelSimpleWorkflowModel,
|
|
4
|
+
)
|
|
5
|
+
from rapidata.api_client.models.i_rapid_blueprint import IRapidBlueprint
|
|
6
|
+
from rapidata.api_client.models.i_rapid_blueprint_scrub_rapid_blueprint import (
|
|
7
|
+
IRapidBlueprintScrubRapidBlueprint,
|
|
8
|
+
)
|
|
4
9
|
from rapidata.rapidata_client.workflow._base_workflow import Workflow
|
|
10
|
+
from rapidata.api_client.models.i_rapid_payload_scrub_payload import (
|
|
11
|
+
IRapidPayloadScrubPayload,
|
|
12
|
+
)
|
|
13
|
+
from rapidata.rapidata_client.datapoints._datapoint import Datapoint
|
|
14
|
+
from rapidata.api_client.models.rapid_modality import RapidModality
|
|
15
|
+
from rapidata.api_client.models.i_rapid_payload import IRapidPayload
|
|
5
16
|
|
|
6
17
|
|
|
7
18
|
class TimestampWorkflow(Workflow):
|
|
8
19
|
"""
|
|
9
20
|
A workflow for timestamp tasks.
|
|
10
21
|
|
|
11
|
-
This class represents a timestamp workflow
|
|
22
|
+
This class represents a timestamp workflow
|
|
12
23
|
where audio or video content receives timestamps based on the instruction.
|
|
13
24
|
|
|
14
25
|
Attributes:
|
|
@@ -18,17 +29,37 @@ class TimestampWorkflow(Workflow):
|
|
|
18
29
|
instruction (str): The instruction to be provided for the timestamp task.
|
|
19
30
|
"""
|
|
20
31
|
|
|
32
|
+
modality = RapidModality.SCRUB
|
|
33
|
+
|
|
21
34
|
def __init__(self, instruction: str):
|
|
22
35
|
super().__init__(type="SimpleWorkflowConfig")
|
|
23
36
|
self._instruction = instruction
|
|
24
37
|
|
|
25
|
-
def
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
38
|
+
def _get_instruction(self) -> str:
|
|
39
|
+
return self._instruction
|
|
40
|
+
|
|
41
|
+
def _to_model(self) -> IOrderWorkflowModel:
|
|
42
|
+
blueprint = IRapidBlueprintScrubRapidBlueprint(
|
|
43
|
+
_t="ScrubBlueprint", target=self._instruction
|
|
44
|
+
)
|
|
45
|
+
|
|
46
|
+
return IOrderWorkflowModel(
|
|
47
|
+
actual_instance=IOrderWorkflowModelSimpleWorkflowModel(
|
|
48
|
+
_t="SimpleWorkflow",
|
|
49
|
+
blueprint=IRapidBlueprint(actual_instance=blueprint),
|
|
50
|
+
)
|
|
29
51
|
)
|
|
30
52
|
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
53
|
+
def _to_payload(self, datapoint: Datapoint) -> IRapidPayload:
|
|
54
|
+
return IRapidPayload(
|
|
55
|
+
actual_instance=IRapidPayloadScrubPayload(
|
|
56
|
+
_t="ScrubPayload",
|
|
57
|
+
target=self._instruction,
|
|
58
|
+
)
|
|
34
59
|
)
|
|
60
|
+
|
|
61
|
+
def __str__(self) -> str:
|
|
62
|
+
return f"TimestampWorkflow(instruction='{self._instruction}')"
|
|
63
|
+
|
|
64
|
+
def __repr__(self) -> str:
|
|
65
|
+
return f"TimestampWorkflow(instruction={self._instruction!r})"
|
rapidata/service/__init__.py
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
from .local_file_service import LocalFileService as LocalFileService
|
|
@@ -11,7 +11,7 @@ from typing import Dict, List, Optional, Tuple
|
|
|
11
11
|
import requests
|
|
12
12
|
from colorama import Fore
|
|
13
13
|
from pydantic import BaseModel
|
|
14
|
-
from rapidata.rapidata_client.
|
|
14
|
+
from rapidata.rapidata_client.config import logger, managed_print
|
|
15
15
|
|
|
16
16
|
|
|
17
17
|
class ClientCredential(BaseModel):
|
|
@@ -52,7 +52,7 @@ class CredentialManager:
|
|
|
52
52
|
|
|
53
53
|
def _read_credentials(self) -> Dict[str, List[ClientCredential]]:
|
|
54
54
|
"""Read all stored credentials from the config file."""
|
|
55
|
-
logger.debug(
|
|
55
|
+
logger.debug("Reading credentials from %s", self.config_path)
|
|
56
56
|
if not self.config_path.exists():
|
|
57
57
|
return {}
|
|
58
58
|
|
|
@@ -77,12 +77,12 @@ class CredentialManager:
|
|
|
77
77
|
with open(self.config_path, "w") as f:
|
|
78
78
|
json.dump(data, f, indent=2)
|
|
79
79
|
|
|
80
|
-
logger.debug(
|
|
80
|
+
logger.debug("Credentials written to %s with data: %s", self.config_path, data)
|
|
81
81
|
|
|
82
82
|
# Ensure file is only readable by the user
|
|
83
83
|
os.chmod(self.config_path, 0o600)
|
|
84
84
|
logger.debug(
|
|
85
|
-
|
|
85
|
+
"Set permissions for %s to read/write for user only.", self.config_path
|
|
86
86
|
)
|
|
87
87
|
|
|
88
88
|
def _store_credential(self, credential: ClientCredential) -> None:
|
|
@@ -109,19 +109,19 @@ class CredentialManager:
|
|
|
109
109
|
def get_client_credentials(self) -> Optional[ClientCredential]:
|
|
110
110
|
"""Gets stored client credentials or create new ones via browser auth."""
|
|
111
111
|
credentials = self._read_credentials()
|
|
112
|
-
logger.debug(
|
|
112
|
+
logger.debug("Stored credentials: %s", credentials)
|
|
113
113
|
env_credentials = credentials.get(self.endpoint, [])
|
|
114
114
|
|
|
115
115
|
if env_credentials:
|
|
116
|
-
logger.debug(
|
|
116
|
+
logger.debug("Found credentials for %s: %s", self.endpoint, env_credentials)
|
|
117
117
|
credential = self._select_credential(env_credentials)
|
|
118
|
-
logger.debug(
|
|
118
|
+
logger.debug("Selected credential: %s", credential)
|
|
119
119
|
if credential:
|
|
120
120
|
credential.last_used = datetime.now(timezone.utc)
|
|
121
121
|
self._write_credentials(credentials)
|
|
122
122
|
return credential
|
|
123
123
|
|
|
124
|
-
logger.debug(
|
|
124
|
+
logger.debug("No credentials found for %s. Creating new ones.", self.endpoint)
|
|
125
125
|
return self._create_new_credentials()
|
|
126
126
|
|
|
127
127
|
def reset_credentials(self) -> None:
|
|
@@ -130,7 +130,7 @@ class CredentialManager:
|
|
|
130
130
|
if self.endpoint in credentials:
|
|
131
131
|
del credentials[self.endpoint]
|
|
132
132
|
self._write_credentials(credentials)
|
|
133
|
-
logger.info(
|
|
133
|
+
logger.info("Credentials for %s have been reset.", self.endpoint)
|
|
134
134
|
|
|
135
135
|
def _get_bridge_tokens(self) -> Optional[BridgeToken]:
|
|
136
136
|
"""Get bridge tokens from the identity endpoint."""
|
|
@@ -141,13 +141,13 @@ class CredentialManager:
|
|
|
141
141
|
)
|
|
142
142
|
response = requests.post(bridge_endpoint, verify=self.cert_path)
|
|
143
143
|
if not response.ok:
|
|
144
|
-
logger.error(
|
|
144
|
+
logger.error("Failed to get bridge tokens: %s", response.status_code)
|
|
145
145
|
return None
|
|
146
146
|
|
|
147
147
|
data = response.json()
|
|
148
148
|
return BridgeToken(read_key=data["readKey"], write_key=data["writeKey"])
|
|
149
149
|
except requests.RequestException as e:
|
|
150
|
-
logger.error(
|
|
150
|
+
logger.error("Failed to get bridge tokens: %s", e)
|
|
151
151
|
return None
|
|
152
152
|
|
|
153
153
|
def _poll_read_key(self, read_key: str) -> Optional[str]:
|
|
@@ -169,11 +169,11 @@ class CredentialManager:
|
|
|
169
169
|
continue
|
|
170
170
|
else:
|
|
171
171
|
# Error occurred
|
|
172
|
-
logger.error(
|
|
172
|
+
logger.error("Error polling read key: %s", response.status_code)
|
|
173
173
|
return None
|
|
174
174
|
|
|
175
175
|
except requests.RequestException as e:
|
|
176
|
-
logger.error(
|
|
176
|
+
logger.error("Error polling read key: %s", e)
|
|
177
177
|
return None
|
|
178
178
|
|
|
179
179
|
logger.error("Polling timed out")
|
|
@@ -198,7 +198,7 @@ class CredentialManager:
|
|
|
198
198
|
data = response.json()
|
|
199
199
|
return data.get("clientId"), data.get("clientSecret"), display_name
|
|
200
200
|
except requests.RequestException as e:
|
|
201
|
-
logger.error(
|
|
201
|
+
logger.error("Failed to create client: %s", e)
|
|
202
202
|
return None
|
|
203
203
|
|
|
204
204
|
def _create_new_credentials(self) -> Optional[ClientCredential]:
|
|
@@ -1,32 +1,41 @@
|
|
|
1
|
+
from __future__ import annotations
|
|
2
|
+
|
|
1
3
|
import subprocess
|
|
2
4
|
from importlib.metadata import version, PackageNotFoundError
|
|
5
|
+
from typing import TYPE_CHECKING
|
|
3
6
|
|
|
4
|
-
from rapidata.api_client.api.campaign_api import CampaignApi
|
|
5
|
-
from rapidata.api_client.api.dataset_api import DatasetApi
|
|
6
|
-
from rapidata.api_client.api.benchmark_api import BenchmarkApi
|
|
7
|
-
from rapidata.api_client.api.order_api import OrderApi
|
|
8
|
-
from rapidata.api_client.api.pipeline_api import PipelineApi
|
|
9
|
-
from rapidata.api_client.api.rapid_api import RapidApi
|
|
10
|
-
from rapidata.api_client.api.leaderboard_api import LeaderboardApi
|
|
11
|
-
from rapidata.api_client.api.validation_set_api import ValidationSetApi
|
|
12
|
-
from rapidata.api_client.api.workflow_api import WorkflowApi
|
|
13
|
-
from rapidata.api_client.api.participant_api import ParticipantApi
|
|
14
7
|
from rapidata.api_client.configuration import Configuration
|
|
15
8
|
from rapidata.service.credential_manager import CredentialManager
|
|
16
|
-
from rapidata.rapidata_client.api.
|
|
17
|
-
from rapidata.rapidata_client.
|
|
9
|
+
from rapidata.rapidata_client.api.rapidata_api_client import RapidataApiClient
|
|
10
|
+
from rapidata.rapidata_client.config import logger, managed_print
|
|
11
|
+
from authlib.integrations.httpx_client import OAuthError
|
|
12
|
+
|
|
13
|
+
if TYPE_CHECKING:
|
|
14
|
+
from rapidata.api_client.api.job_api import JobApi
|
|
15
|
+
from rapidata.api_client import CustomerRapidApi
|
|
16
|
+
from rapidata.api_client.api.campaign_api import CampaignApi
|
|
17
|
+
from rapidata.api_client.api.asset_api import AssetApi
|
|
18
|
+
from rapidata.api_client.api.dataset_api import DatasetApi
|
|
19
|
+
from rapidata.api_client.api.benchmark_api import BenchmarkApi
|
|
20
|
+
from rapidata.api_client.api.order_api import OrderApi
|
|
21
|
+
from rapidata.api_client.api.pipeline_api import PipelineApi
|
|
22
|
+
from rapidata.api_client.api.leaderboard_api import LeaderboardApi
|
|
23
|
+
from rapidata.api_client.api.validation_set_api import ValidationSetApi
|
|
24
|
+
from rapidata.api_client.api.workflow_api import WorkflowApi
|
|
25
|
+
from rapidata.api_client.api.participant_api import ParticipantApi
|
|
26
|
+
from rapidata.api_client.api.audience_api import AudienceApi
|
|
18
27
|
|
|
19
28
|
|
|
20
29
|
class OpenAPIService:
|
|
21
30
|
def __init__(
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
31
|
+
self,
|
|
32
|
+
client_id: str | None,
|
|
33
|
+
client_secret: str | None,
|
|
34
|
+
environment: str,
|
|
35
|
+
oauth_scope: str,
|
|
36
|
+
cert_path: str | None = None,
|
|
37
|
+
token: dict | None = None,
|
|
38
|
+
leeway: int = 60,
|
|
30
39
|
):
|
|
31
40
|
self.environment = environment
|
|
32
41
|
endpoint = f"https://api.{environment}"
|
|
@@ -35,7 +44,12 @@ class OpenAPIService:
|
|
|
35
44
|
if environment == "rapidata.dev" and not cert_path:
|
|
36
45
|
cert_path = _get_local_certificate()
|
|
37
46
|
|
|
38
|
-
logger.debug(
|
|
47
|
+
logger.debug(
|
|
48
|
+
"Using cert_path: %s environment: %s client_id: %s",
|
|
49
|
+
cert_path,
|
|
50
|
+
environment,
|
|
51
|
+
client_id,
|
|
52
|
+
)
|
|
39
53
|
logger.debug("Initializing OpenAPIService")
|
|
40
54
|
self.credential_manager = CredentialManager(
|
|
41
55
|
endpoint=auth_endpoint, cert_path=cert_path
|
|
@@ -44,7 +58,7 @@ class OpenAPIService:
|
|
|
44
58
|
|
|
45
59
|
logger.debug("Initializing RapidataApiClient")
|
|
46
60
|
client_configuration = Configuration(host=endpoint, ssl_ca_cert=cert_path)
|
|
47
|
-
logger.debug(
|
|
61
|
+
logger.debug("Client configuration: %s", client_configuration)
|
|
48
62
|
self.api_client = RapidataApiClient(
|
|
49
63
|
configuration=client_configuration,
|
|
50
64
|
header_name="X-Client",
|
|
@@ -65,64 +79,129 @@ class OpenAPIService:
|
|
|
65
79
|
return
|
|
66
80
|
|
|
67
81
|
if not client_id or not client_secret:
|
|
68
|
-
logger.debug(
|
|
82
|
+
logger.debug(
|
|
83
|
+
"Client ID and secret not provided, fetching from credential manager"
|
|
84
|
+
)
|
|
69
85
|
credentials = self.credential_manager.get_client_credentials()
|
|
70
86
|
if not credentials:
|
|
71
87
|
raise ValueError("Failed to fetch client credentials")
|
|
72
88
|
client_id = credentials.client_id
|
|
73
89
|
client_secret = credentials.client_secret
|
|
90
|
+
try:
|
|
91
|
+
self.api_client.rest_client.setup_oauth_client_credentials(
|
|
92
|
+
client_id=client_id,
|
|
93
|
+
client_secret=client_secret,
|
|
94
|
+
token_endpoint=f"{auth_endpoint}/connect/token",
|
|
95
|
+
scope=oauth_scope,
|
|
96
|
+
)
|
|
97
|
+
except OAuthError as e:
|
|
98
|
+
if e.error != "invalid_client":
|
|
99
|
+
raise
|
|
100
|
+
logger.warning(
|
|
101
|
+
"Invalid client credentials detected, resetting and retrying: %s", e
|
|
102
|
+
)
|
|
103
|
+
self.reset_credentials()
|
|
104
|
+
|
|
105
|
+
# Retry with fresh credentials
|
|
106
|
+
credentials = self.credential_manager.get_client_credentials()
|
|
107
|
+
if not credentials:
|
|
108
|
+
raise ValueError(
|
|
109
|
+
"Failed to fetch client credentials after reset"
|
|
110
|
+
) from e
|
|
111
|
+
|
|
112
|
+
self.api_client.rest_client.setup_oauth_client_credentials(
|
|
113
|
+
client_id=credentials.client_id,
|
|
114
|
+
client_secret=credentials.client_secret,
|
|
115
|
+
token_endpoint=f"{auth_endpoint}/connect/token",
|
|
116
|
+
scope=oauth_scope,
|
|
117
|
+
)
|
|
118
|
+
managed_print("Credentials were reset and re-authenticated successfully")
|
|
74
119
|
|
|
75
|
-
self.api_client.rest_client.setup_oauth_client_credentials(
|
|
76
|
-
client_id=client_id,
|
|
77
|
-
client_secret=client_secret,
|
|
78
|
-
token_endpoint=f"{auth_endpoint}/connect/token",
|
|
79
|
-
scope=oauth_scope,
|
|
80
|
-
)
|
|
81
120
|
logger.debug("Client credentials authentication setup complete")
|
|
82
121
|
|
|
83
122
|
def reset_credentials(self):
|
|
123
|
+
logger.info("Resetting credentials in OpenAPIService")
|
|
84
124
|
self.credential_manager.reset_credentials()
|
|
125
|
+
logger.info("Credentials reset in OpenAPIService")
|
|
85
126
|
|
|
86
127
|
@property
|
|
87
128
|
def order_api(self) -> OrderApi:
|
|
129
|
+
from rapidata.api_client.api.order_api import OrderApi
|
|
130
|
+
|
|
88
131
|
return OrderApi(self.api_client)
|
|
89
132
|
|
|
133
|
+
@property
|
|
134
|
+
def job_api(self) -> JobApi:
|
|
135
|
+
from rapidata.api_client.api.job_api import JobApi
|
|
136
|
+
|
|
137
|
+
return JobApi(self.api_client)
|
|
138
|
+
|
|
139
|
+
@property
|
|
140
|
+
def asset_api(self) -> AssetApi:
|
|
141
|
+
from rapidata.api_client.api.asset_api import AssetApi
|
|
142
|
+
|
|
143
|
+
return AssetApi(self.api_client)
|
|
144
|
+
|
|
90
145
|
@property
|
|
91
146
|
def dataset_api(self) -> DatasetApi:
|
|
147
|
+
from rapidata.api_client.api.dataset_api import DatasetApi
|
|
148
|
+
|
|
92
149
|
return DatasetApi(self.api_client)
|
|
93
150
|
|
|
94
151
|
@property
|
|
95
152
|
def validation_api(self) -> ValidationSetApi:
|
|
153
|
+
from rapidata.api_client.api.validation_set_api import ValidationSetApi
|
|
154
|
+
|
|
96
155
|
return ValidationSetApi(self.api_client)
|
|
97
156
|
|
|
98
157
|
@property
|
|
99
|
-
def rapid_api(self) ->
|
|
100
|
-
|
|
158
|
+
def rapid_api(self) -> CustomerRapidApi:
|
|
159
|
+
from rapidata.api_client.api.customer_rapid_api import CustomerRapidApi
|
|
160
|
+
|
|
161
|
+
return CustomerRapidApi(self.api_client)
|
|
101
162
|
|
|
102
163
|
@property
|
|
103
164
|
def campaign_api(self) -> CampaignApi:
|
|
165
|
+
from rapidata.api_client.api.campaign_api import CampaignApi
|
|
166
|
+
|
|
104
167
|
return CampaignApi(self.api_client)
|
|
105
168
|
|
|
106
169
|
@property
|
|
107
170
|
def pipeline_api(self) -> PipelineApi:
|
|
171
|
+
from rapidata.api_client.api.pipeline_api import PipelineApi
|
|
172
|
+
|
|
108
173
|
return PipelineApi(self.api_client)
|
|
109
174
|
|
|
110
175
|
@property
|
|
111
176
|
def workflow_api(self) -> WorkflowApi:
|
|
177
|
+
from rapidata.api_client.api.workflow_api import WorkflowApi
|
|
178
|
+
|
|
112
179
|
return WorkflowApi(self.api_client)
|
|
113
|
-
|
|
180
|
+
|
|
114
181
|
@property
|
|
115
182
|
def leaderboard_api(self) -> LeaderboardApi:
|
|
183
|
+
from rapidata.api_client.api.leaderboard_api import LeaderboardApi
|
|
184
|
+
|
|
116
185
|
return LeaderboardApi(self.api_client)
|
|
117
|
-
|
|
186
|
+
|
|
118
187
|
@property
|
|
119
188
|
def benchmark_api(self) -> BenchmarkApi:
|
|
189
|
+
from rapidata.api_client.api.benchmark_api import BenchmarkApi
|
|
190
|
+
|
|
120
191
|
return BenchmarkApi(self.api_client)
|
|
121
|
-
|
|
192
|
+
|
|
122
193
|
@property
|
|
123
194
|
def participant_api(self) -> ParticipantApi:
|
|
195
|
+
from rapidata.api_client.api.participant_api import ParticipantApi
|
|
196
|
+
|
|
124
197
|
return ParticipantApi(self.api_client)
|
|
125
198
|
|
|
199
|
+
@property
|
|
200
|
+
def audience_api(self) -> AudienceApi:
|
|
201
|
+
from rapidata.api_client.api.audience_api import AudienceApi
|
|
202
|
+
|
|
203
|
+
return AudienceApi(self.api_client)
|
|
204
|
+
|
|
126
205
|
def _get_rapidata_package_version(self):
|
|
127
206
|
"""
|
|
128
207
|
Returns the version of the currently installed rapidata package.
|
|
@@ -136,6 +215,12 @@ class OpenAPIService:
|
|
|
136
215
|
except PackageNotFoundError:
|
|
137
216
|
return None
|
|
138
217
|
|
|
218
|
+
def __repr__(self) -> str:
|
|
219
|
+
return self.__str__()
|
|
220
|
+
|
|
221
|
+
def __str__(self) -> str:
|
|
222
|
+
return f"OpenAPIService(environment={self.environment})"
|
|
223
|
+
|
|
139
224
|
|
|
140
225
|
def _get_local_certificate() -> str | None:
|
|
141
226
|
result = subprocess.run(["mkcert", "-CAROOT"], capture_output=True)
|
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
# Main Client and Core Types
|
|
2
|
+
from rapidata.rapidata_client.rapidata_client import RapidataClient
|
|
3
|
+
|
|
4
|
+
# Audience Types
|
|
5
|
+
from rapidata.rapidata_client.audience.rapidata_audience import RapidataAudience
|
|
6
|
+
from rapidata.rapidata_client.audience.rapidata_audience_manager import (
|
|
7
|
+
RapidataAudienceManager,
|
|
8
|
+
)
|
|
9
|
+
|
|
10
|
+
# Benchmark Types
|
|
11
|
+
from rapidata.rapidata_client.benchmark.rapidata_benchmark import RapidataBenchmark
|
|
12
|
+
from rapidata.rapidata_client.benchmark.rapidata_benchmark_manager import (
|
|
13
|
+
RapidataBenchmarkManager,
|
|
14
|
+
)
|
|
15
|
+
from rapidata.rapidata_client.benchmark.leaderboard.rapidata_leaderboard import (
|
|
16
|
+
RapidataLeaderboard,
|
|
17
|
+
)
|
|
18
|
+
|
|
19
|
+
# Selection Types
|
|
20
|
+
from rapidata.rapidata_client.selection.ab_test_selection import AbTestSelection
|
|
21
|
+
from rapidata.rapidata_client.selection.capped_selection import CappedSelection
|
|
22
|
+
from rapidata.rapidata_client.selection.conditional_validation_selection import (
|
|
23
|
+
ConditionalValidationSelection,
|
|
24
|
+
)
|
|
25
|
+
from rapidata.rapidata_client.selection.demographic_selection import (
|
|
26
|
+
DemographicSelection,
|
|
27
|
+
)
|
|
28
|
+
from rapidata.rapidata_client.selection.effort_selection import EffortSelection
|
|
29
|
+
from rapidata.rapidata_client.selection.labeling_selection import LabelingSelection
|
|
30
|
+
from rapidata.rapidata_client.selection.shuffling_selection import ShufflingSelection
|
|
31
|
+
from rapidata.rapidata_client.selection.static_selection import StaticSelection
|
|
32
|
+
from rapidata.rapidata_client.selection.validation_selection import ValidationSelection
|
|
33
|
+
from rapidata.rapidata_client.selection.rapidata_retrieval_modes import (
|
|
34
|
+
RapidataRetrievalMode,
|
|
35
|
+
)
|
|
36
|
+
|
|
37
|
+
# Filter Types
|
|
38
|
+
from rapidata.rapidata_client.filter.age_filter import AgeFilter
|
|
39
|
+
from rapidata.rapidata_client.filter.and_filter import AndFilter
|
|
40
|
+
from rapidata.rapidata_client.filter.campaign_filter import CampaignFilter
|
|
41
|
+
from rapidata.rapidata_client.filter.country_filter import CountryFilter
|
|
42
|
+
from rapidata.rapidata_client.filter.custom_filter import CustomFilter
|
|
43
|
+
from rapidata.rapidata_client.filter.gender_filter import GenderFilter
|
|
44
|
+
from rapidata.rapidata_client.filter.language_filter import LanguageFilter
|
|
45
|
+
from rapidata.rapidata_client.filter.new_user_filter import NewUserFilter
|
|
46
|
+
from rapidata.rapidata_client.filter.not_filter import NotFilter
|
|
47
|
+
from rapidata.rapidata_client.filter.or_filter import OrFilter
|
|
48
|
+
from rapidata.rapidata_client.filter.response_count_filter import ResponseCountFilter
|
|
49
|
+
from rapidata.rapidata_client.filter.user_score_filter import UserScoreFilter
|
|
50
|
+
|
|
51
|
+
# Filter Model Types
|
|
52
|
+
from rapidata.rapidata_client.filter.models.age_group import AgeGroup
|
|
53
|
+
from rapidata.rapidata_client.filter.models.gender import Gender
|
|
54
|
+
|
|
55
|
+
# Settings Types
|
|
56
|
+
from rapidata.rapidata_client.settings.alert_on_fast_response import AlertOnFastResponse
|
|
57
|
+
from rapidata.rapidata_client.settings.allow_neither_both import AllowNeitherBoth
|
|
58
|
+
from rapidata.rapidata_client.settings.custom_setting import CustomSetting
|
|
59
|
+
from rapidata.rapidata_client.settings.free_text_minimum_characters import (
|
|
60
|
+
FreeTextMinimumCharacters,
|
|
61
|
+
)
|
|
62
|
+
from rapidata.rapidata_client.settings.no_shuffle import NoShuffle
|
|
63
|
+
from rapidata.rapidata_client.settings.play_video_until_the_end import (
|
|
64
|
+
PlayVideoUntilTheEnd,
|
|
65
|
+
)
|
|
66
|
+
from rapidata.rapidata_client.settings.rapidata_settings import RapidataSettings
|
|
67
|
+
from rapidata.rapidata_client.settings.translation_behaviour import TranslationBehaviour
|
|
68
|
+
from rapidata.rapidata_client.settings.models.translation_behaviour_options import (
|
|
69
|
+
TranslationBehaviourOptions,
|
|
70
|
+
)
|
|
71
|
+
|
|
72
|
+
|
|
73
|
+
# Configuration Types
|
|
74
|
+
from rapidata.rapidata_client.config.order_config import OrderConfig
|
|
75
|
+
from rapidata.rapidata_client.config.upload_config import UploadConfig
|
|
76
|
+
from rapidata.rapidata_client.config.rapidata_config import RapidataConfig
|
|
77
|
+
from rapidata.rapidata_client.config.logging_config import LoggingConfig
|
|
78
|
+
|
|
79
|
+
# Exception Types
|
|
80
|
+
from rapidata.rapidata_client.exceptions.failed_upload_exception import (
|
|
81
|
+
FailedUploadException,
|
|
82
|
+
)
|
|
83
|
+
|
|
84
|
+
# Utility Types
|
|
85
|
+
from rapidata.rapidata_client.demographic.demographic_manager import DemographicManager
|
|
86
|
+
|
|
87
|
+
# API Client Types
|
|
88
|
+
from rapidata.rapidata_client.api.rapidata_api_client import RapidataApiClient
|
|
89
|
+
|
|
90
|
+
__all__ = [
|
|
91
|
+
# Main Client and Core Types
|
|
92
|
+
"RapidataClient",
|
|
93
|
+
# Audience Types
|
|
94
|
+
"RapidataAudience",
|
|
95
|
+
"RapidataAudienceManager",
|
|
96
|
+
# Benchmark Types
|
|
97
|
+
"RapidataBenchmark",
|
|
98
|
+
"RapidataBenchmarkManager",
|
|
99
|
+
"RapidataLeaderboard",
|
|
100
|
+
# Selection Types
|
|
101
|
+
"AbTestSelection",
|
|
102
|
+
"CappedSelection",
|
|
103
|
+
"ConditionalValidationSelection",
|
|
104
|
+
"DemographicSelection",
|
|
105
|
+
"EffortSelection",
|
|
106
|
+
"LabelingSelection",
|
|
107
|
+
"ShufflingSelection",
|
|
108
|
+
"StaticSelection",
|
|
109
|
+
"ValidationSelection",
|
|
110
|
+
"RapidataRetrievalMode",
|
|
111
|
+
# Filter Types
|
|
112
|
+
"AgeFilter",
|
|
113
|
+
"AndFilter",
|
|
114
|
+
"CampaignFilter",
|
|
115
|
+
"CountryFilter",
|
|
116
|
+
"CustomFilter",
|
|
117
|
+
"GenderFilter",
|
|
118
|
+
"LanguageFilter",
|
|
119
|
+
"NewUserFilter",
|
|
120
|
+
"NotFilter",
|
|
121
|
+
"OrFilter",
|
|
122
|
+
"ResponseCountFilter",
|
|
123
|
+
"UserScoreFilter",
|
|
124
|
+
# Filter Model Types
|
|
125
|
+
"AgeGroup",
|
|
126
|
+
"Gender",
|
|
127
|
+
# Settings Types
|
|
128
|
+
"AlertOnFastResponse",
|
|
129
|
+
"AllowNeitherBoth",
|
|
130
|
+
"CustomSetting",
|
|
131
|
+
"FreeTextMinimumCharacters",
|
|
132
|
+
"NoShuffle",
|
|
133
|
+
"PlayVideoUntilTheEnd",
|
|
134
|
+
"RapidataSettings",
|
|
135
|
+
"TranslationBehaviour",
|
|
136
|
+
"TranslationBehaviourOptions",
|
|
137
|
+
# Configuration Types
|
|
138
|
+
"OrderConfig",
|
|
139
|
+
"UploadConfig",
|
|
140
|
+
"RapidataConfig",
|
|
141
|
+
"LoggingConfig",
|
|
142
|
+
# Exception Types
|
|
143
|
+
"FailedUploadException",
|
|
144
|
+
# Utility Types
|
|
145
|
+
"CountryCodes",
|
|
146
|
+
"DemographicManager",
|
|
147
|
+
# API Client Types
|
|
148
|
+
"RapidataApiClient",
|
|
149
|
+
]
|