arize-phoenix 4.11.0__py3-none-any.whl → 4.12.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of arize-phoenix might be problematic. Click here for more details.

@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: arize-phoenix
3
- Version: 4.11.0
3
+ Version: 4.12.0
4
4
  Summary: AI Observability and Evaluation
5
5
  Project-URL: Documentation, https://docs.arize.com/phoenix/
6
6
  Project-URL: Issues, https://github.com/Arize-ai/phoenix/issues
@@ -5,7 +5,7 @@ phoenix/exceptions.py,sha256=n2L2KKuecrdflB9MsCdAYCiSEvGJptIsfRkXMoJle7A,169
5
5
  phoenix/py.typed,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
6
6
  phoenix/services.py,sha256=aTxhcOA1pZHB6U-B3TEcp6fqDF5oT0xCUvEUNMZVTUQ,5175
7
7
  phoenix/settings.py,sha256=cO-qgis_S27nHirTobYI9hHPfZH18R--WMmxNdsVUwc,273
8
- phoenix/version.py,sha256=MQuf3fbMpjUKJ6HrU3RU6E8TZHYxYwKcBl_cp_Aa-OQ,23
8
+ phoenix/version.py,sha256=9_rjNIUWzOiKovqqHwkK6uutw92pT3W8pK64nmjrESc,23
9
9
  phoenix/core/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
10
10
  phoenix/core/embedding_dimension.py,sha256=zKGbcvwOXgLf-yrJBpQyKtd-LEOPRKHnUToyAU8Owis,87
11
11
  phoenix/core/model.py,sha256=km_a--PBHOuA337ClRw9xqhOHhrUT6Rl9pz_zV0JYkQ,4843
@@ -218,10 +218,10 @@ phoenix/server/static/modernizr.js,sha256=mvK-XtkNqjOral-QvzoqsyOMECXIMu5BQwSVN_
218
218
  phoenix/server/templates/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
219
219
  phoenix/server/templates/index.html,sha256=S4z7qSoNSwnKFAH9r96AR-YJEyoKMd-VMWVlJ_IdzME,2039
220
220
  phoenix/session/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
221
- phoenix/session/client.py,sha256=8dWs_-boxhrqJ-MQMkhXYYL_1YBDccz83nwirJdtBp0,32400
222
- phoenix/session/data_extractor.py,sha256=dwhiDu-ISaXr8UI9I-CszZhB5BlUNmdDopjFZvMIXMw,2101
221
+ phoenix/session/client.py,sha256=aq5AhgyoI-rJU5eTNFAk8SzdBl6hiZvj7fWrC09s4aI,32523
222
+ phoenix/session/data_extractor.py,sha256=gkEM3WWZAlWGMfRgQopAQlid4cSi6GNco-sdrGir0qc,2788
223
223
  phoenix/session/evaluation.py,sha256=aKeV8UVOyq3b7CYOwt3cWuLz0xzvMjX7vlEPILJ_fcs,5311
224
- phoenix/session/session.py,sha256=rjIuSSK2gAYIUPQTJc4E2ebew5o6I070FWRoFn4W3EI,26620
224
+ phoenix/session/session.py,sha256=1ZGR0pBmah8bqX353MDf4sq7XuK904EfxNLo0B9z_sU,26714
225
225
  phoenix/trace/__init__.py,sha256=ujk_uYjM8gmm-YqnyXxF-kekfwid0bcaPMTtNNcaw6U,407
226
226
  phoenix/trace/attributes.py,sha256=B_OrzVaxZwFkrAFXZyicYoIti1UdUysURsvUS2GyW1U,12488
227
227
  phoenix/trace/errors.py,sha256=wB1z8qdPckngdfU-TORToekvg3344oNFAA83_hC2yFY,180
@@ -258,8 +258,8 @@ phoenix/utilities/logging.py,sha256=lDXd6EGaamBNcQxL4vP1au9-i_SXe0OraUDiJOcszSw,
258
258
  phoenix/utilities/project.py,sha256=qWsvKnG1oKhOFUowXf9qiOL2ia7jaFe_ijFFHEt8GJo,431
259
259
  phoenix/utilities/re.py,sha256=PDve_OLjRTM8yQQJHC8-n3HdIONi7aNils3ZKRZ5uBM,2045
260
260
  phoenix/utilities/span_store.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
261
- arize_phoenix-4.11.0.dist-info/METADATA,sha256=0w3dc8vJIjxmwxzRI21vi5STtp5Gioffqy6k3EaqHAg,11452
262
- arize_phoenix-4.11.0.dist-info/WHEEL,sha256=1yFddiXMmvYK7QYTqtRNtX66WJ0Mz8PYEiEUoOUUxRY,87
263
- arize_phoenix-4.11.0.dist-info/licenses/IP_NOTICE,sha256=JBqyyCYYxGDfzQ0TtsQgjts41IJoa-hiwDrBjCb9gHM,469
264
- arize_phoenix-4.11.0.dist-info/licenses/LICENSE,sha256=HFkW9REuMOkvKRACuwLPT0hRydHb3zNg-fdFt94td18,3794
265
- arize_phoenix-4.11.0.dist-info/RECORD,,
261
+ arize_phoenix-4.12.0.dist-info/METADATA,sha256=yRWT2d7_4-k9Rjp9J6zxChgtOf23SKqEYTblCmR_Bf4,11452
262
+ arize_phoenix-4.12.0.dist-info/WHEEL,sha256=1yFddiXMmvYK7QYTqtRNtX66WJ0Mz8PYEiEUoOUUxRY,87
263
+ arize_phoenix-4.12.0.dist-info/licenses/IP_NOTICE,sha256=JBqyyCYYxGDfzQ0TtsQgjts41IJoa-hiwDrBjCb9gHM,469
264
+ arize_phoenix-4.12.0.dist-info/licenses/LICENSE,sha256=HFkW9REuMOkvKRACuwLPT0hRydHb3zNg-fdFt94td18,3794
265
+ arize_phoenix-4.12.0.dist-info/RECORD,,
phoenix/session/client.py CHANGED
@@ -51,6 +51,9 @@ from phoenix.trace.otel import encode_span_to_otlp
51
51
 
