[连续对话判断]:完成自动持续对话和播报打断,包含回复意图判断、免唤醒追问和打断回归测试
This commit is contained in:
@@ -106,6 +106,13 @@ class ModelsConfigTests(unittest.TestCase):
|
||||
self.assertEqual(config.tts_voice, "mimo_default")
|
||||
self.assertEqual(str(config.speech_models_dir), "models")
|
||||
self.assertEqual(config.context_mode, "session_memory")
|
||||
self.assertTrue(config.continuous_dialog_enabled)
|
||||
self.assertEqual(config.continuation_decision_provider, "hybrid")
|
||||
self.assertEqual(config.continuation_confidence_threshold, 0.65)
|
||||
self.assertEqual(config.followup_listen_timeout_ms, 3000)
|
||||
self.assertTrue(config.barge_in_enabled)
|
||||
self.assertEqual(config.barge_in_min_speech_ms, 250)
|
||||
self.assertEqual(config.barge_in_echo_guard_ms, 500)
|
||||
self.assertTrue(config.llm_stream)
|
||||
self.assertEqual(config.validate_basic(), [])
|
||||
|
||||
@@ -139,6 +146,22 @@ class ModelsConfigTests(unittest.TestCase):
|
||||
errors = config.validate_basic()
|
||||
self.assertTrue(any("OWNER_NOISE_FILTER_PROVIDER" in error.message for error in errors))
|
||||
|
||||
def test_continuation_config_is_validated(self) -> None:
|
||||
config = AppConfig(
|
||||
continuation_decision_provider="invalid",
|
||||
continuation_confidence_threshold=2.0,
|
||||
followup_listen_timeout_ms=-1,
|
||||
barge_in_min_speech_ms=-1,
|
||||
barge_in_echo_guard_ms=-1,
|
||||
)
|
||||
errors = config.validate_basic()
|
||||
|
||||
self.assertTrue(any("OWNER_CONTINUATION_DECISION_PROVIDER" in error.message for error in errors))
|
||||
self.assertTrue(any("OWNER_CONTINUATION_CONFIDENCE_THRESHOLD" in error.message for error in errors))
|
||||
self.assertTrue(any("OWNER_FOLLOWUP_LISTEN_TIMEOUT_MS" in error.message for error in errors))
|
||||
self.assertTrue(any("OWNER_BARGE_IN_MIN_SPEECH_MS" in error.message for error in errors))
|
||||
self.assertTrue(any("OWNER_BARGE_IN_ECHO_GUARD_MS" in error.message for error in errors))
|
||||
|
||||
def test_speaker_similarity_threshold_range_is_validated(self) -> None:
|
||||
config = AppConfig(speaker_similarity_threshold=1.5)
|
||||
errors = config.validate_basic()
|
||||
|
||||
Reference in New Issue
Block a user