diff --git a/backend/main/xiaozhi-server/core/providers/llm/antaf/antaf.py b/backend/main/xiaozhi-server/core/providers/llm/antaf/antaf.py index b011e3a..438e95d 100644 --- a/backend/main/xiaozhi-server/core/providers/llm/antaf/antaf.py +++ b/backend/main/xiaozhi-server/core/providers/llm/antaf/antaf.py @@ -89,6 +89,8 @@ class LLMProvider(LLMProviderBase): yield "抱歉,我没有收到您的问题。" return + # 追加简短回答提示,避免阿福回复过长导致TTS排队卡顿 + query = query + "(请用2-3句话简短回答)" logger.bind(tag=TAG).info(f"AntafLLM 请求: {query[:50]}...") try: diff --git a/backend/main/xiaozhi-server/core/providers/tts/sherpa_tts.py b/backend/main/xiaozhi-server/core/providers/tts/sherpa_tts.py index a997ac6..de0efc8 100644 --- a/backend/main/xiaozhi-server/core/providers/tts/sherpa_tts.py +++ b/backend/main/xiaozhi-server/core/providers/tts/sherpa_tts.py @@ -70,8 +70,7 @@ class TTSProvider(TTSProviderBase): return wav_io.getvalue() async def text_to_speak(self, text, output_file): - loop = asyncio.get_event_loop() - wav_data = await loop.run_in_executor(None, self._generate_wav, text) + wav_data = self._generate_wav(text) if output_file: with open(output_file, "wb") as f: