This commit is contained in:
2025-09-05 20:38:40 +08:00
parent d8ecfd0d91
commit 0b4e6c5285
5 changed files with 54 additions and 22 deletions

View File

@@ -2,12 +2,12 @@ import logging
import os
import uuid
import time
from fastapi import APIRouter, HTTPException, BackgroundTasks, Query, UploadFile, File
from fastapi import APIRouter, HTTPException, BackgroundTasks, Query, UploadFile, File, Form
from pydantic import BaseModel
from typing import Optional
import tempfile
from Util.ObsUtil import ObsUploader
from Config.Config import OBS_BUCKET, OBS_SERVER
from Config.Config import OBS_BUCKET, OBS_SERVER, XF_APPID, XF_APISECRET, XF_APIKEY
from fastapi.responses import StreamingResponse
import requests
@@ -36,19 +36,19 @@ class AudioEvaluationResponse(BaseModel):
# 科大讯飞API配置需要根据实际情况配置
XUNFEI_CONFIG = {
"appid": "your_appid_here",
"api_key": "your_api_key_here",
"api_secret": "your_api_secret_here"
"appid": XF_APPID,
"api_key": XF_APISECRET,
"api_secret": XF_APIKEY
}
@router.post("/evaluate-audio", response_model=AudioEvaluationResponse)
async def evaluate_audio(
background_tasks: BackgroundTasks,
language: str = Query("chinese", description="评测语言: chinese 或 english"),
text: str = Query(..., description="评测文本内容"),
group: str = Query("adult", description="群体类型: adult, youth, pupil"),
check_type: str = Query("common", description="检错严格程度: easy, common, hard"),
grade: str = Query("middle", description="学段: junior, middle, senior"),
language: str = Form("chinese", description="评测语言: chinese 或 english"),
text: str = Form(..., description="评测文本内容"),
group: str = Form("adult", description="群体类型: adult, youth, pupil"),
check_type: str = Form("common", description="检错严格程度: easy, common, hard"),
grade: str = Form("middle", description="学段: junior, middle, senior"),
audio_file: UploadFile = File(...)):
"""
语音评测接口 - 支持中文和英文篇章朗读判分