Remove processing metrics (ProcessingMetricsData)
Processing metrics were an early addition that predated a clear understanding of what timing measurements matter in real-time pipelines. They were inconsistently implemented across services, often broken, and overlapped with the better-defined TTFB metric. - Remove ProcessingMetricsData class and all start/stop_processing_metrics methods from FrameProcessorMetrics, FrameProcessor, and SentryMetrics - Remove all processing metrics calls from 31 service files (LLM, TTS, STT, image, vision, realtime) - Clean up empty _start_metrics() stubs left in STT services - Remove processing metrics handling from RTVI, metrics log observer, pipeline task initial metrics, and strands agents framework - Update tests and examples Remaining metrics (TTFB, LLM token usage, TTS character usage, text aggregation time) are well-defined and consistently implemented.
This commit is contained in:
@@ -13,7 +13,6 @@ from pipecat.audio.vad.silero import SileroVADAnalyzer
|
||||
from pipecat.frames.frames import Frame, LLMRunFrame, MetricsFrame
|
||||
from pipecat.metrics.metrics import (
|
||||
LLMUsageMetricsData,
|
||||
ProcessingMetricsData,
|
||||
TTFBMetricsData,
|
||||
TTSUsageMetricsData,
|
||||
)
|
||||
@@ -46,8 +45,6 @@ class MetricsLogger(FrameProcessor):
|
||||
for d in frame.data:
|
||||
if isinstance(d, TTFBMetricsData):
|
||||
print(f"!!! MetricsFrame: {frame}, ttfb: {d.value}")
|
||||
elif isinstance(d, ProcessingMetricsData):
|
||||
print(f"!!! MetricsFrame: {frame}, processing: {d.value}")
|
||||
elif isinstance(d, LLMUsageMetricsData):
|
||||
tokens = d.value
|
||||
print(
|
||||
|
||||
Reference in New Issue
Block a user