arize-phoenix 8.10.0__py3-none-any.whl → 8.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.
- {arize_phoenix-8.10.0.dist-info → arize_phoenix-8.12.0.dist-info}/METADATA +3 -3
- {arize_phoenix-8.10.0.dist-info → arize_phoenix-8.12.0.dist-info}/RECORD +20 -20
- phoenix/db/models.py +7 -0
- phoenix/server/api/helpers/playground_clients.py +0 -7
- phoenix/server/api/helpers/prompts/conversions/anthropic.py +8 -0
- phoenix/server/api/routers/v1/experiments.py +47 -21
- phoenix/server/static/.vite/manifest.json +40 -40
- phoenix/server/static/assets/{components-CVzKofML.js → components-CbkVj1OQ.js} +367 -208
- phoenix/server/static/assets/{index-Ctff7oin.js → index-BNK6eNx3.js} +71 -32
- phoenix/server/static/assets/{pages-CVFLHgre.js → pages-CyqzCvBY.js} +351 -348
- phoenix/server/static/assets/vendor-Byx9ZW8r.js +894 -0
- phoenix/server/static/assets/{vendor-arizeai-BiZagY4a.js → vendor-arizeai-0BoxbU9V.js} +26 -26
- phoenix/server/static/assets/{vendor-codemirror-0mUqu36F.js → vendor-codemirror-BX78TDyo.js} +12 -12
- phoenix/server/static/assets/{vendor-recharts-CfKQSOmq.js → vendor-recharts-BLborQJX.js} +1 -1
- phoenix/server/static/assets/{vendor-shiki-BsgMOuir.js → vendor-shiki-DpPpUgzv.js} +1 -1
- phoenix/version.py +1 -1
- phoenix/server/static/assets/vendor-VJCVsFqd.js +0 -894
- {arize_phoenix-8.10.0.dist-info → arize_phoenix-8.12.0.dist-info}/WHEEL +0 -0
- {arize_phoenix-8.10.0.dist-info → arize_phoenix-8.12.0.dist-info}/entry_points.txt +0 -0
- {arize_phoenix-8.10.0.dist-info → arize_phoenix-8.12.0.dist-info}/licenses/IP_NOTICE +0 -0
- {arize_phoenix-8.10.0.dist-info → arize_phoenix-8.12.0.dist-info}/licenses/LICENSE +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: arize-phoenix
|
|
3
|
-
Version: 8.
|
|
3
|
+
Version: 8.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
|
|
@@ -55,7 +55,7 @@ Requires-Dist: uvicorn
|
|
|
55
55
|
Requires-Dist: websockets
|
|
56
56
|
Requires-Dist: wrapt>=1.17.2
|
|
57
57
|
Provides-Extra: container
|
|
58
|
-
Requires-Dist: anthropic>=0.
|
|
58
|
+
Requires-Dist: anthropic>=0.49.0; extra == 'container'
|
|
59
59
|
Requires-Dist: fast-hdbscan>=0.2.0; extra == 'container'
|
|
60
60
|
Requires-Dist: google-generativeai; extra == 'container'
|
|
61
61
|
Requires-Dist: numba>=0.60.0; extra == 'container'
|
|
@@ -73,7 +73,7 @@ Requires-Dist: strawberry-graphql[opentelemetry]==0.262.0; extra == 'container'
|
|
|
73
73
|
Requires-Dist: umap-learn; extra == 'container'
|
|
74
74
|
Requires-Dist: uvloop; (platform_system != 'Windows') and extra == 'container'
|
|
75
75
|
Provides-Extra: dev
|
|
76
|
-
Requires-Dist: anthropic>=0.
|
|
76
|
+
Requires-Dist: anthropic>=0.49.0; extra == 'dev'
|
|
77
77
|
Requires-Dist: arize[autoembeddings,llm-evaluation]; extra == 'dev'
|
|
78
78
|
Requires-Dist: asgi-lifespan; extra == 'dev'
|
|
79
79
|
Requires-Dist: asyncpg; extra == 'dev'
|
|
@@ -6,7 +6,7 @@ phoenix/exceptions.py,sha256=n2L2KKuecrdflB9MsCdAYCiSEvGJptIsfRkXMoJle7A,169
|
|
|
6
6
|
phoenix/py.typed,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
|
|
7
7
|
phoenix/services.py,sha256=kpW1WL0kiB8XJsO6XycvZVJ-lBkNoenhQ7atCvBoSe8,5365
|
|
8
8
|
phoenix/settings.py,sha256=ht-0oN-sMV6SPXrk7Tu1EZlngpAYkGNLYPhO8DyrdQI,661
|
|
9
|
-
phoenix/version.py,sha256=
|
|
9
|
+
phoenix/version.py,sha256=hURJbBJpRlARLVE-_bmA1Vwr56PpPmoJTwIlaM1pNE4,23
|
|
10
10
|
phoenix/core/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
11
11
|
phoenix/core/embedding_dimension.py,sha256=zKGbcvwOXgLf-yrJBpQyKtd-LEOPRKHnUToyAU8Owis,87
|
|
12
12
|
phoenix/core/model.py,sha256=qBFraOtmwCCnWJltKNP18DDG0mULXigytlFsa6YOz6k,4837
|
|
@@ -21,7 +21,7 @@ phoenix/db/enums.py,sha256=tt7iovXLhVTLZ3_LbHNGgcI44SnNjXfkKtLAZG57T54,428
|
|
|
21
21
|
phoenix/db/facilitator.py,sha256=sAYqzBXYSVBKPTQVYrd7ZmtqMAr1zP9dVJwjfNGW7hc,4207
|
|
22
22
|
phoenix/db/helpers.py,sha256=daKbpY2QhTPo9a_T1xNHKI4WzWHkMmmrGIws7Hw-RZ4,4884
|
|
23
23
|
phoenix/db/migrate.py,sha256=oUrXH8yEbcpL4eh09aSCuUiSrhFli0eT5D_j4ZmYChY,2797
|
|
24
|
-
phoenix/db/models.py,sha256=
|
|
24
|
+
phoenix/db/models.py,sha256=kTXUlNzWyMxSNZxbTnnfdAfJcDLj8j6Nny2Q6DbqfSQ,45723
|
|
25
25
|
phoenix/db/insertion/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
26
26
|
phoenix/db/insertion/constants.py,sha256=8wifm7X-1XvroZ__R2Gc96NsgLhTDn0zXl4lehlXtcA,70
|
|
27
27
|
phoenix/db/insertion/dataset.py,sha256=I9OC1ouVx7m6BH_c8hvcxW1dWGRAtpvXee29yBTuFkg,7136
|
|
@@ -144,13 +144,13 @@ phoenix/server/api/dataloaders/cache/two_tier_cache.py,sha256=cmo8FUT3E91R139IEz
|
|
|
144
144
|
phoenix/server/api/helpers/__init__.py,sha256=m2-xaSPqUiSs91k62JaRDjFNfl-1byxBfY-m_Vxw16U,272
|
|
145
145
|
phoenix/server/api/helpers/dataset_helpers.py,sha256=DoMBTg-qXTnC_K4Evx1WKpCCYgRbITpVqyY-8efJRf0,8984
|
|
146
146
|
phoenix/server/api/helpers/experiment_run_filters.py,sha256=DOnVwrmn39eAkk2mwuZP8kIcAnR5jrOgllEwWSjsw94,29893
|
|
147
|
-
phoenix/server/api/helpers/playground_clients.py,sha256=
|
|
147
|
+
phoenix/server/api/helpers/playground_clients.py,sha256=sHwz4Y-OynNmMWs1D2qfUPW15OsLyDYGwGMTrIK7s1c,40800
|
|
148
148
|
phoenix/server/api/helpers/playground_registry.py,sha256=CPLMziFB2wmr-dfbx7VbzO2f8YIG_k5RftzvGXYGQ1w,2570
|
|
149
149
|
phoenix/server/api/helpers/playground_spans.py,sha256=PjGNDc7cpqn5lmRM6TO_J1eVRGlgsNdQ8IT--5JVz0o,16881
|
|
150
150
|
phoenix/server/api/helpers/prompts/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
151
151
|
phoenix/server/api/helpers/prompts/models.py,sha256=zwWBA5GQvEHT4xyZwP-_kr1rJZ7SHnguATsQwsFw5aw,19519
|
|
152
152
|
phoenix/server/api/helpers/prompts/conversions/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
153
|
-
phoenix/server/api/helpers/prompts/conversions/anthropic.py,sha256=
|
|
153
|
+
phoenix/server/api/helpers/prompts/conversions/anthropic.py,sha256=ZT--UqBwoGf7QMusajB6aeB7zyWGttaZigb113kgiY8,3571
|
|
154
154
|
phoenix/server/api/helpers/prompts/conversions/openai.py,sha256=a43WAftFn_me6ePHDufqvlg-4Z2C31owUSsqYC0YUP8,2589
|
|
155
155
|
phoenix/server/api/input_types/AddExamplesToDatasetInput.py,sha256=mIQz0S_z8YdrktKIY6RCvtNJ2yZF9pYvTGgasUsI-54,430
|
|
156
156
|
phoenix/server/api/input_types/AddSpansToDatasetInput.py,sha256=-StSstyMAVrba3tG1U30b-srkKCtu_svflQuSM19iJA,362
|
|
@@ -215,7 +215,7 @@ phoenix/server/api/routers/v1/datasets.py,sha256=gHlF4x0EmWiJ-8vwJygoh0bO3gvDBmi
|
|
|
215
215
|
phoenix/server/api/routers/v1/evaluations.py,sha256=RpOkTylp5Da6BvPZGuN8ksnxz_BVXRIwyOvwX9Iko8U,12647
|
|
216
216
|
phoenix/server/api/routers/v1/experiment_evaluations.py,sha256=vx4CKlE84sAL1vtPiM_XWnbfrATQujOSzzduJDYgcyM,4829
|
|
217
217
|
phoenix/server/api/routers/v1/experiment_runs.py,sha256=bInuasRv7ogiYf8fq-LwpJ5tptmMQsBNDlJAqwdymko,6378
|
|
218
|
-
phoenix/server/api/routers/v1/experiments.py,sha256=
|
|
218
|
+
phoenix/server/api/routers/v1/experiments.py,sha256=UZiEf7OnxL3juO119sbE0gV9ScK5XKTfgjl4rj72ESY,16909
|
|
219
219
|
phoenix/server/api/routers/v1/models.py,sha256=r0nM2kFJ3mxDqgc5vFr1cjNuyOPs3RIKE_DS2VMdF48,1749
|
|
220
220
|
phoenix/server/api/routers/v1/prompts.py,sha256=ytK8HnOZNxUMDtC7XAFxzaTSM9DMMua13vWsqqd4PAw,14986
|
|
221
221
|
phoenix/server/api/routers/v1/spans.py,sha256=uoU_bwIgz86fuvPjP5sX8goDyuCcnsTig-x3f17p60U,9625
|
|
@@ -314,16 +314,16 @@ phoenix/server/static/apple-touch-icon-76x76.png,sha256=CT_xT12I0u2i0WU8JzBZBuOQ
|
|
|
314
314
|
phoenix/server/static/apple-touch-icon.png,sha256=fOfpjqGpWYbJ0eAurKsyoZP1EAs6ZVooBJ_SGk2ZkDs,3801
|
|
315
315
|
phoenix/server/static/favicon.ico,sha256=bY0vvCKRftemZfPShwZtE93DiiQdaYaozkPGwNFr6H8,34494
|
|
316
316
|
phoenix/server/static/modernizr.js,sha256=mvK-XtkNqjOral-QvzoqsyOMECXIMu5BQwSVN_wcU9c,2564
|
|
317
|
-
phoenix/server/static/.vite/manifest.json,sha256=
|
|
318
|
-
phoenix/server/static/assets/components-
|
|
319
|
-
phoenix/server/static/assets/index-
|
|
320
|
-
phoenix/server/static/assets/pages-
|
|
317
|
+
phoenix/server/static/.vite/manifest.json,sha256=Bf5J32vA6mK0TQjtx_F6dK7GeibGq2gQTQDhNSfEJHE,2165
|
|
318
|
+
phoenix/server/static/assets/components-CbkVj1OQ.js,sha256=gW4kLgfLvzuO0KPA-gbisHNqImkZtXEhFg5q2njd-Ek,430635
|
|
319
|
+
phoenix/server/static/assets/index-BNK6eNx3.js,sha256=hWGabY3aNGqt12pOp_v-JEswgRpLB5O2QmDsFXOeKGE,59739
|
|
320
|
+
phoenix/server/static/assets/pages-CyqzCvBY.js,sha256=3ZVi4bXfGDDEj10g3ax0Q4MS7KmgopWL8d5epxZ1FWM,841781
|
|
321
|
+
phoenix/server/static/assets/vendor-Byx9ZW8r.js,sha256=l6S82ZzhNfzfjoYYM9ZrwUCc0TBKvJdWZVF0oBj8wkA,2281565
|
|
321
322
|
phoenix/server/static/assets/vendor-Cg6lcjUC.css,sha256=nZrkr0u6NNElFGvpWHk9GTHeGoibCXCli1bE7mXZGZg,1816
|
|
322
|
-
phoenix/server/static/assets/vendor-
|
|
323
|
-
phoenix/server/static/assets/vendor-
|
|
324
|
-
phoenix/server/static/assets/vendor-
|
|
325
|
-
phoenix/server/static/assets/vendor-
|
|
326
|
-
phoenix/server/static/assets/vendor-shiki-BsgMOuir.js,sha256=cFiYo70OgEzfurmjGOmzkxAWdlOcSEfZBSY6RFqA0mk,8980312
|
|
323
|
+
phoenix/server/static/assets/vendor-arizeai-0BoxbU9V.js,sha256=innWhffEldVIqKcGGH7XAMlE7vvJTGbPzrZxNYvu9fU,200901
|
|
324
|
+
phoenix/server/static/assets/vendor-codemirror-BX78TDyo.js,sha256=Isk5hEoLzUYzDxDPQgGjRzTZOsE91GuJSzVA_zhMpU4,390090
|
|
325
|
+
phoenix/server/static/assets/vendor-recharts-BLborQJX.js,sha256=-s5VSfS1H08wvgAcjvGyoQQz3EG3WQcKOO2X3TwFYPM,282095
|
|
326
|
+
phoenix/server/static/assets/vendor-shiki-DpPpUgzv.js,sha256=_KvBjUsXiXQ-Piup8bgG17MfigFVwN6FPcE2CWxen00,8980312
|
|
327
327
|
phoenix/server/static/assets/vendor-three-C-AGeJYv.js,sha256=c9nLPH5YDRFCzTNuwWO8_5KqcnunPo53mQsb7y9JFW8,620972
|
|
328
328
|
phoenix/server/templates/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
329
329
|
phoenix/server/templates/index.html,sha256=e8_jdi7Eo19SK7DI_gglkTW094D17E0VAegoMmmmvIc,4330
|
|
@@ -364,9 +364,9 @@ phoenix/utilities/project.py,sha256=auVpARXkDb-JgeX5f2aStyFIkeKvGwN9l7qrFeJMVxI,
|
|
|
364
364
|
phoenix/utilities/re.py,sha256=6YyUWIkv0zc2SigsxfOWIHzdpjKA_TZo2iqKq7zJKvw,2081
|
|
365
365
|
phoenix/utilities/span_store.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
366
366
|
phoenix/utilities/template_formatters.py,sha256=gh9PJD6WEGw7TEYXfSst1UR4pWWwmjxMLrDVQ_CkpkQ,2779
|
|
367
|
-
arize_phoenix-8.
|
|
368
|
-
arize_phoenix-8.
|
|
369
|
-
arize_phoenix-8.
|
|
370
|
-
arize_phoenix-8.
|
|
371
|
-
arize_phoenix-8.
|
|
372
|
-
arize_phoenix-8.
|
|
367
|
+
arize_phoenix-8.12.0.dist-info/METADATA,sha256=qM9RkF7DlQKdlLKsF0efcPwOHrhebyRuSLDmqcWBhCI,23739
|
|
368
|
+
arize_phoenix-8.12.0.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
|
369
|
+
arize_phoenix-8.12.0.dist-info/entry_points.txt,sha256=Pgpn8Upxx9P8z8joPXZWl2LlnAlGc3gcQoVchb06X1Q,94
|
|
370
|
+
arize_phoenix-8.12.0.dist-info/licenses/IP_NOTICE,sha256=JBqyyCYYxGDfzQ0TtsQgjts41IJoa-hiwDrBjCb9gHM,469
|
|
371
|
+
arize_phoenix-8.12.0.dist-info/licenses/LICENSE,sha256=HFkW9REuMOkvKRACuwLPT0hRydHb3zNg-fdFt94td18,3794
|
|
372
|
+
arize_phoenix-8.12.0.dist-info/RECORD,,
|
phoenix/db/models.py
CHANGED
|
@@ -970,6 +970,9 @@ class ExperimentRun(Base):
|
|
|
970
970
|
primaryjoin="foreign(ExperimentRun.trace_id) == Trace.trace_id",
|
|
971
971
|
back_populates="experiment_runs",
|
|
972
972
|
)
|
|
973
|
+
annotations: Mapped[list["ExperimentRunAnnotation"]] = relationship(
|
|
974
|
+
back_populates="experiment_run"
|
|
975
|
+
)
|
|
973
976
|
|
|
974
977
|
__table_args__ = (
|
|
975
978
|
UniqueConstraint(
|
|
@@ -999,6 +1002,10 @@ class ExperimentRunAnnotation(Base):
|
|
|
999
1002
|
start_time: Mapped[datetime] = mapped_column(UtcTimeStamp)
|
|
1000
1003
|
end_time: Mapped[datetime] = mapped_column(UtcTimeStamp)
|
|
1001
1004
|
|
|
1005
|
+
experiment_run: Mapped["ExperimentRun"] = relationship(
|
|
1006
|
+
back_populates="annotations",
|
|
1007
|
+
)
|
|
1008
|
+
|
|
1002
1009
|
__table_args__ = (
|
|
1003
1010
|
UniqueConstraint(
|
|
1004
1011
|
"experiment_run_id",
|
|
@@ -761,13 +761,6 @@ class AnthropicStreamingClient(PlaygroundStreamingClient):
|
|
|
761
761
|
import anthropic.types as anthropic_types
|
|
762
762
|
|
|
763
763
|
anthropic_messages, system_prompt = self._build_anthropic_messages(messages)
|
|
764
|
-
if (
|
|
765
|
-
"thinking" in invocation_parameters
|
|
766
|
-
and isinstance(invocation_parameters, dict)
|
|
767
|
-
and "type" in invocation_parameters["thinking"]
|
|
768
|
-
and invocation_parameters["thinking"]["type"] == "enabled"
|
|
769
|
-
):
|
|
770
|
-
invocation_parameters.pop("top_p", None)
|
|
771
764
|
anthropic_params = {
|
|
772
765
|
"messages": anthropic_messages,
|
|
773
766
|
"model": self.model_name,
|
|
@@ -13,6 +13,7 @@ if TYPE_CHECKING:
|
|
|
13
13
|
)
|
|
14
14
|
|
|
15
15
|
from phoenix.server.api.helpers.prompts.models import (
|
|
16
|
+
PromptToolChoiceNone,
|
|
16
17
|
PromptToolChoiceOneOrMore,
|
|
17
18
|
PromptToolChoiceSpecificFunctionTool,
|
|
18
19
|
PromptToolChoiceZeroOrMore,
|
|
@@ -23,6 +24,7 @@ class AnthropicToolChoiceConversion:
|
|
|
23
24
|
@staticmethod
|
|
24
25
|
def to_anthropic(
|
|
25
26
|
obj: Union[
|
|
27
|
+
PromptToolChoiceNone,
|
|
26
28
|
PromptToolChoiceZeroOrMore,
|
|
27
29
|
PromptToolChoiceOneOrMore,
|
|
28
30
|
PromptToolChoiceSpecificFunctionTool,
|
|
@@ -44,6 +46,8 @@ class AnthropicToolChoiceConversion:
|
|
|
44
46
|
if disable_parallel_tool_use is not None:
|
|
45
47
|
choice_tool["disable_parallel_tool_use"] = disable_parallel_tool_use
|
|
46
48
|
return choice_tool
|
|
49
|
+
if obj.type == "none":
|
|
50
|
+
return {"type": "none"}
|
|
47
51
|
assert_never(obj.type)
|
|
48
52
|
|
|
49
53
|
@staticmethod
|
|
@@ -51,6 +55,7 @@ class AnthropicToolChoiceConversion:
|
|
|
51
55
|
obj: ToolChoiceParam,
|
|
52
56
|
) -> tuple[
|
|
53
57
|
Union[
|
|
58
|
+
PromptToolChoiceNone,
|
|
54
59
|
PromptToolChoiceZeroOrMore,
|
|
55
60
|
PromptToolChoiceOneOrMore,
|
|
56
61
|
PromptToolChoiceSpecificFunctionTool,
|
|
@@ -58,6 +63,7 @@ class AnthropicToolChoiceConversion:
|
|
|
58
63
|
Optional[bool],
|
|
59
64
|
]:
|
|
60
65
|
from phoenix.server.api.helpers.prompts.models import (
|
|
66
|
+
PromptToolChoiceNone,
|
|
61
67
|
PromptToolChoiceOneOrMore,
|
|
62
68
|
PromptToolChoiceSpecificFunctionTool,
|
|
63
69
|
PromptToolChoiceZeroOrMore,
|
|
@@ -84,4 +90,6 @@ class AnthropicToolChoiceConversion:
|
|
|
84
90
|
function_name=obj["name"],
|
|
85
91
|
)
|
|
86
92
|
return choice_function_tool, disable_parallel_tool_use
|
|
93
|
+
if obj["type"] == "none":
|
|
94
|
+
return PromptToolChoiceNone(type="none"), None
|
|
87
95
|
assert_never(obj)
|
|
@@ -6,6 +6,7 @@ from typing import Any, Optional
|
|
|
6
6
|
from fastapi import APIRouter, HTTPException, Path, Response
|
|
7
7
|
from pydantic import Field
|
|
8
8
|
from sqlalchemy import and_, func, select
|
|
9
|
+
from sqlalchemy.orm import joinedload
|
|
9
10
|
from starlette.requests import Request
|
|
10
11
|
from starlette.responses import PlainTextResponse
|
|
11
12
|
from starlette.status import HTTP_404_NOT_FOUND
|
|
@@ -321,7 +322,7 @@ async def list_experiments(
|
|
|
321
322
|
]
|
|
322
323
|
),
|
|
323
324
|
)
|
|
324
|
-
async def
|
|
325
|
+
async def get_experiment_json(
|
|
325
326
|
request: Request,
|
|
326
327
|
response: Response,
|
|
327
328
|
experiment_id: str = Path(..., title="Experiment ID"),
|
|
@@ -359,27 +360,35 @@ async def get_experiment_jsonl(
|
|
|
359
360
|
.scalar_subquery()
|
|
360
361
|
)
|
|
361
362
|
runs_and_revisions = (
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
363
|
+
(
|
|
364
|
+
await session.execute(
|
|
365
|
+
select(models.ExperimentRun, models.DatasetExampleRevision)
|
|
366
|
+
.join(
|
|
367
|
+
models.DatasetExample,
|
|
368
|
+
models.DatasetExample.id == models.ExperimentRun.dataset_example_id,
|
|
369
|
+
)
|
|
370
|
+
.join(
|
|
371
|
+
models.DatasetExampleRevision,
|
|
372
|
+
and_(
|
|
373
|
+
models.DatasetExample.id
|
|
374
|
+
== models.DatasetExampleRevision.dataset_example_id,
|
|
375
|
+
models.DatasetExampleRevision.id.in_(revision_ids),
|
|
376
|
+
models.DatasetExampleRevision.revision_kind != "DELETE",
|
|
377
|
+
),
|
|
378
|
+
)
|
|
379
|
+
.options(
|
|
380
|
+
joinedload(models.ExperimentRun.annotations),
|
|
381
|
+
)
|
|
382
|
+
.where(models.ExperimentRun.experiment_id == experiment_rowid)
|
|
383
|
+
.order_by(
|
|
384
|
+
models.ExperimentRun.dataset_example_id,
|
|
385
|
+
models.ExperimentRun.repetition_number,
|
|
386
|
+
)
|
|
380
387
|
)
|
|
381
388
|
)
|
|
382
|
-
|
|
389
|
+
.unique()
|
|
390
|
+
.all()
|
|
391
|
+
)
|
|
383
392
|
if not runs_and_revisions:
|
|
384
393
|
raise HTTPException(
|
|
385
394
|
detail=f"Experiment with ID {experiment_globalid} has no runs",
|
|
@@ -387,6 +396,22 @@ async def get_experiment_jsonl(
|
|
|
387
396
|
)
|
|
388
397
|
records = []
|
|
389
398
|
for run, revision in runs_and_revisions:
|
|
399
|
+
annotations = []
|
|
400
|
+
for annotation in run.annotations:
|
|
401
|
+
annotations.append(
|
|
402
|
+
{
|
|
403
|
+
"name": annotation.name,
|
|
404
|
+
"annotator_kind": annotation.annotator_kind,
|
|
405
|
+
"label": annotation.label,
|
|
406
|
+
"score": annotation.score,
|
|
407
|
+
"explanation": annotation.explanation,
|
|
408
|
+
"trace_id": annotation.trace_id,
|
|
409
|
+
"error": annotation.error,
|
|
410
|
+
"metadata": annotation.metadata_,
|
|
411
|
+
"start_time": annotation.start_time.isoformat(),
|
|
412
|
+
"end_time": annotation.end_time.isoformat(),
|
|
413
|
+
}
|
|
414
|
+
)
|
|
390
415
|
record = {
|
|
391
416
|
"example_id": str(
|
|
392
417
|
GlobalID(models.DatasetExample.__name__, str(run.dataset_example_id))
|
|
@@ -394,7 +419,7 @@ async def get_experiment_jsonl(
|
|
|
394
419
|
"repetition_number": run.repetition_number,
|
|
395
420
|
"input": revision.input,
|
|
396
421
|
"reference_output": revision.output,
|
|
397
|
-
"output": run.output,
|
|
422
|
+
"output": run.output["task_output"],
|
|
398
423
|
"error": run.error,
|
|
399
424
|
"latency_ms": run.latency_ms,
|
|
400
425
|
"start_time": run.start_time.isoformat(),
|
|
@@ -402,6 +427,7 @@ async def get_experiment_jsonl(
|
|
|
402
427
|
"trace_id": run.trace_id,
|
|
403
428
|
"prompt_token_count": run.prompt_token_count,
|
|
404
429
|
"completion_token_count": run.completion_token_count,
|
|
430
|
+
"annotations": annotations,
|
|
405
431
|
}
|
|
406
432
|
records.append(record)
|
|
407
433
|
|
|
@@ -1,32 +1,28 @@
|
|
|
1
1
|
{
|
|
2
|
-
"_components-
|
|
3
|
-
"file": "assets/components-
|
|
2
|
+
"_components-CbkVj1OQ.js": {
|
|
3
|
+
"file": "assets/components-CbkVj1OQ.js",
|
|
4
4
|
"name": "components",
|
|
5
5
|
"imports": [
|
|
6
|
-
"_vendor-
|
|
7
|
-
"_pages-
|
|
8
|
-
"_vendor-arizeai-
|
|
9
|
-
"_vendor-codemirror-
|
|
6
|
+
"_vendor-Byx9ZW8r.js",
|
|
7
|
+
"_pages-CyqzCvBY.js",
|
|
8
|
+
"_vendor-arizeai-0BoxbU9V.js",
|
|
9
|
+
"_vendor-codemirror-BX78TDyo.js",
|
|
10
10
|
"_vendor-three-C-AGeJYv.js"
|
|
11
11
|
]
|
|
12
12
|
},
|
|
13
|
-
"_pages-
|
|
14
|
-
"file": "assets/pages-
|
|
13
|
+
"_pages-CyqzCvBY.js": {
|
|
14
|
+
"file": "assets/pages-CyqzCvBY.js",
|
|
15
15
|
"name": "pages",
|
|
16
16
|
"imports": [
|
|
17
|
-
"_vendor-
|
|
18
|
-
"_vendor-arizeai-
|
|
19
|
-
"_components-
|
|
20
|
-
"_vendor-codemirror-
|
|
21
|
-
"_vendor-recharts-
|
|
17
|
+
"_vendor-Byx9ZW8r.js",
|
|
18
|
+
"_vendor-arizeai-0BoxbU9V.js",
|
|
19
|
+
"_components-CbkVj1OQ.js",
|
|
20
|
+
"_vendor-codemirror-BX78TDyo.js",
|
|
21
|
+
"_vendor-recharts-BLborQJX.js"
|
|
22
22
|
]
|
|
23
23
|
},
|
|
24
|
-
"_vendor-
|
|
25
|
-
"file": "assets/vendor-
|
|
26
|
-
"src": "_vendor-Cg6lcjUC.css"
|
|
27
|
-
},
|
|
28
|
-
"_vendor-VJCVsFqd.js": {
|
|
29
|
-
"file": "assets/vendor-VJCVsFqd.js",
|
|
24
|
+
"_vendor-Byx9ZW8r.js": {
|
|
25
|
+
"file": "assets/vendor-Byx9ZW8r.js",
|
|
30
26
|
"name": "vendor",
|
|
31
27
|
"imports": [
|
|
32
28
|
"_vendor-three-C-AGeJYv.js"
|
|
@@ -35,33 +31,37 @@
|
|
|
35
31
|
"assets/vendor-Cg6lcjUC.css"
|
|
36
32
|
]
|
|
37
33
|
},
|
|
38
|
-
"_vendor-
|
|
39
|
-
"file": "assets/vendor-
|
|
34
|
+
"_vendor-Cg6lcjUC.css": {
|
|
35
|
+
"file": "assets/vendor-Cg6lcjUC.css",
|
|
36
|
+
"src": "_vendor-Cg6lcjUC.css"
|
|
37
|
+
},
|
|
38
|
+
"_vendor-arizeai-0BoxbU9V.js": {
|
|
39
|
+
"file": "assets/vendor-arizeai-0BoxbU9V.js",
|
|
40
40
|
"name": "vendor-arizeai",
|
|
41
41
|
"imports": [
|
|
42
|
-
"_vendor-
|
|
42
|
+
"_vendor-Byx9ZW8r.js"
|
|
43
43
|
]
|
|
44
44
|
},
|
|
45
|
-
"_vendor-codemirror-
|
|
46
|
-
"file": "assets/vendor-codemirror-
|
|
45
|
+
"_vendor-codemirror-BX78TDyo.js": {
|
|
46
|
+
"file": "assets/vendor-codemirror-BX78TDyo.js",
|
|
47
47
|
"name": "vendor-codemirror",
|
|
48
48
|
"imports": [
|
|
49
|
-
"_vendor-
|
|
50
|
-
"_vendor-shiki-
|
|
49
|
+
"_vendor-Byx9ZW8r.js",
|
|
50
|
+
"_vendor-shiki-DpPpUgzv.js"
|
|
51
51
|
]
|
|
52
52
|
},
|
|
53
|
-
"_vendor-recharts-
|
|
54
|
-
"file": "assets/vendor-recharts-
|
|
53
|
+
"_vendor-recharts-BLborQJX.js": {
|
|
54
|
+
"file": "assets/vendor-recharts-BLborQJX.js",
|
|
55
55
|
"name": "vendor-recharts",
|
|
56
56
|
"imports": [
|
|
57
|
-
"_vendor-
|
|
57
|
+
"_vendor-Byx9ZW8r.js"
|
|
58
58
|
]
|
|
59
59
|
},
|
|
60
|
-
"_vendor-shiki-
|
|
61
|
-
"file": "assets/vendor-shiki-
|
|
60
|
+
"_vendor-shiki-DpPpUgzv.js": {
|
|
61
|
+
"file": "assets/vendor-shiki-DpPpUgzv.js",
|
|
62
62
|
"name": "vendor-shiki",
|
|
63
63
|
"imports": [
|
|
64
|
-
"_vendor-
|
|
64
|
+
"_vendor-Byx9ZW8r.js"
|
|
65
65
|
]
|
|
66
66
|
},
|
|
67
67
|
"_vendor-three-C-AGeJYv.js": {
|
|
@@ -69,19 +69,19 @@
|
|
|
69
69
|
"name": "vendor-three"
|
|
70
70
|
},
|
|
71
71
|
"index.tsx": {
|
|
72
|
-
"file": "assets/index-
|
|
72
|
+
"file": "assets/index-BNK6eNx3.js",
|
|
73
73
|
"name": "index",
|
|
74
74
|
"src": "index.tsx",
|
|
75
75
|
"isEntry": true,
|
|
76
76
|
"imports": [
|
|
77
|
-
"_vendor-
|
|
78
|
-
"_vendor-arizeai-
|
|
79
|
-
"_pages-
|
|
80
|
-
"_components-
|
|
77
|
+
"_vendor-Byx9ZW8r.js",
|
|
78
|
+
"_vendor-arizeai-0BoxbU9V.js",
|
|
79
|
+
"_pages-CyqzCvBY.js",
|
|
80
|
+
"_components-CbkVj1OQ.js",
|
|
81
81
|
"_vendor-three-C-AGeJYv.js",
|
|
82
|
-
"_vendor-codemirror-
|
|
83
|
-
"_vendor-shiki-
|
|
84
|
-
"_vendor-recharts-
|
|
82
|
+
"_vendor-codemirror-BX78TDyo.js",
|
|
83
|
+
"_vendor-shiki-DpPpUgzv.js",
|
|
84
|
+
"_vendor-recharts-BLborQJX.js"
|
|
85
85
|
]
|
|
86
86
|
}
|
|
87
87
|
}
|