Commit 05f0132f
Changed files (8)
src
openai
resources
uploads
src/openai/resources/uploads/uploads.py
@@ -3,7 +3,6 @@
from __future__ import annotations
from typing import List
-from typing_extensions import Literal
import httpx
@@ -16,7 +15,7 @@ from .parts import (
PartsWithStreamingResponse,
AsyncPartsWithStreamingResponse,
)
-from ...types import upload_create_params, upload_complete_params
+from ...types import FilePurpose, upload_create_params, upload_complete_params
from ..._types import NOT_GIVEN, Body, Query, Headers, NotGiven
from ..._utils import (
maybe_transform,
@@ -27,6 +26,7 @@ from ..._resource import SyncAPIResource, AsyncAPIResource
from ..._response import to_streamed_response_wrapper, async_to_streamed_response_wrapper
from ..._base_client import make_request_options
from ...types.upload import Upload
+from ...types.file_purpose import FilePurpose
__all__ = ["Uploads", "AsyncUploads"]
@@ -50,7 +50,7 @@ class Uploads(SyncAPIResource):
bytes: int,
filename: str,
mime_type: str,
- purpose: Literal["assistants", "batch", "fine-tune", "vision"],
+ purpose: FilePurpose,
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
# The extra values given here take precedence over values defined on the client or passed to this method.
extra_headers: Headers | None = None,
@@ -233,7 +233,7 @@ class AsyncUploads(AsyncAPIResource):
bytes: int,
filename: str,
mime_type: str,
- purpose: Literal["assistants", "batch", "fine-tune", "vision"],
+ purpose: FilePurpose,
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
# The extra values given here take precedence over values defined on the client or passed to this method.
extra_headers: Headers | None = None,
src/openai/resources/files.py
@@ -5,12 +5,11 @@ from __future__ import annotations
import time
import typing_extensions
from typing import Mapping, cast
-from typing_extensions import Literal
import httpx
from .. import _legacy_response
-from ..types import file_list_params, file_create_params
+from ..types import FilePurpose, file_list_params, file_create_params
from .._types import NOT_GIVEN, Body, Query, Headers, NotGiven, FileTypes
from .._utils import (
extract_files,
@@ -35,6 +34,7 @@ from .._base_client import (
)
from ..types.file_object import FileObject
from ..types.file_deleted import FileDeleted
+from ..types.file_purpose import FilePurpose
__all__ = ["Files", "AsyncFiles"]
@@ -52,7 +52,7 @@ class Files(SyncAPIResource):
self,
*,
file: FileTypes,
- purpose: Literal["assistants", "batch", "fine-tune", "vision"],
+ purpose: FilePurpose,
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
# The extra values given here take precedence over values defined on the client or passed to this method.
extra_headers: Headers | None = None,
@@ -334,7 +334,7 @@ class AsyncFiles(AsyncAPIResource):
self,
*,
file: FileTypes,
- purpose: Literal["assistants", "batch", "fine-tune", "vision"],
+ purpose: FilePurpose,
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
# The extra values given here take precedence over values defined on the client or passed to this method.
extra_headers: Headers | None = None,
src/openai/types/__init__.py
@@ -24,6 +24,7 @@ from .file_object import FileObject as FileObject
from .image_model import ImageModel as ImageModel
from .file_content import FileContent as FileContent
from .file_deleted import FileDeleted as FileDeleted
+from .file_purpose import FilePurpose as FilePurpose
from .model_deleted import ModelDeleted as ModelDeleted
from .images_response import ImagesResponse as ImagesResponse
from .completion_usage import CompletionUsage as CompletionUsage
src/openai/types/file_create_params.py
@@ -2,9 +2,10 @@
from __future__ import annotations
-from typing_extensions import Literal, Required, TypedDict
+from typing_extensions import Required, TypedDict
from .._types import FileTypes
+from .file_purpose import FilePurpose
__all__ = ["FileCreateParams"]
@@ -13,7 +14,7 @@ class FileCreateParams(TypedDict, total=False):
file: Required[FileTypes]
"""The File object (not file name) to be uploaded."""
- purpose: Required[Literal["assistants", "batch", "fine-tune", "vision"]]
+ purpose: Required[FilePurpose]
"""The intended purpose of the uploaded file.
Use "assistants" for
src/openai/types/file_purpose.py
@@ -0,0 +1,7 @@
+# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
+
+from typing_extensions import Literal, TypeAlias
+
+__all__ = ["FilePurpose"]
+
+FilePurpose: TypeAlias = Literal["assistants", "batch", "fine-tune", "vision"]
src/openai/types/upload_create_params.py
@@ -2,7 +2,9 @@
from __future__ import annotations
-from typing_extensions import Literal, Required, TypedDict
+from typing_extensions import Required, TypedDict
+
+from .file_purpose import FilePurpose
__all__ = ["UploadCreateParams"]
@@ -21,7 +23,7 @@ class UploadCreateParams(TypedDict, total=False):
supported MIME types for assistants and vision.
"""
- purpose: Required[Literal["assistants", "batch", "fine-tune", "vision"]]
+ purpose: Required[FilePurpose]
"""The intended purpose of the uploaded file.
See the
.stats.yml
@@ -1,2 +1,2 @@
configured_endpoints: 68
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/openai-285bce7dcdae7eea5fe84a8d6e5af2c1473d65ea193109370fb2257851eef7eb.yml
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/openai-8ff62fa1091460d68fbd36d72c17d91b709917bebf2983c9c4de5784bc384a2e.yml
api.md
@@ -82,7 +82,7 @@ Methods:
Types:
```python
-from openai.types import FileContent, FileDeleted, FileObject
+from openai.types import FileContent, FileDeleted, FileObject, FilePurpose
```
Methods: