# Generated by ariadne-codegen
# Source: ./documents

from typing import Optional

from pydantic import Field

from .base_model import BaseModel


class QueryTokens(BaseModel):
    tokens: Optional["QueryTokensTokens"]


class QueryTokensTokens(BaseModel):
    correlation_id: Optional[str] = Field(alias="correlationId")
    owner_id: Optional[str] = Field(alias="ownerId")
    embedding_input_tokens: Optional[int] = Field(alias="embeddingInputTokens")
    embedding_model_services: Optional[list[Optional[str]]] = Field(
        alias="embeddingModelServices"
    )
    completion_input_tokens: Optional[int] = Field(alias="completionInputTokens")
    completion_output_tokens: Optional[int] = Field(alias="completionOutputTokens")
    completion_model_services: Optional[list[Optional[str]]] = Field(
        alias="completionModelServices"
    )
    preparation_input_tokens: Optional[int] = Field(alias="preparationInputTokens")
    preparation_output_tokens: Optional[int] = Field(alias="preparationOutputTokens")
    preparation_model_services: Optional[list[Optional[str]]] = Field(
        alias="preparationModelServices"
    )
    extraction_input_tokens: Optional[int] = Field(alias="extractionInputTokens")
    extraction_output_tokens: Optional[int] = Field(alias="extractionOutputTokens")
    extraction_model_services: Optional[list[Optional[str]]] = Field(
        alias="extractionModelServices"
    )
    generation_input_tokens: Optional[int] = Field(alias="generationInputTokens")
    generation_output_tokens: Optional[int] = Field(alias="generationOutputTokens")
    generation_model_services: Optional[list[Optional[str]]] = Field(
        alias="generationModelServices"
    )


QueryTokens.model_rebuild()
