"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""

from __future__ import annotations
from friendli.core.types import BaseModel
from typing import Any, Dict, List
from typing_extensions import TypedDict


class CompletionsLogprobsTypedDict(TypedDict):
    text_offset: List[int]
    "The starting character position of each token in the generated text, useful for mapping tokens back to their exact location for detailed analysis."
    token_logprobs: List[float]
    "The log probabilities of each generated token, indicating the model's confidence in selecting each token."
    tokens: List[str]
    "A list of individual tokens generated in the completion, representing segments of text such as words or pieces of words."
    top_logprobs: List[Dict[str, Any]]
    "A list of dictionaries, where each dictionary represents the top alternative tokens considered by the model at a specific position in the generated text, along with their log probabilities. The number of items in each dictionary matches the value of `logprobs`."


class CompletionsLogprobs(BaseModel):
    text_offset: List[int]
    "The starting character position of each token in the generated text, useful for mapping tokens back to their exact location for detailed analysis."
    token_logprobs: List[float]
    "The log probabilities of each generated token, indicating the model's confidence in selecting each token."
    tokens: List[str]
    "A list of individual tokens generated in the completion, representing segments of text such as words or pieces of words."
    top_logprobs: List[Dict[str, Any]]
    "A list of dictionaries, where each dictionary represents the top alternative tokens considered by the model at a specific position in the generated text, along with their log probabilities. The number of items in each dictionary matches the value of `logprobs`."
