arize 8.0.0b0__tar.gz → 8.0.0b2__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.
- {arize-8.0.0b0 → arize-8.0.0b2}/PKG-INFO +71 -63
- {arize-8.0.0b0 → arize-8.0.0b2}/README.md +44 -25
- {arize-8.0.0b0 → arize-8.0.0b2}/pyproject.toml +21 -42
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/__init__.py +1 -1
- arize-8.0.0b2/src/arize/_client_factory.py +50 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_flight/client.py +4 -4
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_generated/api_client/__init__.py +0 -2
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_generated/api_client/api/datasets_api.py +6 -6
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_generated/api_client/api/experiments_api.py +6 -6
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_generated/api_client/api/projects_api.py +3 -3
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_generated/api_client/models/__init__.py +0 -1
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_generated/api_client/models/datasets_create_request.py +2 -10
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_generated/api_client/models/datasets_examples_insert_request.py +2 -10
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_generated/api_client/test/test_datasets_create_request.py +2 -6
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_generated/api_client/test/test_datasets_examples_insert_request.py +2 -6
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_generated/api_client/test/test_datasets_examples_list200_response.py +2 -6
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_generated/api_client/test/test_datasets_examples_update_request.py +2 -6
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_generated/api_client/test/test_experiments_create_request.py +2 -6
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_generated/api_client/test/test_experiments_runs_list200_response.py +2 -6
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_generated/api_client_README.md +0 -1
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_lazy.py +25 -9
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/client.py +16 -52
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/config.py +9 -36
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/constants/ml.py +9 -16
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/constants/spans.py +5 -10
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/datasets/client.py +13 -9
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/datasets/errors.py +1 -1
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/datasets/validation.py +2 -2
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/embeddings/auto_generator.py +2 -2
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/embeddings/errors.py +2 -2
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/embeddings/tabular_generators.py +1 -1
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/exceptions/base.py +0 -52
- arize-8.0.0b2/src/arize/exceptions/parameters.py +91 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/experiments/__init__.py +2 -2
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/experiments/client.py +16 -10
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/experiments/evaluators/base.py +6 -6
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/experiments/evaluators/executors.py +10 -3
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/experiments/evaluators/types.py +2 -2
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/experiments/functions.py +24 -17
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/experiments/types.py +6 -8
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/logging.py +1 -1
- arize-8.0.0b2/src/arize/ml/batch_validation/errors.py +629 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/ml/batch_validation/validator.py +273 -225
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/ml/casting.py +7 -7
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/ml/client.py +12 -11
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/ml/proto.py +6 -6
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/ml/stream_validation.py +2 -3
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/ml/surrogate_explainer/mimic.py +3 -3
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/ml/types.py +1 -55
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/pre_releases.py +6 -3
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/projects/client.py +9 -4
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/regions.py +2 -2
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/spans/client.py +14 -12
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/spans/columns.py +32 -36
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/spans/conversion.py +5 -6
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/spans/validation/common/argument_validation.py +3 -3
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/spans/validation/common/dataframe_form_validation.py +6 -6
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/spans/validation/common/value_validation.py +1 -1
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/spans/validation/evals/dataframe_form_validation.py +4 -4
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/spans/validation/evals/evals_validation.py +6 -6
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/spans/validation/metadata/dataframe_form_validation.py +1 -1
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/spans/validation/spans/dataframe_form_validation.py +2 -2
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/spans/validation/spans/spans_validation.py +6 -6
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/utils/arrow.py +2 -2
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/utils/cache.py +2 -2
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/utils/dataframe.py +4 -4
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/utils/online_tasks/dataframe_preprocessor.py +7 -7
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/utils/openinference_conversion.py +10 -10
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/version.py +1 -1
- arize-8.0.0b0/src/arize/_generated/api_client/models/primitive_value.py +0 -172
- arize-8.0.0b0/src/arize/_generated/api_client/test/test_primitive_value.py +0 -50
- arize-8.0.0b0/src/arize/exceptions/parameters.py +0 -420
- arize-8.0.0b0/src/arize/ml/batch_validation/errors.py +0 -1623
- {arize-8.0.0b0 → arize-8.0.0b2}/.gitignore +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/LICENSE +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/NOTICE +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_exporter/__init__.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_exporter/client.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_exporter/parsers/__init__.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_exporter/parsers/tracing_data_parser.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_exporter/validation.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_flight/__init__.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_flight/types.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_generated/__init__.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_generated/api_client/api/__init__.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_generated/api_client/api_client.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_generated/api_client/api_response.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_generated/api_client/configuration.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_generated/api_client/exceptions.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_generated/api_client/models/dataset.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_generated/api_client/models/dataset_example.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_generated/api_client/models/dataset_example_update.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_generated/api_client/models/dataset_version.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_generated/api_client/models/datasets_examples_list200_response.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_generated/api_client/models/datasets_examples_update_request.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_generated/api_client/models/datasets_list200_response.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_generated/api_client/models/experiment.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_generated/api_client/models/experiment_run.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_generated/api_client/models/experiment_run_create.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_generated/api_client/models/experiments_create_request.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_generated/api_client/models/experiments_list200_response.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_generated/api_client/models/experiments_runs_list200_response.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_generated/api_client/models/pagination_metadata.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_generated/api_client/models/problem.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_generated/api_client/models/project.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_generated/api_client/models/projects_create_request.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_generated/api_client/models/projects_list200_response.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_generated/api_client/rest.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_generated/api_client/test/__init__.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_generated/api_client/test/test_dataset.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_generated/api_client/test/test_dataset_example.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_generated/api_client/test/test_dataset_example_update.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_generated/api_client/test/test_dataset_version.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_generated/api_client/test/test_datasets_api.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_generated/api_client/test/test_datasets_list200_response.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_generated/api_client/test/test_experiment.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_generated/api_client/test/test_experiment_run.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_generated/api_client/test/test_experiment_run_create.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_generated/api_client/test/test_experiments_api.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_generated/api_client/test/test_experiments_list200_response.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_generated/api_client/test/test_pagination_metadata.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_generated/api_client/test/test_problem.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_generated/api_client/test/test_project.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_generated/api_client/test/test_projects_api.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_generated/api_client/test/test_projects_create_request.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_generated/api_client/test/test_projects_list200_response.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_generated/protocol/__init__.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_generated/protocol/flight/__init__.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_generated/protocol/flight/flight_pb2.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_generated/protocol/rec/__init__.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/_generated/protocol/rec/public_pb2.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/constants/__init__.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/constants/config.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/constants/model_mapping.json +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/constants/openinference.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/constants/pyarrow.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/datasets/__init__.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/embeddings/__init__.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/embeddings/base_generators.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/embeddings/constants.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/embeddings/cv_generators.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/embeddings/nlp_generators.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/embeddings/usecases.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/exceptions/__init__.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/exceptions/auth.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/exceptions/models.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/exceptions/spaces.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/exceptions/types.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/exceptions/values.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/experiments/evaluators/__init__.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/experiments/evaluators/exceptions.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/experiments/evaluators/rate_limiters.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/experiments/evaluators/utils.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/experiments/tracing.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/ml/__init__.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/ml/batch_validation/__init__.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/ml/bounded_executor.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/ml/surrogate_explainer/__init__.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/projects/__init__.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/spans/__init__.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/spans/validation/__init__.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/spans/validation/annotations/__init__.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/spans/validation/annotations/annotations_validation.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/spans/validation/annotations/dataframe_form_validation.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/spans/validation/annotations/value_validation.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/spans/validation/common/__init__.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/spans/validation/common/errors.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/spans/validation/evals/__init__.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/spans/validation/evals/value_validation.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/spans/validation/metadata/__init__.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/spans/validation/metadata/argument_validation.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/spans/validation/metadata/value_validation.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/spans/validation/spans/__init__.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/spans/validation/spans/value_validation.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/utils/__init__.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/utils/online_tasks/__init__.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/utils/proto.py +1 -1
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/utils/size.py +0 -0
- {arize-8.0.0b0 → arize-8.0.0b2}/src/arize/utils/types.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: arize
|
|
3
|
-
Version: 8.0.
|
|
3
|
+
Version: 8.0.0b2
|
|
4
4
|
Summary: A helper library to interact with Arize AI APIs
|
|
5
5
|
Project-URL: Homepage, https://arize.com
|
|
6
6
|
Project-URL: Documentation, https://docs.arize.com/arize
|
|
@@ -26,47 +26,36 @@ Classifier: Topic :: Software Development :: Libraries :: Python Modules
|
|
|
26
26
|
Classifier: Topic :: System :: Logging
|
|
27
27
|
Classifier: Topic :: System :: Monitoring
|
|
28
28
|
Requires-Python: >=3.10
|
|
29
|
-
Requires-Dist: lazy-imports
|
|
30
29
|
Requires-Dist: numpy>=2.0.0
|
|
31
|
-
|
|
32
|
-
Requires-Dist:
|
|
33
|
-
Requires-Dist:
|
|
34
|
-
Requires-Dist:
|
|
35
|
-
Requires-Dist:
|
|
36
|
-
Requires-Dist:
|
|
37
|
-
Requires-Dist:
|
|
38
|
-
|
|
39
|
-
Requires-Dist:
|
|
40
|
-
Requires-Dist:
|
|
41
|
-
Requires-Dist:
|
|
42
|
-
Requires-Dist:
|
|
43
|
-
Requires-Dist:
|
|
44
|
-
Requires-Dist:
|
|
45
|
-
Requires-Dist:
|
|
46
|
-
Requires-Dist:
|
|
47
|
-
Requires-Dist: wrapt<2.0.0,>=1.0.0; extra == 'datasets-experiments'
|
|
30
|
+
Requires-Dist: openinference-semantic-conventions<1,>=0.1.25
|
|
31
|
+
Requires-Dist: opentelemetry-exporter-otlp-proto-common>=1.38.0
|
|
32
|
+
Requires-Dist: opentelemetry-exporter-otlp-proto-grpc>=1.38.0
|
|
33
|
+
Requires-Dist: opentelemetry-sdk>=1.38.0
|
|
34
|
+
Requires-Dist: opentelemetry-semantic-conventions<1,>=0.43b0
|
|
35
|
+
Requires-Dist: pandas<3,>=2.0.0
|
|
36
|
+
Requires-Dist: protobuf<6,>=4.21.0
|
|
37
|
+
Requires-Dist: pyarrow>=0.15.0
|
|
38
|
+
Requires-Dist: pydantic<3,>=2
|
|
39
|
+
Requires-Dist: python-dateutil<3,>=2.8.2
|
|
40
|
+
Requires-Dist: requests-futures<2,>=1.0.0
|
|
41
|
+
Requires-Dist: requests<3,>=2.0.0
|
|
42
|
+
Requires-Dist: tqdm<5,>4
|
|
43
|
+
Requires-Dist: typing-extensions<5,>=4.7.1
|
|
44
|
+
Requires-Dist: urllib3<3,>=2.1.0
|
|
45
|
+
Requires-Dist: wrapt<2.0.0,>=1.0.0
|
|
48
46
|
Provides-Extra: dev
|
|
49
47
|
Requires-Dist: pytest==8.4.2; extra == 'dev'
|
|
50
48
|
Requires-Dist: ruff==0.13.2; extra == 'dev'
|
|
51
|
-
Provides-Extra:
|
|
52
|
-
Requires-Dist:
|
|
53
|
-
|
|
54
|
-
Requires-Dist:
|
|
55
|
-
Requires-Dist:
|
|
56
|
-
Requires-Dist:
|
|
57
|
-
|
|
58
|
-
Requires-Dist:
|
|
59
|
-
Provides-Extra:
|
|
60
|
-
Requires-Dist:
|
|
61
|
-
Requires-Dist: requests-futures<2,>=1.0.0; extra == 'ml-stream'
|
|
62
|
-
Provides-Extra: spans
|
|
63
|
-
Requires-Dist: openinference-semantic-conventions<1,>=0.1.21; extra == 'spans'
|
|
64
|
-
Requires-Dist: opentelemetry-semantic-conventions<1,>=0.43b0; extra == 'spans'
|
|
65
|
-
Requires-Dist: pandas<3,>=1.0.0; extra == 'spans'
|
|
66
|
-
Requires-Dist: protobuf<6,>=4.21.0; extra == 'spans'
|
|
67
|
-
Requires-Dist: pyarrow>=0.15.0; extra == 'spans'
|
|
68
|
-
Requires-Dist: requests<3,>=2.0.0; extra == 'spans'
|
|
69
|
-
Requires-Dist: tqdm; extra == 'spans'
|
|
49
|
+
Provides-Extra: embeddings
|
|
50
|
+
Requires-Dist: datasets!=2.14.*,<3,>=2.8; extra == 'embeddings'
|
|
51
|
+
Requires-Dist: pillow<11,>=8.4.0; extra == 'embeddings'
|
|
52
|
+
Requires-Dist: tokenizers<1,>=0.13; extra == 'embeddings'
|
|
53
|
+
Requires-Dist: torch<3,>=1.13; extra == 'embeddings'
|
|
54
|
+
Requires-Dist: transformers<5,>=4.25; extra == 'embeddings'
|
|
55
|
+
Provides-Extra: mimic
|
|
56
|
+
Requires-Dist: interpret-community[mimic]<1,>=0.22.0; extra == 'mimic'
|
|
57
|
+
Provides-Extra: otel
|
|
58
|
+
Requires-Dist: arize-otel<1,>=0.11.0; extra == 'otel'
|
|
70
59
|
Description-Content-Type: text/markdown
|
|
71
60
|
|
|
72
61
|
<p align="center">
|
|
@@ -92,6 +81,8 @@ Description-Content-Type: text/markdown
|
|
|
92
81
|
- [Overview](#overview)
|
|
93
82
|
- [Key Features](#key-features)
|
|
94
83
|
- [Installation](#installation)
|
|
84
|
+
- [Optional Dependencies](#optional-dependencies)
|
|
85
|
+
- [Migrating from Version 7](#migrating-from-version-7)
|
|
95
86
|
- [Usage](#usage)
|
|
96
87
|
- [Instrumentation](#instrumentation)
|
|
97
88
|
- [Operations on Spans](#operations-on-spans)
|
|
@@ -130,16 +121,18 @@ Description-Content-Type: text/markdown
|
|
|
130
121
|
|
|
131
122
|
A helper package to interact with Arize AI APIs.
|
|
132
123
|
|
|
133
|
-
Arize is an AI engineering platform. It helps engineers develop, evaluate, and observe AI applications and agents.
|
|
124
|
+
Arize is an AI engineering platform. It helps engineers develop, evaluate, and observe AI applications and agents.
|
|
125
|
+
|
|
126
|
+
Arize has both Enterprise and OSS products to support this goal:
|
|
134
127
|
|
|
135
|
-
Arize has both Enterprise and OSS products to support this goal:
|
|
136
128
|
- [Arize AX](https://arize.com/) — an enterprise AI engineering platform from development to production, with an embedded AI Copilot
|
|
137
129
|
- [Phoenix](https://github.com/Arize-ai/phoenix) — a lightweight, open-source project for tracing, prompt engineering, and evaluation
|
|
138
130
|
- [OpenInference](https://github.com/Arize-ai/openinference) — an open-source instrumentation package to trace LLM applications across models and frameworks
|
|
139
131
|
|
|
140
|
-
We log over 1 trillion inferences and spans, 10 million evaluation runs, and 2 million OSS downloads every month.
|
|
132
|
+
We log over 1 trillion inferences and spans, 10 million evaluation runs, and 2 million OSS downloads every month.
|
|
141
133
|
|
|
142
134
|
# Key Features
|
|
135
|
+
|
|
143
136
|
- [**_Tracing_**](https://docs.arize.com/arize/observe/tracing) - Trace your LLM application's runtime using OpenTelemetry-based instrumentation.
|
|
144
137
|
- [**_Evaluation_**](https://docs.arize.com/arize/evaluate/online-evals) - Leverage LLMs to benchmark your application's performance using response and retrieval evals.
|
|
145
138
|
- [**_Datasets_**](https://docs.arize.com/arize/develop/datasets) - Create versioned datasets of examples for experimentation, evaluation, and fine-tuning.
|
|
@@ -149,19 +142,36 @@ We log over 1 trillion inferences and spans, 10 million evaluation runs, and 2 m
|
|
|
149
142
|
|
|
150
143
|
# Installation
|
|
151
144
|
|
|
152
|
-
Install
|
|
145
|
+
Install the base package:
|
|
153
146
|
|
|
154
147
|
```bash
|
|
155
|
-
pip install arize
|
|
148
|
+
pip install arize
|
|
156
149
|
```
|
|
157
|
-
|
|
150
|
+
|
|
151
|
+
## Optional Dependencies
|
|
152
|
+
|
|
153
|
+
The following optional extras provide specialized functionality:
|
|
154
|
+
|
|
155
|
+
> **Note:** The `otel` extra installs the `arize-otel` package, which is also available as a standalone package. If you only need auto-instrumentation without the full SDK, install `arize-otel` directly.
|
|
156
|
+
|
|
157
|
+
| Extra | Install Command | What It Provides |
|
|
158
|
+
|-------|----------------|------------------|
|
|
159
|
+
| **otel** | `pip install arize[otel]` | OpenTelemetry auto-instrumentation package (arize-otel) for automatic tracing |
|
|
160
|
+
| **embeddings** | `pip install arize[embeddings]` | Automatic embedding generation for NLP, CV, and structured data (Pillow, datasets, tokenizers, torch, transformers) |
|
|
161
|
+
| **mimic** | `pip install arize[mimic]` | MIMIC explainer for model interpretability |
|
|
162
|
+
|
|
163
|
+
Install multiple extras:
|
|
158
164
|
|
|
159
165
|
```bash
|
|
160
|
-
pip install arize
|
|
166
|
+
pip install arize[otel,embeddings,mimic]
|
|
161
167
|
```
|
|
162
168
|
|
|
169
|
+
## Migrating from Version 7
|
|
170
|
+
|
|
171
|
+
If you're upgrading from version 7, please refer to the [Migration Guide](https://arize.com/docs/api-clients/python/version-8/migration) for detailed migration steps and breaking changes.
|
|
172
|
+
|
|
163
173
|
# Usage
|
|
164
|
-
|
|
174
|
+
|
|
165
175
|
## Instrumentation
|
|
166
176
|
|
|
167
177
|
See [arize-otel in PyPI](https://pypi.org/project/arize-otel/):
|
|
@@ -183,9 +193,8 @@ OpenAIInstrumentor().instrument(tracer_provider=tracer_provider)
|
|
|
183
193
|
|
|
184
194
|
## Operations on Spans
|
|
185
195
|
|
|
186
|
-
Use `arize.spans` to interact with spans: log spans into Arize, update the span's
|
|
187
|
-
|
|
188
|
-
> **WARNING**: This is currently under an alpha release. Install with `pip install arize==8.0.0ax` where the `x` denotes the specific alpha version. Check the [pre-releases](https://pypi.org/project/arize/#history) page in PyPI.
|
|
196
|
+
Use `arize.spans` to interact with spans: log spans into Arize, update the span's
|
|
197
|
+
evaluations, annotations and metadata in bulk.
|
|
189
198
|
|
|
190
199
|
### Logging spans
|
|
191
200
|
|
|
@@ -259,9 +268,8 @@ df = client.spans.export_to_df(
|
|
|
259
268
|
|
|
260
269
|
## Operations on ML Models
|
|
261
270
|
|
|
262
|
-
Use `arize.
|
|
263
|
-
|
|
264
|
-
> **WARNING**: This is currently under an alpha release. Install with `pip install arize==8.0.0ax` where the `x` denotes the specific alpha version. Check the [pre-releases](https://pypi.org/project/arize/#history) page in PyPI.
|
|
271
|
+
Use `arize.ml` to interact with ML models: log ML data (training, validation, production)
|
|
272
|
+
into Arize, either streaming or in batches.
|
|
265
273
|
|
|
266
274
|
### Stream log ML Data for a Classification use-case
|
|
267
275
|
|
|
@@ -276,7 +284,7 @@ MODEL_NAME = "<your-model-name>"
|
|
|
276
284
|
features=...
|
|
277
285
|
embedding_features=...
|
|
278
286
|
|
|
279
|
-
response = client.
|
|
287
|
+
response = client.ml.log_stream(
|
|
280
288
|
space_id=SPACE_ID,
|
|
281
289
|
model_name=MODEL_NAME,
|
|
282
290
|
model_type=ModelTypes.SCORE_CATEGORICAL,
|
|
@@ -328,7 +336,7 @@ schema = Schema(
|
|
|
328
336
|
)
|
|
329
337
|
|
|
330
338
|
# Logging Production DataFrame
|
|
331
|
-
response = client.
|
|
339
|
+
response = client.ml.log_batch(
|
|
332
340
|
space_id=SPACE_ID,
|
|
333
341
|
model_name=MODEL_NAME,
|
|
334
342
|
model_type=ModelTypes.OBJECT_DETECTION,
|
|
@@ -356,7 +364,7 @@ SPACE_ID = "<your-space-id>"
|
|
|
356
364
|
MODEL_NAME = "<your-model-name>"
|
|
357
365
|
MODEL_VERSION = "1.0"
|
|
358
366
|
|
|
359
|
-
df = client.
|
|
367
|
+
df = client.ml.export_to_df(
|
|
360
368
|
space_id=SPACE_ID,
|
|
361
369
|
model_name=MODEL_NAME,
|
|
362
370
|
environment=Environments.TRAINING,
|
|
@@ -414,7 +422,7 @@ The response is an object of type `DatasetsList200Response`, and you can access
|
|
|
414
422
|
|
|
415
423
|
```python
|
|
416
424
|
# Get the list of datasets from the response
|
|
417
|
-
dataset_list = resp.datasets
|
|
425
|
+
dataset_list = resp.datasets
|
|
418
426
|
# Get the response as a dictionary
|
|
419
427
|
resp_dict = resp.to_dict()
|
|
420
428
|
# Get the response in JSON format
|
|
@@ -530,7 +538,7 @@ The response is an object of type `ExperimentsList200Response`, and you can acce
|
|
|
530
538
|
|
|
531
539
|
```python
|
|
532
540
|
# Get the list of datasets from the response
|
|
533
|
-
experiment_list = resp.experiments
|
|
541
|
+
experiment_list = resp.experiments
|
|
534
542
|
# Get the response as a dictionary
|
|
535
543
|
resp_dict = resp.to_dict()
|
|
536
544
|
# Get the response in JSON format
|
|
@@ -554,7 +562,7 @@ experiment, experiment_df = client.run_experiment(
|
|
|
554
562
|
concurrency=..., # The number of concurrent tasks to run. Defaults to 3.
|
|
555
563
|
set_global_tracer_provider=..., # If True, sets the global tracer provider for the experiment. Defaults to False
|
|
556
564
|
exit_on_error=..., # If True, the experiment will stop running on first occurrence of an error. Defaults to False
|
|
557
|
-
)
|
|
565
|
+
)
|
|
558
566
|
```
|
|
559
567
|
|
|
560
568
|
The `Experiment` object also counts with convenience method similar to `List***` objects:
|
|
@@ -649,7 +657,7 @@ resp_df = resp.to_df()
|
|
|
649
657
|
|
|
650
658
|
### In Code
|
|
651
659
|
|
|
652
|
-
You can use `configure_logging` to set up the logging behavior of the Arize package to your needs.
|
|
660
|
+
You can use `configure_logging` to set up the logging behavior of the Arize package to your needs.
|
|
653
661
|
|
|
654
662
|
```python
|
|
655
663
|
from arize.logging import configure_logging
|
|
@@ -657,7 +665,7 @@ from arize.logging import configure_logging
|
|
|
657
665
|
configure_logging(
|
|
658
666
|
level=..., # Defaults to logging.INFO
|
|
659
667
|
structured=..., # if True, emit JSON logs. Defaults to False
|
|
660
|
-
)
|
|
668
|
+
)
|
|
661
669
|
```
|
|
662
670
|
|
|
663
671
|
### Via Environment Variables
|
|
@@ -668,11 +676,11 @@ Configure the same options as the section above, via:
|
|
|
668
676
|
import os
|
|
669
677
|
|
|
670
678
|
# Whether or not you want to disable logging altogether
|
|
671
|
-
os.environ["ARIZE_LOG_ENABLE"] = "true"
|
|
679
|
+
os.environ["ARIZE_LOG_ENABLE"] = "true"
|
|
672
680
|
# Set up the logging level
|
|
673
|
-
os.environ["ARIZE_LOG_LEVEL"] = "debug"
|
|
681
|
+
os.environ["ARIZE_LOG_LEVEL"] = "debug"
|
|
674
682
|
# Whether or not you want structured JSON logs
|
|
675
|
-
os.environ["ARIZE_LOG_STRUCTURED"] = "false"
|
|
683
|
+
os.environ["ARIZE_LOG_STRUCTURED"] = "false"
|
|
676
684
|
```
|
|
677
685
|
|
|
678
686
|
The default behavior of Arize's logs is: enabled, `INFO` level, and not structured.
|
|
@@ -21,6 +21,8 @@
|
|
|
21
21
|
- [Overview](#overview)
|
|
22
22
|
- [Key Features](#key-features)
|
|
23
23
|
- [Installation](#installation)
|
|
24
|
+
- [Optional Dependencies](#optional-dependencies)
|
|
25
|
+
- [Migrating from Version 7](#migrating-from-version-7)
|
|
24
26
|
- [Usage](#usage)
|
|
25
27
|
- [Instrumentation](#instrumentation)
|
|
26
28
|
- [Operations on Spans](#operations-on-spans)
|
|
@@ -59,16 +61,18 @@
|
|
|
59
61
|
|
|
60
62
|
A helper package to interact with Arize AI APIs.
|
|
61
63
|
|
|
62
|
-
Arize is an AI engineering platform. It helps engineers develop, evaluate, and observe AI applications and agents.
|
|
64
|
+
Arize is an AI engineering platform. It helps engineers develop, evaluate, and observe AI applications and agents.
|
|
65
|
+
|
|
66
|
+
Arize has both Enterprise and OSS products to support this goal:
|
|
63
67
|
|
|
64
|
-
Arize has both Enterprise and OSS products to support this goal:
|
|
65
68
|
- [Arize AX](https://arize.com/) — an enterprise AI engineering platform from development to production, with an embedded AI Copilot
|
|
66
69
|
- [Phoenix](https://github.com/Arize-ai/phoenix) — a lightweight, open-source project for tracing, prompt engineering, and evaluation
|
|
67
70
|
- [OpenInference](https://github.com/Arize-ai/openinference) — an open-source instrumentation package to trace LLM applications across models and frameworks
|
|
68
71
|
|
|
69
|
-
We log over 1 trillion inferences and spans, 10 million evaluation runs, and 2 million OSS downloads every month.
|
|
72
|
+
We log over 1 trillion inferences and spans, 10 million evaluation runs, and 2 million OSS downloads every month.
|
|
70
73
|
|
|
71
74
|
# Key Features
|
|
75
|
+
|
|
72
76
|
- [**_Tracing_**](https://docs.arize.com/arize/observe/tracing) - Trace your LLM application's runtime using OpenTelemetry-based instrumentation.
|
|
73
77
|
- [**_Evaluation_**](https://docs.arize.com/arize/evaluate/online-evals) - Leverage LLMs to benchmark your application's performance using response and retrieval evals.
|
|
74
78
|
- [**_Datasets_**](https://docs.arize.com/arize/develop/datasets) - Create versioned datasets of examples for experimentation, evaluation, and fine-tuning.
|
|
@@ -78,19 +82,36 @@ We log over 1 trillion inferences and spans, 10 million evaluation runs, and 2 m
|
|
|
78
82
|
|
|
79
83
|
# Installation
|
|
80
84
|
|
|
81
|
-
Install
|
|
85
|
+
Install the base package:
|
|
82
86
|
|
|
83
87
|
```bash
|
|
84
|
-
pip install arize
|
|
88
|
+
pip install arize
|
|
85
89
|
```
|
|
86
|
-
|
|
90
|
+
|
|
91
|
+
## Optional Dependencies
|
|
92
|
+
|
|
93
|
+
The following optional extras provide specialized functionality:
|
|
94
|
+
|
|
95
|
+
> **Note:** The `otel` extra installs the `arize-otel` package, which is also available as a standalone package. If you only need auto-instrumentation without the full SDK, install `arize-otel` directly.
|
|
96
|
+
|
|
97
|
+
| Extra | Install Command | What It Provides |
|
|
98
|
+
|-------|----------------|------------------|
|
|
99
|
+
| **otel** | `pip install arize[otel]` | OpenTelemetry auto-instrumentation package (arize-otel) for automatic tracing |
|
|
100
|
+
| **embeddings** | `pip install arize[embeddings]` | Automatic embedding generation for NLP, CV, and structured data (Pillow, datasets, tokenizers, torch, transformers) |
|
|
101
|
+
| **mimic** | `pip install arize[mimic]` | MIMIC explainer for model interpretability |
|
|
102
|
+
|
|
103
|
+
Install multiple extras:
|
|
87
104
|
|
|
88
105
|
```bash
|
|
89
|
-
pip install arize
|
|
106
|
+
pip install arize[otel,embeddings,mimic]
|
|
90
107
|
```
|
|
91
108
|
|
|
109
|
+
## Migrating from Version 7
|
|
110
|
+
|
|
111
|
+
If you're upgrading from version 7, please refer to the [Migration Guide](https://arize.com/docs/api-clients/python/version-8/migration) for detailed migration steps and breaking changes.
|
|
112
|
+
|
|
92
113
|
# Usage
|
|
93
|
-
|
|
114
|
+
|
|
94
115
|
## Instrumentation
|
|
95
116
|
|
|
96
117
|
See [arize-otel in PyPI](https://pypi.org/project/arize-otel/):
|
|
@@ -112,9 +133,8 @@ OpenAIInstrumentor().instrument(tracer_provider=tracer_provider)
|
|
|
112
133
|
|
|
113
134
|
## Operations on Spans
|
|
114
135
|
|
|
115
|
-
Use `arize.spans` to interact with spans: log spans into Arize, update the span's
|
|
116
|
-
|
|
117
|
-
> **WARNING**: This is currently under an alpha release. Install with `pip install arize==8.0.0ax` where the `x` denotes the specific alpha version. Check the [pre-releases](https://pypi.org/project/arize/#history) page in PyPI.
|
|
136
|
+
Use `arize.spans` to interact with spans: log spans into Arize, update the span's
|
|
137
|
+
evaluations, annotations and metadata in bulk.
|
|
118
138
|
|
|
119
139
|
### Logging spans
|
|
120
140
|
|
|
@@ -188,9 +208,8 @@ df = client.spans.export_to_df(
|
|
|
188
208
|
|
|
189
209
|
## Operations on ML Models
|
|
190
210
|
|
|
191
|
-
Use `arize.
|
|
192
|
-
|
|
193
|
-
> **WARNING**: This is currently under an alpha release. Install with `pip install arize==8.0.0ax` where the `x` denotes the specific alpha version. Check the [pre-releases](https://pypi.org/project/arize/#history) page in PyPI.
|
|
211
|
+
Use `arize.ml` to interact with ML models: log ML data (training, validation, production)
|
|
212
|
+
into Arize, either streaming or in batches.
|
|
194
213
|
|
|
195
214
|
### Stream log ML Data for a Classification use-case
|
|
196
215
|
|
|
@@ -205,7 +224,7 @@ MODEL_NAME = "<your-model-name>"
|
|
|
205
224
|
features=...
|
|
206
225
|
embedding_features=...
|
|
207
226
|
|
|
208
|
-
response = client.
|
|
227
|
+
response = client.ml.log_stream(
|
|
209
228
|
space_id=SPACE_ID,
|
|
210
229
|
model_name=MODEL_NAME,
|
|
211
230
|
model_type=ModelTypes.SCORE_CATEGORICAL,
|
|
@@ -257,7 +276,7 @@ schema = Schema(
|
|
|
257
276
|
)
|
|
258
277
|
|
|
259
278
|
# Logging Production DataFrame
|
|
260
|
-
response = client.
|
|
279
|
+
response = client.ml.log_batch(
|
|
261
280
|
space_id=SPACE_ID,
|
|
262
281
|
model_name=MODEL_NAME,
|
|
263
282
|
model_type=ModelTypes.OBJECT_DETECTION,
|
|
@@ -285,7 +304,7 @@ SPACE_ID = "<your-space-id>"
|
|
|
285
304
|
MODEL_NAME = "<your-model-name>"
|
|
286
305
|
MODEL_VERSION = "1.0"
|
|
287
306
|
|
|
288
|
-
df = client.
|
|
307
|
+
df = client.ml.export_to_df(
|
|
289
308
|
space_id=SPACE_ID,
|
|
290
309
|
model_name=MODEL_NAME,
|
|
291
310
|
environment=Environments.TRAINING,
|
|
@@ -343,7 +362,7 @@ The response is an object of type `DatasetsList200Response`, and you can access
|
|
|
343
362
|
|
|
344
363
|
```python
|
|
345
364
|
# Get the list of datasets from the response
|
|
346
|
-
dataset_list = resp.datasets
|
|
365
|
+
dataset_list = resp.datasets
|
|
347
366
|
# Get the response as a dictionary
|
|
348
367
|
resp_dict = resp.to_dict()
|
|
349
368
|
# Get the response in JSON format
|
|
@@ -459,7 +478,7 @@ The response is an object of type `ExperimentsList200Response`, and you can acce
|
|
|
459
478
|
|
|
460
479
|
```python
|
|
461
480
|
# Get the list of datasets from the response
|
|
462
|
-
experiment_list = resp.experiments
|
|
481
|
+
experiment_list = resp.experiments
|
|
463
482
|
# Get the response as a dictionary
|
|
464
483
|
resp_dict = resp.to_dict()
|
|
465
484
|
# Get the response in JSON format
|
|
@@ -483,7 +502,7 @@ experiment, experiment_df = client.run_experiment(
|
|
|
483
502
|
concurrency=..., # The number of concurrent tasks to run. Defaults to 3.
|
|
484
503
|
set_global_tracer_provider=..., # If True, sets the global tracer provider for the experiment. Defaults to False
|
|
485
504
|
exit_on_error=..., # If True, the experiment will stop running on first occurrence of an error. Defaults to False
|
|
486
|
-
)
|
|
505
|
+
)
|
|
487
506
|
```
|
|
488
507
|
|
|
489
508
|
The `Experiment` object also counts with convenience method similar to `List***` objects:
|
|
@@ -578,7 +597,7 @@ resp_df = resp.to_df()
|
|
|
578
597
|
|
|
579
598
|
### In Code
|
|
580
599
|
|
|
581
|
-
You can use `configure_logging` to set up the logging behavior of the Arize package to your needs.
|
|
600
|
+
You can use `configure_logging` to set up the logging behavior of the Arize package to your needs.
|
|
582
601
|
|
|
583
602
|
```python
|
|
584
603
|
from arize.logging import configure_logging
|
|
@@ -586,7 +605,7 @@ from arize.logging import configure_logging
|
|
|
586
605
|
configure_logging(
|
|
587
606
|
level=..., # Defaults to logging.INFO
|
|
588
607
|
structured=..., # if True, emit JSON logs. Defaults to False
|
|
589
|
-
)
|
|
608
|
+
)
|
|
590
609
|
```
|
|
591
610
|
|
|
592
611
|
### Via Environment Variables
|
|
@@ -597,11 +616,11 @@ Configure the same options as the section above, via:
|
|
|
597
616
|
import os
|
|
598
617
|
|
|
599
618
|
# Whether or not you want to disable logging altogether
|
|
600
|
-
os.environ["ARIZE_LOG_ENABLE"] = "true"
|
|
619
|
+
os.environ["ARIZE_LOG_ENABLE"] = "true"
|
|
601
620
|
# Set up the logging level
|
|
602
|
-
os.environ["ARIZE_LOG_LEVEL"] = "debug"
|
|
621
|
+
os.environ["ARIZE_LOG_LEVEL"] = "debug"
|
|
603
622
|
# Whether or not you want structured JSON logs
|
|
604
|
-
os.environ["ARIZE_LOG_STRUCTURED"] = "false"
|
|
623
|
+
os.environ["ARIZE_LOG_STRUCTURED"] = "false"
|
|
605
624
|
```
|
|
606
625
|
|
|
607
626
|
The default behavior of Arize's logs is: enabled, `INFO` level, and not structured.
|
|
@@ -35,14 +35,23 @@ classifiers = [
|
|
|
35
35
|
"Topic :: System :: Monitoring",
|
|
36
36
|
]
|
|
37
37
|
dependencies = [
|
|
38
|
-
"numpy>=2.0.0",
|
|
39
|
-
"
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
38
|
+
"numpy>=2.0.0",
|
|
39
|
+
"openinference-semantic-conventions>=0.1.25, <1",
|
|
40
|
+
"opentelemetry-exporter-otlp-proto-common>=1.38.0",
|
|
41
|
+
"opentelemetry-exporter-otlp-proto-grpc>=1.38.0",
|
|
42
|
+
"opentelemetry-sdk>=1.38.0",
|
|
43
|
+
"opentelemetry-semantic-conventions>=0.43b0, <1",
|
|
44
|
+
"pandas>=2.0.0, <3",
|
|
45
|
+
"protobuf>=4.21.0, <6",
|
|
46
|
+
"pyarrow>=0.15.0",
|
|
47
|
+
"pydantic>=2, <3",
|
|
48
|
+
"python-dateutil>=2.8.2, <3",
|
|
49
|
+
"requests>=2.0.0, <3",
|
|
50
|
+
"requests_futures>=1.0.0, <2",
|
|
51
|
+
"tqdm>4, <5", # For progress bars
|
|
52
|
+
"typing-extensions>=4.7.1, <5",
|
|
53
|
+
"urllib3>=2.1.0, <3",
|
|
54
|
+
"wrapt>=1.0.0, <2.0.0",
|
|
46
55
|
]
|
|
47
56
|
dynamic = ["version"]
|
|
48
57
|
|
|
@@ -51,44 +60,15 @@ dev = [
|
|
|
51
60
|
"pytest==8.4.2",
|
|
52
61
|
"ruff==0.13.2"
|
|
53
62
|
]
|
|
54
|
-
|
|
55
|
-
"
|
|
56
|
-
"opentelemetry-semantic-conventions>=0.43b0, <1",
|
|
57
|
-
"pandas>=1.0.0,<3",
|
|
58
|
-
"protobuf>=4.21.0,<6",
|
|
59
|
-
"pyarrow>=0.15.0",
|
|
60
|
-
"requests>=2.0.0, <3", # For posting pyarrow files
|
|
61
|
-
"tqdm", # For export progress bars
|
|
62
|
-
]
|
|
63
|
-
ml-stream = [
|
|
64
|
-
"requests_futures>=1.0.0, <2",
|
|
65
|
-
"protobuf>=4.21.0,<6"
|
|
66
|
-
]
|
|
67
|
-
ml-batch = [
|
|
68
|
-
"pandas>=1.0.0,<3",
|
|
69
|
-
"protobuf>=4.21.0,<6",
|
|
70
|
-
"pyarrow>=0.15.0",
|
|
71
|
-
"requests>=2.0.0, <3", # For posting pyarrow files
|
|
72
|
-
"tqdm", # For export progress bars
|
|
73
|
-
]
|
|
74
|
-
datasets-experiments = [
|
|
75
|
-
"pydantic",
|
|
76
|
-
"numpy>=2.0.0",
|
|
77
|
-
"wrapt>=1.0.0,<2.0.0",
|
|
78
|
-
"openinference-semantic-conventions>=0.1.21, <1",
|
|
79
|
-
"opentelemetry-exporter-otlp-proto-common>=1.38.0",
|
|
80
|
-
"opentelemetry-exporter-otlp-proto-grpc>=1.38.0",
|
|
81
|
-
"opentelemetry-sdk>=1.38.0",
|
|
82
|
-
"opentelemetry-api>=1.38.0",
|
|
83
|
-
"opentelemetry-proto>=1.38.0",
|
|
63
|
+
otel = [
|
|
64
|
+
"arize-otel>=0.11.0, <1",
|
|
84
65
|
]
|
|
85
|
-
mimic
|
|
66
|
+
mimic = [
|
|
86
67
|
"interpret-community[mimic]>=0.22.0,<1"
|
|
87
68
|
]
|
|
88
|
-
|
|
69
|
+
embeddings = [
|
|
89
70
|
"Pillow>=8.4.0, <11",
|
|
90
71
|
"datasets>=2.8, <3, !=2.14.*",
|
|
91
|
-
"pandas>=1.0.0,<3",
|
|
92
72
|
"tokenizers>=0.13, <1",
|
|
93
73
|
"torch>=1.13, <3",
|
|
94
74
|
"transformers>=4.25, <5",
|
|
@@ -126,7 +106,6 @@ exclude = [
|
|
|
126
106
|
include = '\.pyi?$'
|
|
127
107
|
exclude = '(_pb2\.py$|docs/source/.*\.py)'
|
|
128
108
|
|
|
129
|
-
# TODO(Kiko): Revisit ruff ignores
|
|
130
109
|
[tool.ruff]
|
|
131
110
|
target-version = "py310"
|
|
132
111
|
line-length = 80
|
|
@@ -37,7 +37,7 @@ def make_to_df(field_name: str) -> object:
|
|
|
37
37
|
json_normalize: bool = False,
|
|
38
38
|
convert_dtypes: bool = True,
|
|
39
39
|
) -> object:
|
|
40
|
-
"""Convert a list of objects to a pandas
|
|
40
|
+
"""Convert a list of objects to a :class:`pandas.DataFrame`.
|
|
41
41
|
|
|
42
42
|
Behavior:
|
|
43
43
|
- If an item is a Pydantic v2 model, use `.model_dump(by_alias=...)`.
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
"""Factory for creating and caching the generated OpenAPI client."""
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
|
|
5
|
+
import threading
|
|
6
|
+
from typing import TYPE_CHECKING
|
|
7
|
+
|
|
8
|
+
if TYPE_CHECKING:
|
|
9
|
+
from arize._generated.api_client.api_client import ApiClient
|
|
10
|
+
from arize.config import SDKConfiguration
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
class GeneratedClientFactory:
|
|
14
|
+
"""Factory for creating and caching generated OpenAPI clients.
|
|
15
|
+
|
|
16
|
+
This factory is owned by ArizeClient and provides thread-safe lazy
|
|
17
|
+
initialization of the OpenAPI client used by various subclients.
|
|
18
|
+
"""
|
|
19
|
+
|
|
20
|
+
def __init__(self, sdk_config: SDKConfiguration) -> None:
|
|
21
|
+
"""Initialize the factory.
|
|
22
|
+
|
|
23
|
+
Args:
|
|
24
|
+
sdk_config: SDK configuration containing API settings.
|
|
25
|
+
"""
|
|
26
|
+
self._sdk_config = sdk_config
|
|
27
|
+
self._client: ApiClient | None = None
|
|
28
|
+
self._lock = threading.Lock()
|
|
29
|
+
|
|
30
|
+
def get_client(self) -> ApiClient:
|
|
31
|
+
"""Get or create the generated OpenAPI client instance.
|
|
32
|
+
|
|
33
|
+
Returns:
|
|
34
|
+
The shared generated API client instance.
|
|
35
|
+
"""
|
|
36
|
+
if self._client is not None:
|
|
37
|
+
return self._client
|
|
38
|
+
|
|
39
|
+
with self._lock:
|
|
40
|
+
if self._client is not None:
|
|
41
|
+
return self._client
|
|
42
|
+
|
|
43
|
+
# Import lazily to avoid extra dependencies at config time
|
|
44
|
+
from arize._generated import api_client as gen
|
|
45
|
+
|
|
46
|
+
cfg = gen.Configuration(host=self._sdk_config.api_url)
|
|
47
|
+
if self._sdk_config.api_key:
|
|
48
|
+
cfg.access_token = self._sdk_config.api_key
|
|
49
|
+
self._client = gen.ApiClient(cfg)
|
|
50
|
+
return self._client
|
|
@@ -333,8 +333,8 @@ class ArizeFlightClient:
|
|
|
333
333
|
latest version.
|
|
334
334
|
|
|
335
335
|
Returns:
|
|
336
|
-
A pandas DataFrame containing the dataset examples
|
|
337
|
-
|
|
336
|
+
:class:`pandas.DataFrame`: A pandas DataFrame containing the dataset examples
|
|
337
|
+
with JSON string columns converted to dict objects.
|
|
338
338
|
|
|
339
339
|
Raises:
|
|
340
340
|
RuntimeError: If the Flight request fails.
|
|
@@ -374,8 +374,8 @@ class ArizeFlightClient:
|
|
|
374
374
|
experiment_id: Experiment ID to retrieve runs from.
|
|
375
375
|
|
|
376
376
|
Returns:
|
|
377
|
-
A pandas DataFrame containing the experiment runs
|
|
378
|
-
|
|
377
|
+
:class:`pandas.DataFrame`: A pandas DataFrame containing the experiment runs
|
|
378
|
+
with JSON string columns converted to dict objects.
|
|
379
379
|
|
|
380
380
|
Raises:
|
|
381
381
|
RuntimeError: If the Flight request fails.
|
|
@@ -46,7 +46,6 @@ __all__ = [
|
|
|
46
46
|
"ExperimentsList200Response",
|
|
47
47
|
"ExperimentsRunsList200Response",
|
|
48
48
|
"PaginationMetadata",
|
|
49
|
-
"PrimitiveValue",
|
|
50
49
|
"Problem",
|
|
51
50
|
"Project",
|
|
52
51
|
"ProjectsCreateRequest",
|
|
@@ -86,7 +85,6 @@ from arize._generated.api_client.models.experiments_create_request import Experi
|
|
|
86
85
|
from arize._generated.api_client.models.experiments_list200_response import ExperimentsList200Response as ExperimentsList200Response
|
|
87
86
|
from arize._generated.api_client.models.experiments_runs_list200_response import ExperimentsRunsList200Response as ExperimentsRunsList200Response
|
|
88
87
|
from arize._generated.api_client.models.pagination_metadata import PaginationMetadata as PaginationMetadata
|
|
89
|
-
from arize._generated.api_client.models.primitive_value import PrimitiveValue as PrimitiveValue
|
|
90
88
|
from arize._generated.api_client.models.problem import Problem as Problem
|
|
91
89
|
from arize._generated.api_client.models.project import Project as Project
|
|
92
90
|
from arize._generated.api_client.models.projects_create_request import ProjectsCreateRequest as ProjectsCreateRequest
|