@arizeai/phoenix-client
Version:
A client for the Phoenix API
44 lines • 1.5 kB
JavaScript
import { createClient } from "../client.js";
import { getDatasetInfoByName } from "./getDatasetInfoByName.js";
import invariant from "tiny-invariant";
/**
* Get examples from a dataset
* @param dataset - Dataset selector (ID, name, version ID, or splits)
* @returns Dataset examples
*/
export async function getDatasetExamples({ client: _client, dataset: datasetSelector, }) {
const client = _client || createClient();
let datasetId;
if ("datasetName" in datasetSelector) {
const datasetInfo = await getDatasetInfoByName({
client,
datasetName: datasetSelector.datasetName,
});
datasetId = datasetInfo.id;
}
else {
datasetId = datasetSelector.datasetId;
}
const { versionId, splits } = datasetSelector;
const response = await client.GET("/v1/datasets/{id}/examples", {
params: {
path: {
id: datasetId,
},
query: {
...(versionId ? { version_id: versionId } : {}),
...(splits ? { split: splits } : {}),
},
},
});
invariant(response.data?.data, "Failed to get dataset examples");
const examplesData = response.data.data;
return {
versionId: examplesData.version_id,
examples: examplesData.examples.map((example) => ({
...example,
updatedAt: new Date(example.updated_at),
})),
};
}
//# sourceMappingURL=getDatasetExamples.js.map