pinecone 7.0.0.dev3__tar.gz → 7.0.1.dev1__tar.gz
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.
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/PKG-INFO +5 -7
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/README.md +3 -6
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/__init__.py +16 -2
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/__init__.pyi +34 -1
- pinecone-7.0.1.dev1/pinecone/__version__ +1 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/data/__init__.py +0 -2
- pinecone-7.0.1.dev1/pinecone/data/features/__init__.py +11 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/data/features/bulk_imports/__init__.py +4 -1
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_control/models/backup_model.py +3 -3
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_control/resources/asyncio/index.py +18 -32
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_control/resources/sync/index.py +19 -31
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_data/__init__.py +1 -1
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_data/index.py +147 -3
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_data/index_asyncio.py +134 -6
- {pinecone-7.0.0.dev3/pinecone/db_data/features/bulk_import → pinecone-7.0.1.dev1/pinecone/db_data/resources/asyncio}/bulk_import_asyncio.py +9 -9
- {pinecone-7.0.0.dev3/pinecone/db_data/features/bulk_import → pinecone-7.0.1.dev1/pinecone/db_data/resources/sync}/bulk_import.py +8 -8
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/exceptions/exceptions.py +29 -2
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/grpc/future.py +4 -5
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/openapi_support/rest_aiohttp.py +18 -3
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/openapi_support/rest_urllib3.py +1 -1
- pinecone-7.0.1.dev1/pinecone/openapi_support/retry_aiohttp.py +44 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/pinecone.py +6 -11
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pyproject.toml +4 -3
- pinecone-7.0.0.dev3/pinecone/__version__ +0 -1
- pinecone-7.0.0.dev3/pinecone/data/features/__init__.py +0 -10
- pinecone-7.0.0.dev3/pinecone/db_data/features/bulk_import/__init__.py +0 -3
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/LICENSE.txt +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/config/__init__.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/config/config.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/config/openapi_config_factory.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/config/openapi_configuration.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/config/pinecone_config.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/control/__init__.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/__init__.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/grpc/protos/db_data_2025_01_pb2.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/grpc/protos/db_data_2025_01_pb2.pyi +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/grpc/protos/db_data_2025_01_pb2_grpc.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_control/__init__.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_control/api/__init__.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_control/api/manage_indexes_api.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_control/apis/__init__.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_control/model/__init__.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_control/model/backup_list.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_control/model/backup_model.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_control/model/byoc_spec.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_control/model/collection_list.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_control/model/collection_model.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_control/model/configure_index_request.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_control/model/configure_index_request_embed.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_control/model/configure_index_request_spec.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_control/model/configure_index_request_spec_pod.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_control/model/create_backup_request.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_control/model/create_collection_request.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_control/model/create_index_for_model_request.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_control/model/create_index_for_model_request_embed.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_control/model/create_index_from_backup_request.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_control/model/create_index_from_backup_response.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_control/model/create_index_request.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_control/model/deletion_protection.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_control/model/error_response.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_control/model/error_response_error.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_control/model/index_list.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_control/model/index_model.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_control/model/index_model_spec.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_control/model/index_model_status.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_control/model/index_spec.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_control/model/index_tags.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_control/model/model_index_embed.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_control/model/pagination_response.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_control/model/pod_spec.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_control/model/pod_spec_metadata_config.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_control/model/restore_job_list.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_control/model/restore_job_model.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_control/model/serverless_spec.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_control/models/__init__.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_data/__init__.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_data/api/__init__.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_data/api/bulk_operations_api.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_data/api/namespace_operations_api.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_data/api/vector_operations_api.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_data/apis/__init__.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_data/model/__init__.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_data/model/delete_request.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_data/model/describe_index_stats_request.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_data/model/fetch_response.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_data/model/hit.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_data/model/import_error_mode.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_data/model/import_model.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_data/model/index_description.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_data/model/list_imports_response.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_data/model/list_item.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_data/model/list_namespaces_response.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_data/model/list_response.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_data/model/namespace_description.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_data/model/namespace_summary.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_data/model/pagination.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_data/model/protobuf_any.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_data/model/protobuf_null_value.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_data/model/query_request.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_data/model/query_response.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_data/model/query_vector.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_data/model/rpc_status.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_data/model/scored_vector.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_data/model/search_records_request.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_data/model/search_records_request_query.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_data/model/search_records_request_rerank.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_data/model/search_records_response.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_data/model/search_records_response_result.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_data/model/search_records_vector.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_data/model/search_usage.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_data/model/search_vector.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_data/model/single_query_results.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_data/model/sparse_values.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_data/model/start_import_request.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_data/model/start_import_response.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_data/model/update_request.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_data/model/upsert_record.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_data/model/upsert_request.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_data/model/upsert_response.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_data/model/usage.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_data/model/vector.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_data/model/vector_values.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/db_data/models/__init__.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/inference/__init__.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/inference/api/__init__.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/inference/api/inference_api.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/inference/apis/__init__.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/inference/model/__init__.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/inference/model/dense_embedding.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/inference/model/document.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/inference/model/embed_request.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/inference/model/embed_request_inputs.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/inference/model/embedding.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/inference/model/embeddings_list.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/inference/model/embeddings_list_usage.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/inference/model/error_response.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/inference/model/error_response_error.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/inference/model/model_info.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/inference/model/model_info_list.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/inference/model/model_info_metric.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/inference/model/model_info_supported_metrics.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/inference/model/model_info_supported_parameter.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/inference/model/ranked_document.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/inference/model/rerank_request.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/inference/model/rerank_result.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/inference/model/rerank_result_usage.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/inference/model/sparse_embedding.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/core/openapi/inference/models/__init__.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/data/features/inference/__init__.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_control/__init__.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_control/db_control.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_control/db_control_asyncio.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_control/enums/__init__.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_control/enums/clouds.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_control/enums/deletion_protection.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_control/enums/metric.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_control/enums/pod_index_environment.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_control/enums/pod_type.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_control/enums/vector_type.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_control/index_host_store.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_control/models/__init__.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_control/models/backup_list.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_control/models/byoc_spec.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_control/models/collection_description.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_control/models/collection_list.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_control/models/index_description.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_control/models/index_list.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_control/models/index_model.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_control/models/list_response.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_control/models/pod_spec.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_control/models/restore_job_list.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_control/models/restore_job_model.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_control/models/serverless_spec.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_control/repr_overrides.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_control/request_factory.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_control/resources/__init__.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_control/resources/asyncio/__init__.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_control/resources/asyncio/backup.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_control/resources/asyncio/collection.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_control/resources/asyncio/restore_job.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_control/resources/sync/__init__.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_control/resources/sync/backup.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_control/resources/sync/collection.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_control/resources/sync/restore_job.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_control/types/__init__.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_control/types/create_index_for_model_embed.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_data/dataclasses/__init__.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_data/dataclasses/fetch_response.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_data/dataclasses/search_query.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_data/dataclasses/search_query_vector.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_data/dataclasses/search_rerank.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_data/dataclasses/sparse_values.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_data/dataclasses/utils.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_data/dataclasses/vector.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_data/errors.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_data/import_error.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_data/index_asyncio_interface.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_data/interfaces.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_data/models/__init__.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_data/query_results_aggregator.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_data/request_factory.py +0 -0
- {pinecone-7.0.0.dev3/pinecone/db_data/features/bulk_import → pinecone-7.0.1.dev1/pinecone/db_data/resources/sync}/bulk_import_request_factory.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_data/sparse_values_factory.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_data/types/__init__.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_data/types/query_filter.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_data/types/search_query_typed_dict.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_data/types/search_query_vector_typed_dict.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_data/types/search_rerank_typed_dict.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_data/types/sparse_vector_typed_dict.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_data/types/vector_metadata_dict.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_data/types/vector_tuple.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_data/types/vector_typed_dict.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/db_data/vector_factory.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/deprecated_plugins.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/deprecation_warnings.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/exceptions/__init__.py +3 -3
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/grpc/__init__.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/grpc/base.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/grpc/channel_factory.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/grpc/config.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/grpc/grpc_runner.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/grpc/index_grpc.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/grpc/pinecone.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/grpc/retry.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/grpc/sparse_values_factory.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/grpc/utils.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/grpc/vector_factory_grpc.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/inference/__init__.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/inference/inference.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/inference/inference_asyncio.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/inference/inference_request_builder.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/inference/models/__init__.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/inference/models/embedding_list.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/inference/models/index_embed.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/inference/models/model_info.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/inference/models/model_info_list.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/inference/models/rerank_result.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/inference/repl_overrides.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/inference/resources/asyncio/model.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/inference/resources/sync/model.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/langchain_import_warnings.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/legacy_pinecone_interface.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/models/__init__.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/openapi_support/__init__.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/openapi_support/api_client.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/openapi_support/api_client_utils.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/openapi_support/api_version.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/openapi_support/asyncio_api_client.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/openapi_support/asyncio_endpoint.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/openapi_support/auth_util.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/openapi_support/cached_class_property.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/openapi_support/configuration.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/openapi_support/configuration_lazy.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/openapi_support/constants.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/openapi_support/deserializer.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/openapi_support/endpoint.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/openapi_support/endpoint_utils.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/openapi_support/exceptions.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/openapi_support/model_utils.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/openapi_support/rest_utils.py +0 -0
- /pinecone-7.0.0.dev3/pinecone/openapi_support/retries.py → /pinecone-7.0.1.dev1/pinecone/openapi_support/retry_urllib3.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/openapi_support/serializer.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/openapi_support/types.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/pinecone_asyncio.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/pinecone_interface_asyncio.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/py.typed +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/scripts/repl.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/utils/__init__.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/utils/check_kwargs.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/utils/constants.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/utils/convert_enum_to_string.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/utils/convert_to_list.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/utils/deprecation_notice.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/utils/docslinks.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/utils/error_handling.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/utils/filter_dict.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/utils/find_legacy_imports.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/utils/fix_tuple_length.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/utils/lazy_imports.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/utils/legacy_imports.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/utils/normalize_host.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/utils/parse_args.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/utils/plugin_aware.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/utils/repr_overrides.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/utils/require_kwargs.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/utils/setup_openapi_client.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/utils/tqdm.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/utils/user_agent.py +0 -0
- {pinecone-7.0.0.dev3 → pinecone-7.0.1.dev1}/pinecone/utils/version.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.3
|
|
2
2
|
Name: pinecone
|
|
3
|
-
Version: 7.0.
|
|
3
|
+
Version: 7.0.1.dev1
|
|
4
4
|
Summary: Pinecone client and SDK
|
|
5
5
|
License: Apache-2.0
|
|
6
6
|
Keywords: Pinecone,vector,database,cloud
|
|
@@ -28,6 +28,7 @@ Classifier: Topic :: Software Development :: Libraries :: Python Modules
|
|
|
28
28
|
Provides-Extra: asyncio
|
|
29
29
|
Provides-Extra: grpc
|
|
30
30
|
Requires-Dist: aiohttp (>=3.9.0) ; extra == "asyncio"
|
|
31
|
+
Requires-Dist: aiohttp-retry (>=2.9.1,<3.0.0) ; extra == "asyncio"
|
|
31
32
|
Requires-Dist: certifi (>=2019.11.17)
|
|
32
33
|
Requires-Dist: googleapis-common-protos (>=1.66.0) ; extra == "grpc"
|
|
33
34
|
Requires-Dist: grpcio (>=1.44.0) ; (python_version >= "3.8" and python_version < "3.11") and (extra == "grpc")
|
|
@@ -94,10 +95,10 @@ pip3 install "pinecone[asyncio,grpc]"
|
|
|
94
95
|
|
|
95
96
|
```shell
|
|
96
97
|
# Install the latest version
|
|
97
|
-
uv
|
|
98
|
+
uv add pinecone
|
|
98
99
|
|
|
99
100
|
# Install the latest version, optional dependencies
|
|
100
|
-
uv
|
|
101
|
+
uv add "pinecone[asyncio,grpc]"
|
|
101
102
|
```
|
|
102
103
|
|
|
103
104
|
#### Installing with [poetry](https://python-poetry.org/)
|
|
@@ -239,11 +240,8 @@ response = index.search_records(
|
|
|
239
240
|
## Pinecone Assistant
|
|
240
241
|
### Installing the Pinecone Assistant Python plugin
|
|
241
242
|
|
|
242
|
-
|
|
243
|
+
The `pinecone-plugin-assistant` package is now bundled by default when installing `pinecone`. It does not need to be installed separately in order to use Pinecone Assistant.
|
|
243
244
|
|
|
244
|
-
```shell
|
|
245
|
-
pip install --upgrade pinecone pinecone-plugin-assistant
|
|
246
|
-
```
|
|
247
245
|
For more information on Pinecone Assistant, see the [Pinecone Assistant documentation](https://docs.pinecone.io/guides/assistant/overview).
|
|
248
246
|
|
|
249
247
|
|
|
@@ -47,10 +47,10 @@ pip3 install "pinecone[asyncio,grpc]"
|
|
|
47
47
|
|
|
48
48
|
```shell
|
|
49
49
|
# Install the latest version
|
|
50
|
-
uv
|
|
50
|
+
uv add pinecone
|
|
51
51
|
|
|
52
52
|
# Install the latest version, optional dependencies
|
|
53
|
-
uv
|
|
53
|
+
uv add "pinecone[asyncio,grpc]"
|
|
54
54
|
```
|
|
55
55
|
|
|
56
56
|
#### Installing with [poetry](https://python-poetry.org/)
|
|
@@ -192,11 +192,8 @@ response = index.search_records(
|
|
|
192
192
|
## Pinecone Assistant
|
|
193
193
|
### Installing the Pinecone Assistant Python plugin
|
|
194
194
|
|
|
195
|
-
|
|
195
|
+
The `pinecone-plugin-assistant` package is now bundled by default when installing `pinecone`. It does not need to be installed separately in order to use Pinecone Assistant.
|
|
196
196
|
|
|
197
|
-
```shell
|
|
198
|
-
pip install --upgrade pinecone pinecone-plugin-assistant
|
|
199
|
-
```
|
|
200
197
|
For more information on Pinecone Assistant, see the [Pinecone Assistant documentation](https://docs.pinecone.io/guides/assistant/overview).
|
|
201
198
|
|
|
202
199
|
|
|
@@ -6,7 +6,21 @@ from .deprecated_plugins import check_for_deprecated_plugins as _check_for_depre
|
|
|
6
6
|
from .deprecation_warnings import *
|
|
7
7
|
from .pinecone import Pinecone
|
|
8
8
|
from .pinecone_asyncio import PineconeAsyncio
|
|
9
|
-
from .exceptions import
|
|
9
|
+
from .exceptions import (
|
|
10
|
+
PineconeException,
|
|
11
|
+
PineconeApiTypeError,
|
|
12
|
+
PineconeApiValueError,
|
|
13
|
+
PineconeApiAttributeError,
|
|
14
|
+
PineconeApiKeyError,
|
|
15
|
+
PineconeApiException,
|
|
16
|
+
NotFoundException,
|
|
17
|
+
UnauthorizedException,
|
|
18
|
+
ForbiddenException,
|
|
19
|
+
ServiceException,
|
|
20
|
+
PineconeProtocolError,
|
|
21
|
+
PineconeConfigurationError,
|
|
22
|
+
ListConversionException,
|
|
23
|
+
)
|
|
10
24
|
|
|
11
25
|
from .utils import __version__
|
|
12
26
|
|
|
@@ -41,7 +55,7 @@ _db_data_lazy_imports = {
|
|
|
41
55
|
"QueryResponse": ("pinecone.db_data.models", "QueryResponse"),
|
|
42
56
|
"UpsertResponse": ("pinecone.db_data.models", "UpsertResponse"),
|
|
43
57
|
"UpdateRequest": ("pinecone.db_data.models", "UpdateRequest"),
|
|
44
|
-
"ImportErrorMode": ("pinecone.
|
|
58
|
+
"ImportErrorMode": ("pinecone.db_data.resources.sync.bulk_import", "ImportErrorMode"),
|
|
45
59
|
"VectorDictionaryMissingKeysError": (
|
|
46
60
|
"pinecone.db_data.errors",
|
|
47
61
|
"VectorDictionaryMissingKeysError",
|
|
@@ -1,7 +1,24 @@
|
|
|
1
1
|
from pinecone.config import Config
|
|
2
2
|
from pinecone.config import ConfigBuilder
|
|
3
3
|
from pinecone.config import PineconeConfig
|
|
4
|
+
from .exceptions import (
|
|
5
|
+
PineconeException,
|
|
6
|
+
PineconeApiTypeError,
|
|
7
|
+
PineconeApiValueError,
|
|
8
|
+
PineconeApiAttributeError,
|
|
9
|
+
PineconeApiKeyError,
|
|
10
|
+
PineconeApiException,
|
|
11
|
+
NotFoundException,
|
|
12
|
+
UnauthorizedException,
|
|
13
|
+
ForbiddenException,
|
|
14
|
+
ServiceException,
|
|
15
|
+
PineconeProtocolError,
|
|
16
|
+
PineconeConfigurationError,
|
|
17
|
+
ListConversionException,
|
|
18
|
+
)
|
|
4
19
|
from pinecone.inference import (
|
|
20
|
+
Inference,
|
|
21
|
+
AsyncioInference,
|
|
5
22
|
RerankModel,
|
|
6
23
|
EmbedModel,
|
|
7
24
|
ModelInfo,
|
|
@@ -29,7 +46,7 @@ from pinecone.db_data.models import (
|
|
|
29
46
|
UpsertResponse,
|
|
30
47
|
UpdateRequest,
|
|
31
48
|
)
|
|
32
|
-
from pinecone.
|
|
49
|
+
from pinecone.db_data.resources.sync.bulk_import import ImportErrorMode
|
|
33
50
|
from pinecone.db_data.errors import (
|
|
34
51
|
VectorDictionaryMissingKeysError,
|
|
35
52
|
VectorDictionaryExcessKeysError,
|
|
@@ -72,7 +89,23 @@ __all__ = [
|
|
|
72
89
|
"Config",
|
|
73
90
|
"ConfigBuilder",
|
|
74
91
|
"PineconeConfig",
|
|
92
|
+
# Exceptions
|
|
93
|
+
"PineconeException",
|
|
94
|
+
"PineconeApiTypeError",
|
|
95
|
+
"PineconeApiValueError",
|
|
96
|
+
"PineconeApiAttributeError",
|
|
97
|
+
"PineconeApiKeyError",
|
|
98
|
+
"PineconeApiException",
|
|
99
|
+
"NotFoundException",
|
|
100
|
+
"UnauthorizedException",
|
|
101
|
+
"ForbiddenException",
|
|
102
|
+
"ServiceException",
|
|
103
|
+
"PineconeProtocolError",
|
|
104
|
+
"PineconeConfigurationError",
|
|
105
|
+
"ListConversionException",
|
|
75
106
|
# Inference classes
|
|
107
|
+
"Inference",
|
|
108
|
+
"AsyncioInference",
|
|
76
109
|
"RerankModel",
|
|
77
110
|
"EmbedModel",
|
|
78
111
|
"ModelInfo",
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
7.0.1.dev1
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import warnings
|
|
2
|
+
|
|
3
|
+
from .bulk_imports import *
|
|
4
|
+
from .inference import *
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
warnings.warn(
|
|
8
|
+
"The module at `pinecone.data.features` has been removed. Code has been refactored and integrated into other parts of the client. "
|
|
9
|
+
"This warning will become an error in a future version of the Pinecone Python SDK.",
|
|
10
|
+
DeprecationWarning,
|
|
11
|
+
)
|
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
import warnings
|
|
2
2
|
|
|
3
|
-
from pinecone.db_data.
|
|
3
|
+
from pinecone.db_data.resources.asyncio.bulk_import_asyncio import *
|
|
4
|
+
from pinecone.db_data.resources.sync.bulk_import import *
|
|
5
|
+
from pinecone.db_data.resources.sync.bulk_import_request_factory import *
|
|
6
|
+
|
|
4
7
|
|
|
5
8
|
warnings.warn(
|
|
6
9
|
"The module at `pinecone.data.features.bulk_import` has moved to `pinecone.db_data.features.bulk_import`. "
|
|
@@ -7,15 +7,15 @@ class BackupModel:
|
|
|
7
7
|
def __init__(self, backup: OpenAPIBackupModel):
|
|
8
8
|
self._backup = backup
|
|
9
9
|
|
|
10
|
-
def __str__(self):
|
|
11
|
-
return str(self._backup)
|
|
12
|
-
|
|
13
10
|
def __getattr__(self, attr):
|
|
14
11
|
return getattr(self._backup, attr)
|
|
15
12
|
|
|
16
13
|
def __getitem__(self, key):
|
|
17
14
|
return self.__getattr__(key)
|
|
18
15
|
|
|
16
|
+
def __str__(self):
|
|
17
|
+
return self.__repr__()
|
|
18
|
+
|
|
19
19
|
def __repr__(self):
|
|
20
20
|
return json.dumps(self.to_dict(), indent=4, default=custom_serializer)
|
|
21
21
|
|
|
@@ -110,42 +110,28 @@ class IndexResourceAsyncio:
|
|
|
110
110
|
return await self.__poll_describe_index_until_ready(name, timeout)
|
|
111
111
|
|
|
112
112
|
async def __poll_describe_index_until_ready(self, name: str, timeout: Optional[int] = None):
|
|
113
|
-
description = None
|
|
114
|
-
|
|
115
|
-
async def is_ready() -> bool:
|
|
116
|
-
nonlocal description
|
|
117
|
-
description = await self.describe(name=name)
|
|
118
|
-
return description.status.ready
|
|
119
|
-
|
|
120
113
|
total_wait_time = 0
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
114
|
+
while True:
|
|
115
|
+
description = await self.describe(name=name)
|
|
116
|
+
if description.status.state == "InitializationFailed":
|
|
117
|
+
raise Exception(f"Index {name} failed to initialize.")
|
|
118
|
+
if description.status.ready:
|
|
119
|
+
return description
|
|
120
|
+
|
|
121
|
+
if timeout is not None and total_wait_time >= timeout:
|
|
122
|
+
logger.error(
|
|
123
|
+
f"Index {name} is not ready after {total_wait_time} seconds. Timeout reached."
|
|
126
124
|
)
|
|
127
|
-
|
|
128
|
-
|
|
125
|
+
link = docslinks["API_DESCRIBE_INDEX"](API_VERSION)
|
|
126
|
+
timeout_msg = f"Index {name} is not ready after {total_wait_time} seconds. Please call describe_index() to confirm index status. See docs at {link}"
|
|
127
|
+
raise TimeoutError(timeout_msg)
|
|
129
128
|
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
if timeout < 0:
|
|
134
|
-
logger.error(f"Index {name} is not ready. Timeout reached.")
|
|
135
|
-
link = docslinks["API_DESCRIBE_INDEX"](API_VERSION)
|
|
136
|
-
timeout_msg = (
|
|
137
|
-
f"Please call describe_index() to confirm index status. See docs at {link}"
|
|
138
|
-
)
|
|
139
|
-
raise TimeoutError(timeout_msg)
|
|
140
|
-
|
|
141
|
-
logger.debug(
|
|
142
|
-
f"Waiting for index {name} to be ready. Total wait time: {total_wait_time}"
|
|
143
|
-
)
|
|
144
|
-
total_wait_time += 5
|
|
145
|
-
await asyncio.sleep(5)
|
|
146
|
-
timeout -= 5
|
|
129
|
+
logger.debug(
|
|
130
|
+
f"Waiting for index {name} to be ready. Total wait time {total_wait_time} seconds."
|
|
131
|
+
)
|
|
147
132
|
|
|
148
|
-
|
|
133
|
+
total_wait_time += 5
|
|
134
|
+
await asyncio.sleep(5)
|
|
149
135
|
|
|
150
136
|
@require_kwargs
|
|
151
137
|
async def delete(self, *, name: str, timeout: Optional[int] = None):
|
|
@@ -145,42 +145,30 @@ class IndexResource(PluginAware):
|
|
|
145
145
|
return self.__poll_describe_index_until_ready(name, timeout)
|
|
146
146
|
|
|
147
147
|
def __poll_describe_index_until_ready(self, name: str, timeout: Optional[int] = None):
|
|
148
|
-
description = None
|
|
149
|
-
|
|
150
|
-
def is_ready() -> bool:
|
|
151
|
-
nonlocal description
|
|
152
|
-
description = self.describe(name=name)
|
|
153
|
-
return description.status.ready
|
|
154
|
-
|
|
155
148
|
total_wait_time = 0
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
f"
|
|
149
|
+
while True:
|
|
150
|
+
description = self.describe(name=name)
|
|
151
|
+
if description.status.state == "InitializationFailed":
|
|
152
|
+
raise Exception(
|
|
153
|
+
f"Index {name} failed to initialize. The index status is {description.status.state}."
|
|
161
154
|
)
|
|
162
|
-
|
|
163
|
-
|
|
155
|
+
if description.status.ready:
|
|
156
|
+
return description
|
|
164
157
|
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
if timeout < 0:
|
|
169
|
-
logger.error(f"Index {name} is not ready. Timeout reached.")
|
|
170
|
-
link = docslinks["API_DESCRIBE_INDEX"](API_VERSION)
|
|
171
|
-
timeout_msg = (
|
|
172
|
-
f"Please call describe_index() to confirm index status. See docs at {link}"
|
|
173
|
-
)
|
|
174
|
-
raise TimeoutError(timeout_msg)
|
|
175
|
-
|
|
176
|
-
logger.debug(
|
|
177
|
-
f"Waiting for index {name} to be ready. Total wait time: {total_wait_time}"
|
|
158
|
+
if timeout is not None and total_wait_time >= timeout:
|
|
159
|
+
logger.error(
|
|
160
|
+
f"Index {name} is not ready after {total_wait_time} seconds. Timeout reached."
|
|
178
161
|
)
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
162
|
+
link = docslinks["API_DESCRIBE_INDEX"](API_VERSION)
|
|
163
|
+
timeout_msg = f"Index {name} is not ready after {total_wait_time} seconds. Please call describe_index() to confirm index status. See docs at {link}"
|
|
164
|
+
raise TimeoutError(timeout_msg)
|
|
165
|
+
|
|
166
|
+
logger.debug(
|
|
167
|
+
f"Waiting for index {name} to be ready. Total wait time {total_wait_time} seconds."
|
|
168
|
+
)
|
|
182
169
|
|
|
183
|
-
|
|
170
|
+
total_wait_time += 5
|
|
171
|
+
time.sleep(5)
|
|
184
172
|
|
|
185
173
|
@require_kwargs
|
|
186
174
|
def delete(self, *, name: str, timeout: Optional[int] = None) -> None:
|
|
@@ -2,7 +2,7 @@ from pinecone.utils.tqdm import tqdm
|
|
|
2
2
|
import warnings
|
|
3
3
|
import logging
|
|
4
4
|
import json
|
|
5
|
-
from typing import Union, List, Optional, Dict, Any, Literal, TYPE_CHECKING
|
|
5
|
+
from typing import Union, List, Optional, Dict, Any, Literal, Iterator, TYPE_CHECKING
|
|
6
6
|
|
|
7
7
|
from pinecone.config import ConfigBuilder
|
|
8
8
|
|
|
@@ -19,7 +19,6 @@ from pinecone.core.openapi.db_data.models import (
|
|
|
19
19
|
from .dataclasses import Vector, SparseValues, FetchResponse, SearchQuery, SearchRerank
|
|
20
20
|
from .interfaces import IndexInterface
|
|
21
21
|
from .request_factory import IndexRequestFactory
|
|
22
|
-
from .features.bulk_import import ImportFeatureMixin
|
|
23
22
|
from .types import (
|
|
24
23
|
SparseVectorTypedDict,
|
|
25
24
|
VectorTypedDict,
|
|
@@ -47,6 +46,15 @@ from concurrent.futures import as_completed
|
|
|
47
46
|
|
|
48
47
|
if TYPE_CHECKING:
|
|
49
48
|
from pinecone.config import Config, OpenApiConfiguration
|
|
49
|
+
from .resources.sync.bulk_import import BulkImportResource
|
|
50
|
+
|
|
51
|
+
from pinecone.core.openapi.db_data.models import (
|
|
52
|
+
StartImportResponse,
|
|
53
|
+
ListImportsResponse,
|
|
54
|
+
ImportModel,
|
|
55
|
+
)
|
|
56
|
+
|
|
57
|
+
from .resources.sync.bulk_import import ImportErrorMode
|
|
50
58
|
|
|
51
59
|
logger = logging.getLogger(__name__)
|
|
52
60
|
""" @private """
|
|
@@ -58,12 +66,15 @@ def parse_query_response(response: QueryResponse):
|
|
|
58
66
|
return response
|
|
59
67
|
|
|
60
68
|
|
|
61
|
-
class Index(PluginAware, IndexInterface
|
|
69
|
+
class Index(PluginAware, IndexInterface):
|
|
62
70
|
"""
|
|
63
71
|
A client for interacting with a Pinecone index via REST API.
|
|
64
72
|
For improved performance, use the Pinecone GRPC index client.
|
|
65
73
|
"""
|
|
66
74
|
|
|
75
|
+
_bulk_import_resource: Optional["BulkImportResource"]
|
|
76
|
+
""" @private """
|
|
77
|
+
|
|
67
78
|
def __init__(
|
|
68
79
|
self,
|
|
69
80
|
api_key: str,
|
|
@@ -101,6 +112,9 @@ class Index(PluginAware, IndexInterface, ImportFeatureMixin):
|
|
|
101
112
|
|
|
102
113
|
self._api_client = self._vector_api.api_client
|
|
103
114
|
|
|
115
|
+
self._bulk_import_resource = None
|
|
116
|
+
""" @private """
|
|
117
|
+
|
|
104
118
|
# Pass the same api_client to the ImportFeatureMixin
|
|
105
119
|
super().__init__(api_client=self._api_client)
|
|
106
120
|
|
|
@@ -129,6 +143,15 @@ class Index(PluginAware, IndexInterface, ImportFeatureMixin):
|
|
|
129
143
|
)
|
|
130
144
|
return self._pool_threads
|
|
131
145
|
|
|
146
|
+
@property
|
|
147
|
+
def bulk_import(self) -> "BulkImportResource":
|
|
148
|
+
"""@private"""
|
|
149
|
+
if self._bulk_import_resource is None:
|
|
150
|
+
from .resources.sync.bulk_import import BulkImportResource
|
|
151
|
+
|
|
152
|
+
self._bulk_import_resource = BulkImportResource(api_client=self._api_client)
|
|
153
|
+
return self._bulk_import_resource
|
|
154
|
+
|
|
132
155
|
def _openapi_kwargs(self, kwargs: Dict[str, Any]) -> Dict[str, Any]:
|
|
133
156
|
return filter_dict(kwargs, OPENAPI_ENDPOINT_PARAMS)
|
|
134
157
|
|
|
@@ -457,3 +480,124 @@ class Index(PluginAware, IndexInterface, ImportFeatureMixin):
|
|
|
457
480
|
kwargs.update({"pagination_token": results.pagination.next})
|
|
458
481
|
else:
|
|
459
482
|
done = True
|
|
483
|
+
|
|
484
|
+
@validate_and_convert_errors
|
|
485
|
+
def start_import(
|
|
486
|
+
self,
|
|
487
|
+
uri: str,
|
|
488
|
+
integration_id: Optional[str] = None,
|
|
489
|
+
error_mode: Optional[
|
|
490
|
+
Union["ImportErrorMode", Literal["CONTINUE", "ABORT"], str]
|
|
491
|
+
] = "CONTINUE",
|
|
492
|
+
) -> "StartImportResponse":
|
|
493
|
+
"""
|
|
494
|
+
Args:
|
|
495
|
+
uri (str): The URI of the data to import. The URI must start with the scheme of a supported storage provider.
|
|
496
|
+
integration_id (Optional[str], optional): If your bucket requires authentication to access, you need to pass the id of your storage integration using this property. Defaults to None.
|
|
497
|
+
error_mode: Defaults to "CONTINUE". If set to "CONTINUE", the import operation will continue even if some
|
|
498
|
+
records fail to import. Pass "ABORT" to stop the import operation if any records fail to import.
|
|
499
|
+
|
|
500
|
+
Returns:
|
|
501
|
+
`StartImportResponse`: Contains the id of the import operation.
|
|
502
|
+
|
|
503
|
+
Import data from a storage provider into an index. The uri must start with the scheme of a supported
|
|
504
|
+
storage provider. For buckets that are not publicly readable, you will also need to separately configure
|
|
505
|
+
a storage integration and pass the integration id.
|
|
506
|
+
|
|
507
|
+
Examples:
|
|
508
|
+
>>> from pinecone import Pinecone
|
|
509
|
+
>>> index = Pinecone().Index('my-index')
|
|
510
|
+
>>> index.start_import(uri="s3://bucket-name/path/to/data.parquet")
|
|
511
|
+
{ id: "1" }
|
|
512
|
+
"""
|
|
513
|
+
return self.bulk_import.start(uri=uri, integration_id=integration_id, error_mode=error_mode)
|
|
514
|
+
|
|
515
|
+
@validate_and_convert_errors
|
|
516
|
+
def list_imports(self, **kwargs) -> Iterator["ImportModel"]:
|
|
517
|
+
"""
|
|
518
|
+
Args:
|
|
519
|
+
limit (Optional[int]): The maximum number of operations to fetch in each network call. If unspecified, the server will use a default value. [optional]
|
|
520
|
+
pagination_token (Optional[str]): When there are multiple pages of results, a pagination token is returned in the response. The token can be used
|
|
521
|
+
to fetch the next page of results. [optional]
|
|
522
|
+
|
|
523
|
+
Returns:
|
|
524
|
+
Returns a generator that yields each import operation. It automatically handles pagination tokens on your behalf so you can
|
|
525
|
+
easily iterate over all results. The `list_imports` method accepts all of the same arguments as list_imports_paginated
|
|
526
|
+
|
|
527
|
+
```python
|
|
528
|
+
for op in index.list_imports():
|
|
529
|
+
print(op)
|
|
530
|
+
```
|
|
531
|
+
|
|
532
|
+
You can convert the generator into a list by wrapping the generator in a call to the built-in `list` function:
|
|
533
|
+
|
|
534
|
+
```python
|
|
535
|
+
operations = list(index.list_imports())
|
|
536
|
+
```
|
|
537
|
+
|
|
538
|
+
You should be cautious with this approach because it will fetch all operations at once, which could be a large number
|
|
539
|
+
of network calls and a lot of memory to hold the results.
|
|
540
|
+
"""
|
|
541
|
+
for i in self.bulk_import.list(**kwargs):
|
|
542
|
+
yield i
|
|
543
|
+
|
|
544
|
+
@validate_and_convert_errors
|
|
545
|
+
def list_imports_paginated(
|
|
546
|
+
self, limit: Optional[int] = None, pagination_token: Optional[str] = None, **kwargs
|
|
547
|
+
) -> "ListImportsResponse":
|
|
548
|
+
"""
|
|
549
|
+
Args:
|
|
550
|
+
limit (Optional[int]): The maximum number of ids to return. If unspecified, the server will use a default value. [optional]
|
|
551
|
+
pagination_token (Optional[str]): A token needed to fetch the next page of results. This token is returned
|
|
552
|
+
in the response if additional results are available. [optional]
|
|
553
|
+
|
|
554
|
+
Returns: ListImportsResponse object which contains the list of operations as ImportModel objects, pagination information,
|
|
555
|
+
and usage showing the number of read_units consumed.
|
|
556
|
+
|
|
557
|
+
The list_imports_paginated operation returns information about import operations.
|
|
558
|
+
It returns operations in a paginated form, with a pagination token to fetch the next page of results.
|
|
559
|
+
|
|
560
|
+
Consider using the `list_imports` method to avoid having to handle pagination tokens manually.
|
|
561
|
+
|
|
562
|
+
Examples:
|
|
563
|
+
>>> results = index.list_imports_paginated(limit=5)
|
|
564
|
+
>>> results.pagination.next
|
|
565
|
+
eyJza2lwX3Bhc3QiOiI5OTMiLCJwcmVmaXgiOiI5OSJ9
|
|
566
|
+
>>> results.data[0]
|
|
567
|
+
{
|
|
568
|
+
"id": "6",
|
|
569
|
+
"uri": "s3://dev-bulk-import-datasets-pub/10-records-dim-10/",
|
|
570
|
+
"status": "Completed",
|
|
571
|
+
"percent_complete": 100.0,
|
|
572
|
+
"records_imported": 10,
|
|
573
|
+
"created_at": "2024-09-06T14:52:02.567776+00:00",
|
|
574
|
+
"finished_at": "2024-09-06T14:52:28.130717+00:00"
|
|
575
|
+
}
|
|
576
|
+
>>> next_results = index.list_imports_paginated(limit=5, pagination_token=results.pagination.next)
|
|
577
|
+
"""
|
|
578
|
+
return self.bulk_import.list_paginated(
|
|
579
|
+
limit=limit, pagination_token=pagination_token, **kwargs
|
|
580
|
+
)
|
|
581
|
+
|
|
582
|
+
@validate_and_convert_errors
|
|
583
|
+
def describe_import(self, id: str) -> "ImportModel":
|
|
584
|
+
"""
|
|
585
|
+
Args:
|
|
586
|
+
id (str): The id of the import operation. This value is returned when
|
|
587
|
+
starting an import, and can be looked up using list_imports.
|
|
588
|
+
|
|
589
|
+
Returns:
|
|
590
|
+
`ImportModel`: An object containing operation id, status, and other details.
|
|
591
|
+
|
|
592
|
+
describe_import is used to get detailed information about a specific import operation.
|
|
593
|
+
"""
|
|
594
|
+
return self.bulk_import.describe(id=id)
|
|
595
|
+
|
|
596
|
+
@validate_and_convert_errors
|
|
597
|
+
def cancel_import(self, id: str):
|
|
598
|
+
"""Cancel an import operation.
|
|
599
|
+
|
|
600
|
+
Args:
|
|
601
|
+
id (str): The id of the import operation to cancel.
|
|
602
|
+
"""
|
|
603
|
+
return self.bulk_import.cancel(id=id)
|