164 lines
		
	
	
		
			6.2 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
			
		
		
	
	
			164 lines
		
	
	
		
			6.2 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
| import { APIResource } from "../core/resource.js";
 | |
| import { APIPromise } from "../core/api-promise.js";
 | |
| import { CursorPage, type CursorPageParams, PagePromise } from "../core/pagination.js";
 | |
| import { type Uploadable } from "../core/uploads.js";
 | |
| import { RequestOptions } from "../internal/request-options.js";
 | |
| export declare class Files extends APIResource {
 | |
|     /**
 | |
|      * Upload a file that can be used across various endpoints. Individual files can be
 | |
|      * up to 512 MB, and the size of all files uploaded by one organization can be up
 | |
|      * to 1 TB.
 | |
|      *
 | |
|      * The Assistants API supports files up to 2 million tokens and of specific file
 | |
|      * types. See the
 | |
|      * [Assistants Tools guide](https://platform.openai.com/docs/assistants/tools) for
 | |
|      * details.
 | |
|      *
 | |
|      * The Fine-tuning API only supports `.jsonl` files. The input also has certain
 | |
|      * required formats for fine-tuning
 | |
|      * [chat](https://platform.openai.com/docs/api-reference/fine-tuning/chat-input) or
 | |
|      * [completions](https://platform.openai.com/docs/api-reference/fine-tuning/completions-input)
 | |
|      * models.
 | |
|      *
 | |
|      * The Batch API only supports `.jsonl` files up to 200 MB in size. The input also
 | |
|      * has a specific required
 | |
|      * [format](https://platform.openai.com/docs/api-reference/batch/request-input).
 | |
|      *
 | |
|      * Please [contact us](https://help.openai.com/) if you need to increase these
 | |
|      * storage limits.
 | |
|      */
 | |
|     create(body: FileCreateParams, options?: RequestOptions): APIPromise<FileObject>;
 | |
|     /**
 | |
|      * Returns information about a specific file.
 | |
|      */
 | |
|     retrieve(fileID: string, options?: RequestOptions): APIPromise<FileObject>;
 | |
|     /**
 | |
|      * Returns a list of files.
 | |
|      */
 | |
|     list(query?: FileListParams | null | undefined, options?: RequestOptions): PagePromise<FileObjectsPage, FileObject>;
 | |
|     /**
 | |
|      * Delete a file.
 | |
|      */
 | |
|     delete(fileID: string, options?: RequestOptions): APIPromise<FileDeleted>;
 | |
|     /**
 | |
|      * Returns the contents of the specified file.
 | |
|      */
 | |
|     content(fileID: string, options?: RequestOptions): APIPromise<Response>;
 | |
|     /**
 | |
|      * Waits for the given file to be processed, default timeout is 30 mins.
 | |
|      */
 | |
|     waitForProcessing(id: string, { pollInterval, maxWait }?: {
 | |
|         pollInterval?: number;
 | |
|         maxWait?: number;
 | |
|     }): Promise<FileObject>;
 | |
| }
 | |
| export type FileObjectsPage = CursorPage<FileObject>;
 | |
| export type FileContent = string;
 | |
| export interface FileDeleted {
 | |
|     id: string;
 | |
|     deleted: boolean;
 | |
|     object: 'file';
 | |
| }
 | |
| /**
 | |
|  * The `File` object represents a document that has been uploaded to OpenAI.
 | |
|  */
 | |
