@arizeai/phoenix-client 2.0.0 โ 2.0.1
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.
- package/dist/esm/experiments/runExperiment.d.ts.map +1 -1
- package/dist/esm/experiments/runExperiment.js +35 -0
- package/dist/esm/experiments/runExperiment.js.map +1 -1
- package/dist/esm/tsconfig.esm.tsbuildinfo +1 -1
- package/dist/esm/utils/urlUtils.d.ts +36 -0
- package/dist/esm/utils/urlUtils.d.ts.map +1 -0
- package/dist/esm/utils/urlUtils.js +40 -0
- package/dist/esm/utils/urlUtils.js.map +1 -0
- package/dist/src/experiments/runExperiment.d.ts.map +1 -1
- package/dist/src/experiments/runExperiment.js +35 -0
- package/dist/src/experiments/runExperiment.js.map +1 -1
- package/dist/src/utils/urlUtils.d.ts +36 -0
- package/dist/src/utils/urlUtils.d.ts.map +1 -0
- package/dist/src/utils/urlUtils.js +45 -0
- package/dist/src/utils/urlUtils.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/src/experiments/runExperiment.ts +43 -0
- package/src/utils/urlUtils.ts +63 -0
package/package.json
CHANGED
|
@@ -32,6 +32,11 @@ import {
|
|
|
32
32
|
import { ensureString } from "../utils/ensureString";
|
|
33
33
|
import type { NodeTracerProvider } from "@opentelemetry/sdk-trace-node";
|
|
34
34
|
import { objectAsAttributes } from "../utils/objectAsAttributes";
|
|
35
|
+
import {
|
|
36
|
+
getDatasetUrl,
|
|
37
|
+
getDatasetExperimentsUrl,
|
|
38
|
+
getExperimentUrl,
|
|
39
|
+
} from "../utils/urlUtils";
|
|
35
40
|
|
|
36
41
|
/**
|
|
37
42
|
* Parameters for running an experiment.
|
|
@@ -197,6 +202,26 @@ export async function runExperiment({
|
|
|
197
202
|
);
|
|
198
203
|
}
|
|
199
204
|
|
|
205
|
+
if (!isDryRun && client.config.baseUrl) {
|
|
206
|
+
const datasetUrl = getDatasetUrl({
|
|
207
|
+
baseUrl: client.config.baseUrl,
|
|
208
|
+
datasetId: dataset.id,
|
|
209
|
+
});
|
|
210
|
+
const datasetExperimentsUrl = getDatasetExperimentsUrl({
|
|
211
|
+
baseUrl: client.config.baseUrl,
|
|
212
|
+
datasetId: dataset.id,
|
|
213
|
+
});
|
|
214
|
+
const experimentUrl = getExperimentUrl({
|
|
215
|
+
baseUrl: client.config.baseUrl,
|
|
216
|
+
datasetId: dataset.id,
|
|
217
|
+
experimentId: experiment.id,
|
|
218
|
+
});
|
|
219
|
+
|
|
220
|
+
logger.info(`๐ View dataset: ${datasetUrl}`);
|
|
221
|
+
logger.info(`๐บ View dataset experiments: ${datasetExperimentsUrl}`);
|
|
222
|
+
logger.info(`๐ View this experiment: ${experimentUrl}`);
|
|
223
|
+
}
|
|
224
|
+
|
|
200
225
|
logger.info(
|
|
201
226
|
`๐งช Starting experiment "${experimentName || `<unnamed>`}" on dataset "${dataset.id}" with task "${task.name}" and ${evaluators?.length ?? 0} ${pluralize(
|
|
202
227
|
"evaluator",
|
|
@@ -243,6 +268,15 @@ export async function runExperiment({
|
|
|
243
268
|
|
|
244
269
|
logger.info(`โ
Experiment ${experiment.id} completed`);
|
|
245
270
|
|
|
271
|
+
if (!isDryRun && client.config.baseUrl) {
|
|
272
|
+
const experimentUrl = getExperimentUrl({
|
|
273
|
+
baseUrl: client.config.baseUrl,
|
|
274
|
+
datasetId: dataset.id,
|
|
275
|
+
experimentId: experiment.id,
|
|
276
|
+
});
|
|
277
|
+
logger.info(`๐ View results: ${experimentUrl}`);
|
|
278
|
+
}
|
|
279
|
+
|
|
246
280
|
return ranExperiment;
|
|
247
281
|
}
|
|
248
282
|
|
|
@@ -444,6 +478,15 @@ export async function evaluateExperiment({
|
|
|
444
478
|
evaluators?.length ?? 0
|
|
445
479
|
)}`
|
|
446
480
|
);
|
|
481
|
+
|
|
482
|
+
if (!isDryRun && client.config.baseUrl) {
|
|
483
|
+
const experimentUrl = getExperimentUrl({
|
|
484
|
+
baseUrl: client.config.baseUrl,
|
|
485
|
+
datasetId: experiment.datasetId,
|
|
486
|
+
experimentId: experiment.id,
|
|
487
|
+
});
|
|
488
|
+
logger.info(`๐ View experiment evaluation: ${experimentUrl}`);
|
|
489
|
+
}
|
|
447
490
|
type EvaluationId = string;
|
|
448
491
|
const evaluationRuns: Record<EvaluationId, ExperimentEvaluationRun> = {};
|
|
449
492
|
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Utility functions for constructing URLs to Phoenix resources
|
|
3
|
+
*/
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Get the base URL for Phoenix web UI
|
|
7
|
+
* @param baseUrl The base URL of the Phoenix API
|
|
8
|
+
* @returns The base URL for the Phoenix web UI
|
|
9
|
+
*/
|
|
10
|
+
function getWebBaseUrl(baseUrl: string): string {
|
|
11
|
+
return new URL(baseUrl).toString();
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* Get the URL to view a specific experiment in the Phoenix web UI
|
|
16
|
+
* @param baseUrl The base URL of the Phoenix API
|
|
17
|
+
* @param datasetId The ID of the dataset
|
|
18
|
+
* @param experimentId The ID of the experiment
|
|
19
|
+
* @returns The URL to view the experiment
|
|
20
|
+
*/
|
|
21
|
+
export function getExperimentUrl({
|
|
22
|
+
baseUrl,
|
|
23
|
+
datasetId,
|
|
24
|
+
experimentId,
|
|
25
|
+
}: {
|
|
26
|
+
baseUrl: string;
|
|
27
|
+
datasetId: string;
|
|
28
|
+
experimentId: string;
|
|
29
|
+
}): string {
|
|
30
|
+
return `${getWebBaseUrl(baseUrl)}datasets/${datasetId}/compare?experimentId=${experimentId}`;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
/**
|
|
34
|
+
* Get the URL to view experiments for a dataset in the Phoenix web UI
|
|
35
|
+
* @param baseUrl The base URL of the Phoenix API
|
|
36
|
+
* @param datasetId The ID of the dataset
|
|
37
|
+
* @returns The URL to view dataset experiments
|
|
38
|
+
*/
|
|
39
|
+
export function getDatasetExperimentsUrl({
|
|
40
|
+
baseUrl,
|
|
41
|
+
datasetId,
|
|
42
|
+
}: {
|
|
43
|
+
baseUrl: string;
|
|
44
|
+
datasetId: string;
|
|
45
|
+
}): string {
|
|
46
|
+
return `${getWebBaseUrl(baseUrl)}datasets/${datasetId}/experiments`;
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
/**
|
|
50
|
+
* Get the URL to view a dataset in the Phoenix web UI
|
|
51
|
+
* @param baseUrl The base URL of the Phoenix API
|
|
52
|
+
* @param datasetId The ID of the dataset
|
|
53
|
+
* @returns The URL to view the dataset
|
|
54
|
+
*/
|
|
55
|
+
export function getDatasetUrl({
|
|
56
|
+
baseUrl,
|
|
57
|
+
datasetId,
|
|
58
|
+
}: {
|
|
59
|
+
baseUrl: string;
|
|
60
|
+
datasetId: string;
|
|
61
|
+
}): string {
|
|
62
|
+
return `${getWebBaseUrl(baseUrl)}datasets/${datasetId}/examples`;
|
|
63
|
+
}
|