فهرست منبع

feat:tts接口添加reference_id前置校验逻辑

zhaohaipeng 2 هفته پیش
والد
کامیت
9a4cac4b24
1فایلهای تغییر یافته به همراه9 افزوده شده و 2 حذف شده
  1. 9 2
      tools/server/views.py

+ 9 - 2
tools/server/views.py

@@ -1,7 +1,6 @@
 import io
 import io
 import os
 import os
 import re
 import re
-import shutil
 import tempfile
 import tempfile
 import time
 import time
 from http import HTTPStatus
 from http import HTTPStatus
@@ -25,7 +24,6 @@ from loguru import logger
 from typing_extensions import Annotated
 from typing_extensions import Annotated
 
 
 from fish_speech.utils.schema import (
 from fish_speech.utils.schema import (
-    AddReferenceRequest,
     AddReferenceResponse,
     AddReferenceResponse,
     DeleteReferenceResponse,
     DeleteReferenceResponse,
     ListReferencesResponse,
     ListReferencesResponse,
@@ -169,6 +167,15 @@ async def tts(req: Annotated[ServeTTSRequest, Body(exclusive=True)]):
                 content="Streaming only supports WAV format",
                 content="Streaming only supports WAV format",
             )
             )
 
 
+        # Check Reference id is existed
+        if req.reference_id:
+            ref_dir = Path("references") / req.reference_id
+            if not ref_dir.exists():
+                raise HTTPException(
+                    HTTPStatus.BAD_REQUEST,
+                    content="Reference id is not existed",
+                )
+
         # Perform TTS
         # Perform TTS
         if req.streaming:
         if req.streaming:
             return StreamResponse(
             return StreamResponse(