Metrics

class pipecat.metrics.metrics.MetricsData(*, processor, model=None)[source]

Bases: BaseModel

Parameters:
  • processor (str)

  • model (str | None)

processor: str
model: str | None
model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class pipecat.metrics.metrics.TTFBMetricsData(*, processor, model=None, value)[source]

Bases: MetricsData

Parameters:
  • processor (str)

  • model (str | None)

  • value (float)

value: float
model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class pipecat.metrics.metrics.ProcessingMetricsData(*, processor, model=None, value)[source]

Bases: MetricsData

Parameters:
  • processor (str)

  • model (str | None)

  • value (float)

value: float
model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class pipecat.metrics.metrics.LLMTokenUsage(*, prompt_tokens, completion_tokens, total_tokens, cache_read_input_tokens=None, cache_creation_input_tokens=None)[source]

Bases: BaseModel

Parameters:
  • prompt_tokens (int)

  • completion_tokens (int)

  • total_tokens (int)

  • cache_read_input_tokens (int | None)

  • cache_creation_input_tokens (int | None)

prompt_tokens: int
completion_tokens: int
total_tokens: int
cache_read_input_tokens: int | None
cache_creation_input_tokens: int | None
model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class pipecat.metrics.metrics.LLMUsageMetricsData(*, processor, model=None, value)[source]

Bases: MetricsData

Parameters:
  • processor (str)

  • model (str | None)

  • value (LLMTokenUsage)

value: LLMTokenUsage
model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class pipecat.metrics.metrics.TTSUsageMetricsData(*, processor, model=None, value)[source]

Bases: MetricsData

Parameters:
  • processor (str)

  • model (str | None)

  • value (int)

value: int
model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class pipecat.metrics.metrics.SmartTurnMetricsData(*, processor, model=None, is_complete, probability, inference_time_ms, server_total_time_ms, e2e_processing_time_ms)[source]

Bases: MetricsData

Metrics data for smart turn predictions.

Parameters:
  • processor (str)

  • model (str | None)

  • is_complete (bool)

  • probability (float)

  • inference_time_ms (float)

  • server_total_time_ms (float)

  • e2e_processing_time_ms (float)

is_complete: bool
probability: float
inference_time_ms: float
server_total_time_ms: float
e2e_processing_time_ms: float
model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].