arize 8.0.0a7__tar.gz → 8.0.0a9__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.
Files changed (115) hide show
  1. {arize-8.0.0a7 → arize-8.0.0a9}/PKG-INFO +3 -1
  2. {arize-8.0.0a7 → arize-8.0.0a9}/pyproject.toml +6 -4
  3. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/_exporter/parsers/tracing_data_parser.py +4 -7
  4. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/_flight/client.py +1 -1
  5. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/client.py +1 -0
  6. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/models/client.py +3 -2
  7. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/spans/validation/common/argument_validation.py +2 -5
  8. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/spans/validation/metadata/argument_validation.py +2 -5
  9. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/utils/arrow.py +16 -27
  10. arize-8.0.0a9/src/arize/version.py +1 -0
  11. arize-8.0.0a7/src/arize/version.py +0 -1
  12. {arize-8.0.0a7 → arize-8.0.0a9}/.gitignore +0 -0
  13. {arize-8.0.0a7 → arize-8.0.0a9}/LICENSE.md +0 -0
  14. {arize-8.0.0a7 → arize-8.0.0a9}/README.md +0 -0
  15. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/__init__.py +0 -0
  16. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/_exporter/__init__.py +0 -0
  17. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/_exporter/client.py +0 -0
  18. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/_exporter/parsers/__init__.py +0 -0
  19. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/_exporter/validation.py +0 -0
  20. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/_flight/__init__.py +0 -0
  21. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/_flight/types.py +0 -0
  22. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/_generated/__init__.py +0 -0
  23. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/_generated/api_client/__init__.py +0 -0
  24. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/_generated/api_client/api/__init__.py +0 -0
  25. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/_generated/api_client/api/datasets_api.py +0 -0
  26. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/_generated/api_client/api/experiments_api.py +0 -0
  27. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/_generated/api_client/api_client.py +0 -0
  28. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/_generated/api_client/api_response.py +0 -0
  29. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/_generated/api_client/configuration.py +0 -0
  30. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/_generated/api_client/exceptions.py +0 -0
  31. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/_generated/api_client/models/__init__.py +0 -0
  32. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/_generated/api_client/models/dataset.py +0 -0
  33. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/_generated/api_client/models/dataset_version.py +0 -0
  34. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/_generated/api_client/models/datasets_create201_response.py +0 -0
  35. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/_generated/api_client/models/datasets_create_request.py +0 -0
  36. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/_generated/api_client/models/datasets_list200_response.py +0 -0
  37. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/_generated/api_client/models/datasets_list_examples200_response.py +0 -0
  38. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/_generated/api_client/models/error.py +0 -0
  39. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/_generated/api_client/models/experiment.py +0 -0
  40. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/_generated/api_client/models/experiments_list200_response.py +0 -0
  41. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/_generated/api_client/rest.py +0 -0
  42. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/_generated/api_client/test/__init__.py +0 -0
  43. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/_generated/api_client/test/test_dataset.py +0 -0
  44. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/_generated/api_client/test/test_dataset_version.py +0 -0
  45. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/_generated/api_client/test/test_datasets_api.py +0 -0
  46. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/_generated/api_client/test/test_datasets_create201_response.py +0 -0
  47. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/_generated/api_client/test/test_datasets_create_request.py +0 -0
  48. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/_generated/api_client/test/test_datasets_list200_response.py +0 -0
  49. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/_generated/api_client/test/test_datasets_list_examples200_response.py +0 -0
  50. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/_generated/api_client/test/test_error.py +0 -0
  51. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/_generated/api_client/test/test_experiment.py +0 -0
  52. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/_generated/api_client/test/test_experiments_api.py +0 -0
  53. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/_generated/api_client/test/test_experiments_list200_response.py +0 -0
  54. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/_generated/api_client_README.md +0 -0
  55. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/_generated/protocol/__init__.py +0 -0
  56. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/_generated/protocol/flight/__init__.py +0 -0
  57. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/_generated/protocol/flight/export_pb2.py +0 -0
  58. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/_generated/protocol/flight/ingest_pb2.py +0 -0
  59. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/_generated/protocol/rec/__init__.py +0 -0
  60. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/_generated/protocol/rec/public_pb2.py +0 -0
  61. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/_lazy.py +0 -0
  62. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/config.py +0 -0
  63. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/constants/__init__.py +0 -0
  64. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/constants/config.py +0 -0
  65. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/constants/ml.py +0 -0
  66. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/constants/model_mapping.json +0 -0
  67. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/constants/spans.py +0 -0
  68. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/datasets/__init__.py +0 -0
  69. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/datasets/client.py +0 -0
  70. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/exceptions/__init__.py +0 -0
  71. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/exceptions/auth.py +0 -0
  72. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/exceptions/base.py +0 -0
  73. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/exceptions/models.py +0 -0
  74. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/exceptions/parameters.py +0 -0
  75. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/exceptions/spaces.py +0 -0
  76. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/exceptions/types.py +0 -0
  77. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/exceptions/values.py +0 -0
  78. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/experiments/__init__.py +0 -0
  79. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/experiments/client.py +0 -0
  80. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/logging.py +0 -0
  81. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/models/__init__.py +0 -0
  82. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/models/batch_validation/__init__.py +0 -0
  83. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/models/batch_validation/errors.py +0 -0
  84. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/models/batch_validation/validator.py +0 -0
  85. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/models/bounded_executor.py +0 -0
  86. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/models/stream_validation.py +0 -0
  87. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/spans/__init__.py +0 -0
  88. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/spans/client.py +0 -0
  89. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/spans/columns.py +0 -0
  90. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/spans/conversion.py +0 -0
  91. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/spans/validation/__init__.py +0 -0
  92. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/spans/validation/annotations/__init__.py +0 -0
  93. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/spans/validation/annotations/annotations_validation.py +0 -0
  94. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/spans/validation/annotations/dataframe_form_validation.py +0 -0
  95. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/spans/validation/annotations/value_validation.py +0 -0
  96. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/spans/validation/common/__init__.py +0 -0
  97. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/spans/validation/common/dataframe_form_validation.py +0 -0
  98. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/spans/validation/common/errors.py +0 -0
  99. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/spans/validation/common/value_validation.py +0 -0
  100. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/spans/validation/evals/__init__.py +0 -0
  101. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/spans/validation/evals/dataframe_form_validation.py +0 -0
  102. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/spans/validation/evals/evals_validation.py +0 -0
  103. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/spans/validation/evals/value_validation.py +0 -0
  104. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/spans/validation/metadata/__init__.py +0 -0
  105. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/spans/validation/metadata/dataframe_form_validation.py +0 -0
  106. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/spans/validation/metadata/value_validation.py +0 -0
  107. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/spans/validation/spans/__init__.py +0 -0
  108. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/spans/validation/spans/dataframe_form_validation.py +0 -0
  109. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/spans/validation/spans/spans_validation.py +0 -0
  110. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/spans/validation/spans/value_validation.py +0 -0
  111. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/types.py +0 -0
  112. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/utils/__init__.py +0 -0
  113. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/utils/casting.py +0 -0
  114. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/utils/dataframe.py +0 -0
  115. {arize-8.0.0a7 → arize-8.0.0a9}/src/arize/utils/proto.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: arize
