llama-cloud 0.1.41__py3-none-any.whl → 1.0.0b4__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.
- llama_cloud/__init__.py +101 -816
- llama_cloud/_base_client.py +2124 -0
- llama_cloud/_client.py +795 -0
- llama_cloud/_compat.py +219 -0
- llama_cloud/_constants.py +14 -0
- llama_cloud/_exceptions.py +108 -0
- llama_cloud/_files.py +127 -0
- llama_cloud/_models.py +872 -0
- llama_cloud/_polling.py +182 -0
- llama_cloud/_qs.py +150 -0
- llama_cloud/_resource.py +43 -0
- llama_cloud/_response.py +832 -0
- llama_cloud/_streaming.py +333 -0
- llama_cloud/_types.py +270 -0
- llama_cloud/_utils/__init__.py +64 -0
- llama_cloud/_utils/_compat.py +45 -0
- llama_cloud/_utils/_datetime_parse.py +136 -0
- llama_cloud/_utils/_logs.py +25 -0
- llama_cloud/_utils/_proxy.py +65 -0
- llama_cloud/_utils/_reflection.py +42 -0
- llama_cloud/_utils/_resources_proxy.py +24 -0
- llama_cloud/_utils/_streams.py +12 -0
- llama_cloud/_utils/_sync.py +58 -0
- llama_cloud/_utils/_transform.py +457 -0
- llama_cloud/_utils/_typing.py +156 -0
- llama_cloud/_utils/_utils.py +421 -0
- llama_cloud/_version.py +4 -0
- llama_cloud/lib/__init__.py +0 -0
- llama_cloud/lib/index/__init__.py +13 -0
- llama_cloud/lib/index/api_utils.py +300 -0
- llama_cloud/lib/index/base.py +1041 -0
- llama_cloud/lib/index/composite_retriever.py +272 -0
- llama_cloud/lib/index/retriever.py +233 -0
- llama_cloud/pagination.py +465 -0
- llama_cloud/py.typed +0 -0
- llama_cloud/resources/__init__.py +136 -107
- llama_cloud/resources/beta/__init__.py +102 -1
- llama_cloud/resources/beta/agent_data.py +1041 -0
- llama_cloud/resources/beta/batch/__init__.py +33 -0
- llama_cloud/resources/beta/batch/batch.py +664 -0
- llama_cloud/resources/beta/batch/job_items.py +348 -0
- llama_cloud/resources/beta/beta.py +262 -0
- llama_cloud/resources/beta/directories/__init__.py +33 -0
- llama_cloud/resources/beta/directories/directories.py +719 -0
- llama_cloud/resources/beta/directories/files.py +913 -0
- llama_cloud/resources/beta/parse_configurations.py +743 -0
- llama_cloud/resources/beta/sheets.py +1130 -0
- llama_cloud/resources/beta/split.py +917 -0
- llama_cloud/resources/classifier/__init__.py +32 -1
- llama_cloud/resources/classifier/classifier.py +588 -0
- llama_cloud/resources/classifier/jobs.py +563 -0
- llama_cloud/resources/data_sinks.py +579 -0
- llama_cloud/resources/data_sources.py +651 -0
- llama_cloud/resources/extraction/__init__.py +61 -0
- llama_cloud/resources/extraction/extraction.py +609 -0
- llama_cloud/resources/extraction/extraction_agents/__init__.py +33 -0
- llama_cloud/resources/extraction/extraction_agents/extraction_agents.py +633 -0
- llama_cloud/resources/extraction/extraction_agents/schema.py +308 -0
- llama_cloud/resources/extraction/jobs.py +1106 -0
- llama_cloud/resources/extraction/runs.py +498 -0
- llama_cloud/resources/files.py +784 -0
- llama_cloud/resources/parsing.py +1296 -0
- llama_cloud/resources/pipelines/__init__.py +98 -24
- llama_cloud/resources/pipelines/data_sources.py +529 -0
- llama_cloud/resources/pipelines/documents.py +810 -0
- llama_cloud/resources/pipelines/files.py +682 -0
- llama_cloud/resources/pipelines/images.py +513 -0
- llama_cloud/resources/pipelines/metadata.py +265 -0
- llama_cloud/resources/pipelines/pipelines.py +1525 -0
- llama_cloud/resources/pipelines/sync.py +243 -0
- llama_cloud/resources/projects.py +276 -0
- llama_cloud/resources/retrievers/__init__.py +32 -1
- llama_cloud/resources/retrievers/retriever.py +238 -0
- llama_cloud/resources/retrievers/retrievers.py +920 -0
- llama_cloud/types/__init__.py +171 -721
- llama_cloud/types/advanced_mode_transform_config.py +102 -38
- llama_cloud/types/advanced_mode_transform_config_param.py +102 -0
- llama_cloud/types/auto_transform_config.py +11 -25
- llama_cloud/types/auto_transform_config_param.py +17 -0
- llama_cloud/types/azure_openai_embedding.py +62 -0
- llama_cloud/types/azure_openai_embedding_config.py +17 -0
- llama_cloud/types/azure_openai_embedding_config_param.py +17 -0
- llama_cloud/types/azure_openai_embedding_param.py +61 -0
- llama_cloud/types/b_box.py +37 -0
- llama_cloud/types/bedrock_embedding.py +49 -46
- llama_cloud/types/bedrock_embedding_config.py +10 -27
- llama_cloud/types/bedrock_embedding_config_param.py +17 -0
- llama_cloud/types/bedrock_embedding_param.py +48 -0
- llama_cloud/types/beta/__init__.py +59 -0
- llama_cloud/types/beta/agent_data.py +26 -0
- llama_cloud/types/beta/agent_data_agent_data_params.py +20 -0
- llama_cloud/types/beta/agent_data_aggregate_params.py +79 -0
- llama_cloud/types/beta/agent_data_aggregate_response.py +17 -0
- llama_cloud/types/beta/agent_data_delete_by_query_params.py +43 -0
- llama_cloud/types/beta/agent_data_delete_by_query_response.py +11 -0
- llama_cloud/types/beta/agent_data_delete_params.py +14 -0
- llama_cloud/types/beta/agent_data_delete_response.py +8 -0
- llama_cloud/types/beta/agent_data_get_params.py +14 -0
- llama_cloud/types/beta/agent_data_search_params.py +69 -0
- llama_cloud/types/beta/agent_data_update_params.py +16 -0
- llama_cloud/types/beta/batch/__init__.py +12 -0
- llama_cloud/types/beta/batch/job_item_get_processing_results_params.py +17 -0
- llama_cloud/types/beta/batch/job_item_get_processing_results_response.py +409 -0
- llama_cloud/types/beta/batch/job_item_list_params.py +23 -0
- llama_cloud/types/beta/batch/job_item_list_response.py +42 -0
- llama_cloud/types/beta/batch_cancel_params.py +21 -0
- llama_cloud/types/beta/batch_cancel_response.py +23 -0
- llama_cloud/types/beta/batch_create_params.py +399 -0
- llama_cloud/types/beta/batch_create_response.py +63 -0
- llama_cloud/types/beta/batch_get_status_params.py +14 -0
- llama_cloud/types/beta/batch_get_status_response.py +73 -0
- llama_cloud/types/beta/batch_list_params.py +29 -0
- llama_cloud/types/beta/batch_list_response.py +63 -0
- llama_cloud/types/beta/directories/__init__.py +15 -0
- llama_cloud/types/beta/directories/file_add_params.py +26 -0
- llama_cloud/types/beta/directories/file_add_response.py +42 -0
- llama_cloud/types/beta/directories/file_delete_params.py +16 -0
- llama_cloud/types/beta/directories/file_get_params.py +16 -0
- llama_cloud/types/beta/directories/file_get_response.py +42 -0
- llama_cloud/types/beta/directories/file_list_params.py +28 -0
- llama_cloud/types/beta/directories/file_list_response.py +42 -0
- llama_cloud/types/beta/directories/file_update_params.py +27 -0
- llama_cloud/types/beta/directories/file_update_response.py +42 -0
- llama_cloud/types/beta/directories/file_upload_params.py +24 -0
- llama_cloud/types/beta/directories/file_upload_response.py +42 -0
- llama_cloud/types/beta/directory_create_params.py +23 -0
- llama_cloud/types/beta/directory_create_response.py +36 -0
- llama_cloud/types/beta/directory_delete_params.py +14 -0
- llama_cloud/types/beta/directory_get_params.py +14 -0
- llama_cloud/types/beta/directory_get_response.py +36 -0
- llama_cloud/types/beta/directory_list_params.py +24 -0
- llama_cloud/types/beta/directory_list_response.py +36 -0
- llama_cloud/types/beta/directory_update_params.py +20 -0
- llama_cloud/types/beta/directory_update_response.py +36 -0
- llama_cloud/types/beta/parse_configuration.py +40 -0
- llama_cloud/types/beta/parse_configuration_create_params.py +34 -0
- llama_cloud/types/beta/parse_configuration_delete_params.py +14 -0
- llama_cloud/types/beta/parse_configuration_get_params.py +14 -0
- llama_cloud/types/beta/parse_configuration_list_params.py +24 -0
- llama_cloud/types/beta/parse_configuration_query_response.py +28 -0
- llama_cloud/types/beta/parse_configuration_update_params.py +22 -0
- llama_cloud/types/beta/sheet_create_params.py +22 -0
- llama_cloud/types/beta/sheet_delete_job_params.py +14 -0
- llama_cloud/types/beta/sheet_get_params.py +16 -0
- llama_cloud/types/beta/sheet_get_result_table_params.py +20 -0
- llama_cloud/types/beta/sheet_list_params.py +20 -0
- llama_cloud/types/beta/sheets_job.py +88 -0
- llama_cloud/types/beta/sheets_parsing_config.py +49 -0
- llama_cloud/types/beta/sheets_parsing_config_param.py +51 -0
- llama_cloud/types/beta/split_category.py +17 -0
- llama_cloud/types/beta/split_category_param.py +18 -0
- llama_cloud/types/beta/split_create_params.py +36 -0
- llama_cloud/types/beta/split_create_response.py +48 -0
- llama_cloud/types/beta/split_document_input.py +15 -0
- llama_cloud/types/beta/split_document_input_param.py +17 -0
- llama_cloud/types/beta/split_get_params.py +14 -0
- llama_cloud/types/beta/split_get_response.py +48 -0
- llama_cloud/types/beta/split_list_params.py +18 -0
- llama_cloud/types/beta/split_list_response.py +48 -0
- llama_cloud/types/beta/split_result_response.py +15 -0
- llama_cloud/types/beta/split_segment_response.py +20 -0
- llama_cloud/types/classifier/__init__.py +15 -0
- llama_cloud/types/classifier/classifier_rule.py +25 -0
- llama_cloud/types/classifier/classifier_rule_param.py +27 -0
- llama_cloud/types/classifier/classify_job.py +51 -0
- llama_cloud/types/classifier/classify_job_param.py +53 -0
- llama_cloud/types/classifier/classify_parsing_configuration.py +21 -0
- llama_cloud/types/classifier/classify_parsing_configuration_param.py +23 -0
- llama_cloud/types/classifier/job_create_params.py +30 -0
- llama_cloud/types/classifier/job_get_params.py +14 -0
- llama_cloud/types/classifier/job_get_results_params.py +14 -0
- llama_cloud/types/classifier/job_get_results_response.py +66 -0
- llama_cloud/types/classifier/job_list_params.py +18 -0
- llama_cloud/types/cohere_embedding.py +37 -40
- llama_cloud/types/cohere_embedding_config.py +10 -27
- llama_cloud/types/cohere_embedding_config_param.py +17 -0
- llama_cloud/types/cohere_embedding_param.py +36 -0
- llama_cloud/types/composite_retrieval_mode.py +4 -18
- llama_cloud/types/composite_retrieval_result.py +52 -37
- llama_cloud/types/data_sink.py +46 -39
- llama_cloud/types/data_sink_create_param.py +41 -0
- llama_cloud/types/data_sink_create_params.py +44 -0
- llama_cloud/types/data_sink_list_params.py +14 -0
- llama_cloud/types/data_sink_list_response.py +10 -0
- llama_cloud/types/data_sink_update_params.py +40 -0
- llama_cloud/types/data_source.py +67 -39
- llama_cloud/types/data_source_create_params.py +65 -0
- llama_cloud/types/data_source_list_params.py +14 -0
- llama_cloud/types/data_source_list_response.py +10 -0
- llama_cloud/types/data_source_reader_version_metadata.py +8 -27
- llama_cloud/types/data_source_update_params.py +61 -0
- llama_cloud/types/extraction/__init__.py +25 -0
- llama_cloud/types/extraction/extract_agent.py +41 -0
- llama_cloud/types/extraction/extract_config.py +118 -0
- llama_cloud/types/extraction/extract_config_param.py +118 -0
- llama_cloud/types/extraction/extract_job.py +32 -0
- llama_cloud/types/extraction/extract_run.py +64 -0
- llama_cloud/types/extraction/extraction_agent_create_params.py +25 -0
- llama_cloud/types/extraction/extraction_agent_list_params.py +17 -0
- llama_cloud/types/extraction/extraction_agent_list_response.py +10 -0
- llama_cloud/types/extraction/extraction_agent_update_params.py +18 -0
- llama_cloud/types/extraction/extraction_agents/__init__.py +8 -0
- llama_cloud/types/extraction/extraction_agents/schema_generate_schema_params.py +23 -0
- llama_cloud/types/extraction/extraction_agents/schema_generate_schema_response.py +14 -0
- llama_cloud/types/extraction/extraction_agents/schema_validate_schema_params.py +12 -0
- llama_cloud/types/extraction/extraction_agents/schema_validate_schema_response.py +13 -0
- llama_cloud/types/extraction/job_create_params.py +38 -0
- llama_cloud/types/extraction/job_file_params.py +29 -0
- llama_cloud/types/extraction/job_get_result_params.py +14 -0
- llama_cloud/types/extraction/job_get_result_response.py +27 -0
- llama_cloud/types/extraction/job_list_params.py +11 -0
- llama_cloud/types/extraction/job_list_response.py +10 -0
- llama_cloud/types/extraction/run_delete_params.py +14 -0
- llama_cloud/types/extraction/run_get_by_job_params.py +14 -0
- llama_cloud/types/extraction/run_get_params.py +14 -0
- llama_cloud/types/extraction/run_list_params.py +15 -0
- llama_cloud/types/extraction/webhook_configuration.py +43 -0
- llama_cloud/types/extraction/webhook_configuration_param.py +43 -0
- llama_cloud/types/extraction_run_params.py +45 -0
- llama_cloud/types/fail_page_mode.py +4 -26
- llama_cloud/types/file.py +48 -40
- llama_cloud/types/file_create_params.py +28 -0
- llama_cloud/types/file_create_response.py +38 -0
- llama_cloud/types/file_delete_params.py +14 -0
- llama_cloud/types/file_get_params.py +16 -0
- llama_cloud/types/file_list_params.py +40 -0
- llama_cloud/types/file_list_response.py +38 -0
- llama_cloud/types/file_query_params.py +61 -0
- llama_cloud/types/file_query_response.py +47 -27
- llama_cloud/types/gemini_embedding.py +40 -39
- llama_cloud/types/gemini_embedding_config.py +10 -27
- llama_cloud/types/gemini_embedding_config_param.py +17 -0
- llama_cloud/types/gemini_embedding_param.py +39 -0
- llama_cloud/types/hugging_face_inference_api_embedding.py +62 -46
- llama_cloud/types/hugging_face_inference_api_embedding_config.py +11 -28
- llama_cloud/types/hugging_face_inference_api_embedding_config_param.py +17 -0
- llama_cloud/types/hugging_face_inference_api_embedding_param.py +60 -0
- llama_cloud/types/list_item.py +48 -0
- llama_cloud/types/llama_parse_parameters.py +251 -130
- llama_cloud/types/llama_parse_parameters_param.py +261 -0
- llama_cloud/types/llama_parse_supported_file_extensions.py +84 -310
- llama_cloud/types/managed_ingestion_status_response.py +39 -37
- llama_cloud/types/message_role.py +4 -46
- llama_cloud/types/metadata_filters.py +45 -29
- llama_cloud/types/metadata_filters_param.py +58 -0
- llama_cloud/types/openai_embedding.py +56 -0
- llama_cloud/types/openai_embedding_config.py +17 -0
- llama_cloud/types/openai_embedding_config_param.py +17 -0
- llama_cloud/types/openai_embedding_param.py +55 -0
- llama_cloud/types/page_figure_node_with_score.py +32 -29
- llama_cloud/types/page_screenshot_node_with_score.py +23 -29
- llama_cloud/types/parsing_create_params.py +586 -0
- llama_cloud/types/parsing_create_response.py +33 -0
- llama_cloud/types/parsing_get_params.py +27 -0
- llama_cloud/types/parsing_get_response.py +364 -0
- llama_cloud/types/parsing_languages.py +94 -0
- llama_cloud/types/parsing_list_params.py +23 -0
- llama_cloud/types/parsing_list_response.py +33 -0
- llama_cloud/types/parsing_mode.py +13 -46
- llama_cloud/types/parsing_upload_file_params.py +14 -0
- llama_cloud/types/parsing_upload_file_response.py +33 -0
- llama_cloud/types/pipeline.py +180 -62
- llama_cloud/types/pipeline_create_params.py +95 -0
- llama_cloud/types/pipeline_get_status_params.py +12 -0
- llama_cloud/types/pipeline_list_params.py +23 -0
- llama_cloud/types/pipeline_list_response.py +12 -0
- llama_cloud/types/pipeline_metadata_config.py +9 -30
- llama_cloud/types/pipeline_metadata_config_param.py +17 -0
- llama_cloud/types/pipeline_retrieve_params.py +74 -0
- llama_cloud/types/pipeline_retrieve_response.py +63 -0
- llama_cloud/types/pipeline_type.py +4 -18
- llama_cloud/types/pipeline_update_params.py +90 -0
- llama_cloud/types/pipeline_upsert_params.py +95 -0
- llama_cloud/types/pipelines/__init__.py +38 -0
- llama_cloud/types/pipelines/cloud_document.py +29 -0
- llama_cloud/types/pipelines/cloud_document_create_param.py +30 -0
- llama_cloud/types/pipelines/data_source_get_data_sources_response.py +10 -0
- llama_cloud/types/pipelines/data_source_sync_params.py +16 -0
- llama_cloud/types/pipelines/data_source_update_data_sources_params.py +25 -0
- llama_cloud/types/pipelines/data_source_update_data_sources_response.py +10 -0
- llama_cloud/types/pipelines/data_source_update_params.py +15 -0
- llama_cloud/types/pipelines/document_create_params.py +14 -0
- llama_cloud/types/pipelines/document_create_response.py +10 -0
- llama_cloud/types/pipelines/document_get_chunks_response.py +10 -0
- llama_cloud/types/pipelines/document_list_params.py +22 -0
- llama_cloud/types/pipelines/document_upsert_params.py +14 -0
- llama_cloud/types/pipelines/document_upsert_response.py +10 -0
- llama_cloud/types/pipelines/file_create_params.py +22 -0
- llama_cloud/types/pipelines/file_create_response.py +10 -0
- llama_cloud/types/pipelines/file_get_status_counts_params.py +14 -0
- llama_cloud/types/pipelines/file_get_status_counts_response.py +24 -0
- llama_cloud/types/pipelines/file_list_params.py +22 -0
- llama_cloud/types/pipelines/file_update_params.py +15 -0
- llama_cloud/types/pipelines/image_get_page_figure_params.py +18 -0
- llama_cloud/types/pipelines/image_get_page_screenshot_params.py +16 -0
- llama_cloud/types/pipelines/image_list_page_figures_params.py +14 -0
- llama_cloud/types/pipelines/image_list_page_figures_response.py +34 -0
- llama_cloud/types/pipelines/image_list_page_screenshots_params.py +14 -0
- llama_cloud/types/pipelines/image_list_page_screenshots_response.py +25 -0
- llama_cloud/types/pipelines/metadata_create_params.py +13 -0
- llama_cloud/types/pipelines/metadata_create_response.py +8 -0
- llama_cloud/types/pipelines/pipeline_data_source.py +96 -0
- llama_cloud/types/pipelines/pipeline_file.py +70 -0
- llama_cloud/types/pipelines/text_node.py +89 -0
- llama_cloud/types/preset_retrieval_params.py +61 -49
- llama_cloud/types/preset_retrieval_params_param.py +71 -0
- llama_cloud/types/presigned_url.py +13 -29
- llama_cloud/types/project.py +24 -36
- llama_cloud/types/project_get_params.py +12 -0
- llama_cloud/types/project_list_params.py +14 -0
- llama_cloud/types/project_list_response.py +10 -0
- llama_cloud/types/re_rank_config_param.py +18 -0
- llama_cloud/types/retrieval_mode.py +4 -26
- llama_cloud/types/retriever.py +31 -38
- llama_cloud/types/retriever_create_params.py +26 -0
- llama_cloud/types/retriever_get_params.py +14 -0
- llama_cloud/types/retriever_list_params.py +16 -0
- llama_cloud/types/retriever_list_response.py +12 -0
- llama_cloud/types/retriever_pipeline.py +26 -34
- llama_cloud/types/retriever_pipeline_param.py +28 -0
- llama_cloud/types/retriever_search_params.py +38 -0
- llama_cloud/types/retriever_update_params.py +19 -0
- llama_cloud/types/retriever_upsert_params.py +26 -0
- llama_cloud/types/retrievers/__init__.py +5 -0
- llama_cloud/types/retrievers/retriever_search_params.py +32 -0
- llama_cloud/types/shared/__init__.py +21 -0
- llama_cloud/types/shared/cloud_astra_db_vector_store.py +39 -0
- llama_cloud/types/shared/cloud_az_storage_blob_data_source.py +34 -0
- llama_cloud/types/shared/cloud_azure_ai_search_vector_store.py +30 -0
- llama_cloud/types/shared/cloud_box_data_source.py +31 -0
- llama_cloud/types/shared/cloud_confluence_data_source.py +53 -0
- llama_cloud/types/shared/cloud_jira_data_source.py +30 -0
- llama_cloud/types/shared/cloud_jira_data_source_v2.py +49 -0
- llama_cloud/types/shared/cloud_milvus_vector_store.py +21 -0
- llama_cloud/types/shared/cloud_mongodb_atlas_vector_search.py +36 -0
- llama_cloud/types/shared/cloud_notion_page_data_source.py +19 -0
- llama_cloud/types/shared/cloud_one_drive_data_source.py +32 -0
- llama_cloud/types/shared/cloud_pinecone_vector_store.py +32 -0
- llama_cloud/types/shared/cloud_postgres_vector_store.py +35 -0
- llama_cloud/types/shared/cloud_qdrant_vector_store.py +35 -0
- llama_cloud/types/shared/cloud_s3_data_source.py +28 -0
- llama_cloud/types/shared/cloud_sharepoint_data_source.py +55 -0
- llama_cloud/types/shared/cloud_slack_data_source.py +31 -0
- llama_cloud/types/shared/failure_handling_config.py +16 -0
- llama_cloud/types/shared/pg_vector_hnsw_settings.py +27 -0
- llama_cloud/types/shared_params/__init__.py +21 -0
- llama_cloud/types/shared_params/cloud_astra_db_vector_store.py +42 -0
- llama_cloud/types/shared_params/cloud_az_storage_blob_data_source.py +41 -0
- llama_cloud/types/shared_params/cloud_azure_ai_search_vector_store.py +34 -0
- llama_cloud/types/shared_params/cloud_box_data_source.py +40 -0
- llama_cloud/types/shared_params/cloud_confluence_data_source.py +58 -0
- llama_cloud/types/shared_params/cloud_jira_data_source.py +34 -0
- llama_cloud/types/shared_params/cloud_jira_data_source_v2.py +54 -0
- llama_cloud/types/shared_params/cloud_milvus_vector_store.py +24 -0
- llama_cloud/types/shared_params/cloud_mongodb_atlas_vector_search.py +39 -0
- llama_cloud/types/shared_params/cloud_notion_page_data_source.py +23 -0
- llama_cloud/types/shared_params/cloud_one_drive_data_source.py +37 -0
- llama_cloud/types/shared_params/cloud_pinecone_vector_store.py +35 -0
- llama_cloud/types/shared_params/cloud_postgres_vector_store.py +39 -0
- llama_cloud/types/shared_params/cloud_qdrant_vector_store.py +37 -0
- llama_cloud/types/shared_params/cloud_s3_data_source.py +32 -0
- llama_cloud/types/shared_params/cloud_sharepoint_data_source.py +60 -0
- llama_cloud/types/shared_params/cloud_slack_data_source.py +35 -0
- llama_cloud/types/shared_params/failure_handling_config.py +16 -0
- llama_cloud/types/shared_params/pg_vector_hnsw_settings.py +26 -0
- llama_cloud/types/sparse_model_config.py +16 -30
- llama_cloud/types/sparse_model_config_param.py +25 -0
- llama_cloud/types/status_enum.py +4 -34
- llama_cloud/types/vertex_ai_embedding_config.py +10 -27
- llama_cloud/types/vertex_ai_embedding_config_param.py +17 -0
- llama_cloud/types/vertex_text_embedding.py +47 -45
- llama_cloud/types/vertex_text_embedding_param.py +45 -0
- llama_cloud-1.0.0b4.dist-info/METADATA +546 -0
- llama_cloud-1.0.0b4.dist-info/RECORD +376 -0
- {llama_cloud-0.1.41.dist-info → llama_cloud-1.0.0b4.dist-info}/WHEEL +1 -1
- llama_cloud-1.0.0b4.dist-info/licenses/LICENSE +7 -0
- llama_cloud/client.py +0 -108
- llama_cloud/core/__init__.py +0 -17
- llama_cloud/core/api_error.py +0 -15
- llama_cloud/core/client_wrapper.py +0 -51
- llama_cloud/core/datetime_utils.py +0 -28
- llama_cloud/core/jsonable_encoder.py +0 -106
- llama_cloud/core/remove_none_from_dict.py +0 -11
- llama_cloud/environment.py +0 -7
- llama_cloud/errors/__init__.py +0 -5
- llama_cloud/errors/unprocessable_entity_error.py +0 -9
- llama_cloud/resources/admin/__init__.py +0 -2
- llama_cloud/resources/admin/client.py +0 -196
- llama_cloud/resources/agent_deployments/__init__.py +0 -2
- llama_cloud/resources/agent_deployments/client.py +0 -160
- llama_cloud/resources/alpha/__init__.py +0 -2
- llama_cloud/resources/alpha/client.py +0 -112
- llama_cloud/resources/beta/client.py +0 -2664
- llama_cloud/resources/chat_apps/__init__.py +0 -2
- llama_cloud/resources/chat_apps/client.py +0 -616
- llama_cloud/resources/classifier/client.py +0 -444
- llama_cloud/resources/data_sinks/__init__.py +0 -5
- llama_cloud/resources/data_sinks/client.py +0 -535
- llama_cloud/resources/data_sinks/types/__init__.py +0 -5
- llama_cloud/resources/data_sinks/types/data_sink_update_component.py +0 -22
- llama_cloud/resources/data_sources/__init__.py +0 -5
- llama_cloud/resources/data_sources/client.py +0 -548
- llama_cloud/resources/data_sources/types/__init__.py +0 -6
- llama_cloud/resources/data_sources/types/data_source_update_component.py +0 -28
- llama_cloud/resources/data_sources/types/data_source_update_custom_metadata_value.py +0 -7
- llama_cloud/resources/embedding_model_configs/__init__.py +0 -23
- llama_cloud/resources/embedding_model_configs/client.py +0 -420
- llama_cloud/resources/embedding_model_configs/types/__init__.py +0 -23
- llama_cloud/resources/embedding_model_configs/types/embedding_model_config_create_embedding_config.py +0 -89
- llama_cloud/resources/evals/__init__.py +0 -2
- llama_cloud/resources/evals/client.py +0 -85
- llama_cloud/resources/files/__init__.py +0 -5
- llama_cloud/resources/files/client.py +0 -1454
- llama_cloud/resources/files/types/__init__.py +0 -5
- llama_cloud/resources/files/types/file_create_from_url_resource_info_value.py +0 -7
- llama_cloud/resources/jobs/__init__.py +0 -2
- llama_cloud/resources/jobs/client.py +0 -164
- llama_cloud/resources/llama_extract/__init__.py +0 -27
- llama_cloud/resources/llama_extract/client.py +0 -2082
- llama_cloud/resources/llama_extract/types/__init__.py +0 -25
- llama_cloud/resources/llama_extract/types/extract_agent_create_data_schema.py +0 -9
- llama_cloud/resources/llama_extract/types/extract_agent_create_data_schema_zero_value.py +0 -7
- llama_cloud/resources/llama_extract/types/extract_agent_update_data_schema.py +0 -9
- llama_cloud/resources/llama_extract/types/extract_agent_update_data_schema_zero_value.py +0 -7
- llama_cloud/resources/llama_extract/types/extract_job_create_batch_data_schema_override.py +0 -9
- llama_cloud/resources/llama_extract/types/extract_job_create_batch_data_schema_override_zero_value.py +0 -7
- llama_cloud/resources/llama_extract/types/extract_schema_validate_request_data_schema.py +0 -9
- llama_cloud/resources/llama_extract/types/extract_schema_validate_request_data_schema_zero_value.py +0 -7
- llama_cloud/resources/llama_extract/types/extract_stateless_request_data_schema.py +0 -9
- llama_cloud/resources/llama_extract/types/extract_stateless_request_data_schema_zero_value.py +0 -7
- llama_cloud/resources/organizations/__init__.py +0 -2
- llama_cloud/resources/organizations/client.py +0 -1448
- llama_cloud/resources/parsing/__init__.py +0 -2
- llama_cloud/resources/parsing/client.py +0 -2392
- llama_cloud/resources/pipelines/client.py +0 -3436
- llama_cloud/resources/pipelines/types/__init__.py +0 -29
- llama_cloud/resources/pipelines/types/pipeline_file_update_custom_metadata_value.py +0 -7
- llama_cloud/resources/pipelines/types/pipeline_update_embedding_config.py +0 -89
- llama_cloud/resources/pipelines/types/pipeline_update_transform_config.py +0 -8
- llama_cloud/resources/pipelines/types/retrieval_params_search_filters_inference_schema_value.py +0 -7
- llama_cloud/resources/projects/__init__.py +0 -2
- llama_cloud/resources/projects/client.py +0 -636
- llama_cloud/resources/retrievers/client.py +0 -837
- llama_cloud/resources/users/__init__.py +0 -2
- llama_cloud/resources/users/client.py +0 -155
- llama_cloud/types/advanced_mode_transform_config_chunking_config.py +0 -67
- llama_cloud/types/advanced_mode_transform_config_segmentation_config.py +0 -45
- llama_cloud/types/agent_data.py +0 -40
- llama_cloud/types/agent_deployment_list.py +0 -32
- llama_cloud/types/agent_deployment_summary.py +0 -39
- llama_cloud/types/aggregate_group.py +0 -37
- llama_cloud/types/azure_open_ai_embedding.py +0 -49
- llama_cloud/types/azure_open_ai_embedding_config.py +0 -34
- llama_cloud/types/base_plan.py +0 -53
- llama_cloud/types/base_plan_metronome_plan_type.py +0 -17
- llama_cloud/types/base_plan_name.py +0 -57
- llama_cloud/types/base_plan_plan_frequency.py +0 -25
- llama_cloud/types/batch.py +0 -47
- llama_cloud/types/batch_item.py +0 -40
- llama_cloud/types/batch_paginated_list.py +0 -35
- llama_cloud/types/batch_public_output.py +0 -36
- llama_cloud/types/billing_period.py +0 -32
- llama_cloud/types/box_auth_mechanism.py +0 -17
- llama_cloud/types/character_chunking_config.py +0 -32
- llama_cloud/types/chat_app.py +0 -46
- llama_cloud/types/chat_app_response.py +0 -43
- llama_cloud/types/chat_data.py +0 -35
- llama_cloud/types/chat_message.py +0 -43
- llama_cloud/types/chunk_mode.py +0 -29
- llama_cloud/types/classification_result.py +0 -39
- llama_cloud/types/classifier_rule.py +0 -43
- llama_cloud/types/classify_job.py +0 -47
- llama_cloud/types/classify_job_results.py +0 -38
- llama_cloud/types/classify_parsing_configuration.py +0 -38
- llama_cloud/types/cloud_astra_db_vector_store.py +0 -51
- llama_cloud/types/cloud_az_storage_blob_data_source.py +0 -41
- llama_cloud/types/cloud_azure_ai_search_vector_store.py +0 -45
- llama_cloud/types/cloud_box_data_source.py +0 -42
- llama_cloud/types/cloud_confluence_data_source.py +0 -59
- llama_cloud/types/cloud_document.py +0 -40
- llama_cloud/types/cloud_document_create.py +0 -40
- llama_cloud/types/cloud_jira_data_source.py +0 -42
- llama_cloud/types/cloud_jira_data_source_v_2.py +0 -52
- llama_cloud/types/cloud_jira_data_source_v_2_api_version.py +0 -21
- llama_cloud/types/cloud_milvus_vector_store.py +0 -40
- llama_cloud/types/cloud_mongo_db_atlas_vector_search.py +0 -52
- llama_cloud/types/cloud_notion_page_data_source.py +0 -35
- llama_cloud/types/cloud_one_drive_data_source.py +0 -39
- llama_cloud/types/cloud_pinecone_vector_store.py +0 -49
- llama_cloud/types/cloud_postgres_vector_store.py +0 -44
- llama_cloud/types/cloud_qdrant_vector_store.py +0 -51
- llama_cloud/types/cloud_s_3_data_source.py +0 -39
- llama_cloud/types/cloud_sharepoint_data_source.py +0 -42
- llama_cloud/types/cloud_slack_data_source.py +0 -39
- llama_cloud/types/composite_retrieved_text_node.py +0 -42
- llama_cloud/types/composite_retrieved_text_node_with_score.py +0 -34
- llama_cloud/types/configurable_data_sink_names.py +0 -41
- llama_cloud/types/configurable_data_source_names.py +0 -57
- llama_cloud/types/credit_type.py +0 -32
- llama_cloud/types/data_sink_component.py +0 -22
- llama_cloud/types/data_sink_create.py +0 -39
- llama_cloud/types/data_sink_create_component.py +0 -22
- llama_cloud/types/data_source_component.py +0 -28
- llama_cloud/types/data_source_create.py +0 -41
- llama_cloud/types/data_source_create_component.py +0 -28
- llama_cloud/types/data_source_create_custom_metadata_value.py +0 -7
- llama_cloud/types/data_source_custom_metadata_value.py +0 -7
- llama_cloud/types/data_source_reader_version_metadata_reader_version.py +0 -25
- llama_cloud/types/data_source_update_dispatcher_config.py +0 -38
- llama_cloud/types/delete_params.py +0 -39
- llama_cloud/types/document_chunk_mode.py +0 -17
- llama_cloud/types/document_ingestion_job_params.py +0 -43
- llama_cloud/types/element_segmentation_config.py +0 -29
- llama_cloud/types/embedding_model_config.py +0 -43
- llama_cloud/types/embedding_model_config_embedding_config.py +0 -89
- llama_cloud/types/embedding_model_config_update.py +0 -33
- llama_cloud/types/embedding_model_config_update_embedding_config.py +0 -89
- llama_cloud/types/eval_execution_params.py +0 -41
- llama_cloud/types/extract_agent.py +0 -48
- llama_cloud/types/extract_agent_data_schema_value.py +0 -5
- llama_cloud/types/extract_config.py +0 -66
- llama_cloud/types/extract_config_priority.py +0 -29
- llama_cloud/types/extract_job.py +0 -38
- llama_cloud/types/extract_job_create.py +0 -46
- llama_cloud/types/extract_job_create_data_schema_override.py +0 -9
- llama_cloud/types/extract_job_create_data_schema_override_zero_value.py +0 -7
- llama_cloud/types/extract_job_create_priority.py +0 -29
- llama_cloud/types/extract_mode.py +0 -29
- llama_cloud/types/extract_models.py +0 -53
- llama_cloud/types/extract_resultset.py +0 -42
- llama_cloud/types/extract_resultset_data.py +0 -11
- llama_cloud/types/extract_resultset_data_item_value.py +0 -7
- llama_cloud/types/extract_resultset_data_zero_value.py +0 -7
- llama_cloud/types/extract_resultset_extraction_metadata_value.py +0 -7
- llama_cloud/types/extract_run.py +0 -55
- llama_cloud/types/extract_run_data.py +0 -11
- llama_cloud/types/extract_run_data_item_value.py +0 -5
- llama_cloud/types/extract_run_data_schema_value.py +0 -5
- llama_cloud/types/extract_run_data_zero_value.py +0 -5
- llama_cloud/types/extract_run_extraction_metadata_value.py +0 -7
- llama_cloud/types/extract_schema_generate_response.py +0 -38
- llama_cloud/types/extract_schema_generate_response_data_schema_value.py +0 -7
- llama_cloud/types/extract_schema_validate_response.py +0 -32
- llama_cloud/types/extract_schema_validate_response_data_schema_value.py +0 -7
- llama_cloud/types/extract_state.py +0 -29
- llama_cloud/types/extract_target.py +0 -17
- llama_cloud/types/failure_handling_config.py +0 -37
- llama_cloud/types/file_classification.py +0 -41
- llama_cloud/types/file_count_by_status_response.py +0 -37
- llama_cloud/types/file_create.py +0 -41
- llama_cloud/types/file_create_permission_info_value.py +0 -7
- llama_cloud/types/file_create_resource_info_value.py +0 -5
- llama_cloud/types/file_data.py +0 -36
- llama_cloud/types/file_filter.py +0 -40
- llama_cloud/types/file_id_presigned_url.py +0 -38
- llama_cloud/types/file_parse_public.py +0 -36
- llama_cloud/types/file_permission_info_value.py +0 -5
- llama_cloud/types/file_resource_info_value.py +0 -5
- llama_cloud/types/file_store_info_response.py +0 -34
- llama_cloud/types/file_store_info_response_status.py +0 -25
- llama_cloud/types/filter_condition.py +0 -29
- llama_cloud/types/filter_operation.py +0 -46
- llama_cloud/types/filter_operation_eq.py +0 -6
- llama_cloud/types/filter_operation_gt.py +0 -6
- llama_cloud/types/filter_operation_gte.py +0 -6
- llama_cloud/types/filter_operation_includes_item.py +0 -6
- llama_cloud/types/filter_operation_lt.py +0 -6
- llama_cloud/types/filter_operation_lte.py +0 -6
- llama_cloud/types/filter_operator.py +0 -73
- llama_cloud/types/free_credits_usage.py +0 -34
- llama_cloud/types/http_validation_error.py +0 -32
- llama_cloud/types/hugging_face_inference_api_embedding_token.py +0 -5
- llama_cloud/types/ingestion_error_response.py +0 -34
- llama_cloud/types/input_message.py +0 -40
- llama_cloud/types/job_name_mapping.py +0 -49
- llama_cloud/types/job_names.py +0 -81
- llama_cloud/types/job_record.py +0 -58
- llama_cloud/types/job_record_parameters.py +0 -111
- llama_cloud/types/job_record_with_usage_metrics.py +0 -36
- llama_cloud/types/l_lama_parse_transform_config.py +0 -37
- llama_cloud/types/legacy_parse_job_config.py +0 -207
- llama_cloud/types/license_info_response.py +0 -34
- llama_cloud/types/llama_extract_feature_availability.py +0 -34
- llama_cloud/types/llama_extract_mode_availability.py +0 -38
- llama_cloud/types/llama_extract_mode_availability_status.py +0 -17
- llama_cloud/types/llama_extract_settings.py +0 -67
- llama_cloud/types/llama_parse_parameters_priority.py +0 -29
- llama_cloud/types/llm_model_data.py +0 -38
- llama_cloud/types/llm_parameters.py +0 -39
- llama_cloud/types/load_files_job_config.py +0 -35
- llama_cloud/types/managed_ingestion_status.py +0 -41
- llama_cloud/types/managed_open_ai_embedding.py +0 -36
- llama_cloud/types/managed_open_ai_embedding_config.py +0 -34
- llama_cloud/types/message_annotation.py +0 -33
- llama_cloud/types/metadata_filter.py +0 -44
- llama_cloud/types/metadata_filter_value.py +0 -5
- llama_cloud/types/metadata_filters_filters_item.py +0 -8
- llama_cloud/types/multimodal_parse_resolution.py +0 -17
- llama_cloud/types/node_relationship.py +0 -44
- llama_cloud/types/none_chunking_config.py +0 -29
- llama_cloud/types/none_segmentation_config.py +0 -29
- llama_cloud/types/object_type.py +0 -33
- llama_cloud/types/open_ai_embedding.py +0 -47
- llama_cloud/types/open_ai_embedding_config.py +0 -34
- llama_cloud/types/organization.py +0 -43
- llama_cloud/types/organization_create.py +0 -35
- llama_cloud/types/page_figure_metadata.py +0 -37
- llama_cloud/types/page_screenshot_metadata.py +0 -34
- llama_cloud/types/page_segmentation_config.py +0 -31
- llama_cloud/types/paginated_extract_runs_response.py +0 -39
- llama_cloud/types/paginated_jobs_history_with_metrics.py +0 -35
- llama_cloud/types/paginated_list_cloud_documents_response.py +0 -35
- llama_cloud/types/paginated_list_pipeline_files_response.py +0 -35
- llama_cloud/types/paginated_response_agent_data.py +0 -34
- llama_cloud/types/paginated_response_aggregate_group.py +0 -34
- llama_cloud/types/paginated_response_classify_job.py +0 -34
- llama_cloud/types/paginated_response_quota_configuration.py +0 -36
- llama_cloud/types/parse_configuration.py +0 -44
- llama_cloud/types/parse_configuration_create.py +0 -41
- llama_cloud/types/parse_configuration_filter.py +0 -40
- llama_cloud/types/parse_configuration_query_response.py +0 -38
- llama_cloud/types/parse_job_config.py +0 -149
- llama_cloud/types/parse_job_config_priority.py +0 -29
- llama_cloud/types/parse_plan_level.py +0 -21
- llama_cloud/types/parser_languages.py +0 -361
- llama_cloud/types/parsing_history_item.py +0 -39
- llama_cloud/types/parsing_job.py +0 -35
- llama_cloud/types/parsing_job_json_result.py +0 -32
- llama_cloud/types/parsing_job_markdown_result.py +0 -32
- llama_cloud/types/parsing_job_structured_result.py +0 -32
- llama_cloud/types/parsing_job_text_result.py +0 -32
- llama_cloud/types/partition_names.py +0 -45
- llama_cloud/types/permission.py +0 -40
- llama_cloud/types/pg_vector_distance_method.py +0 -43
- llama_cloud/types/pg_vector_hnsw_settings.py +0 -45
- llama_cloud/types/pg_vector_vector_type.py +0 -35
- llama_cloud/types/pipeline_configuration_hashes.py +0 -37
- llama_cloud/types/pipeline_create.py +0 -65
- llama_cloud/types/pipeline_create_embedding_config.py +0 -89
- llama_cloud/types/pipeline_create_transform_config.py +0 -8
- llama_cloud/types/pipeline_data_source.py +0 -55
- llama_cloud/types/pipeline_data_source_component.py +0 -28
- llama_cloud/types/pipeline_data_source_create.py +0 -36
- llama_cloud/types/pipeline_data_source_custom_metadata_value.py +0 -7
- llama_cloud/types/pipeline_data_source_status.py +0 -33
- llama_cloud/types/pipeline_deployment.py +0 -37
- llama_cloud/types/pipeline_embedding_config.py +0 -100
- llama_cloud/types/pipeline_file.py +0 -58
- llama_cloud/types/pipeline_file_config_hash_value.py +0 -5
- llama_cloud/types/pipeline_file_create.py +0 -37
- llama_cloud/types/pipeline_file_create_custom_metadata_value.py +0 -7
- llama_cloud/types/pipeline_file_custom_metadata_value.py +0 -7
- llama_cloud/types/pipeline_file_permission_info_value.py +0 -7
- llama_cloud/types/pipeline_file_resource_info_value.py +0 -7
- llama_cloud/types/pipeline_file_status.py +0 -33
- llama_cloud/types/pipeline_file_update_dispatcher_config.py +0 -38
- llama_cloud/types/pipeline_file_updater_config.py +0 -44
- llama_cloud/types/pipeline_managed_ingestion_job_params.py +0 -37
- llama_cloud/types/pipeline_status.py +0 -17
- llama_cloud/types/pipeline_transform_config.py +0 -31
- llama_cloud/types/plan_limits.py +0 -53
- llama_cloud/types/playground_session.py +0 -51
- llama_cloud/types/pooling.py +0 -29
- llama_cloud/types/preset_composite_retrieval_params.py +0 -37
- llama_cloud/types/preset_retrieval_params_search_filters_inference_schema_value.py +0 -7
- llama_cloud/types/project_create.py +0 -35
- llama_cloud/types/prompt_conf.py +0 -38
- llama_cloud/types/public_model_name.py +0 -97
- llama_cloud/types/quota_configuration.py +0 -53
- llama_cloud/types/quota_configuration_configuration_type.py +0 -33
- llama_cloud/types/quota_configuration_status.py +0 -21
- llama_cloud/types/quota_rate_limit_configuration_value.py +0 -38
- llama_cloud/types/quota_rate_limit_configuration_value_denominator_units.py +0 -29
- llama_cloud/types/re_rank_config.py +0 -35
- llama_cloud/types/re_ranker_type.py +0 -41
- llama_cloud/types/recurring_credit_grant.py +0 -44
- llama_cloud/types/related_node_info.py +0 -36
- llama_cloud/types/related_node_info_node_type.py +0 -7
- llama_cloud/types/retrieve_results.py +0 -56
- llama_cloud/types/retriever_create.py +0 -37
- llama_cloud/types/role.py +0 -40
- llama_cloud/types/schema_generation_availability.py +0 -33
- llama_cloud/types/schema_generation_availability_status.py +0 -17
- llama_cloud/types/schema_relax_mode.py +0 -25
- llama_cloud/types/semantic_chunking_config.py +0 -32
- llama_cloud/types/sentence_chunking_config.py +0 -34
- llama_cloud/types/sparse_model_type.py +0 -33
- llama_cloud/types/struct_mode.py +0 -33
- llama_cloud/types/struct_parse_conf.py +0 -63
- llama_cloud/types/supported_llm_model.py +0 -40
- llama_cloud/types/supported_llm_model_names.py +0 -69
- llama_cloud/types/text_node.py +0 -67
- llama_cloud/types/text_node_relationships_value.py +0 -7
- llama_cloud/types/text_node_with_score.py +0 -39
- llama_cloud/types/token_chunking_config.py +0 -33
- llama_cloud/types/update_user_response.py +0 -33
- llama_cloud/types/usage_and_plan.py +0 -34
- llama_cloud/types/usage_metric_response.py +0 -34
- llama_cloud/types/usage_response.py +0 -43
- llama_cloud/types/usage_response_active_alerts_item.py +0 -37
- llama_cloud/types/user_job_record.py +0 -32
- llama_cloud/types/user_organization.py +0 -47
- llama_cloud/types/user_organization_create.py +0 -38
- llama_cloud/types/user_organization_delete.py +0 -37
- llama_cloud/types/user_organization_role.py +0 -42
- llama_cloud/types/user_summary.py +0 -38
- llama_cloud/types/validation_error.py +0 -34
- llama_cloud/types/validation_error_loc_item.py +0 -5
- llama_cloud/types/vertex_embedding_mode.py +0 -38
- llama_cloud/types/webhook_configuration.py +0 -39
- llama_cloud/types/webhook_configuration_webhook_events_item.py +0 -57
- llama_cloud-0.1.41.dist-info/LICENSE +0 -21
- llama_cloud-0.1.41.dist-info/METADATA +0 -106
- llama_cloud-0.1.41.dist-info/RECORD +0 -385
|
@@ -1,2 +1,33 @@
|
|
|
1
|
-
#
|
|
1
|
+
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
|
2
2
|
|
|
3
|
+
from .jobs import (
|
|
4
|
+
JobsResource,
|
|
5
|
+
AsyncJobsResource,
|
|
6
|
+
JobsResourceWithRawResponse,
|
|
7
|
+
AsyncJobsResourceWithRawResponse,
|
|
8
|
+
JobsResourceWithStreamingResponse,
|
|
9
|
+
AsyncJobsResourceWithStreamingResponse,
|
|
10
|
+
)
|
|
11
|
+
from .classifier import (
|
|
12
|
+
ClassifierResource,
|
|
13
|
+
AsyncClassifierResource,
|
|
14
|
+
ClassifierResourceWithRawResponse,
|
|
15
|
+
AsyncClassifierResourceWithRawResponse,
|
|
16
|
+
ClassifierResourceWithStreamingResponse,
|
|
17
|
+
AsyncClassifierResourceWithStreamingResponse,
|
|
18
|
+
)
|
|
19
|
+
|
|
20
|
+
__all__ = [
|
|
21
|
+
"JobsResource",
|
|
22
|
+
"AsyncJobsResource",
|
|
23
|
+
"JobsResourceWithRawResponse",
|
|
24
|
+
"AsyncJobsResourceWithRawResponse",
|
|
25
|
+
"JobsResourceWithStreamingResponse",
|
|
26
|
+
"AsyncJobsResourceWithStreamingResponse",
|
|
27
|
+
"ClassifierResource",
|
|
28
|
+
"AsyncClassifierResource",
|
|
29
|
+
"ClassifierResourceWithRawResponse",
|
|
30
|
+
"AsyncClassifierResourceWithRawResponse",
|
|
31
|
+
"ClassifierResourceWithStreamingResponse",
|
|
32
|
+
"AsyncClassifierResourceWithStreamingResponse",
|
|
33
|
+
]
|
|
@@ -0,0 +1,588 @@
|
|
|
1
|
+
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
|
|
5
|
+
from typing import Literal, Iterable, Optional
|
|
6
|
+
|
|
7
|
+
from .jobs import (
|
|
8
|
+
JobsResource,
|
|
9
|
+
AsyncJobsResource,
|
|
10
|
+
JobsResourceWithRawResponse,
|
|
11
|
+
AsyncJobsResourceWithRawResponse,
|
|
12
|
+
JobsResourceWithStreamingResponse,
|
|
13
|
+
AsyncJobsResourceWithStreamingResponse,
|
|
14
|
+
)
|
|
15
|
+
from ..._types import Body, Omit, Query, Headers, SequenceNotStr, omit
|
|
16
|
+
from ..._compat import cached_property
|
|
17
|
+
from ..._polling import (
|
|
18
|
+
BackoffStrategy,
|
|
19
|
+
poll_until_complete,
|
|
20
|
+
poll_until_complete_async,
|
|
21
|
+
)
|
|
22
|
+
from ..._resource import SyncAPIResource, AsyncAPIResource
|
|
23
|
+
from ...types.classifier.classify_job import ClassifyJob
|
|
24
|
+
from ...types.classifier.classifier_rule_param import ClassifierRuleParam
|
|
25
|
+
from ...types.classifier.job_get_results_response import JobGetResultsResponse
|
|
26
|
+
from ...types.classifier.classify_parsing_configuration_param import ClassifyParsingConfigurationParam
|
|
27
|
+
|
|
28
|
+
__all__ = ["ClassifierResource", "AsyncClassifierResource"]
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
class ClassifierResource(SyncAPIResource):
|
|
32
|
+
def classify(
|
|
33
|
+
self,
|
|
34
|
+
*,
|
|
35
|
+
file_ids: SequenceNotStr[str],
|
|
36
|
+
rules: Iterable[ClassifierRuleParam],
|
|
37
|
+
mode: Literal["FAST", "MULTIMODAL"] | Omit = omit,
|
|
38
|
+
organization_id: Optional[str] | Omit = omit,
|
|
39
|
+
project_id: Optional[str] | Omit = omit,
|
|
40
|
+
parsing_configuration: ClassifyParsingConfigurationParam | Omit = omit,
|
|
41
|
+
# Polling parameters
|
|
42
|
+
polling_interval: float = 1.0,
|
|
43
|
+
max_interval: float = 5.0,
|
|
44
|
+
timeout: float = 300.0,
|
|
45
|
+
backoff: BackoffStrategy = "linear",
|
|
46
|
+
verbose: bool = False,
|
|
47
|
+
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
|
|
48
|
+
# The extra values given here take precedence over values defined on the client or passed to this method.
|
|
49
|
+
extra_headers: Headers | None = None,
|
|
50
|
+
extra_query: Query | None = None,
|
|
51
|
+
extra_body: Body | None = None,
|
|
52
|
+
) -> JobGetResultsResponse:
|
|
53
|
+
"""
|
|
54
|
+
Create a classify job and wait for it to complete, returning the results.
|
|
55
|
+
|
|
56
|
+
This is a convenience method that combines create(), wait_for_completion(),
|
|
57
|
+
and get_results() into a single call for the most common end-to-end workflow.
|
|
58
|
+
|
|
59
|
+
Args:
|
|
60
|
+
file_ids: The IDs of the files to classify
|
|
61
|
+
|
|
62
|
+
rules: The rules to classify the files
|
|
63
|
+
|
|
64
|
+
mode: The classification mode to use ("FAST" or "MULTIMODAL")
|
|
65
|
+
|
|
66
|
+
organization_id: Optional organization ID
|
|
67
|
+
|
|
68
|
+
project_id: Optional project ID
|
|
69
|
+
|
|
70
|
+
parsing_configuration: The configuration for the parsing job
|
|
71
|
+
|
|
72
|
+
polling_interval: Initial polling interval in seconds (default: 1.0)
|
|
73
|
+
|
|
74
|
+
max_interval: Maximum polling interval for backoff in seconds (default: 5.0)
|
|
75
|
+
|
|
76
|
+
timeout: Maximum time to wait in seconds (default: 300.0)
|
|
77
|
+
|
|
78
|
+
backoff: Backoff strategy for polling intervals. Options:
|
|
79
|
+
- "constant": Keep the same polling interval
|
|
80
|
+
- "linear": Increase interval by 1 second each poll (default)
|
|
81
|
+
- "exponential": Double the interval each poll
|
|
82
|
+
|
|
83
|
+
verbose: Print progress indicators every 10 polls (default: False)
|
|
84
|
+
|
|
85
|
+
extra_headers: Send extra headers
|
|
86
|
+
|
|
87
|
+
extra_query: Add additional query parameters to the request
|
|
88
|
+
|
|
89
|
+
extra_body: Add additional JSON properties to the request
|
|
90
|
+
|
|
91
|
+
Returns:
|
|
92
|
+
The classification results (JobGetResultsResponse)
|
|
93
|
+
|
|
94
|
+
Raises:
|
|
95
|
+
PollingTimeoutError: If the job doesn't complete within the timeout period
|
|
96
|
+
|
|
97
|
+
PollingError: If the job fails or is cancelled
|
|
98
|
+
|
|
99
|
+
Example:
|
|
100
|
+
```python
|
|
101
|
+
from llama_cloud import LlamaCloud
|
|
102
|
+
|
|
103
|
+
client = LlamaCloud(api_key="...")
|
|
104
|
+
|
|
105
|
+
# One-shot: create job, wait for completion, and get results
|
|
106
|
+
results = client.classifier.jobs.create_and_wait(
|
|
107
|
+
file_ids=["file1", "file2", "file3"],
|
|
108
|
+
rules=[
|
|
109
|
+
{"name": "invoice", "description": "Invoice documents"},
|
|
110
|
+
{"name": "receipt", "description": "Receipt documents"},
|
|
111
|
+
],
|
|
112
|
+
verbose=True,
|
|
113
|
+
)
|
|
114
|
+
|
|
115
|
+
# Results are ready to use immediately
|
|
116
|
+
for file_result in results.files:
|
|
117
|
+
print(f"File {file_result.file_id}: {file_result.classification}")
|
|
118
|
+
```
|
|
119
|
+
"""
|
|
120
|
+
# Create the job
|
|
121
|
+
job = self.jobs.create(
|
|
122
|
+
file_ids=file_ids,
|
|
123
|
+
rules=rules,
|
|
124
|
+
mode=mode,
|
|
125
|
+
organization_id=organization_id,
|
|
126
|
+
project_id=project_id,
|
|
127
|
+
parsing_configuration=parsing_configuration,
|
|
128
|
+
extra_headers=extra_headers,
|
|
129
|
+
extra_query=extra_query,
|
|
130
|
+
extra_body=extra_body,
|
|
131
|
+
)
|
|
132
|
+
|
|
133
|
+
# Wait for completion
|
|
134
|
+
self.wait_for_completion(
|
|
135
|
+
job.id,
|
|
136
|
+
organization_id=organization_id,
|
|
137
|
+
project_id=project_id,
|
|
138
|
+
polling_interval=polling_interval,
|
|
139
|
+
max_interval=max_interval,
|
|
140
|
+
timeout=timeout,
|
|
141
|
+
backoff=backoff,
|
|
142
|
+
verbose=verbose,
|
|
143
|
+
extra_headers=extra_headers,
|
|
144
|
+
extra_query=extra_query,
|
|
145
|
+
extra_body=extra_body,
|
|
146
|
+
)
|
|
147
|
+
|
|
148
|
+
# Get and return the results
|
|
149
|
+
return self.jobs.get_results(
|
|
150
|
+
job.id,
|
|
151
|
+
organization_id=organization_id,
|
|
152
|
+
project_id=project_id,
|
|
153
|
+
extra_headers=extra_headers,
|
|
154
|
+
extra_query=extra_query,
|
|
155
|
+
extra_body=extra_body,
|
|
156
|
+
)
|
|
157
|
+
|
|
158
|
+
def wait_for_completion(
|
|
159
|
+
self,
|
|
160
|
+
classify_job_id: str,
|
|
161
|
+
*,
|
|
162
|
+
organization_id: Optional[str] | Omit = omit,
|
|
163
|
+
project_id: Optional[str] | Omit = omit,
|
|
164
|
+
polling_interval: float = 1.0,
|
|
165
|
+
max_interval: float = 5.0,
|
|
166
|
+
timeout: float = 300.0,
|
|
167
|
+
backoff: BackoffStrategy = "linear",
|
|
168
|
+
verbose: bool = False,
|
|
169
|
+
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
|
|
170
|
+
# The extra values given here take precedence over values defined on the client or passed to this method.
|
|
171
|
+
extra_headers: Headers | None = None,
|
|
172
|
+
extra_query: Query | None = None,
|
|
173
|
+
extra_body: Body | None = None,
|
|
174
|
+
) -> ClassifyJob:
|
|
175
|
+
"""
|
|
176
|
+
Wait for a classify job to complete by polling until it reaches a terminal state.
|
|
177
|
+
|
|
178
|
+
This method polls the job status at regular intervals until the job completes
|
|
179
|
+
successfully or fails. It uses configurable backoff strategies to optimize
|
|
180
|
+
polling behavior.
|
|
181
|
+
|
|
182
|
+
Args:
|
|
183
|
+
classify_job_id: The ID of the classify job to wait for
|
|
184
|
+
|
|
185
|
+
organization_id: Optional organization ID
|
|
186
|
+
|
|
187
|
+
project_id: Optional project ID
|
|
188
|
+
|
|
189
|
+
polling_interval: Initial polling interval in seconds (default: 1.0)
|
|
190
|
+
|
|
191
|
+
max_interval: Maximum polling interval for backoff in seconds (default: 5.0)
|
|
192
|
+
|
|
193
|
+
timeout: Maximum time to wait in seconds (default: 300.0)
|
|
194
|
+
|
|
195
|
+
backoff: Backoff strategy for polling intervals. Options:
|
|
196
|
+
- "constant": Keep the same polling interval
|
|
197
|
+
- "linear": Increase interval by 1 second each poll (default)
|
|
198
|
+
- "exponential": Double the interval each poll
|
|
199
|
+
|
|
200
|
+
verbose: Print progress indicators every 10 polls (default: False)
|
|
201
|
+
|
|
202
|
+
extra_headers: Send extra headers
|
|
203
|
+
|
|
204
|
+
extra_query: Add additional query parameters to the request
|
|
205
|
+
|
|
206
|
+
extra_body: Add additional JSON properties to the request
|
|
207
|
+
|
|
208
|
+
Returns:
|
|
209
|
+
The completed ClassifyJob
|
|
210
|
+
|
|
211
|
+
Raises:
|
|
212
|
+
PollingTimeoutError: If the job doesn't complete within the timeout period
|
|
213
|
+
|
|
214
|
+
PollingError: If the job fails or is cancelled
|
|
215
|
+
|
|
216
|
+
Example:
|
|
217
|
+
```python
|
|
218
|
+
from llama_cloud import LlamaCloud
|
|
219
|
+
|
|
220
|
+
client = LlamaCloud(api_key="...")
|
|
221
|
+
|
|
222
|
+
# Create a classify job
|
|
223
|
+
job = client.classifier.jobs.create(file_ids=["file1", "file2"], rules=[...])
|
|
224
|
+
|
|
225
|
+
# Wait for it to complete
|
|
226
|
+
completed_job = client.classifier.jobs.wait_for_completion(job.id, verbose=True)
|
|
227
|
+
|
|
228
|
+
# Get the results
|
|
229
|
+
results = client.classifier.jobs.get_results(job.id)
|
|
230
|
+
```
|
|
231
|
+
"""
|
|
232
|
+
if not classify_job_id:
|
|
233
|
+
raise ValueError(f"Expected a non-empty value for `classify_job_id` but received {classify_job_id!r}")
|
|
234
|
+
|
|
235
|
+
def get_status() -> ClassifyJob:
|
|
236
|
+
return self.jobs.get(
|
|
237
|
+
classify_job_id,
|
|
238
|
+
organization_id=organization_id,
|
|
239
|
+
project_id=project_id,
|
|
240
|
+
extra_headers=extra_headers,
|
|
241
|
+
extra_query=extra_query,
|
|
242
|
+
extra_body=extra_body,
|
|
243
|
+
)
|
|
244
|
+
|
|
245
|
+
def is_complete(job: ClassifyJob) -> bool:
|
|
246
|
+
return job.status in ("SUCCESS", "PARTIAL_SUCCESS")
|
|
247
|
+
|
|
248
|
+
def is_error(job: ClassifyJob) -> bool:
|
|
249
|
+
return job.status in ("ERROR", "CANCELLED")
|
|
250
|
+
|
|
251
|
+
def get_error_message(job: ClassifyJob) -> str:
|
|
252
|
+
error_parts = [f"Job {classify_job_id} failed with status: {job.status}"]
|
|
253
|
+
if job.error_message:
|
|
254
|
+
error_parts.append(f"Error: {job.error_message}")
|
|
255
|
+
return " | ".join(error_parts)
|
|
256
|
+
|
|
257
|
+
return poll_until_complete(
|
|
258
|
+
get_status_fn=get_status,
|
|
259
|
+
is_complete_fn=is_complete,
|
|
260
|
+
is_error_fn=is_error,
|
|
261
|
+
get_error_message_fn=get_error_message,
|
|
262
|
+
polling_interval=polling_interval,
|
|
263
|
+
max_interval=max_interval,
|
|
264
|
+
timeout=timeout,
|
|
265
|
+
backoff=backoff,
|
|
266
|
+
verbose=verbose,
|
|
267
|
+
)
|
|
268
|
+
|
|
269
|
+
@cached_property
|
|
270
|
+
def jobs(self) -> JobsResource:
|
|
271
|
+
return JobsResource(self._client)
|
|
272
|
+
|
|
273
|
+
@cached_property
|
|
274
|
+
def with_raw_response(self) -> ClassifierResourceWithRawResponse:
|
|
275
|
+
"""
|
|
276
|
+
This property can be used as a prefix for any HTTP method call to return
|
|
277
|
+
the raw response object instead of the parsed content.
|
|
278
|
+
|
|
279
|
+
For more information, see https://www.github.com/run-llama/llama-cloud-py#accessing-raw-response-data-eg-headers
|
|
280
|
+
"""
|
|
281
|
+
return ClassifierResourceWithRawResponse(self)
|
|
282
|
+
|
|
283
|
+
@cached_property
|
|
284
|
+
def with_streaming_response(self) -> ClassifierResourceWithStreamingResponse:
|
|
285
|
+
"""
|
|
286
|
+
An alternative to `.with_raw_response` that doesn't eagerly read the response body.
|
|
287
|
+
|
|
288
|
+
For more information, see https://www.github.com/run-llama/llama-cloud-py#with_streaming_response
|
|
289
|
+
"""
|
|
290
|
+
return ClassifierResourceWithStreamingResponse(self)
|
|
291
|
+
|
|
292
|
+
|
|
293
|
+
class AsyncClassifierResource(AsyncAPIResource):
|
|
294
|
+
@cached_property
|
|
295
|
+
def jobs(self) -> AsyncJobsResource:
|
|
296
|
+
return AsyncJobsResource(self._client)
|
|
297
|
+
|
|
298
|
+
@cached_property
|
|
299
|
+
def with_raw_response(self) -> AsyncClassifierResourceWithRawResponse:
|
|
300
|
+
"""
|
|
301
|
+
This property can be used as a prefix for any HTTP method call to return
|
|
302
|
+
the raw response object instead of the parsed content.
|
|
303
|
+
|
|
304
|
+
For more information, see https://www.github.com/run-llama/llama-cloud-py#accessing-raw-response-data-eg-headers
|
|
305
|
+
"""
|
|
306
|
+
return AsyncClassifierResourceWithRawResponse(self)
|
|
307
|
+
|
|
308
|
+
@cached_property
|
|
309
|
+
def with_streaming_response(self) -> AsyncClassifierResourceWithStreamingResponse:
|
|
310
|
+
"""
|
|
311
|
+
An alternative to `.with_raw_response` that doesn't eagerly read the response body.
|
|
312
|
+
|
|
313
|
+
For more information, see https://www.github.com/run-llama/llama-cloud-py#with_streaming_response
|
|
314
|
+
"""
|
|
315
|
+
return AsyncClassifierResourceWithStreamingResponse(self)
|
|
316
|
+
|
|
317
|
+
async def classify(
|
|
318
|
+
self,
|
|
319
|
+
*,
|
|
320
|
+
file_ids: SequenceNotStr[str],
|
|
321
|
+
rules: Iterable[ClassifierRuleParam],
|
|
322
|
+
mode: Literal["FAST", "MULTIMODAL"] | Omit = omit,
|
|
323
|
+
organization_id: Optional[str] | Omit = omit,
|
|
324
|
+
project_id: Optional[str] | Omit = omit,
|
|
325
|
+
parsing_configuration: ClassifyParsingConfigurationParam | Omit = omit,
|
|
326
|
+
# Polling parameters
|
|
327
|
+
polling_interval: float = 1.0,
|
|
328
|
+
max_interval: float = 5.0,
|
|
329
|
+
timeout: float = 300.0,
|
|
330
|
+
backoff: BackoffStrategy = "linear",
|
|
331
|
+
verbose: bool = False,
|
|
332
|
+
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
|
|
333
|
+
# The extra values given here take precedence over values defined on the client or passed to this method.
|
|
334
|
+
extra_headers: Headers | None = None,
|
|
335
|
+
extra_query: Query | None = None,
|
|
336
|
+
extra_body: Body | None = None,
|
|
337
|
+
) -> JobGetResultsResponse:
|
|
338
|
+
"""
|
|
339
|
+
Create a classify job and wait for it to complete, returning the results.
|
|
340
|
+
|
|
341
|
+
This is a convenience method that combines create(), wait_for_completion(),
|
|
342
|
+
and get_results() into a single call for the most common end-to-end workflow.
|
|
343
|
+
|
|
344
|
+
Args:
|
|
345
|
+
file_ids: The IDs of the files to classify
|
|
346
|
+
|
|
347
|
+
rules: The rules to classify the files
|
|
348
|
+
|
|
349
|
+
mode: The classification mode to use ("FAST" or "MULTIMODAL")
|
|
350
|
+
|
|
351
|
+
organization_id: Optional organization ID
|
|
352
|
+
|
|
353
|
+
project_id: Optional project ID
|
|
354
|
+
|
|
355
|
+
parsing_configuration: The configuration for the parsing job
|
|
356
|
+
|
|
357
|
+
polling_interval: Initial polling interval in seconds (default: 1.0)
|
|
358
|
+
|
|
359
|
+
max_interval: Maximum polling interval for backoff in seconds (default: 5.0)
|
|
360
|
+
|
|
361
|
+
timeout: Maximum time to wait in seconds (default: 300.0)
|
|
362
|
+
|
|
363
|
+
backoff: Backoff strategy for polling intervals. Options:
|
|
364
|
+
- "constant": Keep the same polling interval
|
|
365
|
+
- "linear": Increase interval by 1 second each poll (default)
|
|
366
|
+
- "exponential": Double the interval each poll
|
|
367
|
+
|
|
368
|
+
verbose: Print progress indicators every 10 polls (default: False)
|
|
369
|
+
|
|
370
|
+
extra_headers: Send extra headers
|
|
371
|
+
|
|
372
|
+
extra_query: Add additional query parameters to the request
|
|
373
|
+
|
|
374
|
+
extra_body: Add additional JSON properties to the request
|
|
375
|
+
|
|
376
|
+
Returns:
|
|
377
|
+
The classification results (JobGetResultsResponse)
|
|
378
|
+
|
|
379
|
+
Raises:
|
|
380
|
+
PollingTimeoutError: If the job doesn't complete within the timeout period
|
|
381
|
+
|
|
382
|
+
PollingError: If the job fails or is cancelled
|
|
383
|
+
|
|
384
|
+
Example:
|
|
385
|
+
```python
|
|
386
|
+
from llama_cloud import AsyncLlamaCloud
|
|
387
|
+
|
|
388
|
+
client = AsyncLlamaCloud(api_key="...")
|
|
389
|
+
|
|
390
|
+
# One-shot: create job, wait for completion, and get results
|
|
391
|
+
results = await client.classifier.jobs.create_and_wait(
|
|
392
|
+
file_ids=["file1", "file2", "file3"],
|
|
393
|
+
rules=[
|
|
394
|
+
{"name": "invoice", "description": "Invoice documents"},
|
|
395
|
+
{"name": "receipt", "description": "Receipt documents"},
|
|
396
|
+
],
|
|
397
|
+
verbose=True,
|
|
398
|
+
)
|
|
399
|
+
|
|
400
|
+
# Results are ready to use immediately
|
|
401
|
+
for file_result in results.files:
|
|
402
|
+
print(f"File {file_result.file_id}: {file_result.classification}")
|
|
403
|
+
```
|
|
404
|
+
"""
|
|
405
|
+
# Create the job
|
|
406
|
+
job = await self.jobs.create(
|
|
407
|
+
file_ids=file_ids,
|
|
408
|
+
rules=rules,
|
|
409
|
+
mode=mode,
|
|
410
|
+
organization_id=organization_id,
|
|
411
|
+
project_id=project_id,
|
|
412
|
+
parsing_configuration=parsing_configuration,
|
|
413
|
+
extra_headers=extra_headers,
|
|
414
|
+
extra_query=extra_query,
|
|
415
|
+
extra_body=extra_body,
|
|
416
|
+
)
|
|
417
|
+
|
|
418
|
+
# Wait for completion
|
|
419
|
+
await self.wait_for_completion(
|
|
420
|
+
job.id,
|
|
421
|
+
organization_id=organization_id,
|
|
422
|
+
project_id=project_id,
|
|
423
|
+
polling_interval=polling_interval,
|
|
424
|
+
max_interval=max_interval,
|
|
425
|
+
timeout=timeout,
|
|
426
|
+
backoff=backoff,
|
|
427
|
+
verbose=verbose,
|
|
428
|
+
extra_headers=extra_headers,
|
|
429
|
+
extra_query=extra_query,
|
|
430
|
+
extra_body=extra_body,
|
|
431
|
+
)
|
|
432
|
+
|
|
433
|
+
# Get and return the results
|
|
434
|
+
return await self.jobs.get_results(
|
|
435
|
+
job.id,
|
|
436
|
+
organization_id=organization_id,
|
|
437
|
+
project_id=project_id,
|
|
438
|
+
extra_headers=extra_headers,
|
|
439
|
+
extra_query=extra_query,
|
|
440
|
+
extra_body=extra_body,
|
|
441
|
+
)
|
|
442
|
+
|
|
443
|
+
async def wait_for_completion(
|
|
444
|
+
self,
|
|
445
|
+
classify_job_id: str,
|
|
446
|
+
*,
|
|
447
|
+
organization_id: Optional[str] | Omit = omit,
|
|
448
|
+
project_id: Optional[str] | Omit = omit,
|
|
449
|
+
polling_interval: float = 1.0,
|
|
450
|
+
max_interval: float = 5.0,
|
|
451
|
+
timeout: float = 300.0,
|
|
452
|
+
backoff: BackoffStrategy = "linear",
|
|
453
|
+
verbose: bool = False,
|
|
454
|
+
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
|
|
455
|
+
# The extra values given here take precedence over values defined on the client or passed to this method.
|
|
456
|
+
extra_headers: Headers | None = None,
|
|
457
|
+
extra_query: Query | None = None,
|
|
458
|
+
extra_body: Body | None = None,
|
|
459
|
+
) -> ClassifyJob:
|
|
460
|
+
"""
|
|
461
|
+
Wait for a classify job to complete by polling until it reaches a terminal state.
|
|
462
|
+
|
|
463
|
+
This method polls the job status at regular intervals until the job completes
|
|
464
|
+
successfully or fails. It uses configurable backoff strategies to optimize
|
|
465
|
+
polling behavior.
|
|
466
|
+
|
|
467
|
+
Args:
|
|
468
|
+
classify_job_id: The ID of the classify job to wait for
|
|
469
|
+
|
|
470
|
+
organization_id: Optional organization ID
|
|
471
|
+
|
|
472
|
+
project_id: Optional project ID
|
|
473
|
+
|
|
474
|
+
polling_interval: Initial polling interval in seconds (default: 1.0)
|
|
475
|
+
|
|
476
|
+
max_interval: Maximum polling interval for backoff in seconds (default: 5.0)
|
|
477
|
+
|
|
478
|
+
timeout: Maximum time to wait in seconds (default: 300.0)
|
|
479
|
+
|
|
480
|
+
backoff: Backoff strategy for polling intervals. Options:
|
|
481
|
+
- "constant": Keep the same polling interval
|
|
482
|
+
- "linear": Increase interval by 1 second each poll (default)
|
|
483
|
+
- "exponential": Double the interval each poll
|
|
484
|
+
|
|
485
|
+
verbose: Print progress indicators every 10 polls (default: False)
|
|
486
|
+
|
|
487
|
+
extra_headers: Send extra headers
|
|
488
|
+
|
|
489
|
+
extra_query: Add additional query parameters to the request
|
|
490
|
+
|
|
491
|
+
extra_body: Add additional JSON properties to the request
|
|
492
|
+
|
|
493
|
+
Returns:
|
|
494
|
+
The completed ClassifyJob
|
|
495
|
+
|
|
496
|
+
Raises:
|
|
497
|
+
PollingTimeoutError: If the job doesn't complete within the timeout period
|
|
498
|
+
|
|
499
|
+
PollingError: If the job fails or is cancelled
|
|
500
|
+
|
|
501
|
+
Example:
|
|
502
|
+
```python
|
|
503
|
+
from llama_cloud import LlamaCloud
|
|
504
|
+
|
|
505
|
+
client = LlamaCloud(api_key="...")
|
|
506
|
+
|
|
507
|
+
# Create a classify job
|
|
508
|
+
job = await client.classifier.jobs.create(file_ids=["file1", "file2"], rules=[...])
|
|
509
|
+
|
|
510
|
+
# Wait for it to complete
|
|
511
|
+
completed_job = await client.classifier.jobs.wait_for_completion(job.id, verbose=True)
|
|
512
|
+
|
|
513
|
+
# Get the results
|
|
514
|
+
results = await client.classifier.jobs.get_results(job.id)
|
|
515
|
+
```
|
|
516
|
+
"""
|
|
517
|
+
if not classify_job_id:
|
|
518
|
+
raise ValueError(f"Expected a non-empty value for `classify_job_id` but received {classify_job_id!r}")
|
|
519
|
+
|
|
520
|
+
async def get_status() -> ClassifyJob:
|
|
521
|
+
return await self.jobs.get(
|
|
522
|
+
classify_job_id,
|
|
523
|
+
organization_id=organization_id,
|
|
524
|
+
project_id=project_id,
|
|
525
|
+
extra_headers=extra_headers,
|
|
526
|
+
extra_query=extra_query,
|
|
527
|
+
extra_body=extra_body,
|
|
528
|
+
)
|
|
529
|
+
|
|
530
|
+
def is_complete(job: ClassifyJob) -> bool:
|
|
531
|
+
return job.status in ("SUCCESS", "PARTIAL_SUCCESS")
|
|
532
|
+
|
|
533
|
+
def is_error(job: ClassifyJob) -> bool:
|
|
534
|
+
return job.status in ("ERROR", "CANCELLED")
|
|
535
|
+
|
|
536
|
+
def get_error_message(job: ClassifyJob) -> str:
|
|
537
|
+
error_parts = [f"Job {classify_job_id} failed with status: {job.status}"]
|
|
538
|
+
if job.error_message:
|
|
539
|
+
error_parts.append(f"Error: {job.error_message}")
|
|
540
|
+
return " | ".join(error_parts)
|
|
541
|
+
|
|
542
|
+
return await poll_until_complete_async(
|
|
543
|
+
get_status_fn=get_status,
|
|
544
|
+
is_complete_fn=is_complete,
|
|
545
|
+
is_error_fn=is_error,
|
|
546
|
+
get_error_message_fn=get_error_message,
|
|
547
|
+
polling_interval=polling_interval,
|
|
548
|
+
max_interval=max_interval,
|
|
549
|
+
timeout=timeout,
|
|
550
|
+
backoff=backoff,
|
|
551
|
+
verbose=verbose,
|
|
552
|
+
)
|
|
553
|
+
|
|
554
|
+
|
|
555
|
+
class ClassifierResourceWithRawResponse:
|
|
556
|
+
def __init__(self, classifier: ClassifierResource) -> None:
|
|
557
|
+
self._classifier = classifier
|
|
558
|
+
|
|
559
|
+
@cached_property
|
|
560
|
+
def jobs(self) -> JobsResourceWithRawResponse:
|
|
561
|
+
return JobsResourceWithRawResponse(self._classifier.jobs)
|
|
562
|
+
|
|
563
|
+
|
|
564
|
+
class AsyncClassifierResourceWithRawResponse:
|
|
565
|
+
def __init__(self, classifier: AsyncClassifierResource) -> None:
|
|
566
|
+
self._classifier = classifier
|
|
567
|
+
|
|
568
|
+
@cached_property
|
|
569
|
+
def jobs(self) -> AsyncJobsResourceWithRawResponse:
|
|
570
|
+
return AsyncJobsResourceWithRawResponse(self._classifier.jobs)
|
|
571
|
+
|
|
572
|
+
|
|
573
|
+
class ClassifierResourceWithStreamingResponse:
|
|
574
|
+
def __init__(self, classifier: ClassifierResource) -> None:
|
|
575
|
+
self._classifier = classifier
|
|
576
|
+
|
|
577
|
+
@cached_property
|
|
578
|
+
def jobs(self) -> JobsResourceWithStreamingResponse:
|
|
579
|
+
return JobsResourceWithStreamingResponse(self._classifier.jobs)
|
|
580
|
+
|
|
581
|
+
|
|
582
|
+
class AsyncClassifierResourceWithStreamingResponse:
|
|
583
|
+
def __init__(self, classifier: AsyncClassifierResource) -> None:
|
|
584
|
+
self._classifier = classifier
|
|
585
|
+
|
|
586
|
+
@cached_property
|
|
587
|
+
def jobs(self) -> AsyncJobsResourceWithStreamingResponse:
|
|
588
|
+
return AsyncJobsResourceWithStreamingResponse(self._classifier.jobs)
|