52
52
  logger = logging.getLogger(__name__)
53
53
 
54
+
55
+ DEFAULT_TIMEOUT_IN_SECONDS = 5
56
+
54
57
  DatasetAction: TypeAlias = Literal["create", "append"]
55
58
 
56
59
 
@@ -120,6 +123,7 @@ class Client(TraceDataExtractor):
120
123
  project_name: Optional[str] = None,
121
124
  # Deprecated
122
125
  stop_time: Optional[datetime] = None,
126
+ timeout: Optional[int] = DEFAULT_TIMEOUT_IN_SECONDS,
123
127
  ) -> Optional[Union[pd.DataFrame, List[pd.DataFrame]]]:
124
128
  """
125
129
  Queries spans from the Phoenix server or active session based on specified criteria.
@@ -159,6 +163,7 @@ class Client(TraceDataExtractor):
159
163
  "limit": limit,
160
164
  "root_spans_only": root_spans_only,
161
165
  },
166
+ timeout=timeout,
162
167
  )
163
168
  if response.status_code == 404:
164
169
  logger.info("No spans found.")
@@ -9,6 +9,7 @@ from phoenix.trace.dsl import SpanQuery
9
9
  from phoenix.trace.trace_dataset import TraceDataset
10
10
 
11
11
  DEFAULT_SPAN_LIMIT = 1000
12
+ DEFAULT_TIMEOUT_IN_SECONDS = 5
12
13
 
13
14
 
14
15
  class TraceDataExtractor(ABC):
@@ -26,6 +27,7 @@ class TraceDataExtractor(ABC):
26
27
  limit: Optional[int] = DEFAULT_SPAN_LIMIT,
27
28
  root_spans_only: Optional[bool] = None,
28
29
  project_name: Optional[str] = None,
30
+ timeout: Optional[int] = DEFAULT_TIMEOUT_IN_SECONDS,
29
31
  ) -> Optional[Union[pd.DataFrame, List[pd.DataFrame]]]: ...
30
32
 
31
33
  def get_spans_dataframe(
@@ -37,6 +39,7 @@ class TraceDataExtractor(ABC):
37
39
  limit: Optional[int] = DEFAULT_SPAN_LIMIT,
38
40
  root_spans_only: Optional[bool] = None,
39
41
  project_name: Optional[str] = None,
42
+ timeout: Optional[int] = DEFAULT_TIMEOUT_IN_SECONDS,
40
43
  ) -> Optional[pd.DataFrame]:
41
44
  return cast(
42
45
  Optional[pd.DataFrame],
@@ -47,6 +50,7 @@ class TraceDataExtractor(ABC):
47
50
  limit=limit,
48
51
  root_spans_only=root_spans_only,
49
52
  project_name=project_name,
53
+ timeout=timeout,
50
54
  ),
51
55
  )
52
56
 
@@ -59,8 +63,23 @@ class TraceDataExtractor(ABC):
59
63
  def get_trace_dataset(
60
64
  self,
61
65
  project_name: Optional[str] = None,
66
+ *,
67
+ start_time: Optional[datetime] = None,
68
+ end_time: Optional[datetime] = None,
69
+ limit: Optional[int] = DEFAULT_SPAN_LIMIT,
70
+ root_spans_only: Optional[bool] = None,
71
+ timeout: Optional[int] = DEFAULT_TIMEOUT_IN_SECONDS,
62
72
  ) -> Optional[TraceDataset]:
63
- if (dataframe := self.get_spans_dataframe(project_name=project_name)) is None:
73
+ if (
74
+ dataframe := self.get_spans_dataframe(
75
+ project_name=project_name,
76
+ start_time=start_time,
77
+ end_time=end_time,
78
+ limit=limit,
79
+ root_spans_only=root_spans_only,
80
+ timeout=timeout,
81
+ )
82
+ ) is None:
64
83
  return None
65
84
  evaluations = self.get_evaluations(project_name=project_name)
66
85
  return TraceDataset(dataframe=dataframe, evaluations=evaluations)
@@ -75,6 +75,9 @@ global _session_working_dir
75
75
  _session_working_dir: Optional["TemporaryDirectory[str]"] = None
76
76
 
77
77
 
78
+ DEFAULT_TIMEOUT_IN_SECONDS = 5
79
+
80
+
78
81
  class NotebookEnvironment(Enum):
79
82
  COLAB = "colab"
80
83
  LOCAL = "local"
@@ -152,6 +155,7 @@ class Session(TraceDataExtractor, ABC):
152
155
  project_name: Optional[str] = None,
153
156
  # Deprecated fields
154
157
  stop_time: Optional[datetime] = None,
158
+ timeout: Optional[int] = DEFAULT_TIMEOUT_IN_SECONDS,
155
159
  ) -> Optional[Union[pd.DataFrame, List[pd.DataFrame]]]:
156
160
  """
157
161
  Queries the spans in the project based on the provided parameters.
phoenix/version.py CHANGED
@@ -1 +1 @@
1
- __version__ = "4.11.0"
1
+ __version__ = "4.12.0"