files
The files
module provides classes for uploading, retrieving, listing, and deleting files used across various OpenAI API endpoints.
The module supports both synchronous and asynchronous operations, along with handling of raw responses and streaming of file content. Designed for use cases that involve managing large datasets or files for purposes like fine-tuning models or using assistants, this module facilitates the efficient handling of file-related operations on the OpenAI platform.
Classes:
Name | Description |
---|---|
AsyncFiles |
|
AsyncFilesWithRawResponse |
|
AsyncFilesWithStreamingResponse |
|
Files |
|
FilesWithRawResponse |
|
FilesWithStreamingResponse |
|
AsyncFiles
AsyncFiles(client: AsyncOpenAI)
Methods:
Name | Description |
---|---|
content |
Returns the contents of the specified file. |
create |
Upload a file that can be used across various endpoints. |
delete |
Delete a file. |
list |
Returns a list of files that belong to the user's organization. |
retrieve |
Returns information about a specific file. |
retrieve_content |
Returns the contents of the specified file. |
wait_for_processing |
Waits for the given file to be processed, default timeout is 30 mins. |
with_raw_response |
|
with_streaming_response |
|
content
async
content(
file_id: str,
*,
extra_headers: Headers | None = None,
extra_query: Query | None = None,
extra_body: Body | None = None,
timeout: float | Timeout | None | NotGiven = NOT_GIVEN
) -> HttpxBinaryResponseContent
Returns the contents of the specified file.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
extra_headers
|
Headers | None
|
Send extra headers |
None
|
extra_query
|
Query | None
|
Add additional query parameters to the request |
None
|
extra_body
|
Body | None
|
Add additional JSON properties to the request |
None
|
timeout
|
float | Timeout | None | NotGiven
|
Override the client-level default timeout for this request, in seconds |
NOT_GIVEN
|
create
async
create(
*,
file: FileTypes,
purpose: Literal["fine-tune", "assistants"],
extra_headers: Headers | None = None,
extra_query: Query | None = None,
extra_body: Body | None = None,
timeout: float | Timeout | None | NotGiven = NOT_GIVEN
) -> FileObject
Upload a file that can be used across various endpoints.
The size of all the files uploaded by one organization can be up to 100 GB.
The size of individual files can be a maximum of 512 MB or 2 million tokens for
Assistants. See the
Assistants Tools guide to
learn more about the types of files supported. The Fine-tuning API only supports
.jsonl
files.
Please contact us if you need to increase these storage limits.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
file
|
FileTypes
|
The File object (not file name) to be uploaded. |
required |
purpose
|
Literal['fine-tune', 'assistants']
|
The intended purpose of the uploaded file. Use "fine-tune" for Fine-tuning and "assistants" for Assistants and Messages. This allows us to validate the format of the uploaded file is correct for fine-tuning. |
required |
extra_headers
|
Headers | None
|
Send extra headers |
None
|
extra_query
|
Query | None
|
Add additional query parameters to the request |
None
|
extra_body
|
Body | None
|
Add additional JSON properties to the request |
None
|
timeout
|
float | Timeout | None | NotGiven
|
Override the client-level default timeout for this request, in seconds |
NOT_GIVEN
|
delete
async
delete(
file_id: str,
*,
extra_headers: Headers | None = None,
extra_query: Query | None = None,
extra_body: Body | None = None,
timeout: float | Timeout | None | NotGiven = NOT_GIVEN
) -> FileDeleted
Delete a file.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
extra_headers
|
Headers | None
|
Send extra headers |
None
|
extra_query
|
Query | None
|
Add additional query parameters to the request |
None
|
extra_body
|
Body | None
|
Add additional JSON properties to the request |
None
|
timeout
|
float | Timeout | None | NotGiven
|
Override the client-level default timeout for this request, in seconds |
NOT_GIVEN
|
list
list(
*,
purpose: str | NotGiven = NOT_GIVEN,
extra_headers: Headers | None = None,
extra_query: Query | None = None,
extra_body: Body | None = None,
timeout: float | Timeout | None | NotGiven = NOT_GIVEN
) -> AsyncPaginator[FileObject, AsyncPage[FileObject]]
Returns a list of files that belong to the user's organization.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
purpose
|
str | NotGiven
|
Only return files with the given purpose. |
NOT_GIVEN
|
extra_headers
|
Headers | None
|
Send extra headers |
None
|
extra_query
|
Query | None
|
Add additional query parameters to the request |
None
|
extra_body
|
Body | None
|
Add additional JSON properties to the request |
None
|
timeout
|
float | Timeout | None | NotGiven
|
Override the client-level default timeout for this request, in seconds |
NOT_GIVEN
|
retrieve
async
retrieve(
file_id: str,
*,
extra_headers: Headers | None = None,
extra_query: Query | None = None,
extra_body: Body | None = None,
timeout: float | Timeout | None | NotGiven = NOT_GIVEN
) -> FileObject
Returns information about a specific file.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
extra_headers
|
Headers | None
|
Send extra headers |
None
|
extra_query
|
Query | None
|
Add additional query parameters to the request |
None
|
extra_body
|
Body | None
|
Add additional JSON properties to the request |
None
|
timeout
|
float | Timeout | None | NotGiven
|
Override the client-level default timeout for this request, in seconds |
NOT_GIVEN
|
retrieve_content
async
retrieve_content(
file_id: str,
*,
extra_headers: Headers | None = None,
extra_query: Query | None = None,
extra_body: Body | None = None,
timeout: float | Timeout | None | NotGiven = NOT_GIVEN
) -> str
Returns the contents of the specified file.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
extra_headers
|
Headers | None
|
Send extra headers |
None
|
extra_query
|
Query | None
|
Add additional query parameters to the request |
None
|
extra_body
|
Body | None
|
Add additional JSON properties to the request |
None
|
timeout
|
float | Timeout | None | NotGiven
|
Override the client-level default timeout for this request, in seconds |
NOT_GIVEN
|
wait_for_processing
async
wait_for_processing(
id: str,
*,
poll_interval: float = 5.0,
max_wait_seconds: float = 30 * 60
) -> FileObject
Waits for the given file to be processed, default timeout is 30 mins.
AsyncFilesWithRawResponse
AsyncFilesWithRawResponse(files: AsyncFiles)
AsyncFilesWithStreamingResponse
AsyncFilesWithStreamingResponse(files: AsyncFiles)
Files
Files(client: OpenAI)
Methods:
Name | Description |
---|---|
content |
Returns the contents of the specified file. |
create |
Upload a file that can be used across various endpoints. |
delete |
Delete a file. |
list |
Returns a list of files that belong to the user's organization. |
retrieve |
Returns information about a specific file. |
retrieve_content |
Returns the contents of the specified file. |
wait_for_processing |
Waits for the given file to be processed, default timeout is 30 mins. |
with_raw_response |
|
with_streaming_response |
|
content
content(
file_id: str,
*,
extra_headers: Headers | None = None,
extra_query: Query | None = None,
extra_body: Body | None = None,
timeout: float | Timeout | None | NotGiven = NOT_GIVEN
) -> HttpxBinaryResponseContent
Returns the contents of the specified file.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
extra_headers
|
Headers | None
|
Send extra headers |
None
|
extra_query
|
Query | None
|
Add additional query parameters to the request |
None
|
extra_body
|
Body | None
|
Add additional JSON properties to the request |
None
|
timeout
|
float | Timeout | None | NotGiven
|
Override the client-level default timeout for this request, in seconds |
NOT_GIVEN
|
create
create(
*,
file: FileTypes,
purpose: Literal["fine-tune", "assistants"],
extra_headers: Headers | None = None,
extra_query: Query | None = None,
extra_body: Body | None = None,
timeout: float | Timeout | None | NotGiven = NOT_GIVEN
) -> FileObject
Upload a file that can be used across various endpoints.
The size of all the files uploaded by one organization can be up to 100 GB.
The size of individual files can be a maximum of 512 MB or 2 million tokens for
Assistants. See the
Assistants Tools guide to
learn more about the types of files supported. The Fine-tuning API only supports
.jsonl
files.
Please contact us if you need to increase these storage limits.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
file
|
FileTypes
|
The File object (not file name) to be uploaded. |
required |
purpose
|
Literal['fine-tune', 'assistants']
|
The intended purpose of the uploaded file. Use "fine-tune" for Fine-tuning and "assistants" for Assistants and Messages. This allows us to validate the format of the uploaded file is correct for fine-tuning. |
required |
extra_headers
|
Headers | None
|
Send extra headers |
None
|
extra_query
|
Query | None
|
Add additional query parameters to the request |
None
|
extra_body
|
Body | None
|
Add additional JSON properties to the request |
None
|
timeout
|
float | Timeout | None | NotGiven
|
Override the client-level default timeout for this request, in seconds |
NOT_GIVEN
|
delete
delete(
file_id: str,
*,
extra_headers: Headers | None = None,
extra_query: Query | None = None,
extra_body: Body | None = None,
timeout: float | Timeout | None | NotGiven = NOT_GIVEN
) -> FileDeleted
Delete a file.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
extra_headers
|
Headers | None
|
Send extra headers |
None
|
extra_query
|
Query | None
|
Add additional query parameters to the request |
None
|
extra_body
|
Body | None
|
Add additional JSON properties to the request |
None
|
timeout
|
float | Timeout | None | NotGiven
|
Override the client-level default timeout for this request, in seconds |
NOT_GIVEN
|
list
list(
*,
purpose: str | NotGiven = NOT_GIVEN,
extra_headers: Headers | None = None,
extra_query: Query | None = None,
extra_body: Body | None = None,
timeout: float | Timeout | None | NotGiven = NOT_GIVEN
) -> SyncPage[FileObject]
Returns a list of files that belong to the user's organization.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
purpose
|
str | NotGiven
|
Only return files with the given purpose. |
NOT_GIVEN
|
extra_headers
|
Headers | None
|
Send extra headers |
None
|
extra_query
|
Query | None
|
Add additional query parameters to the request |
None
|
extra_body
|
Body | None
|
Add additional JSON properties to the request |
None
|
timeout
|
float | Timeout | None | NotGiven
|
Override the client-level default timeout for this request, in seconds |
NOT_GIVEN
|
retrieve
retrieve(
file_id: str,
*,
extra_headers: Headers | None = None,
extra_query: Query | None = None,
extra_body: Body | None = None,
timeout: float | Timeout | None | NotGiven = NOT_GIVEN
) -> FileObject
Returns information about a specific file.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
extra_headers
|
Headers | None
|
Send extra headers |
None
|
extra_query
|
Query | None
|
Add additional query parameters to the request |
None
|
extra_body
|
Body | None
|
Add additional JSON properties to the request |
None
|
timeout
|
float | Timeout | None | NotGiven
|
Override the client-level default timeout for this request, in seconds |
NOT_GIVEN
|
retrieve_content
retrieve_content(
file_id: str,
*,
extra_headers: Headers | None = None,
extra_query: Query | None = None,
extra_body: Body | None = None,
timeout: float | Timeout | None | NotGiven = NOT_GIVEN
) -> str
Returns the contents of the specified file.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
extra_headers
|
Headers | None
|
Send extra headers |
None
|
extra_query
|
Query | None
|
Add additional query parameters to the request |
None
|
extra_body
|
Body | None
|
Add additional JSON properties to the request |
None
|
timeout
|
float | Timeout | None | NotGiven
|
Override the client-level default timeout for this request, in seconds |
NOT_GIVEN
|
wait_for_processing
wait_for_processing(
id: str,
*,
poll_interval: float = 5.0,
max_wait_seconds: float = 30 * 60
) -> FileObject
Waits for the given file to be processed, default timeout is 30 mins.
FilesWithRawResponse
FilesWithRawResponse(files: Files)