mirror of
https://github.com/wassname/openrouter-python-sdk-retry-errors.git
synced 2026-07-29 11:23:49 +08:00
Project import generated by Copybara.
GitOrigin-RevId: 2592bdc8b4b7c695a3d689390aedc9a42914acc8
This commit is contained in:
@@ -7,23 +7,27 @@ import sys
|
||||
|
||||
if TYPE_CHECKING:
|
||||
from ._schema0 import Schema0, Schema0Enum, Schema0TypedDict
|
||||
from ._schema3 import (
|
||||
Schema3,
|
||||
Schema3ReasoningEncrypted,
|
||||
Schema3ReasoningEncryptedTypedDict,
|
||||
Schema3ReasoningSummary,
|
||||
Schema3ReasoningSummaryTypedDict,
|
||||
Schema3ReasoningText,
|
||||
Schema3ReasoningTextTypedDict,
|
||||
Schema3TypedDict,
|
||||
Schema5,
|
||||
from ._schema2 import (
|
||||
Schema2,
|
||||
Schema2ReasoningEncrypted,
|
||||
Schema2ReasoningEncryptedTypedDict,
|
||||
Schema2ReasoningSummary,
|
||||
Schema2ReasoningSummaryTypedDict,
|
||||
Schema2ReasoningText,
|
||||
Schema2ReasoningTextTypedDict,
|
||||
Schema2TypedDict,
|
||||
Schema4,
|
||||
)
|
||||
from .activityitem import ActivityItem, ActivityItemTypedDict
|
||||
from .assistantmessage import (
|
||||
AssistantMessage,
|
||||
AssistantMessageContent,
|
||||
AssistantMessageContentTypedDict,
|
||||
AssistantMessageImageURL,
|
||||
AssistantMessageImageURLTypedDict,
|
||||
AssistantMessageTypedDict,
|
||||
Image,
|
||||
ImageTypedDict,
|
||||
)
|
||||
from .badgatewayresponseerrordata import (
|
||||
BadGatewayResponseErrorData,
|
||||
@@ -114,9 +118,9 @@ if TYPE_CHECKING:
|
||||
from .chatmessagecontentitemimage import (
|
||||
ChatMessageContentItemImage,
|
||||
ChatMessageContentItemImageDetail,
|
||||
ChatMessageContentItemImageImageURL,
|
||||
ChatMessageContentItemImageImageURLTypedDict,
|
||||
ChatMessageContentItemImageTypedDict,
|
||||
ImageURL,
|
||||
ImageURLTypedDict,
|
||||
)
|
||||
from .chatmessagecontentitemtext import (
|
||||
ChatMessageContentItemText,
|
||||
@@ -913,6 +917,8 @@ __all__ = [
|
||||
"AssistantMessage",
|
||||
"AssistantMessageContent",
|
||||
"AssistantMessageContentTypedDict",
|
||||
"AssistantMessageImageURL",
|
||||
"AssistantMessageImageURLTypedDict",
|
||||
"AssistantMessageTypedDict",
|
||||
"BadGatewayResponseErrorData",
|
||||
"BadGatewayResponseErrorDataTypedDict",
|
||||
@@ -972,6 +978,8 @@ __all__ = [
|
||||
"ChatMessageContentItemCacheControlTypedDict",
|
||||
"ChatMessageContentItemImage",
|
||||
"ChatMessageContentItemImageDetail",
|
||||
"ChatMessageContentItemImageImageURL",
|
||||
"ChatMessageContentItemImageImageURLTypedDict",
|
||||
"ChatMessageContentItemImageTypedDict",
|
||||
"ChatMessageContentItemText",
|
||||
"ChatMessageContentItemTextTypedDict",
|
||||
@@ -1066,9 +1074,9 @@ __all__ = [
|
||||
"IDModeration",
|
||||
"IDResponseHealing",
|
||||
"IDWeb",
|
||||
"Image",
|
||||
"ImageGenerationStatus",
|
||||
"ImageURL",
|
||||
"ImageURLTypedDict",
|
||||
"ImageTypedDict",
|
||||
"InputModality",
|
||||
"InputTokensDetails",
|
||||
"InputTokensDetailsTypedDict",
|
||||
@@ -1540,15 +1548,15 @@ __all__ = [
|
||||
"Schema0",
|
||||
"Schema0Enum",
|
||||
"Schema0TypedDict",
|
||||
"Schema3",
|
||||
"Schema3ReasoningEncrypted",
|
||||
"Schema3ReasoningEncryptedTypedDict",
|
||||
"Schema3ReasoningSummary",
|
||||
"Schema3ReasoningSummaryTypedDict",
|
||||
"Schema3ReasoningText",
|
||||
"Schema3ReasoningTextTypedDict",
|
||||
"Schema3TypedDict",
|
||||
"Schema5",
|
||||
"Schema2",
|
||||
"Schema2ReasoningEncrypted",
|
||||
"Schema2ReasoningEncryptedTypedDict",
|
||||
"Schema2ReasoningSummary",
|
||||
"Schema2ReasoningSummaryTypedDict",
|
||||
"Schema2ReasoningText",
|
||||
"Schema2ReasoningTextTypedDict",
|
||||
"Schema2TypedDict",
|
||||
"Schema4",
|
||||
"Security",
|
||||
"SecurityTypedDict",
|
||||
"ServiceTier",
|
||||
@@ -1624,21 +1632,25 @@ _dynamic_imports: dict[str, str] = {
|
||||
"Schema0": "._schema0",
|
||||
"Schema0Enum": "._schema0",
|
||||
"Schema0TypedDict": "._schema0",
|
||||
"Schema3": "._schema3",
|
||||
"Schema3ReasoningEncrypted": "._schema3",
|
||||
"Schema3ReasoningEncryptedTypedDict": "._schema3",
|
||||
"Schema3ReasoningSummary": "._schema3",
|
||||
"Schema3ReasoningSummaryTypedDict": "._schema3",
|
||||
"Schema3ReasoningText": "._schema3",
|
||||
"Schema3ReasoningTextTypedDict": "._schema3",
|
||||
"Schema3TypedDict": "._schema3",
|
||||
"Schema5": "._schema3",
|
||||
"Schema2": "._schema2",
|
||||
"Schema2ReasoningEncrypted": "._schema2",
|
||||
"Schema2ReasoningEncryptedTypedDict": "._schema2",
|
||||
"Schema2ReasoningSummary": "._schema2",
|
||||
"Schema2ReasoningSummaryTypedDict": "._schema2",
|
||||
"Schema2ReasoningText": "._schema2",
|
||||
"Schema2ReasoningTextTypedDict": "._schema2",
|
||||
"Schema2TypedDict": "._schema2",
|
||||
"Schema4": "._schema2",
|
||||
"ActivityItem": ".activityitem",
|
||||
"ActivityItemTypedDict": ".activityitem",
|
||||
"AssistantMessage": ".assistantmessage",
|
||||
"AssistantMessageContent": ".assistantmessage",
|
||||
"AssistantMessageContentTypedDict": ".assistantmessage",
|
||||
"AssistantMessageImageURL": ".assistantmessage",
|
||||
"AssistantMessageImageURLTypedDict": ".assistantmessage",
|
||||
"AssistantMessageTypedDict": ".assistantmessage",
|
||||
"Image": ".assistantmessage",
|
||||
"ImageTypedDict": ".assistantmessage",
|
||||
"BadGatewayResponseErrorData": ".badgatewayresponseerrordata",
|
||||
"BadGatewayResponseErrorDataTypedDict": ".badgatewayresponseerrordata",
|
||||
"BadRequestResponseErrorData": ".badrequestresponseerrordata",
|
||||
@@ -1716,9 +1728,9 @@ _dynamic_imports: dict[str, str] = {
|
||||
"TTL": ".chatmessagecontentitemcachecontrol",
|
||||
"ChatMessageContentItemImage": ".chatmessagecontentitemimage",
|
||||
"ChatMessageContentItemImageDetail": ".chatmessagecontentitemimage",
|
||||
"ChatMessageContentItemImageImageURL": ".chatmessagecontentitemimage",
|
||||
"ChatMessageContentItemImageImageURLTypedDict": ".chatmessagecontentitemimage",
|
||||
"ChatMessageContentItemImageTypedDict": ".chatmessagecontentitemimage",
|
||||
"ImageURL": ".chatmessagecontentitemimage",
|
||||
"ImageURLTypedDict": ".chatmessagecontentitemimage",
|
||||
"ChatMessageContentItemText": ".chatmessagecontentitemtext",
|
||||
"ChatMessageContentItemTextTypedDict": ".chatmessagecontentitemtext",
|
||||
"ChatMessageContentItemVideo": ".chatmessagecontentitemvideo",
|
||||
|
||||
@@ -17,7 +17,7 @@ from typing import Literal, Optional, Union
|
||||
from typing_extensions import Annotated, NotRequired, TypeAliasType, TypedDict
|
||||
|
||||
|
||||
Schema5 = Union[
|
||||
Schema4 = Union[
|
||||
Literal[
|
||||
"unknown",
|
||||
"openai-responses-v1",
|
||||
@@ -30,16 +30,16 @@ Schema5 = Union[
|
||||
]
|
||||
|
||||
|
||||
class Schema3ReasoningTextTypedDict(TypedDict):
|
||||
class Schema2ReasoningTextTypedDict(TypedDict):
|
||||
type: Literal["reasoning.text"]
|
||||
text: NotRequired[Nullable[str]]
|
||||
signature: NotRequired[Nullable[str]]
|
||||
id: NotRequired[Nullable[str]]
|
||||
format_: NotRequired[Nullable[Schema5]]
|
||||
format_: NotRequired[Nullable[Schema4]]
|
||||
index: NotRequired[float]
|
||||
|
||||
|
||||
class Schema3ReasoningText(BaseModel):
|
||||
class Schema2ReasoningText(BaseModel):
|
||||
TYPE: Annotated[
|
||||
Annotated[
|
||||
Literal["reasoning.text"], AfterValidator(validate_const("reasoning.text"))
|
||||
@@ -54,7 +54,7 @@ class Schema3ReasoningText(BaseModel):
|
||||
id: OptionalNullable[str] = UNSET
|
||||
|
||||
format_: Annotated[
|
||||
Annotated[OptionalNullable[Schema5], PlainValidator(validate_open_enum(False))],
|
||||
Annotated[OptionalNullable[Schema4], PlainValidator(validate_open_enum(False))],
|
||||
pydantic.Field(alias="format"),
|
||||
] = UNSET
|
||||
|
||||
@@ -91,15 +91,15 @@ class Schema3ReasoningText(BaseModel):
|
||||
return m
|
||||
|
||||
|
||||
class Schema3ReasoningEncryptedTypedDict(TypedDict):
|
||||
class Schema2ReasoningEncryptedTypedDict(TypedDict):
|
||||
data: str
|
||||
type: Literal["reasoning.encrypted"]
|
||||
id: NotRequired[Nullable[str]]
|
||||
format_: NotRequired[Nullable[Schema5]]
|
||||
format_: NotRequired[Nullable[Schema4]]
|
||||
index: NotRequired[float]
|
||||
|
||||
|
||||
class Schema3ReasoningEncrypted(BaseModel):
|
||||
class Schema2ReasoningEncrypted(BaseModel):
|
||||
data: str
|
||||
|
||||
TYPE: Annotated[
|
||||
@@ -113,7 +113,7 @@ class Schema3ReasoningEncrypted(BaseModel):
|
||||
id: OptionalNullable[str] = UNSET
|
||||
|
||||
format_: Annotated[
|
||||
Annotated[OptionalNullable[Schema5], PlainValidator(validate_open_enum(False))],
|
||||
Annotated[OptionalNullable[Schema4], PlainValidator(validate_open_enum(False))],
|
||||
pydantic.Field(alias="format"),
|
||||
] = UNSET
|
||||
|
||||
@@ -150,15 +150,15 @@ class Schema3ReasoningEncrypted(BaseModel):
|
||||
return m
|
||||
|
||||
|
||||
class Schema3ReasoningSummaryTypedDict(TypedDict):
|
||||
class Schema2ReasoningSummaryTypedDict(TypedDict):
|
||||
summary: str
|
||||
type: Literal["reasoning.summary"]
|
||||
id: NotRequired[Nullable[str]]
|
||||
format_: NotRequired[Nullable[Schema5]]
|
||||
format_: NotRequired[Nullable[Schema4]]
|
||||
index: NotRequired[float]
|
||||
|
||||
|
||||
class Schema3ReasoningSummary(BaseModel):
|
||||
class Schema2ReasoningSummary(BaseModel):
|
||||
summary: str
|
||||
|
||||
TYPE: Annotated[
|
||||
@@ -172,7 +172,7 @@ class Schema3ReasoningSummary(BaseModel):
|
||||
id: OptionalNullable[str] = UNSET
|
||||
|
||||
format_: Annotated[
|
||||
Annotated[OptionalNullable[Schema5], PlainValidator(validate_open_enum(False))],
|
||||
Annotated[OptionalNullable[Schema4], PlainValidator(validate_open_enum(False))],
|
||||
pydantic.Field(alias="format"),
|
||||
] = UNSET
|
||||
|
||||
@@ -209,21 +209,21 @@ class Schema3ReasoningSummary(BaseModel):
|
||||
return m
|
||||
|
||||
|
||||
Schema3TypedDict = TypeAliasType(
|
||||
"Schema3TypedDict",
|
||||
Schema2TypedDict = TypeAliasType(
|
||||
"Schema2TypedDict",
|
||||
Union[
|
||||
Schema3ReasoningSummaryTypedDict,
|
||||
Schema3ReasoningEncryptedTypedDict,
|
||||
Schema3ReasoningTextTypedDict,
|
||||
Schema2ReasoningSummaryTypedDict,
|
||||
Schema2ReasoningEncryptedTypedDict,
|
||||
Schema2ReasoningTextTypedDict,
|
||||
],
|
||||
)
|
||||
|
||||
|
||||
Schema3 = Annotated[
|
||||
Schema2 = Annotated[
|
||||
Union[
|
||||
Annotated[Schema3ReasoningSummary, Tag("reasoning.summary")],
|
||||
Annotated[Schema3ReasoningEncrypted, Tag("reasoning.encrypted")],
|
||||
Annotated[Schema3ReasoningText, Tag("reasoning.text")],
|
||||
Annotated[Schema2ReasoningSummary, Tag("reasoning.summary")],
|
||||
Annotated[Schema2ReasoningEncrypted, Tag("reasoning.encrypted")],
|
||||
Annotated[Schema2ReasoningText, Tag("reasoning.text")],
|
||||
],
|
||||
Discriminator(lambda m: get_discriminator(m, "type", "type")),
|
||||
]
|
||||
@@ -1,6 +1,7 @@
|
||||
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
||||
|
||||
from __future__ import annotations
|
||||
from ._schema2 import Schema2, Schema2TypedDict
|
||||
from .chatmessagecontentitem import (
|
||||
ChatMessageContentItem,
|
||||
ChatMessageContentItemTypedDict,
|
||||
@@ -32,6 +33,22 @@ AssistantMessageContent = TypeAliasType(
|
||||
)
|
||||
|
||||
|
||||
class AssistantMessageImageURLTypedDict(TypedDict):
|
||||
url: str
|
||||
|
||||
|
||||
class AssistantMessageImageURL(BaseModel):
|
||||
url: str
|
||||
|
||||
|
||||
class ImageTypedDict(TypedDict):
|
||||
image_url: AssistantMessageImageURLTypedDict
|
||||
|
||||
|
||||
class Image(BaseModel):
|
||||
image_url: AssistantMessageImageURL
|
||||
|
||||
|
||||
class AssistantMessageTypedDict(TypedDict):
|
||||
role: Literal["assistant"]
|
||||
content: NotRequired[Nullable[AssistantMessageContentTypedDict]]
|
||||
@@ -39,6 +56,8 @@ class AssistantMessageTypedDict(TypedDict):
|
||||
tool_calls: NotRequired[List[ChatMessageToolCallTypedDict]]
|
||||
refusal: NotRequired[Nullable[str]]
|
||||
reasoning: NotRequired[Nullable[str]]
|
||||
reasoning_details: NotRequired[List[Schema2TypedDict]]
|
||||
images: NotRequired[List[ImageTypedDict]]
|
||||
|
||||
|
||||
class AssistantMessage(BaseModel):
|
||||
@@ -57,9 +76,21 @@ class AssistantMessage(BaseModel):
|
||||
|
||||
reasoning: OptionalNullable[str] = UNSET
|
||||
|
||||
reasoning_details: Optional[List[Schema2]] = None
|
||||
|
||||
images: Optional[List[Image]] = None
|
||||
|
||||
@model_serializer(mode="wrap")
|
||||
def serialize_model(self, handler):
|
||||
optional_fields = ["content", "name", "tool_calls", "refusal", "reasoning"]
|
||||
optional_fields = [
|
||||
"content",
|
||||
"name",
|
||||
"tool_calls",
|
||||
"refusal",
|
||||
"reasoning",
|
||||
"reasoning_details",
|
||||
"images",
|
||||
]
|
||||
nullable_fields = ["content", "refusal", "reasoning"]
|
||||
null_default_fields = []
|
||||
|
||||
|
||||
@@ -19,12 +19,12 @@ ChatMessageContentItemImageDetail = Union[
|
||||
]
|
||||
|
||||
|
||||
class ImageURLTypedDict(TypedDict):
|
||||
class ChatMessageContentItemImageImageURLTypedDict(TypedDict):
|
||||
url: str
|
||||
detail: NotRequired[ChatMessageContentItemImageDetail]
|
||||
|
||||
|
||||
class ImageURL(BaseModel):
|
||||
class ChatMessageContentItemImageImageURL(BaseModel):
|
||||
url: str
|
||||
|
||||
detail: Annotated[
|
||||
@@ -34,12 +34,12 @@ class ImageURL(BaseModel):
|
||||
|
||||
|
||||
class ChatMessageContentItemImageTypedDict(TypedDict):
|
||||
image_url: ImageURLTypedDict
|
||||
image_url: ChatMessageContentItemImageImageURLTypedDict
|
||||
type: Literal["image_url"]
|
||||
|
||||
|
||||
class ChatMessageContentItemImage(BaseModel):
|
||||
image_url: ImageURL
|
||||
image_url: ChatMessageContentItemImageImageURL
|
||||
|
||||
TYPE: Annotated[
|
||||
Annotated[Literal["image_url"], AfterValidator(validate_const("image_url"))],
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
||||
|
||||
from __future__ import annotations
|
||||
from ._schema3 import Schema3, Schema3TypedDict
|
||||
from .assistantmessage import AssistantMessage, AssistantMessageTypedDict
|
||||
from .chatcompletionfinishreason import ChatCompletionFinishReason
|
||||
from .chatmessagetokenlogprobs import (
|
||||
@@ -18,7 +17,6 @@ from openrouter.types import (
|
||||
from openrouter.utils import validate_open_enum
|
||||
from pydantic import model_serializer
|
||||
from pydantic.functional_validators import PlainValidator
|
||||
from typing import List, Optional
|
||||
from typing_extensions import Annotated, NotRequired, TypedDict
|
||||
|
||||
|
||||
@@ -26,7 +24,6 @@ class ChatResponseChoiceTypedDict(TypedDict):
|
||||
finish_reason: Nullable[ChatCompletionFinishReason]
|
||||
index: float
|
||||
message: AssistantMessageTypedDict
|
||||
reasoning_details: NotRequired[List[Schema3TypedDict]]
|
||||
logprobs: NotRequired[Nullable[ChatMessageTokenLogprobsTypedDict]]
|
||||
|
||||
|
||||
@@ -39,13 +36,11 @@ class ChatResponseChoice(BaseModel):
|
||||
|
||||
message: AssistantMessage
|
||||
|
||||
reasoning_details: Optional[List[Schema3]] = None
|
||||
|
||||
logprobs: OptionalNullable[ChatMessageTokenLogprobs] = UNSET
|
||||
|
||||
@model_serializer(mode="wrap")
|
||||
def serialize_model(self, handler):
|
||||
optional_fields = ["reasoning_details", "logprobs"]
|
||||
optional_fields = ["logprobs"]
|
||||
nullable_fields = ["finish_reason", "logprobs"]
|
||||
null_default_fields = []
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
||||
|
||||
from __future__ import annotations
|
||||
from ._schema3 import Schema3, Schema3TypedDict
|
||||
from ._schema2 import Schema2, Schema2TypedDict
|
||||
from .chatstreamingmessagetoolcall import (
|
||||
ChatStreamingMessageToolCall,
|
||||
ChatStreamingMessageToolCallTypedDict,
|
||||
@@ -27,7 +27,7 @@ class ChatStreamingMessageChunkTypedDict(TypedDict):
|
||||
reasoning: NotRequired[Nullable[str]]
|
||||
refusal: NotRequired[Nullable[str]]
|
||||
tool_calls: NotRequired[List[ChatStreamingMessageToolCallTypedDict]]
|
||||
reasoning_details: NotRequired[List[Schema3TypedDict]]
|
||||
reasoning_details: NotRequired[List[Schema2TypedDict]]
|
||||
|
||||
|
||||
class ChatStreamingMessageChunk(BaseModel):
|
||||
@@ -41,7 +41,7 @@ class ChatStreamingMessageChunk(BaseModel):
|
||||
|
||||
tool_calls: Optional[List[ChatStreamingMessageToolCall]] = None
|
||||
|
||||
reasoning_details: Optional[List[Schema3]] = None
|
||||
reasoning_details: Optional[List[Schema2]] = None
|
||||
|
||||
@model_serializer(mode="wrap")
|
||||
def serialize_model(self, handler):
|
||||
|
||||
@@ -50,6 +50,8 @@ class ModelTypedDict(TypedDict):
|
||||
r"""Hugging Face model identifier, if applicable"""
|
||||
description: NotRequired[str]
|
||||
r"""Description of the model"""
|
||||
expiration_date: NotRequired[Nullable[str]]
|
||||
r"""The date after which the model may be removed. ISO 8601 date string (YYYY-MM-DD) or null if no expiration."""
|
||||
|
||||
|
||||
class Model(BaseModel):
|
||||
@@ -96,14 +98,18 @@ class Model(BaseModel):
|
||||
description: Optional[str] = None
|
||||
r"""Description of the model"""
|
||||
|
||||
expiration_date: OptionalNullable[str] = UNSET
|
||||
r"""The date after which the model may be removed. ISO 8601 date string (YYYY-MM-DD) or null if no expiration."""
|
||||
|
||||
@model_serializer(mode="wrap")
|
||||
def serialize_model(self, handler):
|
||||
optional_fields = ["hugging_face_id", "description"]
|
||||
optional_fields = ["hugging_face_id", "description", "expiration_date"]
|
||||
nullable_fields = [
|
||||
"hugging_face_id",
|
||||
"context_length",
|
||||
"per_request_limits",
|
||||
"default_parameters",
|
||||
"expiration_date",
|
||||
]
|
||||
null_default_fields = []
|
||||
|
||||
|
||||
@@ -10,6 +10,7 @@ OutputModality = Union[
|
||||
"text",
|
||||
"image",
|
||||
"embeddings",
|
||||
"audio",
|
||||
],
|
||||
UnrecognizedStr,
|
||||
]
|
||||
|
||||
@@ -28,6 +28,8 @@ class PricingTypedDict(TypedDict):
|
||||
r"""A value in string format that is a large number"""
|
||||
audio: NotRequired[str]
|
||||
r"""A value in string format that is a large number"""
|
||||
audio_output: NotRequired[str]
|
||||
r"""A value in string format that is a large number"""
|
||||
input_audio_cache: NotRequired[str]
|
||||
r"""A value in string format that is a large number"""
|
||||
web_search: NotRequired[str]
|
||||
@@ -63,6 +65,9 @@ class Pricing(BaseModel):
|
||||
audio: Optional[str] = None
|
||||
r"""A value in string format that is a large number"""
|
||||
|
||||
audio_output: Optional[str] = None
|
||||
r"""A value in string format that is a large number"""
|
||||
|
||||
input_audio_cache: Optional[str] = None
|
||||
r"""A value in string format that is a large number"""
|
||||
|
||||
@@ -101,6 +106,8 @@ class PublicEndpointTypedDict(TypedDict):
|
||||
r"""Information about a specific model endpoint"""
|
||||
|
||||
name: str
|
||||
model_id: str
|
||||
r"""The unique identifier for the model (permaslug)"""
|
||||
model_name: str
|
||||
context_length: float
|
||||
pricing: PricingTypedDict
|
||||
@@ -123,6 +130,9 @@ class PublicEndpoint(BaseModel):
|
||||
|
||||
name: str
|
||||
|
||||
model_id: str
|
||||
r"""The unique identifier for the model (permaslug)"""
|
||||
|
||||
model_name: str
|
||||
|
||||
context_length: float
|
||||
|
||||
@@ -23,6 +23,8 @@ class PublicPricingTypedDict(TypedDict):
|
||||
r"""A value in string format that is a large number"""
|
||||
audio: NotRequired[str]
|
||||
r"""A value in string format that is a large number"""
|
||||
audio_output: NotRequired[str]
|
||||
r"""A value in string format that is a large number"""
|
||||
input_audio_cache: NotRequired[str]
|
||||
r"""A value in string format that is a large number"""
|
||||
web_search: NotRequired[str]
|
||||
@@ -60,6 +62,9 @@ class PublicPricing(BaseModel):
|
||||
audio: Optional[str] = None
|
||||
r"""A value in string format that is a large number"""
|
||||
|
||||
audio_output: Optional[str] = None
|
||||
r"""A value in string format that is a large number"""
|
||||
|
||||
input_audio_cache: Optional[str] = None
|
||||
r"""A value in string format that is a large number"""
|
||||
|
||||
|
||||
Reference in New Issue
Block a user