BaseTurnAnalyzer: add BaseTurnParams base class for parameters
This commit is contained in:
@@ -14,6 +14,8 @@ from abc import ABC, abstractmethod
|
|||||||
from enum import Enum
|
from enum import Enum
|
||||||
from typing import Optional, Tuple
|
from typing import Optional, Tuple
|
||||||
|
|
||||||
|
from pydantic import BaseModel
|
||||||
|
|
||||||
from pipecat.metrics.metrics import MetricsData
|
from pipecat.metrics.metrics import MetricsData
|
||||||
|
|
||||||
|
|
||||||
@@ -29,6 +31,12 @@ class EndOfTurnState(Enum):
|
|||||||
INCOMPLETE = 2
|
INCOMPLETE = 2
|
||||||
|
|
||||||
|
|
||||||
|
class BaseTurnParams(BaseModel):
|
||||||
|
"""Base class for turn analyzer parameters."""
|
||||||
|
|
||||||
|
pass
|
||||||
|
|
||||||
|
|
||||||
class BaseTurnAnalyzer(ABC):
|
class BaseTurnAnalyzer(ABC):
|
||||||
"""Abstract base class for analyzing user end of turn.
|
"""Abstract base class for analyzing user end of turn.
|
||||||
|
|
||||||
@@ -78,7 +86,7 @@ class BaseTurnAnalyzer(ABC):
|
|||||||
|
|
||||||
@property
|
@property
|
||||||
@abstractmethod
|
@abstractmethod
|
||||||
def params(self):
|
def params(self) -> BaseTurnParams:
|
||||||
"""Get the current turn analyzer parameters.
|
"""Get the current turn analyzer parameters.
|
||||||
|
|
||||||
Returns:
|
Returns:
|
||||||
|
|||||||
@@ -19,7 +19,7 @@ import numpy as np
|
|||||||
from loguru import logger
|
from loguru import logger
|
||||||
from pydantic import BaseModel
|
from pydantic import BaseModel
|
||||||
|
|
||||||
from pipecat.audio.turn.base_turn_analyzer import BaseTurnAnalyzer, EndOfTurnState
|
from pipecat.audio.turn.base_turn_analyzer import BaseTurnAnalyzer, BaseTurnParams, EndOfTurnState
|
||||||
from pipecat.metrics.metrics import MetricsData, SmartTurnMetricsData
|
from pipecat.metrics.metrics import MetricsData, SmartTurnMetricsData
|
||||||
|
|
||||||
# Default timing parameters
|
# Default timing parameters
|
||||||
@@ -29,7 +29,7 @@ MAX_DURATION_SECONDS = 8 # Max allowed segment duration
|
|||||||
USE_ONLY_LAST_VAD_SEGMENT = True
|
USE_ONLY_LAST_VAD_SEGMENT = True
|
||||||
|
|
||||||
|
|
||||||
class SmartTurnParams(BaseModel):
|
class SmartTurnParams(BaseTurnParams):
|
||||||
"""Configuration parameters for smart turn analysis.
|
"""Configuration parameters for smart turn analysis.
|
||||||
|
|
||||||
Parameters:
|
Parameters:
|
||||||
|
|||||||
Reference in New Issue
Block a user