3
- Version: 8.0.0a7
3
+ Version: 8.0.0a9
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
@@ -34,6 +34,7 @@ Provides-Extra: ml-batch
34
34
  Requires-Dist: pandas<3,>=1.0.0; extra == 'ml-batch'
35
35
  Requires-Dist: protobuf<6,>=4.21.0; extra == 'ml-batch'
36
36
  Requires-Dist: pyarrow>=0.15.0; extra == 'ml-batch'
37
+ Requires-Dist: requests<3,>=2.0.0; extra == 'ml-batch'
37
38
  Requires-Dist: tqdm; extra == 'ml-batch'
38
39
  Provides-Extra: ml-stream
39
40
  Requires-Dist: protobuf<6,>=4.21.0; extra == 'ml-stream'
@@ -44,6 +45,7 @@ Requires-Dist: opentelemetry-semantic-conventions<1,>=0.43b0; extra == 'spans'
44
45
  Requires-Dist: pandas<3,>=1.0.0; extra == 'spans'
45
46
  Requires-Dist: protobuf<6,>=4.21.0; extra == 'spans'
46
47
  Requires-Dist: pyarrow>=0.15.0; extra == 'spans'
48
+ Requires-Dist: requests<3,>=2.0.0; extra == 'spans'
47
49
  Requires-Dist: tqdm; extra == 'spans'
