@arizeai/phoenix-client 1.3.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.
Files changed (156) hide show
  1. package/README.md +118 -0
  2. package/dist/esm/datasets/appendDatasetExamples.d.ts +21 -0
  3. package/dist/esm/datasets/appendDatasetExamples.d.ts.map +1 -0
  4. package/dist/esm/datasets/appendDatasetExamples.js +32 -0
  5. package/dist/esm/datasets/appendDatasetExamples.js.map +1 -0
  6. package/dist/esm/datasets/createDataset.d.ts +25 -0
  7. package/dist/esm/datasets/createDataset.d.ts.map +1 -0
  8. package/dist/esm/datasets/createDataset.js +34 -0
  9. package/dist/esm/datasets/createDataset.js.map +1 -0
  10. package/dist/esm/datasets/getDataset.d.ts +10 -0
  11. package/dist/esm/datasets/getDataset.d.ts.map +1 -0
  12. package/dist/esm/datasets/getDataset.js +18 -0
  13. package/dist/esm/datasets/getDataset.js.map +1 -0
  14. package/dist/esm/datasets/getDatasetExamples.d.ts +10 -0
  15. package/dist/esm/datasets/getDatasetExamples.d.ts.map +1 -0
  16. package/dist/esm/datasets/getDatasetExamples.js +25 -0
  17. package/dist/esm/datasets/getDatasetExamples.js.map +1 -0
  18. package/dist/esm/datasets/getDatasetInfo.d.ts +11 -0
  19. package/dist/esm/datasets/getDatasetInfo.d.ts.map +1 -0
  20. package/dist/esm/datasets/getDatasetInfo.js +25 -0
  21. package/dist/esm/datasets/getDatasetInfo.js.map +1 -0
  22. package/dist/esm/datasets/index.d.ts +7 -0
  23. package/dist/esm/datasets/index.d.ts.map +1 -0
  24. package/dist/esm/datasets/index.js +7 -0
  25. package/dist/esm/datasets/index.js.map +1 -0
  26. package/dist/esm/datasets/listDatasets.d.ts +23 -0
  27. package/dist/esm/datasets/listDatasets.d.ts.map +1 -0
  28. package/dist/esm/datasets/listDatasets.js +26 -0
  29. package/dist/esm/datasets/listDatasets.js.map +1 -0
  30. package/dist/esm/experiments/getExperiment.d.ts +14 -0
  31. package/dist/esm/experiments/getExperiment.d.ts.map +1 -0
  32. package/dist/esm/experiments/getExperiment.js +25 -0
  33. package/dist/esm/experiments/getExperiment.js.map +1 -0
  34. package/dist/esm/experiments/getExperimentInfo.d.ts +13 -0
  35. package/dist/esm/experiments/getExperimentInfo.d.ts.map +1 -0
  36. package/dist/esm/experiments/getExperimentInfo.js +24 -0
  37. package/dist/esm/experiments/getExperimentInfo.js.map +1 -0
  38. package/dist/esm/experiments/getExperimentRuns.d.ts +15 -0
  39. package/dist/esm/experiments/getExperimentRuns.d.ts.map +1 -0
  40. package/dist/esm/experiments/getExperimentRuns.js +33 -0
  41. package/dist/esm/experiments/getExperimentRuns.js.map +1 -0
  42. package/dist/esm/experiments/index.d.ts +3 -0
  43. package/dist/esm/experiments/index.d.ts.map +1 -1
  44. package/dist/esm/experiments/index.js +3 -0
  45. package/dist/esm/experiments/index.js.map +1 -1
  46. package/dist/esm/experiments/runExperiment.d.ts +6 -6
  47. package/dist/esm/experiments/runExperiment.d.ts.map +1 -1
  48. package/dist/esm/experiments/runExperiment.js +49 -12
  49. package/dist/esm/experiments/runExperiment.js.map +1 -1
  50. package/dist/esm/schemas/llm/anthropic/converters.d.ts +28 -28
  51. package/dist/esm/schemas/llm/anthropic/messagePartSchemas.d.ts +8 -8
  52. package/dist/esm/schemas/llm/anthropic/messageSchemas.d.ts +24 -24
  53. package/dist/esm/schemas/llm/anthropic/toolCallSchemas.d.ts +8 -8
  54. package/dist/esm/schemas/llm/constants.d.ts +6 -6
  55. package/dist/esm/schemas/llm/converters.d.ts +24 -24
  56. package/dist/esm/schemas/llm/openai/converters.d.ts +6 -6
  57. package/dist/esm/schemas/llm/schemas.d.ts +22 -22
  58. package/dist/esm/tsconfig.esm.tsbuildinfo +1 -1
  59. package/dist/esm/types/datasets.d.ts +33 -8
  60. package/dist/esm/types/datasets.d.ts.map +1 -1
  61. package/dist/esm/types/experiments.d.ts +17 -3
  62. package/dist/esm/types/experiments.d.ts.map +1 -1
  63. package/dist/esm/utils/urlUtils.d.ts +36 -0
  64. package/dist/esm/utils/urlUtils.d.ts.map +1 -0
  65. package/dist/esm/utils/urlUtils.js +40 -0
  66. package/dist/esm/utils/urlUtils.js.map +1 -0
  67. package/dist/src/datasets/appendDatasetExamples.d.ts +21 -0
  68. package/dist/src/datasets/appendDatasetExamples.d.ts.map +1 -0
  69. package/dist/src/datasets/appendDatasetExamples.js +50 -0
  70. package/dist/src/datasets/appendDatasetExamples.js.map +1 -0
  71. package/dist/src/datasets/createDataset.d.ts +25 -0
  72. package/dist/src/datasets/createDataset.d.ts.map +1 -0
  73. package/dist/src/datasets/createDataset.js +52 -0
  74. package/dist/src/datasets/createDataset.js.map +1 -0
  75. package/dist/src/datasets/getDataset.d.ts +10 -0
  76. package/dist/src/datasets/getDataset.d.ts.map +1 -0
  77. package/dist/src/datasets/getDataset.js +29 -0
  78. package/dist/src/datasets/getDataset.js.map +1 -0
  79. package/dist/src/datasets/getDatasetExamples.d.ts +10 -0
  80. package/dist/src/datasets/getDatasetExamples.d.ts.map +1 -0
  81. package/dist/src/datasets/getDatasetExamples.js +40 -0
  82. package/dist/src/datasets/getDatasetExamples.js.map +1 -0
  83. package/dist/src/datasets/getDatasetInfo.d.ts +11 -0
  84. package/dist/src/datasets/getDatasetInfo.d.ts.map +1 -0
  85. package/dist/src/datasets/getDatasetInfo.js +43 -0
  86. package/dist/src/datasets/getDatasetInfo.js.map +1 -0
  87. package/dist/src/datasets/index.d.ts +7 -0
  88. package/dist/src/datasets/index.d.ts.map +1 -0
  89. package/dist/src/datasets/index.js +23 -0
  90. package/dist/src/datasets/index.js.map +1 -0
  91. package/dist/src/datasets/listDatasets.d.ts +23 -0
  92. package/dist/src/datasets/listDatasets.d.ts.map +1 -0
  93. package/dist/src/datasets/listDatasets.js +40 -0
  94. package/dist/src/datasets/listDatasets.js.map +1 -0
  95. package/dist/src/experiments/getExperiment.d.ts +14 -0
  96. package/dist/src/experiments/getExperiment.d.ts.map +1 -0
  97. package/dist/src/experiments/getExperiment.js +36 -0
  98. package/dist/src/experiments/getExperiment.js.map +1 -0
  99. package/dist/src/experiments/getExperimentInfo.d.ts +13 -0
  100. package/dist/src/experiments/getExperimentInfo.d.ts.map +1 -0
  101. package/dist/src/experiments/getExperimentInfo.js +41 -0
  102. package/dist/src/experiments/getExperimentInfo.js.map +1 -0
  103. package/dist/src/experiments/getExperimentRuns.d.ts +15 -0
  104. package/dist/src/experiments/getExperimentRuns.d.ts.map +1 -0
  105. package/dist/src/experiments/getExperimentRuns.js +50 -0
  106. package/dist/src/experiments/getExperimentRuns.js.map +1 -0
  107. package/dist/src/experiments/index.d.ts +3 -0
  108. package/dist/src/experiments/index.d.ts.map +1 -1
  109. package/dist/src/experiments/index.js +3 -0
  110. package/dist/src/experiments/index.js.map +1 -1
  111. package/dist/src/experiments/runExperiment.d.ts +6 -6
  112. package/dist/src/experiments/runExperiment.d.ts.map +1 -1
  113. package/dist/src/experiments/runExperiment.js +49 -12
  114. package/dist/src/experiments/runExperiment.js.map +1 -1
  115. package/dist/src/schemas/llm/anthropic/converters.d.ts +28 -28
  116. package/dist/src/schemas/llm/anthropic/messagePartSchemas.d.ts +8 -8
  117. package/dist/src/schemas/llm/anthropic/messageSchemas.d.ts +24 -24
  118. package/dist/src/schemas/llm/anthropic/toolCallSchemas.d.ts +8 -8
  119. package/dist/src/schemas/llm/constants.d.ts +6 -6
  120. package/dist/src/schemas/llm/converters.d.ts +24 -24
  121. package/dist/src/schemas/llm/openai/converters.d.ts +6 -6
  122. package/dist/src/schemas/llm/schemas.d.ts +22 -22
  123. package/dist/src/types/datasets.d.ts +33 -8
  124. package/dist/src/types/datasets.d.ts.map +1 -1
  125. package/dist/src/types/experiments.d.ts +17 -3
  126. package/dist/src/types/experiments.d.ts.map +1 -1
  127. package/dist/src/utils/urlUtils.d.ts +36 -0
  128. package/dist/src/utils/urlUtils.d.ts.map +1 -0
  129. package/dist/src/utils/urlUtils.js +45 -0
  130. package/dist/src/utils/urlUtils.js.map +1 -0
  131. package/dist/tsconfig.tsbuildinfo +1 -1
  132. package/package.json +5 -1
  133. package/src/datasets/appendDatasetExamples.ts +55 -0
  134. package/src/datasets/createDataset.ts +60 -0
  135. package/src/datasets/getDataset.ts +27 -0
  136. package/src/datasets/getDatasetExamples.ts +34 -0
  137. package/src/datasets/getDatasetInfo.ts +34 -0
  138. package/src/datasets/index.ts +6 -0
  139. package/src/datasets/listDatasets.ts +37 -0
  140. package/src/experiments/getExperiment.ts +40 -0
  141. package/src/experiments/getExperimentInfo.ts +39 -0
  142. package/src/experiments/getExperimentRuns.ts +45 -0
  143. package/src/experiments/index.ts +3 -0
  144. package/src/experiments/runExperiment.ts +74 -25
  145. package/src/types/datasets.ts +35 -9
  146. package/src/types/experiments.ts +19 -3
  147. package/src/utils/urlUtils.ts +63 -0
  148. package/dist/esm/utils/getDatasetBySelector.d.ts +0 -25
  149. package/dist/esm/utils/getDatasetBySelector.d.ts.map +0 -1
  150. package/dist/esm/utils/getDatasetBySelector.js +0 -37
  151. package/dist/esm/utils/getDatasetBySelector.js.map +0 -1
  152. package/dist/src/utils/getDatasetBySelector.d.ts +0 -25
  153. package/dist/src/utils/getDatasetBySelector.d.ts.map +0 -1
  154. package/dist/src/utils/getDatasetBySelector.js +0 -47
  155. package/dist/src/utils/getDatasetBySelector.js.map +0 -1
  156. package/src/utils/getDatasetBySelector.ts +0 -55
@@ -1,22 +1,48 @@
1
1
  import { Node } from "./core";
2
2
 
3
+ /**
4
+ * A dataset can be identified by its datasetId
5
+ * TODO: add support for datasetName and datasetVersionId via discriminated union
6
+ */
7
+ export type DatasetSelector = { datasetId: string };
8
+
9
+ /**
10
+ * Overview information about a dataset
11
+ */
12
+ export interface DatasetInfo extends Node {
13
+ name: string;
14
+ description?: string | null;
15
+ metadata?: Record<string, unknown>;
16
+ }
17
+
18
+ /**
19
+ * A dataset's examples
20
+ */
21
+ export interface DatasetExamples {
22
+ examples: ExampleWithId[];
23
+ /**
24
+ * The version ID of the dataset examples
25
+ */
26
+ versionId: string;
27
+ }
28
+
3
29
  /**
4
30
  * An example is a record to feed into an AI task
5
31
  */
6
- export interface Example extends Node {
7
- id: string;
8
- updatedAt: Date;
32
+ export interface Example {
9
33
  input: Record<string, unknown>;
10
34
  output: Record<string, unknown> | null;
11
35
  metadata: Record<string, unknown>;
12
36
  }
13
37
 
14
38
  /**
15
- * A dataset is a collection of examples for an AI task
39
+ * An example that has been synced to the server
16
40
  */
17
- export interface Dataset extends Node {
18
- id: string;
19
- name: string;
20
- versionId: string;
21
- examples: Example[];
41
+ export interface ExampleWithId extends Example, Node {
42
+ updatedAt: Date;
22
43
  }
44
+
45
+ /**
46
+ * A dataset is a collection of examples for an AI task
47
+ */
48
+ export interface Dataset extends DatasetInfo, DatasetExamples, Node {}
@@ -5,17 +5,33 @@ import { Example } from "./datasets";
5
5
  /**
6
6
  * An experiment is a set of task runs on a dataset version
7
7
  */
8
- export interface Experiment extends Node {
8
+ export interface ExperimentInfo extends Node {
9
9
  datasetId: string;
10
10
  datasetVersionId: string;
11
11
  /**
12
12
  * The project under which the experiment task traces are recorded
13
13
  */
14
14
  projectName: string;
15
+ /**
16
+ * Metadata about the experiment as an object of key values
17
+ * e.x. model name
18
+ */
19
+ metadata: Record<string, unknown>;
20
+ }
21
+
22
+ export type ExperimentRunID = string;
23
+
24
+ /**
25
+ * A map of an experiment runId to the run
26
+ */
27
+ export interface ExperimentRunsMap {
28
+ runs: Record<ExperimentRunID, ExperimentRun>;
15
29
  }
16
30
 
17
- export interface RanExperiment extends Experiment {
18
- runs: Record<string, ExperimentRun>;
31
+ /**
32
+ * An experiment that has been run and been recorded on the server
33
+ */
34
+ export interface RanExperiment extends ExperimentInfo, ExperimentRunsMap {
19
35
  evaluationRuns?: ExperimentEvaluationRun[];
20
36
  }
21
37
 
@@ -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
+ }
@@ -1,25 +0,0 @@
1
- import { PhoenixClient } from "../client.js";
2
- import { Example } from "../types/datasets.js";
3
- import { Dataset } from "../types/datasets.js";
4
- /**
5
- * Parameters for the getDatasetLike function
6
- */
7
- export type GetDatasetLikeParams = {
8
- /**
9
- * The dataset to get. Can be in the form of a dataset id, an array of examples, or a dataset object.
10
- */
11
- dataset: Dataset | string | Example[];
12
- client: PhoenixClient;
13
- };
14
- /**
15
- * Return a dataset object from the input.
16
- *
17
- * If the input is a string, assume it is a dataset id and fetch the dataset from the client.
18
- * If the input is an array of examples, create a new dataset from the examples then return it.
19
- * If the input is a dataset, return it as is.
20
- *
21
- * @param params - The parameters to get a dataset.
22
- * @returns The dataset.
23
- */
24
- export declare function getDatasetBySelector({ dataset, client, }: GetDatasetLikeParams): Promise<Dataset | null>;
25
- //# sourceMappingURL=getDatasetBySelector.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getDatasetBySelector.d.ts","sourceRoot":"","sources":["../../../src/utils/getDatasetBySelector.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAE5C,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAE5C;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAAG;IACjC;;OAEG;IACH,OAAO,EAAE,OAAO,GAAG,MAAM,GAAG,OAAO,EAAE,CAAC;IACtC,MAAM,EAAE,aAAa,CAAC;CACvB,CAAC;AAEF;;;;;;;;;GASG;AACH,wBAAsB,oBAAoB,CAAC,EACzC,OAAO,EACP,MAAM,GACP,EAAE,oBAAoB,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,CAwBhD"}
@@ -1,37 +0,0 @@
1
- import invariant from "tiny-invariant";
2
- /**
3
- * Return a dataset object from the input.
4
- *
5
- * If the input is a string, assume it is a dataset id and fetch the dataset from the client.
6
- * If the input is an array of examples, create a new dataset from the examples then return it.
7
- * If the input is a dataset, return it as is.
8
- *
9
- * @param params - The parameters to get a dataset.
10
- * @returns The dataset.
11
- */
12
- export async function getDatasetBySelector({ dataset, client, }) {
13
- if (typeof dataset === "string") {
14
- const datasetResponse = await client
15
- .GET(`/v1/datasets/{id}`, { params: { path: { id: dataset } } })
16
- .then((d) => d.data?.data);
17
- invariant(datasetResponse, `Dataset ${dataset} not found`);
18
- const examples = await client
19
- .GET(`/v1/datasets/{id}/examples`, { params: { path: { id: dataset } } })
20
- .then((e) => e.data?.data);
21
- invariant(examples, `Examples for dataset ${dataset} not found`);
22
- const datasetWithExamples = {
23
- ...datasetResponse,
24
- examples: examples.examples.map((example) => ({
25
- ...example,
26
- updatedAt: new Date(example.updated_at),
27
- })),
28
- versionId: examples.version_id,
29
- };
30
- return datasetWithExamples;
31
- }
32
- if (Array.isArray(dataset)) {
33
- throw new Error("TODO: implement dataset creation from examples");
34
- }
35
- return dataset;
36
- }
37
- //# sourceMappingURL=getDatasetBySelector.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getDatasetBySelector.js","sourceRoot":"","sources":["../../../src/utils/getDatasetBySelector.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,gBAAgB,CAAC;AAiBvC;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,EACzC,OAAO,EACP,MAAM,GACe;IACrB,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;QAChC,MAAM,eAAe,GAAG,MAAM,MAAM;aACjC,GAAG,CAAC,mBAAmB,EAAE,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;aAC/D,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAC7B,SAAS,CAAC,eAAe,EAAE,WAAW,OAAO,YAAY,CAAC,CAAC;QAC3D,MAAM,QAAQ,GAAG,MAAM,MAAM;aAC1B,GAAG,CAAC,4BAA4B,EAAE,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;aACxE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAC7B,SAAS,CAAC,QAAQ,EAAE,wBAAwB,OAAO,YAAY,CAAC,CAAC;QACjE,MAAM,mBAAmB,GAAY;YACnC,GAAG,eAAe;YAClB,QAAQ,EAAE,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;gBAC5C,GAAG,OAAO;gBACV,SAAS,EAAE,IAAI,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC;aACxC,CAAC,CAAC;YACH,SAAS,EAAE,QAAQ,CAAC,UAAU;SAC/B,CAAC;QACF,OAAO,mBAAmB,CAAC;IAC7B,CAAC;IACD,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QAC3B,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;IACpE,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC"}
@@ -1,25 +0,0 @@
1
- import { PhoenixClient } from "../client";
2
- import { Example } from "../types/datasets";
3
- import { Dataset } from "../types/datasets";
4
- /**
5
- * Parameters for the getDatasetLike function
6
- */
7
- export type GetDatasetLikeParams = {
8
- /**
9
- * The dataset to get. Can be in the form of a dataset id, an array of examples, or a dataset object.
10
- */
11
- dataset: Dataset | string | Example[];
12
- client: PhoenixClient;
13
- };
14
- /**
15
- * Return a dataset object from the input.
16
- *
17
- * If the input is a string, assume it is a dataset id and fetch the dataset from the client.
18
- * If the input is an array of examples, create a new dataset from the examples then return it.
19
- * If the input is a dataset, return it as is.
20
- *
21
- * @param params - The parameters to get a dataset.
22
- * @returns The dataset.
23
- */
24
- export declare function getDatasetBySelector({ dataset, client, }: GetDatasetLikeParams): Promise<Dataset | null>;
25
- //# sourceMappingURL=getDatasetBySelector.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getDatasetBySelector.d.ts","sourceRoot":"","sources":["../../../src/utils/getDatasetBySelector.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAE5C,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAE5C;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAAG;IACjC;;OAEG;IACH,OAAO,EAAE,OAAO,GAAG,MAAM,GAAG,OAAO,EAAE,CAAC;IACtC,MAAM,EAAE,aAAa,CAAC;CACvB,CAAC;AAEF;;;;;;;;;GASG;AACH,wBAAsB,oBAAoB,CAAC,EACzC,OAAO,EACP,MAAM,GACP,EAAE,oBAAoB,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,CAwBhD"}
@@ -1,47 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- var __importDefault = (this && this.__importDefault) || function (mod) {
12
- return (mod && mod.__esModule) ? mod : { "default": mod };
13
- };
14
- Object.defineProperty(exports, "__esModule", { value: true });
15
- exports.getDatasetBySelector = getDatasetBySelector;
16
- const tiny_invariant_1 = __importDefault(require("tiny-invariant"));
17
- /**
18
- * Return a dataset object from the input.
19
- *
20
- * If the input is a string, assume it is a dataset id and fetch the dataset from the client.
21
- * If the input is an array of examples, create a new dataset from the examples then return it.
22
- * If the input is a dataset, return it as is.
23
- *
24
- * @param params - The parameters to get a dataset.
25
- * @returns The dataset.
26
- */
27
- function getDatasetBySelector(_a) {
28
- return __awaiter(this, arguments, void 0, function* ({ dataset, client, }) {
29
- if (typeof dataset === "string") {
30
- const datasetResponse = yield client
31
- .GET(`/v1/datasets/{id}`, { params: { path: { id: dataset } } })
32
- .then((d) => { var _a; return (_a = d.data) === null || _a === void 0 ? void 0 : _a.data; });
33
- (0, tiny_invariant_1.default)(datasetResponse, `Dataset ${dataset} not found`);
34
- const examples = yield client
35
- .GET(`/v1/datasets/{id}/examples`, { params: { path: { id: dataset } } })
36
- .then((e) => { var _a; return (_a = e.data) === null || _a === void 0 ? void 0 : _a.data; });
37
- (0, tiny_invariant_1.default)(examples, `Examples for dataset ${dataset} not found`);
38
- const datasetWithExamples = Object.assign(Object.assign({}, datasetResponse), { examples: examples.examples.map((example) => (Object.assign(Object.assign({}, example), { updatedAt: new Date(example.updated_at) }))), versionId: examples.version_id });
39
- return datasetWithExamples;
40
- }
41
- if (Array.isArray(dataset)) {
42
- throw new Error("TODO: implement dataset creation from examples");
43
- }
44
- return dataset;
45
- });
46
- }
47
- //# sourceMappingURL=getDatasetBySelector.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getDatasetBySelector.js","sourceRoot":"","sources":["../../../src/utils/getDatasetBySelector.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AA2BA,oDA2BC;AAtDD,oEAAuC;AAiBvC;;;;;;;;;GASG;AACH,SAAsB,oBAAoB;yDAAC,EACzC,OAAO,EACP,MAAM,GACe;QACrB,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YAChC,MAAM,eAAe,GAAG,MAAM,MAAM;iBACjC,GAAG,CAAC,mBAAmB,EAAE,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;iBAC/D,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,WAAC,OAAA,MAAA,CAAC,CAAC,IAAI,0CAAE,IAAI,CAAA,EAAA,CAAC,CAAC;YAC7B,IAAA,wBAAS,EAAC,eAAe,EAAE,WAAW,OAAO,YAAY,CAAC,CAAC;YAC3D,MAAM,QAAQ,GAAG,MAAM,MAAM;iBAC1B,GAAG,CAAC,4BAA4B,EAAE,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;iBACxE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,WAAC,OAAA,MAAA,CAAC,CAAC,IAAI,0CAAE,IAAI,CAAA,EAAA,CAAC,CAAC;YAC7B,IAAA,wBAAS,EAAC,QAAQ,EAAE,wBAAwB,OAAO,YAAY,CAAC,CAAC;YACjE,MAAM,mBAAmB,mCACpB,eAAe,KAClB,QAAQ,EAAE,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,iCACxC,OAAO,KACV,SAAS,EAAE,IAAI,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IACvC,CAAC,EACH,SAAS,EAAE,QAAQ,CAAC,UAAU,GAC/B,CAAC;YACF,OAAO,mBAAmB,CAAC;QAC7B,CAAC;QACD,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YAC3B,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;QACpE,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;CAAA"}
@@ -1,55 +0,0 @@
1
- import invariant from "tiny-invariant";
2
- import { PhoenixClient } from "../client";
3
- import { Example } from "../types/datasets";
4
-
5
- import { Dataset } from "../types/datasets";
6
-
7
- /**
8
- * Parameters for the getDatasetLike function
9
- */
10
- export type GetDatasetLikeParams = {
11
- /**
12
- * The dataset to get. Can be in the form of a dataset id, an array of examples, or a dataset object.
13
- */
14
- dataset: Dataset | string | Example[];
15
- client: PhoenixClient;
16
- };
17
-
18
- /**
19
- * Return a dataset object from the input.
20
- *
21
- * If the input is a string, assume it is a dataset id and fetch the dataset from the client.
22
- * If the input is an array of examples, create a new dataset from the examples then return it.
23
- * If the input is a dataset, return it as is.
24
- *
25
- * @param params - The parameters to get a dataset.
26
- * @returns The dataset.
27
- */
28
- export async function getDatasetBySelector({
29
- dataset,
30
- client,
31
- }: GetDatasetLikeParams): Promise<Dataset | null> {
32
- if (typeof dataset === "string") {
33
- const datasetResponse = await client
34
- .GET(`/v1/datasets/{id}`, { params: { path: { id: dataset } } })
35
- .then((d) => d.data?.data);
36
- invariant(datasetResponse, `Dataset ${dataset} not found`);
37
- const examples = await client
38
- .GET(`/v1/datasets/{id}/examples`, { params: { path: { id: dataset } } })
39
- .then((e) => e.data?.data);
40
- invariant(examples, `Examples for dataset ${dataset} not found`);
41
- const datasetWithExamples: Dataset = {
42
- ...datasetResponse,
43
- examples: examples.examples.map((example) => ({
44
- ...example,
45
- updatedAt: new Date(example.updated_at),
46
- })),
47
- versionId: examples.version_id,
48
- };
49
- return datasetWithExamples;
50
- }
51
- if (Array.isArray(dataset)) {
52
- throw new Error("TODO: implement dataset creation from examples");
53
- }
54
- return dataset;
55
- }