UNPKG

@arizeai/phoenix-client

Version:

A client for the Phoenix API

47 lines (40 loc) 1.26 kB
import { createClient } from "../client"; import { ClientFn } from "../types/core"; import { DatasetInfo, DatasetSelector } from "../types/datasets"; import { getDatasetInfoByName } from "./getDatasetInfoByName"; import invariant from "tiny-invariant"; export type GetDatasetInfoParams = ClientFn & { dataset: DatasetSelector; }; /** * Get an overview of the information in a dataset * Note: this does not include the examples contained in the dataset * Dataset info is not version-specific, only examples are versioned */ export async function getDatasetInfo({ client: _client, dataset, }: GetDatasetInfoParams): Promise<DatasetInfo> { const client = _client || createClient(); if ("datasetName" in dataset) { return await getDatasetInfoByName({ client, datasetName: dataset.datasetName, }); } const datasetResponse = await client.GET("/v1/datasets/{id}", { params: { path: { id: dataset.datasetId, }, }, }); invariant(datasetResponse.data?.data, "Failed to get dataset info"); const datasetInfo = datasetResponse.data.data; return { id: datasetInfo.id, name: datasetInfo.name, description: datasetInfo.description || undefined, metadata: datasetInfo.metadata, }; }