48
50
  Description-Content-Type: text/markdown
49
51
 
@@ -34,8 +34,8 @@ classifiers = [
34
34
  "Topic :: System :: Monitoring",
35
35
  ]
36
36
  dependencies = [
37
+ "numpy>=2.0.0", # For vector embeddings
37
38
  "lazy-imports",
38
- "numpy>=2.0.0",
39
39
  # "requests_futures==1.0.0",
40
40
  # "googleapis_common_protos>=1.51.0,<2",
41
41
  # "protobuf>=4.21.0,<6",
@@ -57,7 +57,8 @@ spans = [
57
57
  "pandas>=1.0.0,<3",
58
58
  "protobuf>=4.21.0,<6",
59
59
  "pyarrow>=0.15.0",
60
- "tqdm",
60
+ "requests>=2.0.0, <3", # For posting pyarrow files
61
+ "tqdm", # For export progress bars
61
62
  ]
62
63
  ml-stream = [
63
64
  "requests_futures>=1.0.0, <2",
@@ -65,9 +66,10 @@ ml-stream = [
65
66
  ]
66
67
  ml-batch = [
67
68
  "pandas>=1.0.0,<3",
68
- "pyarrow>=0.15.0",
69
69
  "protobuf>=4.21.0,<6",
70
- "tqdm",
70
+ "pyarrow>=0.15.0",
71
+ "requests>=2.0.0, <3", # For posting pyarrow files
72
+ "tqdm", # For export progress bars
71
73
  ]
72
74
  # datasets-experiments = [
73
75
  # "pydantic",
@@ -1,8 +1,9 @@
1
- from __future__ import annotations
2
-
3
1
  import json
4
2
  import logging
5
- from typing import TYPE_CHECKING, List
3
+ from typing import List
4
+
5
+ import numpy as np
6
+ import pandas as pd
6
7
 
7
8
  from arize.spans.columns import (
8
9
  SPAN_ATTRIBUTES_EMBEDDING_EMBEDDINGS_COL,
@@ -18,10 +19,6 @@ from arize.spans.columns import (
18
19
  SPAN_START_TIME_COL,
19
20
  )
20
21
 
21
- if TYPE_CHECKING:
22
- import numpy as np
23
- import pandas as pd
24
-
25
22
  logger = logging.getLogger(__name__)
26
23
 
27
24
 
@@ -9,6 +9,7 @@ from typing import TYPE_CHECKING, Any, Dict, List, Tuple
9
9
  from google.protobuf import json_format
10
10
  from pyarrow import flight
11
11
 
12
+ from arize._flight.types import FlightRequestType
12
13
  from arize._generated.protocol.flight.ingest_pb2 import (
13
14
  WriteSpanAnnotationResponse,
14
15
  WriteSpanAttributesMetadataResponse,
@@ -22,7 +23,6 @@ from arize.version import __version__
22
23
  if TYPE_CHECKING:
23
24
  import pyarrow as pa
24
25
 
25
- from arize._flight.client import FlightRequestType
26
26
 
27
27
  BytesPair = Tuple[bytes, bytes]
28
28
  Headers = List[BytesPair]
@@ -65,6 +65,7 @@ class ArizeClient(LazySubclientsMixin):
65
65
  "opentelemetry",
66
66
  "pandas",
67
67
  "pyarrow",
68
+ "requests",
68
69
  "tqdm",
69
70
  ),
70
71
  ),
@@ -52,7 +52,6 @@ from arize.types import (
52
52
  is_list_of,
53
53
  )
54
54
  from arize.utils.casting import cast_dictionary, cast_typed_columns
55
- from arize.utils.dataframe import remove_extraneous_columns
56
55
 
57
56
  if TYPE_CHECKING:
58
57
  import concurrent.futures as cf
@@ -75,8 +74,9 @@ _STREAM_EXTRA = "ml-stream"
75
74
 
76
75
  _BATCH_DEPS = (
77
76
  "pandas",
78
- "pyarrow",
79
77
  "google.protobuf",
78
+ "pyarrow",
79
+ "requests",
80
80
  "tqdm",
81
81
  )
82
82
  _BATCH_EXTRA = "ml-batch"
@@ -464,6 +464,7 @@ class MLModelsClient:
464
464
 
465
465
  from arize.models.batch_validation.validator import Validator
466
466
  from arize.utils.arrow import post_arrow_table
467
+ from arize.utils.dataframe import remove_extraneous_columns
467
468
  from arize.utils.proto import get_pb_schema, get_pb_schema_corpus
468
469
 
469
470
  # This method requires a space_id and project_name
@@ -1,13 +1,10 @@
1
- from __future__ import annotations
1
+ from typing import Any, List
2
2
 
3
- from typing import TYPE_CHECKING, Any, List
3
+ import pandas as pd
4
4
 
5
5
  from arize.exceptions.base import InvalidFieldTypeConversion
6
6
  from arize.spans.validation.common.errors import InvalidTypeArgument
7
7
 
8
- if TYPE_CHECKING:
9
- import pandas as pd
10
-
11
8
 
12
9
  def check_field_convertible_to_str(
13
10
  project_name: Any,
@@ -1,12 +1,9 @@
1
- from __future__ import annotations
1
+ from typing import List
2
2
 
3
- from typing import TYPE_CHECKING, List
3
+ import pandas as pd
4
4
 
5
5
  from arize.exceptions.base import ValidationError
6
6
 
7
- if TYPE_CHECKING:
8
- import pandas as pd
9
-
10
7
 
11
8
  class MetadataArgumentError(ValidationError):
12
9
  def __init__(self, message: str, resolution: str) -> None:
@@ -8,11 +8,12 @@ import tempfile
8
8
  from typing import TYPE_CHECKING, Any, Dict
9
9
 
10
10
  import pyarrow as pa
11
- import requests
12
11
 
13
12
  from arize.logging import get_arize_project_url, log_a_list
14
13
 
15
14
  if TYPE_CHECKING:
15
+ import requests
16
+
16
17
  from arize._generated.protocol.rec import public_pb2 as pb2
17
18
 
18
19
  logger = logging.getLogger(__name__)
@@ -27,6 +28,9 @@ def post_arrow_table(
27
28
  verify: bool,
28
29
  tmp_dir: str = "",
29
30
  ) -> requests.Response:
31
+ # We import here to avoid depending onn requests for all arrow utils
32
+ import requests
33
+
30
34
  logger.debug("Preparing to log Arrow table via file upload")
31
35
  logger.debug(
32
36
  "Preparing to log Arrow table via file upload",
@@ -71,15 +75,17 @@ def post_arrow_table(
71
75
  "Uploading file to Arize",
72
76
  extra={"path": outfile, "size_bytes": _filesize(outfile)},
73
77
  )
74
- resp = _post_file(
75
- files_url=files_url,
76
- path=outfile,
77
- headers=headers,
78
- timeout=timeout,
79
- verify=verify,
80
- )
81
- _maybe_log_project_url(resp)
82
- return resp
78
+ # Post file
79
+ with open(outfile, "rb") as f:
80
+ resp = requests.post(
81
+ files_url,
82
+ timeout=timeout,
83
+ data=f,
84
+ headers=headers,
85
+ verify=verify,
86
+ )
87
+ _maybe_log_project_url(resp)
88
+ return resp
83
89
  finally:
84
90
  if tdir is not None:
85
91
  try:
@@ -98,23 +104,6 @@ def post_arrow_table(
98
104
  )
99
105
 
100
106
 
101
- def _post_file(
102
- files_url: str,
103
- path: str,
104
- headers: Dict[str, str],
105
- timeout: float | None,
106
- verify: bool,
107
- ) -> requests.Response:
108
- with open(path, "rb") as f:
109
- return requests.post(
110
- files_url,
111
- timeout=timeout,
112
- data=f,
113
- headers=headers,
114
- verify=verify,
115
- )
116
-
117
-
118
107
  def append_to_pyarrow_metadata(
119
108
  pa_schema: pa.Schema, new_metadata: Dict[str, Any]
120
109
  ):
@@ -0,0 +1 @@
1
+ __version__ = "8.0.0a9"
@@ -1 +0,0 @@
1
- __version__ = "8.0.0a7"
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes