arize 8.0.0a3__tar.gz → 8.0.0a5__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 (116) hide show
  1. {arize-8.0.0a3 → arize-8.0.0a5}/PKG-INFO +179 -14
  2. arize-8.0.0a5/README.md +286 -0
  3. arize-8.0.0a5/src/arize/version.py +1 -0
  4. arize-8.0.0a3/README.md +0 -121
  5. arize-8.0.0a3/src/arize/version.py +0 -1
  6. {arize-8.0.0a3 → arize-8.0.0a5}/.gitignore +0 -0
  7. {arize-8.0.0a3 → arize-8.0.0a5}/LICENSE.md +0 -0
  8. {arize-8.0.0a3 → arize-8.0.0a5}/pyproject.toml +0 -0
  9. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/__init__.py +0 -0
  10. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/_exporter/__init__.py +0 -0
  11. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/_exporter/client.py +0 -0
  12. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/_exporter/parsers/__init__.py +0 -0
  13. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/_exporter/parsers/tracing_data_parser.py +0 -0
  14. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/_exporter/validation.py +0 -0
  15. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/_flight/__init__.py +0 -0
  16. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/_flight/client.py +0 -0
  17. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/_flight/types.py +0 -0
  18. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/_generated/__init__.py +0 -0
  19. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/_generated/api_client/__init__.py +0 -0
  20. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/_generated/api_client/api/__init__.py +0 -0
  21. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/_generated/api_client/api/datasets_api.py +0 -0
  22. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/_generated/api_client/api/experiments_api.py +0 -0
  23. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/_generated/api_client/api_client.py +0 -0
  24. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/_generated/api_client/api_response.py +0 -0
  25. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/_generated/api_client/configuration.py +0 -0
  26. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/_generated/api_client/exceptions.py +0 -0
  27. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/_generated/api_client/models/__init__.py +0 -0
  28. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/_generated/api_client/models/dataset.py +0 -0
  29. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/_generated/api_client/models/dataset_version.py +0 -0
  30. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/_generated/api_client/models/datasets_create201_response.py +0 -0
  31. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/_generated/api_client/models/datasets_create_request.py +0 -0
  32. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/_generated/api_client/models/datasets_list200_response.py +0 -0
  33. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/_generated/api_client/models/datasets_list_examples200_response.py +0 -0
  34. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/_generated/api_client/models/error.py +0 -0
  35. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/_generated/api_client/models/experiment.py +0 -0
  36. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/_generated/api_client/models/experiments_list200_response.py +0 -0
  37. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/_generated/api_client/rest.py +0 -0
  38. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/_generated/api_client/test/__init__.py +0 -0
  39. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/_generated/api_client/test/test_dataset.py +0 -0
  40. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/_generated/api_client/test/test_dataset_version.py +0 -0
  41. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/_generated/api_client/test/test_datasets_api.py +0 -0
  42. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/_generated/api_client/test/test_datasets_create201_response.py +0 -0
  43. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/_generated/api_client/test/test_datasets_create_request.py +0 -0
  44. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/_generated/api_client/test/test_datasets_list200_response.py +0 -0
  45. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/_generated/api_client/test/test_datasets_list_examples200_response.py +0 -0
  46. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/_generated/api_client/test/test_error.py +0 -0
  47. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/_generated/api_client/test/test_experiment.py +0 -0
  48. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/_generated/api_client/test/test_experiments_api.py +0 -0
  49. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/_generated/api_client/test/test_experiments_list200_response.py +0 -0
  50. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/_generated/api_client_README.md +0 -0
  51. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/_generated/protocol/__init__.py +0 -0
  52. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/_generated/protocol/flight/__init__.py +0 -0
  53. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/_generated/protocol/flight/export_pb2.py +0 -0
  54. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/_generated/protocol/flight/ingest_pb2.py +0 -0
  55. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/_generated/protocol/rec/__init__.py +0 -0
  56. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/_generated/protocol/rec/public_pb2.py +0 -0
  57. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/_lazy.py +0 -0
  58. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/client.py +0 -0
  59. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/config.py +0 -0
  60. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/constants/__init__.py +0 -0
  61. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/constants/config.py +0 -0
  62. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/constants/ml.py +0 -0
  63. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/constants/model_mapping.json +0 -0
  64. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/constants/spans.py +0 -0
  65. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/datasets/__init__.py +0 -0
  66. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/datasets/client.py +0 -0
  67. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/exceptions/__init__.py +0 -0
  68. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/exceptions/auth.py +0 -0
  69. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/exceptions/base.py +0 -0
  70. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/exceptions/models.py +0 -0
  71. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/exceptions/parameters.py +0 -0
  72. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/exceptions/spaces.py +0 -0
  73. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/exceptions/types.py +0 -0
  74. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/exceptions/values.py +0 -0
  75. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/experiments/__init__.py +0 -0
  76. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/experiments/client.py +0 -0
  77. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/logging.py +0 -0
  78. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/models/__init__.py +0 -0
  79. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/models/batch_validation/__init__.py +0 -0
  80. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/models/batch_validation/errors.py +0 -0
  81. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/models/batch_validation/validator.py +0 -0
  82. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/models/bounded_executor.py +0 -0
  83. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/models/client.py +0 -0
  84. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/models/stream_validation.py +0 -0
  85. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/spans/__init__.py +0 -0
  86. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/spans/client.py +0 -0
  87. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/spans/columns.py +0 -0
  88. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/spans/conversion.py +0 -0
  89. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/spans/validation/__init__.py +0 -0
  90. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/spans/validation/annotations/__init__.py +0 -0
  91. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/spans/validation/annotations/annotations_validation.py +0 -0
  92. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/spans/validation/annotations/dataframe_form_validation.py +0 -0
  93. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/spans/validation/annotations/value_validation.py +0 -0
  94. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/spans/validation/common/__init__.py +0 -0
  95. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/spans/validation/common/argument_validation.py +0 -0
  96. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/spans/validation/common/dataframe_form_validation.py +0 -0
  97. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/spans/validation/common/errors.py +0 -0
  98. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/spans/validation/common/value_validation.py +0 -0
  99. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/spans/validation/evals/__init__.py +0 -0
  100. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/spans/validation/evals/dataframe_form_validation.py +0 -0
  101. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/spans/validation/evals/evals_validation.py +0 -0
  102. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/spans/validation/evals/value_validation.py +0 -0
  103. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/spans/validation/metadata/__init__.py +0 -0
  104. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/spans/validation/metadata/argument_validation.py +0 -0
  105. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/spans/validation/metadata/dataframe_form_validation.py +0 -0
  106. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/spans/validation/metadata/value_validation.py +0 -0
  107. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/spans/validation/spans/__init__.py +0 -0
  108. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/spans/validation/spans/dataframe_form_validation.py +0 -0
  109. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/spans/validation/spans/spans_validation.py +0 -0
  110. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/spans/validation/spans/value_validation.py +0 -0
  111. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/types.py +0 -0
  112. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/utils/__init__.py +0 -0
  113. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/utils/arrow.py +0 -0
  114. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/utils/casting.py +0 -0
  115. {arize-8.0.0a3 → arize-8.0.0a5}/src/arize/utils/dataframe.py +0 -0
  116. {arize-8.0.0a3 → arize-8.0.0a5}/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.0a3
3
+ Version: 8.0.0a5
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
@@ -65,7 +65,24 @@ Description-Content-Type: text/markdown
65
65
 
66
66
  ---
67
67
 
68
- ## Overview
68
+ # Table of Contents <!-- omit in toc -->
69
+
70
+ - [Overview](#overview)
71
+ - [Key Features](#key-features)
72
+ - [Installation](#installation)
73
+ - [Usage](#usage)
74
+ - [Instrumentation](#instrumentation)
75
+ - [Operations on Spans](#operations-on-spans)
76
+ - [Logging spans](#logging-spans)
77
+ - [Update spans Evaluations, Annotations, and Metadata](#update-spans-evaluations-annotations-and-metadata)
78
+ - [Exporting spans](#exporting-spans)
79
+ - [Operations on ML Models](#operations-on-ml-models)
80
+ - [Stream log ML Data for a Classification use-case](#stream-log-ml-data-for-a-classification-use-case)
81
+ - [Log a batch of ML Data for a Classification use-case](#log-a-batch-of-ml-data-for-a-classification-use-case)
82
+ - [Exporting ML Data](#exporting-ml-data)
83
+ - [Community](#community)
84
+
85
+ # Overview
69
86
 
70
87
  A helper package to interact with Arize AI APIs.
71
88
 
@@ -78,7 +95,7 @@ Arize has both Enterprise and OSS products to support this goal:
78
95
 
79
96
  We log over 1 trillion inferences and spans, 10 million evaluation runs, and 2 million OSS downloads every month.
80
97
 
81
- ## Key Features
98
+ # Key Features
82
99
  - [**_Tracing_**](https://docs.arize.com/arize/observe/tracing) - Trace your LLM application's runtime using OpenTelemetry-based instrumentation.
83
100
  - [**_Evaluation_**](https://docs.arize.com/arize/evaluate/online-evals) - Leverage LLMs to benchmark your application's performance using response and retrieval evals.
84
101
  - [**_Datasets_**](https://docs.arize.com/arize/develop/datasets) - Create versioned datasets of examples for experimentation, evaluation, and fine-tuning.
@@ -86,7 +103,7 @@ We log over 1 trillion inferences and spans, 10 million evaluation runs, and 2 m
86
103
  - [**_Playground_**](https://docs.arize.com/arize/develop/prompt-playground)- Optimize prompts, compare models, adjust parameters, and replay traced LLM calls.
87
104
  - [**_Prompt Management_**](https://docs.arize.com/arize/develop/prompt-hub)- Manage and test prompt changes systematically using version control, tagging, and experimentation.
88
105
 
89
- ## Installation
106
+ # Installation
90
107
 
91
108
  Install Arize (version 8 is currently under alpha release) via `pip` or `conda`:
92
109
 
@@ -99,9 +116,9 @@ where `x` denotes the specific alpha release. Install the `arize-otel` package f
99
116
  pip install arize-otel
100
117
  ```
101
118
 
102
- ## Usage
119
+ # Usage
103
120
 
104
- ### Instrumentation
121
+ ## Instrumentation
105
122
 
106
123
  See [arize-otel in PyPI](https://pypi.org/project/arize-otel/):
107
124
 
@@ -120,13 +137,14 @@ tracer_provider = register(
120
137
  OpenAIInstrumentor().instrument(tracer_provider=tracer_provider)
121
138
  ```
122
139
 
123
-
124
- ### Logging Spans, Evaluations, and Annotations
140
+ ## Operations on Spans
125
141
 
126
142
  Use `arize.spans` to interact with spans: log spans into Arize, update the span's evaluations, annotations and metadata in bulk.
127
143
 
128
144
  > **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.
129
145
 
146
+ ### Logging spans
147
+
130
148
  ```python
131
149
  from arize import ArizeClient
132
150
 
@@ -138,26 +156,173 @@ client.spans.log(
138
156
  space_id=SPACE_ID,
139
157
  project_name=PROJECT_NAME,
140
158
  dataframe=spans_df,
141
- evals_df=evals_df, # Optionally pass the evaluations together with the spans
159
+ # evals_df=evals_df, # Optionally pass the evaluations together with the spans
142
160
  )
161
+ ```
162
+
163
+ ### Update spans Evaluations, Annotations, and Metadata
164
+
165
+ ```python
166
+ from arize import ArizeClient
167
+
168
+ client = ArizeClient(api_key=API_KEY)
169
+ SPACE_ID = "<your-space-id>"
170
+ PROJECT_NAME = "<your-project-name>"
143
171
 
144
172
  client.spans.update_evaluations(
173
+ space_id=SPACE_ID,
174
+ project_name=PROJECT_NAME,
145
175
  dataframe=evals_df,
146
- project_name="your-llm-project",
176
+ # force_http=... # Optionally pass force_http to update evaluations via HTTP instead of gRPC, defaults to False
147
177
  )
148
178
 
149
179
  client.spans.update_annotations(
180
+ space_id=SPACE_ID,
181
+ project_name=PROJECT_NAME,
150
182
  dataframe=annotations_df,
151
- project_name="your-llm-project",
152
183
  )
153
184
 
154
185
  client.spans.update_metadata(
155
- dataframe=annotations_df,
156
- project_name="your-llm-project",
186
+ space_id=SPACE_ID,
187
+ project_name=PROJECT_NAME,
188
+ dataframe=metadata_df,
189
+ )
190
+ ```
191
+
192
+ ### Exporting spans
193
+
194
+ Use the `export_to_df` or `export_to_parquet` to export large amounts of spans from Arize.
195
+
196
+ ```python
197
+ from arize import ArizeClient
198
+ from datetime import datetime
199
+
200
+ FMT = "%Y-%m-%d"
201
+ start_time = datetime.strptime("2024-01-01",FMT)
202
+ end_time = datetime.strptime("2026-01-01",FMT)
203
+
204
+ client = ArizeClient(api_key=API_KEY)
205
+ SPACE_ID = "<your-space-id>"
206
+ PROJECT_NAME = "<your-project-name>"
207
+
208
+ df = client.spans.export_to_df(
209
+ space_id=SPACE_ID,
210
+ project_name=PROJECT_NAME,
211
+ start_time=start_time,
212
+ end_time=end_time,
213
+ )
214
+ ```
215
+
216
+ ## Operations on ML Models
217
+
218
+ Use `arize.models` to interact with ML models: log ML data (traininv, validation, production) into Arize, either streaming or in batches.
219
+
220
+ > **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.
221
+
222
+ ### Stream log ML Data for a Classification use-case
223
+
224
+ ```python
225
+ from arize import ArizeClient
226
+ from arize.types import ModelTypes, Environments
227
+
228
+ client = ArizeClient(api_key=API_KEY)
229
+ SPACE_ID = "<your-space-id>"
230
+ MODEL_NAME = "<your-model-name>"
231
+
232
+ features=...
233
+ embedding_features=...
234
+
235
+ response = client.models.log_stream(
236
+ space_id=SPACE_ID,
237
+ model_name=MODEL_NAME,
238
+ model_type=ModelTypes.SCORE_CATEGORICAL,
239
+ environment=Environments.PRODUCTION,
240
+ prediction_label=("not fraud",0.3),
241
+ actual_label=("fraud",1.0),
242
+ features=features,
243
+ embedding_features=embedding_features,
244
+ )
245
+ ```
246
+
247
+ ### Log a batch of ML Data for a Classification use-case
248
+
249
+ ```python
250
+ from arize import ArizeClient
251
+ from arize.types import ModelTypes, Environments
252
+
253
+ client = ArizeClient(api_key=API_KEY)
254
+ SPACE_ID = "<your-space-id>"
255
+ MODEL_NAME = "<your-model-name>"
256
+ MODEL_VERSION = "1.0"
257
+
258
+ from arize.types import Schema, EmbeddingColumnNames, ObjectDetectionColumnNames, ModelTypes, Environments
259
+
260
+ tags = ["drift_type"]
261
+ embedding_feature_column_names = {
262
+ "image_embedding": EmbeddingColumnNames(
263
+ vector_column_name="image_vector", link_to_data_column_name="url"
264
+ )
265
+ }
266
+ object_detection_prediction_column_names = ObjectDetectionColumnNames(
267
+ bounding_boxes_coordinates_column_name="prediction_bboxes",
268
+ categories_column_name="prediction_categories",
269
+ scores_column_name="prediction_scores",
270
+ )
271
+ object_detection_actual_column_names = ObjectDetectionColumnNames(
272
+ bounding_boxes_coordinates_column_name="actual_bboxes",
273
+ categories_column_name="actual_categories",
274
+ )
275
+
276
+ # Define a Schema() object for Arize to pick up data from the correct columns for logging
277
+ schema = Schema(
278
+ prediction_id_column_name="prediction_id",
279
+ timestamp_column_name="prediction_ts",
280
+ tag_column_names=tags,
281
+ embedding_feature_column_names=embedding_feature_column_names,
282
+ object_detection_prediction_column_names=object_detection_prediction_column_names,
283
+ object_detection_actual_column_names=object_detection_actual_column_names,
284
+ )
285
+
286
+ # Logging Production DataFrame
287
+ response = client.models.log_batch(
288
+ space_id=SPACE_ID,
289
+ model_name=MODEL_NAME,
290
+ model_type=ModelTypes.OBJECT_DETECTION,
291
+ dataframe=prod_df,
292
+ schema=schema,
293
+ environment=Environments.PRODUCTION,
294
+ model_version = MODEL_VERSION, # Optionally pass a model version
295
+ )
296
+ ```
297
+
298
+ ### Exporting ML Data
299
+
300
+ Use the `export_to_df` or `export_to_parquet` to export large amounts of spans from Arize.
301
+
302
+ ```python
303
+ from arize import ArizeClient
304
+ from datetime import datetime
305
+
306
+ FMT = "%Y-%m-%d"
307
+ start_time = datetime.strptime("2024-01-01",FMT)
308
+ end_time = datetime.strptime("2026-01-01",FMT)
309
+
310
+ client = ArizeClient(api_key=API_KEY)
311
+ SPACE_ID = "<your-space-id>"
312
+ MODEL_NAME = "<your-model-name>"
313
+ MODEL_VERSION = "1.0"
314
+
315
+ df = client.models.export_to_df(
316
+ space_id=SPACE_ID,
317
+ model_name=MODEL_NAME,
318
+ environment=Environments.TRAINING,
319
+ model_version=MODEL_VERSION,
320
+ start_time=start_time,
321
+ end_time=end_time,
157
322
  )
158
323
  ```
159
324
 
160
- ## Community
325
+ # Community
161
326
 
162
327
  Join our community to connect with thousands of AI builders.
163
328
 
@@ -0,0 +1,286 @@
1
+ <p align="center">
2
+ <a href="https://arize.com/ax">
3
+ <img src="https://storage.googleapis.com/arize-assets/arize-logo-white.jpg" width="600" />
4
+ </a>
5
+ <br/>
6
+ <a target="_blank" href="https://pypi.org/project/arize/">
7
+ <img src="https://img.shields.io/pypi/v/arize?color=blue">
8
+ </a>
9
+ <a target="_blank" href="https://pypi.org/project/arize/">
10
+ <img src="https://img.shields.io/pypi/pyversions/arize">
11
+ </a>
12
+ <a target="_blank" href="https://arize-ai.slack.com/join/shared_invite/zt-2w57bhem8-hq24MB6u7yE_ZF_ilOYSBw#/shared-invite/email">
13
+ <img src="https://img.shields.io/badge/slack-@arize-blue.svg?logo=slack">
14
+ </a>
15
+ </p>
16
+
17
+ ---
18
+
19
+ # Table of Contents <!-- omit in toc -->
20
+
21
+ - [Overview](#overview)
22
+ - [Key Features](#key-features)
23
+ - [Installation](#installation)
24
+ - [Usage](#usage)
25
+ - [Instrumentation](#instrumentation)
26
+ - [Operations on Spans](#operations-on-spans)
27
+ - [Logging spans](#logging-spans)
28
+ - [Update spans Evaluations, Annotations, and Metadata](#update-spans-evaluations-annotations-and-metadata)
29
+ - [Exporting spans](#exporting-spans)
30
+ - [Operations on ML Models](#operations-on-ml-models)
31
+ - [Stream log ML Data for a Classification use-case](#stream-log-ml-data-for-a-classification-use-case)
32
+ - [Log a batch of ML Data for a Classification use-case](#log-a-batch-of-ml-data-for-a-classification-use-case)
33
+ - [Exporting ML Data](#exporting-ml-data)
34
+ - [Community](#community)
35
+
36
+ # Overview
37
+
38
+ A helper package to interact with Arize AI APIs.
39
+
40
+ Arize is an AI engineering platform. It helps engineers develop, evaluate, and observe AI applications and agents.
41
+
42
+ Arize has both Enterprise and OSS products to support this goal:
43
+ - [Arize AX](https://arize.com/) — an enterprise AI engineering platform from development to production, with an embedded AI Copilot
44
+ - [Phoenix](https://github.com/Arize-ai/phoenix) — a lightweight, open-source project for tracing, prompt engineering, and evaluation
45
+ - [OpenInference](https://github.com/Arize-ai/openinference) — an open-source instrumentation package to trace LLM applications across models and frameworks
46
+
47
+ We log over 1 trillion inferences and spans, 10 million evaluation runs, and 2 million OSS downloads every month.
48
+
49
+ # Key Features
50
+ - [**_Tracing_**](https://docs.arize.com/arize/observe/tracing) - Trace your LLM application's runtime using OpenTelemetry-based instrumentation.
51
+ - [**_Evaluation_**](https://docs.arize.com/arize/evaluate/online-evals) - Leverage LLMs to benchmark your application's performance using response and retrieval evals.
52
+ - [**_Datasets_**](https://docs.arize.com/arize/develop/datasets) - Create versioned datasets of examples for experimentation, evaluation, and fine-tuning.
53
+ - [**_Experiments_**](https://docs.arize.com/arize/develop/datasets-and-experiments) - Track and evaluate changes to prompts, LLMs, and retrieval.
54
+ - [**_Playground_**](https://docs.arize.com/arize/develop/prompt-playground)- Optimize prompts, compare models, adjust parameters, and replay traced LLM calls.
55
+ - [**_Prompt Management_**](https://docs.arize.com/arize/develop/prompt-hub)- Manage and test prompt changes systematically using version control, tagging, and experimentation.
56
+
57
+ # Installation
58
+
59
+ Install Arize (version 8 is currently under alpha release) via `pip` or `conda`:
60
+
61
+ ```bash
62
+ pip install arize==8.0.0ax
63
+ ```
64
+ where `x` denotes the specific alpha release. Install the `arize-otel` package for auto-instrumentation of your LLM library:
65
+
66
+ ```bash
67
+ pip install arize-otel
68
+ ```
69
+
70
+ # Usage
71
+
72
+ ## Instrumentation
73
+
74
+ See [arize-otel in PyPI](https://pypi.org/project/arize-otel/):
75
+
76
+ ```python
77
+ from arize.otel import register
78
+ from openinference.instrumentation.openai import OpenAIInstrumentor
79
+
80
+ # Setup OpenTelemetry via our convenience function
81
+ tracer_provider = register(
82
+ space_id=SPACE_ID,
83
+ api_key=API_KEY,
84
+ project_name="agents-cookbook",
85
+ )
86
+
87
+ # Start instrumentation
88
+ OpenAIInstrumentor().instrument(tracer_provider=tracer_provider)
89
+ ```
90
+
91
+ ## Operations on Spans
92
+
93
+ Use `arize.spans` to interact with spans: log spans into Arize, update the span's evaluations, annotations and metadata in bulk.
94
+
95
+ > **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.
96
+
97
+ ### Logging spans
98
+
99
+ ```python
100
+ from arize import ArizeClient
101
+
102
+ client = ArizeClient(api_key=API_KEY)
103
+ SPACE_ID = "<your-space-id>"
104
+ PROJECT_NAME = "<your-project-name>"
105
+
106
+ client.spans.log(
107
+ space_id=SPACE_ID,
108
+ project_name=PROJECT_NAME,
109
+ dataframe=spans_df,
110
+ # evals_df=evals_df, # Optionally pass the evaluations together with the spans
111
+ )
112
+ ```
113
+
114
+ ### Update spans Evaluations, Annotations, and Metadata
115
+
116
+ ```python
117
+ from arize import ArizeClient
118
+
119
+ client = ArizeClient(api_key=API_KEY)
120
+ SPACE_ID = "<your-space-id>"
121
+ PROJECT_NAME = "<your-project-name>"
122
+
123
+ client.spans.update_evaluations(
124
+ space_id=SPACE_ID,
125
+ project_name=PROJECT_NAME,
126
+ dataframe=evals_df,
127
+ # force_http=... # Optionally pass force_http to update evaluations via HTTP instead of gRPC, defaults to False
128
+ )
129
+
130
+ client.spans.update_annotations(
131
+ space_id=SPACE_ID,
132
+ project_name=PROJECT_NAME,
133
+ dataframe=annotations_df,
134
+ )
135
+
136
+ client.spans.update_metadata(
137
+ space_id=SPACE_ID,
138
+ project_name=PROJECT_NAME,
139
+ dataframe=metadata_df,
140
+ )
141
+ ```
142
+
143
+ ### Exporting spans
144
+
145
+ Use the `export_to_df` or `export_to_parquet` to export large amounts of spans from Arize.
146
+
147
+ ```python
148
+ from arize import ArizeClient
149
+ from datetime import datetime
150
+
151
+ FMT = "%Y-%m-%d"
152
+ start_time = datetime.strptime("2024-01-01",FMT)
153
+ end_time = datetime.strptime("2026-01-01",FMT)
154
+
155
+ client = ArizeClient(api_key=API_KEY)
156
+ SPACE_ID = "<your-space-id>"
157
+ PROJECT_NAME = "<your-project-name>"
158
+
159
+ df = client.spans.export_to_df(
160
+ space_id=SPACE_ID,
161
+ project_name=PROJECT_NAME,
162
+ start_time=start_time,
163
+ end_time=end_time,
164
+ )
165
+ ```
166
+
167
+ ## Operations on ML Models
168
+
169
+ Use `arize.models` to interact with ML models: log ML data (traininv, validation, production) into Arize, either streaming or in batches.
170
+
171
+ > **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.
172
+
173
+ ### Stream log ML Data for a Classification use-case
174
+
175
+ ```python
176
+ from arize import ArizeClient
177
+ from arize.types import ModelTypes, Environments
178
+
179
+ client = ArizeClient(api_key=API_KEY)
180
+ SPACE_ID = "<your-space-id>"
181
+ MODEL_NAME = "<your-model-name>"
182
+
183
+ features=...
184
+ embedding_features=...
185
+
186
+ response = client.models.log_stream(
187
+ space_id=SPACE_ID,
188
+ model_name=MODEL_NAME,
189
+ model_type=ModelTypes.SCORE_CATEGORICAL,
190
+ environment=Environments.PRODUCTION,
191
+ prediction_label=("not fraud",0.3),
192
+ actual_label=("fraud",1.0),
193
+ features=features,
194
+ embedding_features=embedding_features,
195
+ )
196
+ ```
197
+
198
+ ### Log a batch of ML Data for a Classification use-case
199
+
200
+ ```python
201
+ from arize import ArizeClient
202
+ from arize.types import ModelTypes, Environments
203
+
204
+ client = ArizeClient(api_key=API_KEY)
205
+ SPACE_ID = "<your-space-id>"
206
+ MODEL_NAME = "<your-model-name>"
207
+ MODEL_VERSION = "1.0"
208
+
209
+ from arize.types import Schema, EmbeddingColumnNames, ObjectDetectionColumnNames, ModelTypes, Environments
210
+
211
+ tags = ["drift_type"]
212
+ embedding_feature_column_names = {
213
+ "image_embedding": EmbeddingColumnNames(
214
+ vector_column_name="image_vector", link_to_data_column_name="url"
215
+ )
216
+ }
217
+ object_detection_prediction_column_names = ObjectDetectionColumnNames(
218
+ bounding_boxes_coordinates_column_name="prediction_bboxes",
219
+ categories_column_name="prediction_categories",
220
+ scores_column_name="prediction_scores",
221
+ )
222
+ object_detection_actual_column_names = ObjectDetectionColumnNames(
223
+ bounding_boxes_coordinates_column_name="actual_bboxes",
224
+ categories_column_name="actual_categories",
225
+ )
226
+
227
+ # Define a Schema() object for Arize to pick up data from the correct columns for logging
228
+ schema = Schema(
229
+ prediction_id_column_name="prediction_id",
230
+ timestamp_column_name="prediction_ts",
231
+ tag_column_names=tags,
232
+ embedding_feature_column_names=embedding_feature_column_names,
233
+ object_detection_prediction_column_names=object_detection_prediction_column_names,
234
+ object_detection_actual_column_names=object_detection_actual_column_names,
235
+ )
236
+
237
+ # Logging Production DataFrame
238
+ response = client.models.log_batch(
239
+ space_id=SPACE_ID,
240
+ model_name=MODEL_NAME,
241
+ model_type=ModelTypes.OBJECT_DETECTION,
242
+ dataframe=prod_df,
243
+ schema=schema,
244
+ environment=Environments.PRODUCTION,
245
+ model_version = MODEL_VERSION, # Optionally pass a model version
246
+ )
247
+ ```
248
+
249
+ ### Exporting ML Data
250
+
251
+ Use the `export_to_df` or `export_to_parquet` to export large amounts of spans from Arize.
252
+
253
+ ```python
254
+ from arize import ArizeClient
255
+ from datetime import datetime
256
+
257
+ FMT = "%Y-%m-%d"
258
+ start_time = datetime.strptime("2024-01-01",FMT)
259
+ end_time = datetime.strptime("2026-01-01",FMT)
260
+
261
+ client = ArizeClient(api_key=API_KEY)
262
+ SPACE_ID = "<your-space-id>"
263
+ MODEL_NAME = "<your-model-name>"
264
+ MODEL_VERSION = "1.0"
265
+
266
+ df = client.models.export_to_df(
267
+ space_id=SPACE_ID,
268
+ model_name=MODEL_NAME,
269
+ environment=Environments.TRAINING,
270
+ model_version=MODEL_VERSION,
271
+ start_time=start_time,
272
+ end_time=end_time,
273
+ )
274
+ ```
275
+
276
+ # Community
277
+
278
+ Join our community to connect with thousands of AI builders.
279
+
280
+ - 🌍 Join our [Slack community](https://arize-ai.slack.com/join/shared_invite/zt-11t1vbu4x-xkBIHmOREQnYnYDH1GDfCg?__hstc=259489365.a667dfafcfa0169c8aee4178d115dc81.1733501603539.1733501603539.1733501603539.1&__hssc=259489365.1.1733501603539&__hsfp=3822854628&submissionGuid=381a0676-8f38-437b-96f2-fc10875658df#/shared-invite/email).
281
+ - 📚 Read our [documentation](https://docs.arize.com/arize).
282
+ - 💡 Ask questions and provide feedback in the _#arize-support_ channel.
283
+ - 𝕏 Follow us on [𝕏](https://twitter.com/ArizeAI).
284
+ - 🧑‍🏫 Deep dive into everything [Agents](http://arize.com/ai-agents/) and [LLM Evaluations](https://arize.com/llm-evaluation) on Arize's Learning Hubs.
285
+
286
+ Copyright 2025 Arize AI, Inc. All Rights Reserved.
@@ -0,0 +1 @@
1
+ __version__ = "8.0.0a5"
arize-8.0.0a3/README.md DELETED
@@ -1,121 +0,0 @@
1
- <p align="center">
2
- <a href="https://arize.com/ax">
3
- <img src="https://storage.googleapis.com/arize-assets/arize-logo-white.jpg" width="600" />
4
- </a>
5
- <br/>
6
- <a target="_blank" href="https://pypi.org/project/arize/">
7
- <img src="https://img.shields.io/pypi/v/arize?color=blue">
8
- </a>
9
- <a target="_blank" href="https://pypi.org/project/arize/">
10
- <img src="https://img.shields.io/pypi/pyversions/arize">
11
- </a>
12
- <a target="_blank" href="https://arize-ai.slack.com/join/shared_invite/zt-2w57bhem8-hq24MB6u7yE_ZF_ilOYSBw#/shared-invite/email">
13
- <img src="https://img.shields.io/badge/slack-@arize-blue.svg?logo=slack">
14
- </a>
15
- </p>
16
-
17
- ---
18
-
19
- ## Overview
20
-
21
- A helper package to interact with Arize AI APIs.
22
-
23
- Arize is an AI engineering platform. It helps engineers develop, evaluate, and observe AI applications and agents.
24
-
25
- Arize has both Enterprise and OSS products to support this goal:
26
- - [Arize AX](https://arize.com/) — an enterprise AI engineering platform from development to production, with an embedded AI Copilot
27
- - [Phoenix](https://github.com/Arize-ai/phoenix) — a lightweight, open-source project for tracing, prompt engineering, and evaluation
28
- - [OpenInference](https://github.com/Arize-ai/openinference) — an open-source instrumentation package to trace LLM applications across models and frameworks
29
-
30
- We log over 1 trillion inferences and spans, 10 million evaluation runs, and 2 million OSS downloads every month.
31
-
32
- ## Key Features
33
- - [**_Tracing_**](https://docs.arize.com/arize/observe/tracing) - Trace your LLM application's runtime using OpenTelemetry-based instrumentation.
34
- - [**_Evaluation_**](https://docs.arize.com/arize/evaluate/online-evals) - Leverage LLMs to benchmark your application's performance using response and retrieval evals.
35
- - [**_Datasets_**](https://docs.arize.com/arize/develop/datasets) - Create versioned datasets of examples for experimentation, evaluation, and fine-tuning.
36
- - [**_Experiments_**](https://docs.arize.com/arize/develop/datasets-and-experiments) - Track and evaluate changes to prompts, LLMs, and retrieval.
37
- - [**_Playground_**](https://docs.arize.com/arize/develop/prompt-playground)- Optimize prompts, compare models, adjust parameters, and replay traced LLM calls.
38
- - [**_Prompt Management_**](https://docs.arize.com/arize/develop/prompt-hub)- Manage and test prompt changes systematically using version control, tagging, and experimentation.
39
-
40
- ## Installation
41
-
42
- Install Arize (version 8 is currently under alpha release) via `pip` or `conda`:
43
-
44
- ```bash
45
- pip install arize==8.0.0ax
46
- ```
47
- where `x` denotes the specific alpha release. Install the `arize-otel` package for auto-instrumentation of your LLM library:
48
-
49
- ```bash
50
- pip install arize-otel
51
- ```
52
-
53
- ## Usage
54
-
55
- ### Instrumentation
56
-
57
- See [arize-otel in PyPI](https://pypi.org/project/arize-otel/):
58
-
59
- ```python
60
- from arize.otel import register
61
- from openinference.instrumentation.openai import OpenAIInstrumentor
62
-
63
- # Setup OpenTelemetry via our convenience function
64
- tracer_provider = register(
65
- space_id=SPACE_ID,
66
- api_key=API_KEY,
67
- project_name="agents-cookbook",
68
- )
69
-
70
- # Start instrumentation
71
- OpenAIInstrumentor().instrument(tracer_provider=tracer_provider)
72
- ```
73
-
74
-
75
- ### Logging Spans, Evaluations, and Annotations
76
-
77
- Use `arize.spans` to interact with spans: log spans into Arize, update the span's evaluations, annotations and metadata in bulk.
78
-
79
- > **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.
80
-
81
- ```python
82
- from arize import ArizeClient
83
-
84
- client = ArizeClient(api_key=API_KEY)
85
- SPACE_ID = "<your-space-id>"
86
- PROJECT_NAME = "<your-project-name>"
87
-
88
- client.spans.log(
89
- space_id=SPACE_ID,
90
- project_name=PROJECT_NAME,
91
- dataframe=spans_df,
92
- evals_df=evals_df, # Optionally pass the evaluations together with the spans
93
- )
94
-
95
- client.spans.update_evaluations(
96
- dataframe=evals_df,
97
- project_name="your-llm-project",
98
- )
99
-
100
- client.spans.update_annotations(
101
- dataframe=annotations_df,
102
- project_name="your-llm-project",
103
- )
104
-
105
- client.spans.update_metadata(
106
- dataframe=annotations_df,
107
- project_name="your-llm-project",
108
- )
109
- ```
110
-
111
- ## Community
112
-
113
- Join our community to connect with thousands of AI builders.
114
-
115
- - 🌍 Join our [Slack community](https://arize-ai.slack.com/join/shared_invite/zt-11t1vbu4x-xkBIHmOREQnYnYDH1GDfCg?__hstc=259489365.a667dfafcfa0169c8aee4178d115dc81.1733501603539.1733501603539.1733501603539.1&__hssc=259489365.1.1733501603539&__hsfp=3822854628&submissionGuid=381a0676-8f38-437b-96f2-fc10875658df#/shared-invite/email).
116
- - 📚 Read our [documentation](https://docs.arize.com/arize).
117
- - 💡 Ask questions and provide feedback in the _#arize-support_ channel.
118
- - 𝕏 Follow us on [𝕏](https://twitter.com/ArizeAI).
119
- - 🧑‍🏫 Deep dive into everything [Agents](http://arize.com/ai-agents/) and [LLM Evaluations](https://arize.com/llm-evaluation) on Arize's Learning Hubs.
120
-
121
- Copyright 2025 Arize AI, Inc. All Rights Reserved.
@@ -1 +0,0 @@
1
- __version__ = "8.0.0a3"
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes