Files
openrouter-python-sdk-retry…/src/openrouter/components/openairesponseinputmessageitem.py
T

81 lines
2.4 KiB
Python

"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
from __future__ import annotations
from .inputaudio import InputAudio, InputAudioTypedDict
from .inputfile import InputFile, InputFileTypedDict
from .inputimage import InputImage, InputImageTypedDict
from .inputtext import InputText, InputTextTypedDict
from openrouter.types import BaseModel
from openrouter.utils import get_discriminator
from pydantic import Discriminator, Tag
from typing import List, Literal, Optional, Union
from typing_extensions import Annotated, NotRequired, TypeAliasType, TypedDict
OpenAIResponseInputMessageItemContentTypedDict = TypeAliasType(
"OpenAIResponseInputMessageItemContentTypedDict",
Union[
InputTextTypedDict, InputAudioTypedDict, InputImageTypedDict, InputFileTypedDict
],
)
OpenAIResponseInputMessageItemContent = Annotated[
Union[
Annotated[InputAudio, Tag("input_audio")],
Annotated[InputFile, Tag("input_file")],
Annotated[InputImage, Tag("input_image")],
Annotated[InputText, Tag("input_text")],
],
Discriminator(lambda m: get_discriminator(m, "type", "type")),
]
OpenAIResponseInputMessageItemRoleDeveloper = Literal["developer",]
OpenAIResponseInputMessageItemRoleSystem = Literal["system",]
OpenAIResponseInputMessageItemRoleUser = Literal["user",]
OpenAIResponseInputMessageItemRoleUnionTypedDict = TypeAliasType(
"OpenAIResponseInputMessageItemRoleUnionTypedDict",
Union[
OpenAIResponseInputMessageItemRoleUser,
OpenAIResponseInputMessageItemRoleSystem,
OpenAIResponseInputMessageItemRoleDeveloper,
],
)
OpenAIResponseInputMessageItemRoleUnion = TypeAliasType(
"OpenAIResponseInputMessageItemRoleUnion",
Union[
OpenAIResponseInputMessageItemRoleUser,
OpenAIResponseInputMessageItemRoleSystem,
OpenAIResponseInputMessageItemRoleDeveloper,
],
)
OpenAIResponseInputMessageItemType = Literal["message",]
class OpenAIResponseInputMessageItemTypedDict(TypedDict):
content: List[OpenAIResponseInputMessageItemContentTypedDict]
id: str
role: OpenAIResponseInputMessageItemRoleUnionTypedDict
type: NotRequired[OpenAIResponseInputMessageItemType]
class OpenAIResponseInputMessageItem(BaseModel):
content: List[OpenAIResponseInputMessageItemContent]
id: str
role: OpenAIResponseInputMessageItemRoleUnion
type: Optional[OpenAIResponseInputMessageItemType] = None