| export interface FileObject {
 | |
|     /**
 | |
|      * The file identifier, which can be referenced in the API endpoints.
 | |
|      */
 | |
|     id: string;
 | |
|     /**
 | |
|      * The size of the file, in bytes.
 | |
|      */
 | |
|     bytes: number;
 | |
|     /**
 | |
|      * The Unix timestamp (in seconds) for when the file was created.
 | |
|      */
 | |
|     created_at: number;
 | |
|     /**
 | |
|      * The name of the file.
 | |
|      */
 | |
|     filename: string;
 | |
|     /**
 | |
|      * The object type, which is always `file`.
 | |
|      */
 | |
|     object: 'file';
 | |
|     /**
 | |
|      * The intended purpose of the file. Supported values are `assistants`,
 | |
|      * `assistants_output`, `batch`, `batch_output`, `fine-tune`, `fine-tune-results`,
 | |
|      * `vision`, and `user_data`.
 | |
|      */
 | |
|     purpose: 'assistants' | 'assistants_output' | 'batch' | 'batch_output' | 'fine-tune' | 'fine-tune-results' | 'vision' | 'user_data';
 | |
|     /**
 | |
|      * @deprecated Deprecated. The current status of the file, which can be either
 | |
|      * `uploaded`, `processed`, or `error`.
 | |
|      */
 | |
|     status: 'uploaded' | 'processed' | 'error';
 | |
|     /**
 | |
|      * The Unix timestamp (in seconds) for when the file will expire.
 | |
|      */
 | |
|     expires_at?: number;
 | |
|     /**
 | |
|      * @deprecated Deprecated. For details on why a fine-tuning training file failed
 | |
|      * validation, see the `error` field on `fine_tuning.job`.
 | |
|      */
 | |
|     status_details?: string;
 | |
| }
 | |
| /**
 | |
|  * The intended purpose of the uploaded file. One of: - `assistants`: Used in the
 | |
|  * Assistants API - `batch`: Used in the Batch API - `fine-tune`: Used for
 | |
|  * fine-tuning - `vision`: Images used for vision fine-tuning - `user_data`:
 | |
|  * Flexible file type for any purpose - `evals`: Used for eval data sets
 | |
|  */
 | |
| export type FilePurpose = 'assistants' | 'batch' | 'fine-tune' | 'vision' | 'user_data' | 'evals';
 | |
| export interface FileCreateParams {
 | |
|     /**
 | |
|      * The File object (not file name) to be uploaded.
 | |
|      */
 | |
|     file: Uploadable;
 | |
|     /**
 | |
|      * The intended purpose of the uploaded file. One of: - `assistants`: Used in the
 | |
|      * Assistants API - `batch`: Used in the Batch API - `fine-tune`: Used for
 | |
|      * fine-tuning - `vision`: Images used for vision fine-tuning - `user_data`:
 | |
|      * Flexible file type for any purpose - `evals`: Used for eval data sets
 | |
|      */
 | |
|     purpose: FilePurpose;
 | |
|     /**
 | |
|      * The expiration policy for a file. By default, files with `purpose=batch` expire
 | |
|      * after 30 days and all other files are persisted until they are manually deleted.
 | |
|      */
 | |
|     expires_after?: FileCreateParams.ExpiresAfter;
 | |
| }
 | |
| export declare namespace FileCreateParams {
 | |
|     /**
 | |
|      * The expiration policy for a file. By default, files with `purpose=batch` expire
 | |
|      * after 30 days and all other files are persisted until they are manually deleted.
 | |
|      */
 | |
|     interface ExpiresAfter {
 | |
|         /**
 | |
|          * Anchor timestamp after which the expiration policy applies. Supported anchors:
 | |
|          * `created_at`.
 | |
|          */
 | |
|         anchor: 'created_at';
 | |
|         /**
 | |
|          * The number of seconds after the anchor time that the file will expire. Must be
 | |
|          * between 3600 (1 hour) and 2592000 (30 days).
 | |
|          */
 | |
|         seconds: number;
 | |
|     }
 | |
| }
 | |
| export interface FileListParams extends CursorPageParams {
 | |
|     /**
 | |
|      * Sort order by the `created_at` timestamp of the objects. `asc` for ascending
 | |
|      * order and `desc` for descending order.
 | |
|      */
 | |
|     order?: 'asc' | 'desc';
 | |
|     /**
 | |
|      * Only return files with the given purpose.
 | |
|      */
 | |
|     purpose?: string;
 | |
| }
 | |
| export declare namespace Files {
 | |
|     export { type FileContent as FileContent, type FileDeleted as FileDeleted, type FileObject as FileObject, type FilePurpose as FilePurpose, type FileObjectsPage as FileObjectsPage, type FileCreateParams as FileCreateParams, type FileListParams as FileListParams, };
 | |
| }
 | |
| //# sourceMappingURL=files.d.ts.map
 |