Buckets:
MisterAI/LocalAI_Demo_backends / cpu-pocket-tts.upgrade-tmp /venv /lib /python3.10 /site-packages /fastapi /openapi /models.py
| from collections.abc import Callable, Iterable, Mapping | |
| from enum import Enum | |
| from typing import Annotated, Any, Literal, Optional, Union | |
| from fastapi._compat import with_info_plain_validator_function | |
| from fastapi.logger import logger | |
| from pydantic import ( | |
| AnyUrl, | |
| BaseModel, | |
| Field, | |
| GetJsonSchemaHandler, | |
| ) | |
| from typing_extensions import TypedDict | |
| from typing_extensions import deprecated as typing_deprecated | |
| try: | |
| import email_validator | |
| assert email_validator # make autoflake ignore the unused import | |
| from pydantic import EmailStr | |
| except ImportError: # pragma: no cover | |
| class EmailStr(str): # type: ignore[no-redef] | |
| def __get_validators__(cls) -> Iterable[Callable[..., Any]]: | |
| yield cls.validate | |
| def validate(cls, v: Any) -> str: | |
| logger.warning( | |
| "email-validator not installed, email fields will be treated as str.\n" | |
| "To install, run: pip install email-validator" | |
| ) | |
| return str(v) | |
| def _validate(cls, __input_value: Any, _: Any) -> str: | |
| logger.warning( | |
| "email-validator not installed, email fields will be treated as str.\n" | |
| "To install, run: pip install email-validator" | |
| ) | |
| return str(__input_value) | |
| def __get_pydantic_json_schema__( | |
| cls, core_schema: Mapping[str, Any], handler: GetJsonSchemaHandler | |
| ) -> dict[str, Any]: | |
| return {"type": "string", "format": "email"} | |
| def __get_pydantic_core_schema__( | |
| cls, source: type[Any], handler: Callable[[Any], Mapping[str, Any]] | |
| ) -> Mapping[str, Any]: | |
| return with_info_plain_validator_function(cls._validate) | |
| class BaseModelWithConfig(BaseModel): | |
| model_config = {"extra": "allow"} | |
| class Contact(BaseModelWithConfig): | |
| name: str | None = None | |
| url: AnyUrl | None = None | |
| email: EmailStr | None = None | |
| class License(BaseModelWithConfig): | |
| name: str | |
| identifier: str | None = None | |
| url: AnyUrl | None = None | |
| class Info(BaseModelWithConfig): | |
| title: str | |
| summary: str | None = None | |
| description: str | None = None | |
| termsOfService: str | None = None | |
| contact: Contact | None = None | |
| license: License | None = None | |
| version: str | |
| class ServerVariable(BaseModelWithConfig): | |
| enum: Annotated[list[str] | None, Field(min_length=1)] = None | |
| default: str | |
| description: str | None = None | |
| class Server(BaseModelWithConfig): | |
| url: AnyUrl | str | |
| description: str | None = None | |
| variables: dict[str, ServerVariable] | None = None | |
| class Reference(BaseModel): | |
| ref: str = Field(alias="$ref") | |
| class Discriminator(BaseModel): | |
| propertyName: str | |
| mapping: dict[str, str] | None = None | |
| class XML(BaseModelWithConfig): | |
| name: str | None = None | |
| namespace: str | None = None | |
| prefix: str | None = None | |
| attribute: bool | None = None | |
| wrapped: bool | None = None | |
| class ExternalDocumentation(BaseModelWithConfig): | |
| description: str | None = None | |
| url: AnyUrl | |
| # Ref JSON Schema 2020-12: https://json-schema.org/draft/2020-12/json-schema-validation#name-type | |
| SchemaType = Literal[ | |
| "array", "boolean", "integer", "null", "number", "object", "string" | |
| ] | |
| class Schema(BaseModelWithConfig): | |
| # Ref: JSON Schema 2020-12: https://json-schema.org/draft/2020-12/json-schema-core.html#name-the-json-schema-core-vocabu | |
| # Core Vocabulary | |
| schema_: str | None = Field(default=None, alias="$schema") | |
| vocabulary: str | None = Field(default=None, alias="$vocabulary") | |
| id: str | None = Field(default=None, alias="$id") | |
| anchor: str | None = Field(default=None, alias="$anchor") | |
| dynamicAnchor: str | None = Field(default=None, alias="$dynamicAnchor") | |
| ref: str | None = Field(default=None, alias="$ref") | |
| dynamicRef: str | None = Field(default=None, alias="$dynamicRef") | |
| defs: dict[str, "SchemaOrBool"] | None = Field(default=None, alias="$defs") | |
| comment: str | None = Field(default=None, alias="$comment") | |
| # Ref: JSON Schema 2020-12: https://json-schema.org/draft/2020-12/json-schema-core.html#name-a-vocabulary-for-applying-s | |
| # A Vocabulary for Applying Subschemas | |
| allOf: list["SchemaOrBool"] | None = None | |
| anyOf: list["SchemaOrBool"] | None = None | |
| oneOf: list["SchemaOrBool"] | None = None | |
| not_: Optional["SchemaOrBool"] = Field(default=None, alias="not") | |
| if_: Optional["SchemaOrBool"] = Field(default=None, alias="if") | |
| then: Optional["SchemaOrBool"] = None | |
| else_: Optional["SchemaOrBool"] = Field(default=None, alias="else") | |
| dependentSchemas: dict[str, "SchemaOrBool"] | None = None | |
| prefixItems: list["SchemaOrBool"] | None = None | |
| items: Optional["SchemaOrBool"] = None | |
| contains: Optional["SchemaOrBool"] = None | |
| properties: dict[str, "SchemaOrBool"] | None = None | |
| patternProperties: dict[str, "SchemaOrBool"] | None = None | |
| additionalProperties: Optional["SchemaOrBool"] = None | |
| propertyNames: Optional["SchemaOrBool"] = None | |
| unevaluatedItems: Optional["SchemaOrBool"] = None | |
| unevaluatedProperties: Optional["SchemaOrBool"] = None | |
| # Ref: JSON Schema Validation 2020-12: https://json-schema.org/draft/2020-12/json-schema-validation.html#name-a-vocabulary-for-structural | |
| # A Vocabulary for Structural Validation | |
| type: SchemaType | list[SchemaType] | None = None | |
| enum: list[Any] | None = None | |
| const: Any | None = None | |
| multipleOf: float | None = Field(default=None, gt=0) | |
| maximum: float | None = None | |
| exclusiveMaximum: float | None = None | |
| minimum: float | None = None | |
| exclusiveMinimum: float | None = None | |
| maxLength: int | None = Field(default=None, ge=0) | |
| minLength: int | None = Field(default=None, ge=0) | |
| pattern: str | None = None | |
| maxItems: int | None = Field(default=None, ge=0) | |
| minItems: int | None = Field(default=None, ge=0) | |
| uniqueItems: bool | None = None | |
| maxContains: int | None = Field(default=None, ge=0) | |
| minContains: int | None = Field(default=None, ge=0) | |
| maxProperties: int | None = Field(default=None, ge=0) | |
| minProperties: int | None = Field(default=None, ge=0) | |
| required: list[str] | None = None | |
| dependentRequired: dict[str, set[str]] | None = None | |
| # Ref: JSON Schema Validation 2020-12: https://json-schema.org/draft/2020-12/json-schema-validation.html#name-vocabularies-for-semantic-c | |
| # Vocabularies for Semantic Content With "format" | |
| format: str | None = None | |
| # Ref: JSON Schema Validation 2020-12: https://json-schema.org/draft/2020-12/json-schema-validation.html#name-a-vocabulary-for-the-conten | |
| # A Vocabulary for the Contents of String-Encoded Data | |
| contentEncoding: str | None = None | |
| contentMediaType: str | None = None | |
| contentSchema: Optional["SchemaOrBool"] = None | |
| # Ref: JSON Schema Validation 2020-12: https://json-schema.org/draft/2020-12/json-schema-validation.html#name-a-vocabulary-for-basic-meta | |
| # A Vocabulary for Basic Meta-Data Annotations | |
| title: str | None = None | |
| description: str | None = None | |
| default: Any | None = None | |
| deprecated: bool | None = None | |
| readOnly: bool | None = None | |
| writeOnly: bool | None = None | |
| examples: list[Any] | None = None | |
| # Ref: OpenAPI 3.1.0: https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#schema-object | |
| # Schema Object | |
| discriminator: Discriminator | None = None | |
| xml: XML | None = None | |
| externalDocs: ExternalDocumentation | None = None | |
| example: Annotated[ | |
| Any | None, | |
| typing_deprecated( | |
| "Deprecated in OpenAPI 3.1.0 that now uses JSON Schema 2020-12, " | |
| "although still supported. Use examples instead." | |
| ), | |
| ] = None | |
| # Ref: https://json-schema.org/draft/2020-12/json-schema-core.html#name-json-schema-documents | |
| # A JSON Schema MUST be an object or a boolean. | |
| SchemaOrBool = Schema | bool | |
| class Example(TypedDict, total=False): | |
| summary: str | None | |
| description: str | None | |
| value: Any | None | |
| externalValue: AnyUrl | None | |
| __pydantic_config__ = {"extra": "allow"} # type: ignore[misc] # ty: ignore[invalid-typed-dict-statement] | |
| class ParameterInType(Enum): | |
| query = "query" | |
| header = "header" | |
| path = "path" | |
| cookie = "cookie" | |
| class Encoding(BaseModelWithConfig): | |
| contentType: str | None = None | |
| headers: dict[str, Union["Header", Reference]] | None = None | |
| style: str | None = None | |
| explode: bool | None = None | |
| allowReserved: bool | None = None | |
| class MediaType(BaseModelWithConfig): | |
| schema_: Schema | Reference | None = Field(default=None, alias="schema") | |
| example: Any | None = None | |
| examples: dict[str, Example | Reference] | None = None | |
| encoding: dict[str, Encoding] | None = None | |
| class ParameterBase(BaseModelWithConfig): | |
| description: str | None = None | |
| required: bool | None = None | |
| deprecated: bool | None = None | |
| # Serialization rules for simple scenarios | |
| style: str | None = None | |
| explode: bool | None = None | |
| allowReserved: bool | None = None | |
| schema_: Schema | Reference | None = Field(default=None, alias="schema") | |
| example: Any | None = None | |
| examples: dict[str, Example | Reference] | None = None | |
| # Serialization rules for more complex scenarios | |
| content: dict[str, MediaType] | None = None | |
| class Parameter(ParameterBase): | |
| name: str | |
| in_: ParameterInType = Field(alias="in") | |
| class Header(ParameterBase): | |
| pass | |
| class RequestBody(BaseModelWithConfig): | |
| description: str | None = None | |
| content: dict[str, MediaType] | |
| required: bool | None = None | |
| class Link(BaseModelWithConfig): | |
| operationRef: str | None = None | |
| operationId: str | None = None | |
| parameters: dict[str, Any | str] | None = None | |
| requestBody: Any | str | None = None | |
| description: str | None = None | |
| server: Server | None = None | |
| class Response(BaseModelWithConfig): | |
| description: str | |
| headers: dict[str, Header | Reference] | None = None | |
| content: dict[str, MediaType] | None = None | |
| links: dict[str, Link | Reference] | None = None | |
| class Operation(BaseModelWithConfig): | |
| tags: list[str] | None = None | |
| summary: str | None = None | |
| description: str | None = None | |
| externalDocs: ExternalDocumentation | None = None | |
| operationId: str | None = None | |
| parameters: list[Parameter | Reference] | None = None | |
| requestBody: RequestBody | Reference | None = None | |
| # Using Any for Specification Extensions | |
| responses: dict[str, Response | Any] | None = None | |
| callbacks: dict[str, dict[str, "PathItem"] | Reference] | None = None | |
| deprecated: bool | None = None | |
| security: list[dict[str, list[str]]] | None = None | |
| servers: list[Server] | None = None | |
| class PathItem(BaseModelWithConfig): | |
| ref: str | None = Field(default=None, alias="$ref") | |
| summary: str | None = None | |
| description: str | None = None | |
| get: Operation | None = None | |
| put: Operation | None = None | |
| post: Operation | None = None | |
| delete: Operation | None = None | |
| options: Operation | None = None | |
| head: Operation | None = None | |
| patch: Operation | None = None | |
| trace: Operation | None = None | |
| servers: list[Server] | None = None | |
| parameters: list[Parameter | Reference] | None = None | |
| class SecuritySchemeType(Enum): | |
| apiKey = "apiKey" | |
| http = "http" | |
| oauth2 = "oauth2" | |
| openIdConnect = "openIdConnect" | |
| class SecurityBase(BaseModelWithConfig): | |
| type_: SecuritySchemeType = Field(alias="type") | |
| description: str | None = None | |
| class APIKeyIn(Enum): | |
| query = "query" | |
| header = "header" | |
| cookie = "cookie" | |
| class APIKey(SecurityBase): | |
| type_: SecuritySchemeType = Field(default=SecuritySchemeType.apiKey, alias="type") | |
| in_: APIKeyIn = Field(alias="in") | |
| name: str | |
| class HTTPBase(SecurityBase): | |
| type_: SecuritySchemeType = Field(default=SecuritySchemeType.http, alias="type") | |
| scheme: str | |
| class HTTPBearer(HTTPBase): | |
| scheme: Literal["bearer"] = "bearer" | |
| bearerFormat: str | None = None | |
| class OAuthFlow(BaseModelWithConfig): | |
| refreshUrl: str | None = None | |
| scopes: dict[str, str] = {} | |
| class OAuthFlowImplicit(OAuthFlow): | |
| authorizationUrl: str | |
| class OAuthFlowPassword(OAuthFlow): | |
| tokenUrl: str | |
| class OAuthFlowClientCredentials(OAuthFlow): | |
| tokenUrl: str | |
| class OAuthFlowAuthorizationCode(OAuthFlow): | |
| authorizationUrl: str | |
| tokenUrl: str | |
| class OAuthFlows(BaseModelWithConfig): | |
| implicit: OAuthFlowImplicit | None = None | |
| password: OAuthFlowPassword | None = None | |
| clientCredentials: OAuthFlowClientCredentials | None = None | |
| authorizationCode: OAuthFlowAuthorizationCode | None = None | |
| class OAuth2(SecurityBase): | |
| type_: SecuritySchemeType = Field(default=SecuritySchemeType.oauth2, alias="type") | |
| flows: OAuthFlows | |
| class OpenIdConnect(SecurityBase): | |
| type_: SecuritySchemeType = Field( | |
| default=SecuritySchemeType.openIdConnect, alias="type" | |
| ) | |
| openIdConnectUrl: str | |
| SecurityScheme = APIKey | HTTPBase | OAuth2 | OpenIdConnect | HTTPBearer | |
| class Components(BaseModelWithConfig): | |
| schemas: dict[str, Schema | Reference] | None = None | |
| responses: dict[str, Response | Reference] | None = None | |
| parameters: dict[str, Parameter | Reference] | None = None | |
| examples: dict[str, Example | Reference] | None = None | |
| requestBodies: dict[str, RequestBody | Reference] | None = None | |
| headers: dict[str, Header | Reference] | None = None | |
| securitySchemes: dict[str, SecurityScheme | Reference] | None = None | |
| links: dict[str, Link | Reference] | None = None | |
| # Using Any for Specification Extensions | |
| callbacks: dict[str, dict[str, PathItem] | Reference | Any] | None = None | |
| pathItems: dict[str, PathItem | Reference] | None = None | |
| class Tag(BaseModelWithConfig): | |
| name: str | |
| description: str | None = None | |
| externalDocs: ExternalDocumentation | None = None | |
| class OpenAPI(BaseModelWithConfig): | |
| openapi: str | |
| info: Info | |
| jsonSchemaDialect: str | None = None | |
| servers: list[Server] | None = None | |
| # Using Any for Specification Extensions | |
| paths: dict[str, PathItem | Any] | None = None | |
| webhooks: dict[str, PathItem | Reference] | None = None | |
| components: Components | None = None | |
| security: list[dict[str, list[str]]] | None = None | |
| tags: list[Tag] | None = None | |
| externalDocs: ExternalDocumentation | None = None | |
| Schema.model_rebuild() | |
| Operation.model_rebuild() | |
| Encoding.model_rebuild() | |
Xet Storage Details
- Size:
- 14.6 kB
- Xet hash:
- 31448180a42b94dfec2ee04bc4a94db820bed22cc1c797d32c9b841b8c377604
·
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.