@future-agi/sdk
Version:
We help GenAI teams maintain high-accuracy for their Models in production.
88 lines • 3.73 kB
TypeScript
import { AxiosResponse } from 'axios';
import { APIKeyAuth, APIKeyAuthConfig, ResponseHandler } from '../api/auth';
import { DatasetConfig, DatasetTable, HuggingfaceDatasetConfig, Column, Row } from './types';
/**
* Response handler for dataset operations
*/
export declare class DatasetResponseHandler extends ResponseHandler {
static _parseSuccess(response: AxiosResponse): DatasetConfig | DatasetTable;
static _handleError(response: AxiosResponse): never;
}
/**
* Dataset manager class for handling dataset operations
*/
export declare class Dataset extends APIKeyAuth {
private static _datasetInstanceCache;
private _datasetConfig;
constructor(config?: APIKeyAuthConfig & {
datasetConfig?: DatasetConfig;
});
private _initializeDatasetConfig;
create(source?: string | HuggingfaceDatasetConfig): Promise<Dataset>;
download(filePath?: string, loadToMemory?: boolean): Promise<Dataset | string | object>;
delete(): Promise<void>;
getConfig(): DatasetConfig;
addColumns(columns: Array<Column | Partial<Column>>): Promise<Dataset>;
addRows(rows: Array<Row | Partial<Row>>): Promise<Dataset>;
getColumnId(columnName: string): Promise<string | null>;
addRunPrompt(options: {
name: string;
model: string;
messages: Array<{
role: string;
content: string;
}>;
outputFormat?: string;
concurrency?: number;
maxTokens?: number;
temperature?: number;
presencePenalty?: number;
frequencyPenalty?: number;
topP?: number;
tools?: Array<Record<string, any>>;
toolChoice?: any;
responseFormat?: Record<string, any>;
}): Promise<Dataset>;
addEvaluation(options: {
name: string;
evalTemplate: string;
requiredKeysToColumnNames: Record<string, string>;
saveAsTemplate?: boolean;
run?: boolean;
reasonColumn?: boolean;
config?: Record<string, any>;
model: string;
errorLocalizer?: boolean;
kbId?: string;
}): Promise<Dataset>;
getEvalStats(): Promise<Record<string, any>>;
addOptimization(options: {
optimizationName: string;
promptColumnName: string;
optimizeType?: string;
modelConfig?: Record<string, any>;
}): Promise<Dataset>;
private _fetchDatasetConfig;
private _createDataset;
private _createEmptyDataset;
private _createFromFile;
private _createFromHuggingface;
private _downloadDataset;
private _deleteDataset;
private _addColumns;
private _addRows;
static createDataset(datasetConfig: DatasetConfig, source?: string | HuggingfaceDatasetConfig, options?: APIKeyAuthConfig): Promise<Dataset>;
static downloadDataset(datasetName: string, filePath?: string, loadToMemory?: boolean, options?: APIKeyAuthConfig): Promise<string | object>;
static deleteDataset(datasetName: string, options?: APIKeyAuthConfig): Promise<void>;
static getDatasetConfig(datasetName: string, options?: APIKeyAuthConfig): Promise<DatasetConfig>;
static addDatasetColumns(datasetName: string, columns: Array<Column | Partial<Column>>, options?: APIKeyAuthConfig): Promise<void>;
static addDatasetRows(datasetName: string, rows: Array<Row | Partial<Row>>, options?: APIKeyAuthConfig): Promise<void>;
/**
* Unified helper that always returns a ready-to-use Dataset instance.
* If the dataset already exists it is fetched; otherwise it is created (unless createIfMissing === false).
*/
static open(datasetName: string, opts?: {
createIfMissing?: boolean;
} & APIKeyAuthConfig): Promise<Dataset>;
}
//# sourceMappingURL=dataset.d.ts.map