From 83cbe007baa1e6d3b4067b568e29d8f606546db6 Mon Sep 17 00:00:00 2001 From: Killua777 <1223086337@qq.com> Date: Wed, 1 May 2024 17:18:30 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BB=93=E5=BA=93=E5=88=9D=E5=A7=8B=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 9 + Dockerfile | 0 README.md | 58 ++ app/__init__.py | 53 ++ app/controllers/__init__.py | 1 + app/controllers/character.py | 89 +++ app/controllers/chat.py | 613 +++++++++++++++++++++ app/controllers/controller_enum.py | 13 + app/controllers/session.py | 79 +++ app/controllers/user.py | 159 ++++++ app/dependencies/__init__.py | 1 + app/dependencies/database.py | 15 + app/dependencies/logger.py | 27 + app/dependencies/redis.py | 8 + app/exceptions/__init__.py | 0 app/main.py | 6 + app/models/__init__.py | 1 + app/models/models.py | 82 +++ app/routes/__init__.py | 1 + app/routes/character.py | 35 ++ app/routes/chat.py | 48 ++ app/routes/session.py | 29 + app/routes/user.py | 71 +++ app/schemas/__init__.py | 1 + app/schemas/base.py | 6 + app/schemas/character.py | 79 +++ app/schemas/chat.py | 49 ++ app/schemas/session.py | 58 ++ app/schemas/user.py | 140 +++++ config/__init__.py | 13 + config/development.py | 23 + config/production.py | 8 + main.py | 9 + requirements.txt | 5 + tests/__init__.py | 0 tests/assets/example_recording.wav | Bin 0 -> 159788 bytes tests/assets/voice_call.wav | Bin 0 -> 703286 bytes tests/integration_test/backend_test.py | 31 ++ tests/unit_test/character_test.py | 74 +++ tests/unit_test/chat_test.py | 329 +++++++++++ tests/unit_test/user_test.py | 99 ++++ utils/__init__.py | 1 + utils/audio_utils.py | 14 + utils/stt/base_stt.py | 66 +++ utils/stt/funasr_utils.py | 170 ++++++ utils/tts/vits/__init__.py | 2 + utils/tts/vits/attentions.py | 302 ++++++++++ utils/tts/vits/commons.py | 172 ++++++ utils/tts/vits/models.py | 535 ++++++++++++++++++ utils/tts/vits/modules.py | 390 +++++++++++++ utils/tts/vits/monotonic_align/__init__.py | 20 + utils/tts/vits/monotonic_align/core.py | 36 ++ utils/tts/vits/text/LICENSE | 19 + utils/tts/vits/text/__init__.py | 57 ++ utils/tts/vits/text/cleaners.py | 475 ++++++++++++++++ utils/tts/vits/text/symbols.py | 39 ++ utils/tts/vits/transforms.py | 193 +++++++ utils/tts/vits/utils.py | 225 ++++++++ utils/tts/vits_utils.py | 115 ++++ utils/xf_asr_utils.py | 37 ++ 60 files changed, 5190 insertions(+) create mode 100644 .gitignore create mode 100644 Dockerfile create mode 100644 README.md create mode 100644 app/__init__.py create mode 100644 app/controllers/__init__.py create mode 100644 app/controllers/character.py create mode 100644 app/controllers/chat.py create mode 100644 app/controllers/controller_enum.py create mode 100644 app/controllers/session.py create mode 100644 app/controllers/user.py create mode 100644 app/dependencies/__init__.py create mode 100644 app/dependencies/database.py create mode 100644 app/dependencies/logger.py create mode 100644 app/dependencies/redis.py create mode 100644 app/exceptions/__init__.py create mode 100644 app/main.py create mode 100644 app/models/__init__.py create mode 100644 app/models/models.py create mode 100644 app/routes/__init__.py create mode 100644 app/routes/character.py create mode 100644 app/routes/chat.py create mode 100644 app/routes/session.py create mode 100644 app/routes/user.py create mode 100644 app/schemas/__init__.py create mode 100644 app/schemas/base.py create mode 100644 app/schemas/character.py create mode 100644 app/schemas/chat.py create mode 100644 app/schemas/session.py create mode 100644 app/schemas/user.py create mode 100644 config/__init__.py create mode 100644 config/development.py create mode 100644 config/production.py create mode 100644 main.py create mode 100644 requirements.txt create mode 100644 tests/__init__.py create mode 100644 tests/assets/example_recording.wav create mode 100644 tests/assets/voice_call.wav create mode 100644 tests/integration_test/backend_test.py create mode 100644 tests/unit_test/character_test.py create mode 100644 tests/unit_test/chat_test.py create mode 100644 tests/unit_test/user_test.py create mode 100644 utils/__init__.py create mode 100644 utils/audio_utils.py create mode 100644 utils/stt/base_stt.py create mode 100644 utils/stt/funasr_utils.py create mode 100644 utils/tts/vits/__init__.py create mode 100644 utils/tts/vits/attentions.py create mode 100644 utils/tts/vits/commons.py create mode 100644 utils/tts/vits/models.py create mode 100644 utils/tts/vits/modules.py create mode 100644 utils/tts/vits/monotonic_align/__init__.py create mode 100644 utils/tts/vits/monotonic_align/core.py create mode 100644 utils/tts/vits/text/LICENSE create mode 100644 utils/tts/vits/text/__init__.py create mode 100644 utils/tts/vits/text/cleaners.py create mode 100644 utils/tts/vits/text/symbols.py create mode 100644 utils/tts/vits/transforms.py create mode 100644 utils/tts/vits/utils.py create mode 100644 utils/tts/vits_utils.py create mode 100644 utils/xf_asr_utils.py diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..a1186f4 --- /dev/null +++ b/.gitignore @@ -0,0 +1,9 @@ +# Byte-compiled / optimized / DLL files +__pycache__/ +*.py[cod] +*$py.class + +/app.log +app.log +/utils/tts/vits_model/ +vits_model \ No newline at end of file diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..e69de29 diff --git a/README.md b/README.md new file mode 100644 index 0000000..7915954 --- /dev/null +++ b/README.md @@ -0,0 +1,58 @@ +# TakwayAI后端 + +### 项目架构 + +AI后端使用fastapi框架,采用分层架构 + +``` +TakwayAI/ +│ +├── app/ +│ ├── __init__.py # 应用初始化和配置 +│ ├── main.py # 应用启动入口 +│ ├── models/ # 数据模型定义 +│ │ ├── __init__.py +│ │ ├── models.py # 数据库定义 +│ ├── schemas/ # 请求和响应模型 +│ │ ├── __init__.py +│ │ ├── user.py # 用户相关schema +│ │ └── ... # 其他schema +│ ├── controllers/ # 业务逻辑控制器 +│ │ ├── __init__.py +│ │ ├── user.py # 用户相关控制器 +│ │ └── ... # 其他控制器 +│ ├── routes/ # 路由和视图函数 +│ │ ├── __init__.py +│ │ ├── user.py # 用户相关路由 +│ │ └── ... # 其他路由 +│ ├── dependencies/ # 依赖注入相关 +│ │ ├── __init__.py +│ │ ├── database.py # 数据库依赖 +│ │ └── ... # 其他依赖 +│ └── exceptions/ # 自定义异常处理 +│ ├── __init__.py +│ └── ... # 自定义异常类 +│ +├── tests/ # 测试代码 +│ ├── __init__.py +| └── ... +│ +├── config/ # 配置文件 +│ ├── __init__.py +│ ├── production.py # 生产环境配置 +│ ├── development.py # 开发环境配置 +│ └── ... # 其他环境配置 +│ +├── utils/ # 工具函数和辅助类 +│ ├── __init__.py +│ ├── stt # 语音转文本工具函数 +│ ├── tts # 语音合成工具函数 +│ └── ... # 其他工具函数 +| +├── main.py #启动脚本 +├── app.log # 日志文件 +├── Dockerfile # 用于构建Docker镜像的Dockerfile +├── requirements.txt # 项目依赖列表 +└── README.md # 项目说明文件 +``` + diff --git a/app/__init__.py b/app/__init__.py new file mode 100644 index 0000000..c08db0a --- /dev/null +++ b/app/__init__.py @@ -0,0 +1,53 @@ +from fastapi import FastAPI, Depends +from fastapi.middleware.cors import CORSMiddleware +from sqlalchemy import create_engine +from .models import Base +from .routes.character import router as character_router +from .routes.user import router as user_router +from .routes.session import router as session_router +from .routes.chat import router as chat_router +from .dependencies.logger import get_logger +from config import get_config + + +#----------------------获取日志------------------------ +logger = get_logger() +logger.info("日志初始化完成") +#----------------------------------------------------- + +#----------------------获取配置------------------------ +Config = get_config() +logger.info("配置获取完成") +#----------------------------------------------------- + + +#--------------------初始化数据库----------------------- +engine = create_engine(Config.SQLALCHEMY_DATABASE_URI) +Base.metadata.create_all(bind=engine) +logger.info("数据库初始化完成") +#------------------------------------------------------ + + +#--------------------创建FastAPI实例-------------------- +app = FastAPI() +logger.info("FastAPI实例创建完成") +#------------------------------------------------------ + + +#---------------------初始化路由------------------------ +app.include_router(character_router) +app.include_router(user_router) +app.include_router(session_router) +app.include_router(chat_router) +logger.info("路由初始化完成") +#------------------------------------------------------- + +#-------------------设置跨域中间件----------------------- +app.add_middleware( + CORSMiddleware, + allow_origins=["*"], # 允许所有源,也可以指定特定源 + allow_credentials=True, + allow_methods=["*"], # 允许所有方法 + allow_headers=["*"], # 允许所有头 +) +#------------------------------------------------------- \ No newline at end of file diff --git a/app/controllers/__init__.py b/app/controllers/__init__.py new file mode 100644 index 0000000..b6e690f --- /dev/null +++ b/app/controllers/__init__.py @@ -0,0 +1 @@ +from . import * diff --git a/app/controllers/character.py b/app/controllers/character.py new file mode 100644 index 0000000..17de36c --- /dev/null +++ b/app/controllers/character.py @@ -0,0 +1,89 @@ +from ..schemas.character import * +from ..dependencies.logger import get_logger +from sqlalchemy.orm import Session +from ..models import Character +from datetime import datetime +from fastapi import HTTPException, status + +#依赖注入获取logger +logger = get_logger() + + +#创建新角色 +async def create_character_handler(character: CharacterCreateRequest, db: Session): + new_character = Character(voice_id=character.voice_id, avatar_id=character.avatar_id, background_ids=character.background_ids, name=character.name, + wakeup_words=character.wakeup_words, world_scenario = character.world_scenario, description=character.description, emojis=character.emojis, dialogues=character.dialogues) + try: + db.add(new_character) + db.commit() + db.refresh(new_character) + except Exception as e: + db.rollback() + raise HTTPException(status_code=status.HTTP_400_BAD_REQUEST, detail=str(e)) + + character_create_data = CharacterCreateData(character_id=new_character.id, createdAt=datetime.now().isoformat()) + return CharacterCreateResponse(status="success",message="创建角色成功",data=character_create_data) + + + +#更新角色 +async def update_character_handler(character_id: int, character: CharacterUpdateRequest, db: Session): + existing_character = db.query(Character).filter(Character.id == character_id).first() + if not existing_character: + return HTTPException(status_code=status.HTTP_404_NOT_FOUND, detail="角色不存在") + existing_character.voice_id = character.voice_id + existing_character.avatar_id = character.avatar_id + existing_character.background_ids = character.background_ids + existing_character.name = character.name + existing_character.wakeup_words = character.wakeup_words + existing_character.world_scenario = character.world_scenario + existing_character.description = character.description + existing_character.emojis = character.emojis + existing_character.dialogues = character.dialogues + + try: + db.add(existing_character) + db.commit() + except Exception as e: + db.rollback() + raise HTTPException(status_code=status.HTTP_400_BAD_REQUEST, detail=str(e)) + + character_update_data = CharacterUpdateData(updatedAt=datetime.now().isoformat()) + return CharacterUpdateResponse(status="success",message="更新角色成功",data=character_update_data) + + +#查询角色 +async def get_character_handler(character_id: int, db: Session): + try: + existing_character = db.query(Character).filter(Character.id == character_id).first() + except Exception as e: + db.rollback() + raise HTTPException(status_code=status.HTTP_400_BAD_REQUEST, detail=str(e)) + + if not existing_character: + raise HTTPException(status_code=status.HTTP_404_NOT_FOUND, detail="角色不存在") + character_query_data = CharacterQueryData(voice_id=existing_character.voice_id,avatar_id=existing_character.avatar_id,background_ids=existing_character.background_ids,name=existing_character.name, + wakeup_words=existing_character.wakeup_words,world_scenario=existing_character.world_scenario,description=existing_character.description,emojis=existing_character.emojis,dialogues=existing_character.dialogues) + return CharacterQueryResponse(status="success",message="查询角色成功",data=character_query_data) + + +#删除角色 +async def delete_character_handler(character_id: int, db: Session): + + try: + existing_character = db.query(Character).filter(Character.id == character_id).first() + except Exception as e: + db.rollback() + raise HTTPException(status_code=status.HTTP_400_BAD_REQUEST, detail=str(e)) + + if not existing_character: + raise HTTPException(status_code=status.HTTP_404_NOT_FOUND, detail="角色不存在") + try: + db.delete(existing_character) + db.commit() + except Exception as e: + db.rollback() + raise HTTPException(status_code=status.HTTP_400_BAD_REQUEST, detail=str(e)) + + character_delete_data = CharacterDeleteData(id=character_id,deletedAt=datetime.now().isoformat()) + return CharacterDeleteResponse(status="success",message="删除角色成功",data=character_delete_data) \ No newline at end of file diff --git a/app/controllers/chat.py b/app/controllers/chat.py new file mode 100644 index 0000000..4aa2602 --- /dev/null +++ b/app/controllers/chat.py @@ -0,0 +1,613 @@ +from ..schemas.chat import * +from ..dependencies.logger import get_logger +from .controller_enum import * +from ..models import UserCharacter, Session, Character, User +from utils.audio_utils import VAD +from fastapi import WebSocket, HTTPException, status +from datetime import datetime +from utils.xf_asr_utils import generate_xf_asr_url +from config import get_config +import uuid +import json +import requests +import asyncio + +# 依赖注入获取logger +logger = get_logger() + +# --------------------初始化本地ASR----------------------- +from utils.stt.funasr_utils import FunAutoSpeechRecognizer + +asr = FunAutoSpeechRecognizer() +logger.info("本地ASR初始化成功") +# ------------------------------------------------------- + +# --------------------初始化本地VITS---------------------- +from utils.tts.vits_utils import TextToSpeech + +tts = TextToSpeech(device='cpu') +logger.info("本地TTS初始化成功") +# ------------------------------------------------------- + + +# 依赖注入获取Config +Config = get_config() + +# ----------------------工具函数------------------------- +#获取session内容 +def get_session_content(session_id,redis,db): + session_content_str = "" + if redis.exists(session_id): + session_content_str = redis.get(session_id) + else: + session_db = db.query(Session).filter(Session.id == session_id).first() + if not session_db: + raise HTTPException(status_code=status.HTTP_404_NOT_FOUND, detail="Session not found") + session_content_str = session_db.content + return json.loads(session_content_str) + +#解析大模型流式返回内容 +def parseChunkDelta(chunk): + decoded_data = chunk.decode('utf-8') + parsed_data = json.loads(decoded_data[6:]) + if 'delta' in parsed_data['choices'][0]: + delta_content = parsed_data['choices'][0]['delta'] + return delta_content['content'] + else: + return "" + +#断句函数 +def split_string_with_punctuation(current_sentence,text,is_first): + result = [] + for char in text: + current_sentence += char + if is_first and char in ',.?!,。?!': + result.append(current_sentence) + current_sentence = '' + is_first = False + elif char in '。?!': + result.append(current_sentence) + current_sentence = '' + return result, current_sentence, is_first +#-------------------------------------------------------- + +# 创建新聊天 +async def create_chat_handler(chat: ChatCreateRequest, db, redis): + # 创建新的UserCharacter记录 + new_chat = UserCharacter(user_id=chat.user_id, character_id=chat.character_id) + + try: + db.add(new_chat) + db.commit() + db.refresh(new_chat) + except Exception as e: + db.rollback() + raise HTTPException(status_code=status.HTTP_400_BAD_REQUEST, detail=str(e)) + + # 查询所要创建聊天的角色信息,并创建SystemPrompt + db_character = db.query(Character).filter(Character.id == chat.character_id).first() + db_user = db.query(User).filter(User.id == chat.user_id).first() + system_prompt = f"""我们正在角色扮演对话游戏中,你需要始终保持角色扮演并待在角色设定的情景中,你扮演的角色信息如下:\n{"角色名称: " + db_character.name}。\n{"角色背景: " + db_character.description}\n{"角色所处环境: " + db_character.world_scenario}\n +{"角色的常用问候语: " + db_character.wakeup_words}。\n你需要用简单、通俗易懂的口语化方式进行对话,在没有经过允许的情况下,你需要保持上述角色,不得擅自跳出角色设定。\n 与你聊天的对象信息如下:{db_user.persona}""" + + + # 创建新的Session记录 + session_id = str(uuid.uuid4()) + user_id = chat.user_id + messages = json.dumps([{"role": "system", "content": system_prompt}], ensure_ascii=False) + + tts_info = { + "language": 0, + "speaker_id":db_character.voice_id, + "noise_scale": 0.1, + "noise_scale_w":0.668, + "length_scale": 1.2 + } + llm_info = { + "model": "abab5.5-chat", + "temperature": 1, + "top_p": 0.9, + } + + # 将tts和llm信息转化为json字符串 + tts_info_str = json.dumps(tts_info, ensure_ascii=False) + llm_info_str = json.dumps(llm_info, ensure_ascii=False) + user_info_str = db_user.persona + + token = 0 + content = {"user_id": user_id, "messages": messages, "user_info": user_info_str, "tts_info": tts_info_str, + "llm_info": llm_info_str, "token": token} + new_session = Session(id=session_id, user_character_id=new_chat.id, content=json.dumps(content, ensure_ascii=False), + last_activity=datetime.now(), is_permanent=False) + + # 将Session记录存入 + db.add(new_session) + db.commit() + db.refresh(new_session) + redis.set(session_id, json.dumps(content, ensure_ascii=False)) + + chat_create_data = ChatCreateData(user_character_id=new_chat.id, session_id=session_id, createdAt=datetime.now().isoformat()) + return ChatCreateResponse(status="success", message="创建聊天成功", data=chat_create_data) + + +#删除聊天 +async def delete_chat_handler(user_character_id, db, redis): + # 查询该聊天记录 + user_character_record = db.query(UserCharacter).filter(UserCharacter.id == user_character_id).first() + if not user_character_record: + raise HTTPException(status_code=status.HTTP_404_NOT_FOUND, detail="UserCharacter not found") + session_record = db.query(Session).filter(Session.user_character_id == user_character_id).first() + try: + redis.delete(session_record.id) + except Exception as e: + logger.error(f"删除Redis中Session记录时发生错误: {str(e)}") + try: + db.delete(session_record) + db.delete(user_character_record) + db.commit() + except Exception as e: + db.rollback() + raise HTTPException(status_code=status.HTTP_400_BAD_REQUEST, detail=str(e)) + chat_delete_data = ChatDeleteData(deletedAt=datetime.now().isoformat()) + return ChatDeleteResponse(status="success", message="删除聊天成功", data=chat_delete_data) + + +# 非流式聊天 +async def non_streaming_chat_handler(chat: ChatNonStreamRequest, db, redis): + pass + + + + +#---------------------------------------单次流式聊天接口--------------------------------------------- +#处理用户输入 +async def sct_user_input_handler(ws,user_input_q,llm_input_q,future_session_id,future_response_type,user_input_finish_event): + logger.debug("用户输入处理函数启动") + is_future_done = False + try: + while not user_input_finish_event.is_set(): + sct_data_json = json.loads(await ws.receive_text()) + if not is_future_done: + future_session_id.set_result(sct_data_json['meta_info']['session_id']) + if sct_data_json['meta_info']['voice_synthesize']: + future_response_type.set_result(RESPONSE_AUDIO) + else: + future_response_type.set_result(RESPONSE_TEXT) + is_future_done = True + if sct_data_json['text']: + await llm_input_q.put(sct_data_json['text']) + if not user_input_finish_event.is_set(): + user_input_finish_event.set() + break + if sct_data_json['meta_info']['is_end']: + await user_input_q.put(sct_data_json['audio']) + if not user_input_finish_event.is_set(): + user_input_finish_event.set() + break + await user_input_q.put(sct_data_json['audio']) + except KeyError as ke: + if sct_data_json['state'] == 1 and sct_data_json['method'] == 'heartbeat': + logger.debug("收到心跳包") + +#语音识别 +async def sct_asr_handler(user_input_q,llm_input_q,user_input_finish_event): + logger.debug("语音识别函数启动") + current_message = "" + while not (user_input_finish_event.is_set() and user_input_q.empty()): + audio_data = await user_input_q.get() + asr_result = asr.streaming_recognize(audio_data) + current_message += ''.join(asr_result['text']) + asr_result = asr.streaming_recognize(b'',is_end=True) + current_message += ''.join(asr_result['text']) + await llm_input_q.put(current_message) + logger.debug(f"接收到用户消息: {current_message}") + +#大模型调用 +async def sct_llm_handler(session_id,llm_info,db,redis,llm_input_q,llm_response_q,llm_response_finish_event): + logger.debug("llm调用函数启动") + session_content = get_session_content(session_id,redis,db) + messages = json.loads(session_content["messages"]) + current_message = await llm_input_q.get() + messages.append({'role': 'user', "content": current_message}) + payload = json.dumps({ + "model": llm_info["model"], + "stream": True, + "messages": messages, + "max_tokens": 10000, + "temperature": llm_info["temperature"], + "top_p": llm_info["top_p"] + }) + headers = { + 'Authorization': f"Bearer {Config.MINIMAX_LLM.API_KEY}", + 'Content-Type': 'application/json' + } + response = requests.request("POST", Config.MINIMAX_LLM.URL, headers=headers, data=payload, stream=True) + if response.status_code == 200: + for chunk in response.iter_lines(): + if chunk: + chunk_data = parseChunkDelta(chunk) + await llm_response_q.put(chunk_data) + llm_response_finish_event.set() + +#大模型返回断句 +async def sct_llm_response_handler(session_id,redis,db,llm_response_q,split_result_q,llm_response_finish_event): + logger.debug("llm返回处理函数启动") + llm_response = "" + current_sentence = "" + is_first = True + while not (llm_response_finish_event.is_set() and llm_response_q.empty()): + llm_chunk = await llm_response_q.get() + llm_response += llm_chunk + sentences, current_sentence, is_first = split_string_with_punctuation(current_sentence, llm_chunk, is_first) + for sentence in sentences: + await split_result_q.put(sentence) + session_content = get_session_content(session_id,redis,db) + messages = json.loads(session_content["messages"]) + messages.append({'role': 'assistant', "content": llm_response}) + session_content["messages"] = json.dumps(messages,ensure_ascii=False) #更新对话 + redis.set(session_id,json.dumps(session_content,ensure_ascii=False)) #更新session + logger.debug(f"llm返回结果: {llm_response}") + +#文本返回及语音合成 +async def sct_response_handler(ws,tts_info,response_type,split_result_q,llm_response_finish_event,chat_finish_event): + logger.debug("返回处理函数启动") + while not (llm_response_finish_event.is_set() and split_result_q.empty()): + sentence = await split_result_q.get() + if response_type == RESPONSE_TEXT: + response_message = {"type": "text", "code":200, "msg": sentence} + await ws.send_text(json.dumps(response_message, ensure_ascii=False)) + elif response_type == RESPONSE_AUDIO: + sr,audio = tts.synthesize(sentence, tts_info["speaker_id"], tts_info["language"], tts_info["noise_scale"], tts_info["noise_scale_w"], tts_info["length_scale"],return_bytes=True) + response_message = {"type": "text", "code":200, "msg": sentence} + await ws.send_bytes(audio) + await ws.send_text(json.dumps(response_message, ensure_ascii=False)) + logger.debug(f"websocket返回: {sentence}") + chat_finish_event.set() + +async def streaming_chat_temporary_handler(ws: WebSocket, db, redis): + logger.debug("streaming chat temporary websocket 连接建立") + user_input_q = asyncio.Queue() # 用于存储用户输入 + llm_input_q = asyncio.Queue() # 用于存储llm输入 + llm_response_q = asyncio.Queue() # 用于存储llm输出 + split_result_q = asyncio.Queue() # 用于存储tts输出 + + user_input_finish_event = asyncio.Event() + llm_response_finish_event = asyncio.Event() + chat_finish_event = asyncio.Event() + future_session_id = asyncio.Future() + future_response_type = asyncio.Future() + asyncio.create_task(sct_user_input_handler(ws,user_input_q,llm_input_q,future_session_id,future_response_type,user_input_finish_event)) + asyncio.create_task(sct_asr_handler(user_input_q,llm_input_q,user_input_finish_event)) + + + session_id = await future_session_id #获取session_id + response_type = await future_response_type #获取返回类型 + tts_info = json.loads(get_session_content(session_id,redis,db)["tts_info"]) + llm_info = json.loads(get_session_content(session_id,redis,db)["llm_info"]) + + asyncio.create_task(sct_llm_handler(session_id,llm_info,db,redis,llm_input_q,llm_response_q,llm_response_finish_event)) + asyncio.create_task(sct_llm_response_handler(session_id,redis,db,llm_response_q,split_result_q,llm_response_finish_event)) + asyncio.create_task(sct_response_handler(ws,tts_info,response_type,split_result_q,llm_response_finish_event,chat_finish_event)) + + while not chat_finish_event.is_set(): + await asyncio.sleep(1) + await ws.send_text(json.dumps({"type": "close", "code": 200, "msg": ""}, ensure_ascii=False)) + await ws.close() + logger.debug("streaming chat temporary websocket 连接断开") +#--------------------------------------------------------------------------------------------------- + + +# 持续流式聊天 +async def streaming_chat_lasting_handler(ws, db, redis): + print("Websocket连接成功") + while True: + try: + print("等待接受") + data = await asyncio.wait_for(ws.receive_text(), timeout=60) + data_json = json.loads(data) + if data_json["is_close"]: + close_message = {"type": "close", "code": 200, "msg": ""} + await ws.send_text(json.dumps(close_message, ensure_ascii=False)) + print("连接关闭") + await asyncio.sleep(0.5) + await ws.close() + return; + except asyncio.TimeoutError: + print("连接超时") + await ws.close() + return; + current_message = "" # 用于存储用户消息 + response_type = RESPONSE_TEXT # 用于获取返回类型 + session_id = "" + if Config.STRAM_CHAT.ASR == "LOCAL": + try: + while True: + if data_json["text"]: # 若文字输入不为空,则表示该输入为文字输入 + if data_json["meta_info"]["voice_synthesize"]: + response_type = RESPONSE_AUDIO # 查看voice_synthesize判断返回类型 + session_id = data_json["meta_info"]["session_id"] + current_message = data_json['text'] + break + + if not data_json['meta_info']['is_end']: # 还在发 + asr_result = asr.streaming_recognize(data_json["audio"]) + current_message += ''.join(asr_result['text']) + else: # 发完了 + asr_result = asr.streaming_recognize(data_json["audio"], is_end=True) + session_id = data_json["meta_info"]["session_id"] + current_message += ''.join(asr_result['text']) + if data_json["meta_info"]["voice_synthesize"]: + response_type = RESPONSE_AUDIO # 查看voice_synthesize判断返回类型 + break + data_json = json.loads(await ws.receive_text()) + + except Exception as e: + error_info = f"接收用户消息错误: {str(e)}" + error_message = {"type": "error", "code": "500", "msg": error_info} + logger.error(error_info) + await ws.send_text(json.dumps(error_message, ensure_ascii=False)) + await ws.close() + return + elif Config.STRAM_CHAT.ASR == "REMOTE": + error_info = f"远程ASR服务暂未开通" + error_message = {"type": "error", "code": "500", "msg": error_info} + logger.error(error_info) + await ws.send_text(json.dumps(error_message, ensure_ascii=False)) + await ws.close() + return + + print(f"接收到用户消息: {current_message}") + # 查询Session记录 + session_content_str = "" + if redis.exists(session_id): + session_content_str = redis.get(session_id) + else: + session_db = db.query(Session).filter(Session.id == session_id).first() + if not session_db: + error_info = f"未找到session记录: {str(e)}" + error_message = {"type": "error", "code": 500, "msg": error_info} + logger.error(error_info) + await ws.send_text(json.dumps(error_message, ensure_ascii=False)) + await ws.close() + return + session_content_str = session_db.content + + session_content = json.loads(session_content_str) + llm_info = json.loads(session_content["llm_info"]) + tts_info = json.loads(session_content["tts_info"]) + user_info = json.loads(session_content["user_info"]) + messages = json.loads(session_content["messages"]) + messages.append({'role': 'user', "content": current_message}) + token_count = session_content["token"] + + try: + payload = json.dumps({ + "model": llm_info["model"], + "stream": True, + "messages": messages, + "tool_choice": "auto", + "max_tokens": 10000, + "temperature": llm_info["temperature"], + "top_p": llm_info["top_p"] + }) + headers = { + 'Authorization': f"Bearer {Config.MINIMAX_LLM.API_KEY}", + 'Content-Type': 'application/json' + } + response = requests.request("POST", Config.MINIMAX_LLM.URL, headers=headers, data=payload, stream=True) + except Exception as e: + error_info = f"发送信息给大模型时发生错误: {str(e)}" + error_message = {"type": "error", "code": 500, "msg": error_info} + logger.error(error_info) + await ws.send_text(json.dumps(error_message, ensure_ascii=False)) + await ws.close() + return + + def split_string_with_punctuation(text): + punctuations = "!?。" + result = [] + current_sentence = "" + for char in text: + current_sentence += char + if char in punctuations: + result.append(current_sentence) + current_sentence = "" + # 判断最后一个字符是否为标点符号 + if current_sentence and current_sentence[-1] not in punctuations: + # 如果最后一段不以标点符号结尾,则加入拆分数组 + result.append(current_sentence) + return result + + llm_response = "" + response_buf = "" + + try: + if Config.STRAM_CHAT.TTS == "LOCAL": + if response.status_code == 200: + for chunk in response.iter_lines(): + if chunk: + if response_type == RESPONSE_AUDIO: + chunk_data = parseChunkDelta(chunk) + llm_response += chunk_data + response_buf += chunk_data + split_buf = split_string_with_punctuation(response_buf) + response_buf = "" + if len(split_buf) != 0: + for sentence in split_buf: + sr, audio = tts.synthesize(sentence, tts_info["language"], tts_info["speaker_id"], tts_info["noise_scale"], tts_info["noise_scale_w"], tts_info["length_scale"], return_bytes=True) + text_response = {"type": "text", "code": 200, "msg": sentence} + await ws.send_text(json.dumps(text_response, ensure_ascii=False)) # 返回文本数据 + await ws.send_bytes(audio) # 返回音频二进制流数据 + if response_type == RESPONSE_TEXT: + chunk_data = parseChunkDelta(chunk) + llm_response += chunk_data + text_response = {"type": "text", "code": 200, "msg": chunk_data} + await ws.send_text(json.dumps(text_response, ensure_ascii=False)) # 返回文本数据 + + elif Config.STRAM_CHAT.TTS == "REMOTE": + error_info = f"暂不支持远程音频合成" + error_message = {"type": "error", "code": 500, "msg": error_info} + logger.error(error_info) + await ws.send_text(json.dumps(error_message, ensure_ascii=False)) + await ws.close() + return + end_response = {"type": "end", "code": 200, "msg": ""} + await ws.send_text(json.dumps(end_response, ensure_ascii=False)) # 单次返回结束 + print(f"llm消息: {llm_response}") + except Exception as e: + error_info = f"音频合成与向前端返回时错误: {str(e)}" + error_message = {"type": "error", "code": 500, "msg": error_info} + logger.error(error_info) + await ws.send_text(json.dumps(error_message, ensure_ascii=False)) + await ws.close() + return + + try: + messages.append({'role': 'assistant', "content": llm_response}) + token_count += len(llm_response) + session_content["messages"] = json.dumps(messages, ensure_ascii=False) + session_content["token"] = token_count + redis.set(session_id, json.dumps(session_content, ensure_ascii=False)) + except Exception as e: + error_info = f"更新session时错误: {str(e)}" + error_message = {"type": "error", "code": 500, "msg": error_info} + logger.error(error_info) + await ws.send_text(json.dumps(error_message, ensure_ascii=False)) + await ws.close() + return + print("处理完毕") + + +#--------------------------------语音通话接口-------------------------------------- +#音频数据生产函数 +async def voice_call_audio_producer(ws,audio_queue,future,shutdown_event): + logger.debug("音频数据生产函数启动") + is_future_done = False + while not shutdown_event.is_set(): + voice_call_data_json = json.loads(await ws.receive_text()) + if not is_future_done: #在第一次循环中读取session_id + future.set_result(voice_call_data_json['meta_info']['session_id']) + is_future_done = True + if voice_call_data_json["is_close"]: + shutdown_event.set() + break + else: + await audio_queue.put(voice_call_data_json["audio"]) #将音频数据存入audio_q + +#音频数据消费函数 +async def voice_call_audio_consumer(audio_q,asr_result_q,shutdown_event): + logger.debug("音频数据消费者函数启动") + vad = VAD() + current_message = "" + vad_count = 0 + while not (shutdown_event.is_set() and audio_q.empty()): + audio_data = await audio_q.get() + if vad.is_speech(audio_data): + if vad_count > 0: + vad_count -= 1 + asr_result = asr.streaming_recognize(audio_data) + current_message += ''.join(asr_result['text']) + else: + vad_count += 1 + if vad_count >= 25: #连续25帧没有语音,则认为说完了 + asr_result = asr.streaming_recognize(audio_data, is_end=True) + if current_message: + logger.debug(f"检测到静默,用户输入为:{current_message}") + await asr_result_q.put(current_message) + current_message = "" + vad_count = 0 + +#asr结果消费以及llm返回生产函数 +async def voice_call_llm_handler(session_id,llm_info,redis,db,asr_result_q,llm_response_q,shutdown_event): + logger.debug("asr结果消费以及llm返回生产函数启动") + while not (shutdown_event.is_set() and asr_result_q.empty()): + session_content = get_session_content(session_id,redis,db) + messages = json.loads(session_content["messages"]) + current_message = await asr_result_q.get() + messages.append({'role': 'user', "content": current_message}) + payload = json.dumps({ + "model": llm_info["model"], + "stream": True, + "messages": messages, + "max_tokens":10000, + "temperature": llm_info["temperature"], + "top_p": llm_info["top_p"] + }) + + headers = { + 'Authorization': f"Bearer {Config.MINIMAX_LLM.API_KEY}", + 'Content-Type': 'application/json' + } + response = requests.request("POST", Config.MINIMAX_LLM.URL, headers=headers, data=payload, stream=True) + if response.status_code == 200: + for chunk in response.iter_lines(): + if chunk: + chunk_data =parseChunkDelta(chunk) + llm_frame = {'message':chunk_data,'is_end':False} + await llm_response_q.put(llm_frame) + llm_frame = {'message':"",'is_end':True} + await llm_response_q.put(llm_frame) + +#llm结果返回函数 +async def voice_call_llm_response_consumer(session_id,redis,db,llm_response_q,split_result_q,shutdown_event): + logger.debug("llm结果返回函数启动") + llm_response = "" + current_sentence = "" + is_first = True + while not (shutdown_event.is_set() and llm_response_q.empty()): + llm_frame = await llm_response_q.get() + llm_response += llm_frame['message'] + sentences,current_sentence,is_first = split_string_with_punctuation(current_sentence,llm_frame['message'],is_first) + for sentence in sentences: + await split_result_q.put(sentence) + if llm_frame['is_end']: + is_first = True + session_content = get_session_content(session_id,redis,db) + messages = json.loads(session_content["messages"]) + messages.append({'role': 'assistant', "content": llm_response}) + session_content["messages"] = json.dumps(messages,ensure_ascii=False) #更新对话 + redis.set(session_id,json.dumps(session_content,ensure_ascii=False)) #更新session + logger.debug(f"llm返回结果: {llm_response}") + llm_response = "" + current_sentence = "" + +#语音合成及返回函数 +async def voice_call_tts_handler(ws,tts_info,split_result_q,shutdown_event): + logger.debug("语音合成及返回函数启动") + while not (shutdown_event.is_set() and split_result_q.empty()): + sentence = await split_result_q.get() + sr,audio = tts.synthesize(sentence, tts_info["language"], tts_info["speaker_id"], tts_info["noise_scale"], tts_info["noise_scale_w"], tts_info["length_scale"], return_bytes=True) + text_response = {"type": "text", "code": 200, "msg": sentence} + await ws.send_bytes(audio) #返回音频二进制流数据 + await ws.send_text(json.dumps(text_response, ensure_ascii=False)) #返回文本数据 + logger.debug(f"websocket返回:{sentence}") + asyncio.sleep(0.5) + await ws.close() + + +async def voice_call_handler(ws, db, redis): + logger.debug("voice_call websocket 连接建立") + audio_q = asyncio.Queue() + asr_result_q = asyncio.Queue() + llm_response_q = asyncio.Queue() + split_result_q = asyncio.Queue() + + shutdown_event = asyncio.Event() + future = asyncio.Future() + asyncio.create_task(voice_call_audio_producer(ws,audio_q,future,shutdown_event)) #创建音频数据生产者 + asyncio.create_task(voice_call_audio_consumer(audio_q,asr_result_q,shutdown_event)) #创建音频数据消费者 + + #获取session内容 + session_id = await future #获取session_id + tts_info = json.loads(get_session_content(session_id,redis,db)["tts_info"]) + llm_info = json.loads(get_session_content(session_id,redis,db)["llm_info"]) + + asyncio.create_task(voice_call_llm_handler(session_id,llm_info,redis,db,asr_result_q,llm_response_q,shutdown_event)) #创建llm处理者 + asyncio.create_task(voice_call_llm_response_consumer(session_id,redis,db,llm_response_q,split_result_q,shutdown_event)) #创建llm断句结果 + asyncio.create_task(voice_call_tts_handler(ws,tts_info,split_result_q,shutdown_event)) #返回tts音频结果 + + while not shutdown_event.is_set(): + await asyncio.sleep(5) + await ws.close() + logger.debug("voice_call websocket 连接断开") +#------------------------------------------------------------------------------------------ \ No newline at end of file diff --git a/app/controllers/controller_enum.py b/app/controllers/controller_enum.py new file mode 100644 index 0000000..2046bc4 --- /dev/null +++ b/app/controllers/controller_enum.py @@ -0,0 +1,13 @@ +#聊天类型:文本、语音、不确定 +CHAT_TEXT = 0 +CHAT_AUDIO = 1 +CHAT_UNCERTAIN = -1 + +#流式传输帧类型:第一帧、中间帧、最后帧 +FIRST_FRAME = 1 +CONTINUE_FRAME =2 +LAST_FRAME =3 + +#响应类型:文本、语音 +RESPONSE_TEXT = 0 +RESPONSE_AUDIO = 1 \ No newline at end of file diff --git a/app/controllers/session.py b/app/controllers/session.py new file mode 100644 index 0000000..fd402eb --- /dev/null +++ b/app/controllers/session.py @@ -0,0 +1,79 @@ +from ..schemas.session import * +from ..dependencies.logger import get_logger +from fastapi import HTTPException, status +from ..models import Session +from ..models import UserCharacter +from datetime import datetime +import json + +#依赖注入获取logger +logger = get_logger() + + +#获取SessionID +async def get_session_id_handler(user_id: int, character_id:int, db): + try: + user_character_record = db.query(UserCharacter).filter(UserCharacter.user_id == user_id, UserCharacter.character_id == character_id).first() + except Exception as e: + db.rollback() + raise HTTPException(status_code=status.HTTP_400_BAD_REQUEST, detail=str(e)) + + if not user_character_record: + raise HTTPException(status_code=status.HTTP_404_NOT_FOUND, detail="User Character not found") + try: + session_id = db.query(Session).filter(Session.user_character_id==user_character_record.id).first().id + except Exception as e: + db.rollback() + raise HTTPException(status_code=status.HTTP_400_BAD_REQUEST, detail=str(e)) + + session_id_query_data = SessionIdQueryData(session_id=session_id) + return SessionIdQueryResponse(status="success",message="Session ID 获取成功",data=session_id_query_data) + +#查询Session信息 +async def get_session_handler(session_id: int, db, redis): + session_str = "" + if redis.exists(session_id): + session_str = redis.get(session_id) + else: + try: + session_str = db.query(Session).filter(Session.id == session_id).first().content + except Exception as e: + db.rollback() + raise HTTPException(status_code=status.HTTP_400_BAD_REQUEST, detail=str(e)) + redis.set(session_id, session_str) + if not session_str: + raise HTTPException(status_code=status.HTTP_404_NOT_FOUND, detail="Session not found") + session = json.loads(session_str) + session_query_data = SessionQueryData(user_id=session["user_id"], messages=session["messages"],user_info=session["user_info"],tts_info=session["tts_info"],llm_info=session["llm_info"],token=session["token"]) + return SessionQueryResponse(status="success",message="Session 查询成功",data=session_query_data) + +#更新Sessino信息 +async def update_session_handler(session_id, session_data:SessionUpdateRequest, db, redis): + existing_session = "" + if redis.exists(session_id): + existing_session = redis.get(session_id) + else: + existing_session = db.query(Session).filter(Session.id == session_id).first().content + if not existing_session: + raise HTTPException(status_code=status.HTTP_404_NOT_FOUND, detail="Session not found") + + #更新Session字段 + session = json.loads(existing_session) + session["user_id"] = session_data.user_id + session["messages"] = session_data.messages + session["user_info"] = session_data.user_info + session["tts_info"] = session_data.tts_info + session["llm_info"] = session_data.llm_info + session["token"] = session_data.token + + #存储Session + session_str = json.dumps(session,ensure_ascii=False) + redis.set(session_id, session_str) + try: + db.query(Session).filter(Session.id == session_id).update({"content": session_str}) + db.commit() + except Exception as e: + db.rollback() + raise HTTPException(status_code=status.HTTP_400_BAD_REQUEST, detail=str(e)) + session_update_data = SessionUpdateData(updatedAt=datetime.now().isoformat()) + return SessionUpdateResponse(status="success",message="Session 更新成功",data=session_update_data) diff --git a/app/controllers/user.py b/app/controllers/user.py new file mode 100644 index 0000000..155cd27 --- /dev/null +++ b/app/controllers/user.py @@ -0,0 +1,159 @@ +from ..schemas.user import * +from ..dependencies.logger import get_logger +from ..models import User, Hardware +from datetime import datetime +from sqlalchemy.orm import Session +from fastapi import HTTPException, status + + +#依赖注入获取logger +logger = get_logger() + + +#创建用户 +async def create_user_handler(user:UserCrateRequest, db: Session): + new_user = User(created_at=datetime.now(), open_id=user.open_id, username=user.username, avatar_id=user.avatar_id, tags=user.tags, persona=user.persona) + try: + db.add(new_user) + db.commit() + db.refresh(new_user) + except Exception as e: + db.rollback() + raise HTTPException(status_code=status.HTTP_400_BAD_REQUEST, detail=str(e)) + user_create_data = UserCrateData(user_id=new_user.id, createdAt=new_user.created_at.isoformat()) + return UserCrateResponse(status="success", message="创建用户成功", data=user_create_data) + + +#更新用户信息 +async def update_user_handler(user_id:int, user:UserUpdateRequest, db: Session): + existing_user = db.query(User).filter(User.id == user_id).first() + if existing_user is None: + raise HTTPException(status_code=status.HTTP_404_NOT_FOUND, detail="用户不存在") + existing_user.open_id = user.open_id + existing_user.username = user.username + existing_user.avatar_id = user.avatar_id + existing_user.tags = user.tags + existing_user.persona = user.persona + try: + db.add(existing_user) + db.commit() + db.refresh(existing_user) + except Exception as e: + db.rollback() + raise HTTPException(status_code=status.HTTP_400_BAD_REQUEST, detail=str(e)) + user_update_data = UserUpdateData(updatedAt=datetime.now().isoformat()) + return UserUpdateResponse(status="success", message="更新用户信息成功", data=user_update_data) + + +#查询用户信息 +async def get_user_handler(user_id:int, db: Session): + try: + existing_user = db.query(User).filter(User.id == user_id).first() + except Exception as e: + db.rollback() + raise HTTPException(status_code=status.HTTP_400_BAD_REQUEST, detail=str(e)) + if existing_user is None: + raise HTTPException(status_code=status.HTTP_404_NOT_FOUND, detail="用户不存在") + user_query_data = UserQueryData(open_id=existing_user.open_id, username=existing_user.username, avatar_id=existing_user.avatar_id, tags=existing_user.tags, persona=existing_user.persona) + return UserQueryResponse(status="success", message="查询用户信息成功", data=user_query_data) + + +#删除用户 +async def delete_user_handler(user_id:int, db: Session): + try: + existing_user = db.query(User).filter(User.id == user_id).first() + except Exception as e: + db.rollback() + raise HTTPException(status_code=status.HTTP_400_BAD_REQUEST, detail=str(e)) + if existing_user is None: + raise HTTPException(status_code=status.HTTP_404_NOT_FOUND, detail="用户不存在") + try: + db.delete(existing_user) + db.commit() + except Exception as e: + db.rollback() + raise HTTPException(status_code=status.HTTP_400_BAD_REQUEST, detail=str(e)) + user_delete_data = UserDeleteData(deletedAt=datetime.now().isoformat()) + return UserDeleteResponse(status="success", message="删除用户成功", data=user_delete_data) + + +#绑定硬件 +async def bind_hardware_handler(hardware, db: Session): + new_hardware = Hardware(mac=hardware.mac, user_id=hardware.user_id, firmware=hardware.firmware, model=hardware.model) + try: + db.add(new_hardware) + db.commit() + db.refresh(new_hardware) + except Exception as e: + db.rollback() + raise HTTPException(status_code=status.HTTP_400_BAD_REQUEST, detail=str(e)) + hardware_bind_data = HardwareBindData(hardware_id=new_hardware.id, bindedAt=datetime.now().isoformat()) + return HardwareBindResponse(status="success", message="绑定硬件成功", data=hardware_bind_data) + + +#解绑硬件 +async def unbind_hardware_handler(hardware_id:int, db: Session): + try: + existing_hardware = db.query(Hardware).filter(Hardware.id == hardware_id).first() + except Exception as e: + db.rollback() + raise HTTPException(status_code=status.HTTP_400_BAD_REQUEST, detail=str(e)) + if existing_hardware is None: + raise HTTPException(status_code=status.HTTP_404_NOT_FOUND, detail="硬件不存在") + try: + db.delete(existing_hardware) + db.commit() + except Exception as e: + db.rollback() + raise HTTPException(status_code=status.HTTP_400_BAD_REQUEST, detail=str(e)) + hardware_unbind_data = HardwareUnbindData(unbindedAt=datetime.now().isoformat()) + return HardwareUnbindResponse(status="success", message="解绑硬件成功", data=hardware_unbind_data) + + +#硬件换绑 +async def change_bind_hardware_handler(hardware_id, user, db): + try: + existing_hardware = db.query(Hardware).filter(Hardware.id == hardware_id).first() + if existing_hardware is None: + raise HTTPException(status_code=status.HTTP_404_NOT_FOUND, detail="硬件不存在") + existing_hardware.user_id = user.user_id + db.add(existing_hardware) + db.commit() + db.refresh(existing_hardware) + except Exception as e: + db.rollback() + raise HTTPException(status_code=status.HTTP_400_BAD_REQUEST, detail=str(e)) + hardware_change_bind_data = HardwareChangeBindData(bindChangedAt=datetime.now().isoformat()) + return HardwareChangeBindResponse(status="success", message="硬件换绑成功", data=hardware_change_bind_data) + + +#硬件信息更新 +async def update_hardware_handler(hardware_id, hardware, db): + try: + existing_hardware = db.query(Hardware).filter(Hardware.id == hardware_id).first() + if existing_hardware is None: + raise HTTPException(status_code=status.HTTP_404_NOT_FOUND, detail="硬件不存在") + existing_hardware.mac = hardware.mac + existing_hardware.firmware = hardware.firmware + existing_hardware.model = hardware.model + db.add(existing_hardware) + db.commit() + db.refresh(existing_hardware) + except Exception as e: + db.rollback() + raise HTTPException(status_code=status.HTTP_400_BAD_REQUEST, detail=str(e)) + hardware_update_data = HardwareUpdateData(updatedAt=datetime.now().isoformat()) + return HardwareUpdateResponse(status="success", message="硬件信息更新成功", data=hardware_update_data) + + +#查询硬件 +async def get_hardware_handler(hardware_id, db): + try: + existing_hardware = db.query(Hardware).filter(Hardware.id == hardware_id).first() + except Exception as e: + db.rollback() + raise HTTPException(status_code=status.HTTP_400_BAD_REQUEST, detail=str(e)) + if existing_hardware is None: + raise HTTPException(status_code=status.HTTP_404_NOT_FOUND, detail="硬件不存在") + hardware_query_data = HardwareQueryData(mac=existing_hardware.mac, user_id=existing_hardware.user_id, firmware=existing_hardware.firmware, model=existing_hardware.model) + return HardwareQueryResponse(status="success", message="查询硬件信息成功", data=hardware_query_data) \ No newline at end of file diff --git a/app/dependencies/__init__.py b/app/dependencies/__init__.py new file mode 100644 index 0000000..b974282 --- /dev/null +++ b/app/dependencies/__init__.py @@ -0,0 +1 @@ +from . import * \ No newline at end of file diff --git a/app/dependencies/database.py b/app/dependencies/database.py new file mode 100644 index 0000000..f857532 --- /dev/null +++ b/app/dependencies/database.py @@ -0,0 +1,15 @@ +from sqlalchemy.orm import sessionmaker +from sqlalchemy import create_engine +from config import get_config + +Config = get_config() + +LocalSession = sessionmaker(autocommit=False, autoflush=False, bind=create_engine(Config.SQLALCHEMY_DATABASE_URI)) + +#返回一个数据库连接 +def get_db(): + db = LocalSession() + try: + yield db + finally: + db.close() \ No newline at end of file diff --git a/app/dependencies/logger.py b/app/dependencies/logger.py new file mode 100644 index 0000000..44e0b96 --- /dev/null +++ b/app/dependencies/logger.py @@ -0,0 +1,27 @@ +import logging +from config import get_config + +#获取配置信息 +Config = get_config() + +#日志类 +class Logger: + def __init__(self): + self.logger = logging.getLogger(__name__) + self.logger.setLevel(Config.LOG_LEVEL) + self.logger.propagate = False + formatter = logging.Formatter('%(asctime)s - %(levelname)s - %(message)s') + + if not self.logger.handlers: # 检查是否已经有处理器 + # 输出到控制台 + console_handler = logging.StreamHandler() + console_handler.setFormatter(formatter) + self.logger.addHandler(console_handler) + + # 输出到文件 + file_handler = logging.FileHandler('app.log') + file_handler.setFormatter(formatter) + self.logger.addHandler(file_handler) + +def get_logger(): + return Logger().logger \ No newline at end of file diff --git a/app/dependencies/redis.py b/app/dependencies/redis.py new file mode 100644 index 0000000..a1efc9e --- /dev/null +++ b/app/dependencies/redis.py @@ -0,0 +1,8 @@ +import redis +from config import get_config + +#获取配置信息 +Config = get_config() + +def get_redis(): + return redis.Redis.from_url(Config.REDIS_URL) diff --git a/app/exceptions/__init__.py b/app/exceptions/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/app/main.py b/app/main.py new file mode 100644 index 0000000..cac1ead --- /dev/null +++ b/app/main.py @@ -0,0 +1,6 @@ +from app import app +import uvicorn + + +if __name__ == "__main__": + uvicorn.run(app, host="0.0.0.0", port=7878) diff --git a/app/models/__init__.py b/app/models/__init__.py new file mode 100644 index 0000000..cf4f59d --- /dev/null +++ b/app/models/__init__.py @@ -0,0 +1 @@ +from .models import * \ No newline at end of file diff --git a/app/models/models.py b/app/models/models.py new file mode 100644 index 0000000..baa390a --- /dev/null +++ b/app/models/models.py @@ -0,0 +1,82 @@ +from sqlalchemy import Column, Integer, String, JSON, Text, ForeignKey, DateTime, Boolean, CHAR +from sqlalchemy.ext.declarative import declarative_base + +Base = declarative_base() + + +#角色表定义 +class Character(Base): + __tablename__ = 'character' + + id = Column(Integer, primary_key=True, autoincrement=True) + voice_id = Column(Integer, nullable=False) + avatar_id = Column(String(36), nullable=False) + background_ids = Column(String(255), nullable=False) + name = Column(String(36), nullable=False) + wakeup_words = Column(String(255), nullable=False) + world_scenario = Column(Text, nullable=False) + description = Column(Text, nullable=False) + emojis = Column(JSON, nullable=False) + dialogues = Column(Text, nullable=False) + + def __repr__(self): + return f"" + + +#用户表定义 +class User(Base): + __tablename__ = 'user' + + id = Column(Integer, primary_key=True, autoincrement=True) + created_at = Column(DateTime, nullable=True) + updated_at = Column(DateTime, nullable=True) + deleted_at = Column(DateTime, nullable=True) + open_id = Column(String(255), nullable=True) + username = Column(String(64), nullable=True) + avatar_id = Column(String(36), nullable=True) + tags = Column(JSON) + persona = Column(JSON) + + def __repr__(self): + return f"" + + +#硬件表定义 +class Hardware(Base): + __tablename__ = 'hardware' + + id = Column(Integer, primary_key=True, autoincrement=True) + user_id = Column(Integer, ForeignKey('user.id')) + mac = Column(String(17)) + firmware = Column(String(16)) + model = Column(String(36)) + + def __repr__(self): + return f"" + + +#用户角色表定义 +class UserCharacter(Base): + __tablename__ = 'user_character' + + id = Column(Integer, primary_key=True, autoincrement=True) + user_id = Column(Integer, ForeignKey('user.id')) + character_id = Column(Integer, ForeignKey('character.id')) + persona = Column(JSON) + + def __repr__(self): + return f"" + + +#Session表定义 +class Session(Base): + __tablename__ = 'session' + + id = Column(CHAR(36), primary_key=True) + user_character_id = Column(Integer, ForeignKey('user_character.id')) + content = Column(Text) + last_activity = Column(DateTime()) + is_permanent = Column(Boolean) + + def __repr__(self): + return f"" diff --git a/app/routes/__init__.py b/app/routes/__init__.py new file mode 100644 index 0000000..b974282 --- /dev/null +++ b/app/routes/__init__.py @@ -0,0 +1 @@ +from . import * \ No newline at end of file diff --git a/app/routes/character.py b/app/routes/character.py new file mode 100644 index 0000000..3578e2c --- /dev/null +++ b/app/routes/character.py @@ -0,0 +1,35 @@ +from fastapi import APIRouter, HTTPException, status +from ..controllers.character import * +from fastapi import Depends +from sqlalchemy.orm import Session +from ..dependencies.database import get_db + +router = APIRouter() + + +#角色创建接口 +@router.post("/characters",response_model=CharacterCreateResponse) +async def create_character(character:CharacterCreateRequest, db: Session = Depends(get_db)): + response = await create_character_handler(character, db) + return response + + +#用户更新接口 +@router.put("/characters/{character_id}",response_model=CharacterUpdateResponse) +async def update_character(character_id:int,character:CharacterUpdateRequest, db: Session = Depends(get_db)): + response = await update_character_handler(character_id, character, db) + return response + + +#角色删除接口 +@router.delete("/characters/{character_id}", response_model=CharacterDeleteResponse) +async def delete_character(character_id: int, db: Session = Depends(get_db)): + response = await delete_character_handler(character_id, db) + return response + + +#角色查询接口 +@router.get("/characters/{character_id}",response_model=CharacterQueryResponse) +async def get_character(character_id: int, db: Session = Depends(get_db)): + response = await get_character_handler(character_id, db) + return response diff --git a/app/routes/chat.py b/app/routes/chat.py new file mode 100644 index 0000000..b367b9d --- /dev/null +++ b/app/routes/chat.py @@ -0,0 +1,48 @@ +from fastapi import APIRouter, HTTPException, status, WebSocket +from ..controllers.chat import * +from fastapi import Depends +from ..dependencies.database import get_db +from ..dependencies.redis import get_redis + +router = APIRouter() + + +#创建新聊天接口 +@router.post("/chats", response_model=ChatCreateResponse) +async def create_chat(chat: ChatCreateRequest, db=Depends(get_db), redis=Depends(get_redis)): + response = await create_chat_handler(chat, db, redis) + return response + +#删除聊天接口 +@router.delete("/chats/{user_character_id}", response_model=ChatDeleteResponse) +async def delete_chat(user_character_id: int, db=Depends(get_db), redis=Depends(get_redis)): + response = await delete_chat_handler(user_character_id, db, redis) + return response + +#非流式聊天 +@router.post("/chats/non-streaming", response_model=ChatNonStreamResponse) +async def non_streaming_chat(chat: ChatNonStreamRequest,db=Depends(get_db), redis=Depends(get_redis)): + raise HTTPException(status_code=status.HTTP_403_FORBIDDEN,detail="this api is not available") + response = await non_streaming_chat_handler(chat, db, redis) + return response + + +#流式聊天_单次 +@router.websocket("/chat/streaming/temporary") +async def streaming_chat(ws: WebSocket,db=Depends(get_db), redis=Depends(get_redis)): + await ws.accept() + await streaming_chat_temporary_handler(ws,db,redis) + + +#流式聊天_持续 +@router.websocket("/chat/streaming/lasting") +async def streaming_chat(ws: WebSocket,db=Depends(get_db), redis=Depends(get_redis)): + await ws.accept() + await streaming_chat_lasting_handler(ws,db,redis) + + +#语音通话 +@router.websocket("/chat/voice_call") +async def voice_chat(ws: WebSocket,db=Depends(get_db), redis=Depends(get_redis)): + await ws.accept() + await voice_call_handler(ws,db,redis) \ No newline at end of file diff --git a/app/routes/session.py b/app/routes/session.py new file mode 100644 index 0000000..30e0ca6 --- /dev/null +++ b/app/routes/session.py @@ -0,0 +1,29 @@ +from fastapi import APIRouter, Query, HTTPException, status +from ..controllers.session import * +from fastapi import Depends +from ..dependencies.database import get_db +from ..dependencies.redis import get_redis + + +router = APIRouter() + + +#session_id查询接口 +@router.get("/sessions", response_model=SessionIdQueryResponse) +async def get_session_id(user_id: int=Query(..., description="用户id"), character_id: int=Query(..., description="角色id"),db=Depends(get_db)): + response = await get_session_id_handler(user_id, character_id, db) + return response + + +#session查询接口 +@router.get("/sessions/{session_id}", response_model=SessionQueryResponse) +async def get_session(session_id: str, db=Depends(get_db), redis=Depends(get_redis)): + response = await get_session_handler(session_id, db, redis) + return response + + +#session更新接口 +@router.put("/sessions/{session_id}", response_model=SessionUpdateResponse) +async def update_session(session_id: str, session_data: SessionUpdateRequest, db=Depends(get_db), redis=Depends(get_redis)): + response = await update_session_handler(session_id, session_data, db, redis) + return response \ No newline at end of file diff --git a/app/routes/user.py b/app/routes/user.py new file mode 100644 index 0000000..75ce47e --- /dev/null +++ b/app/routes/user.py @@ -0,0 +1,71 @@ +from fastapi import APIRouter, HTTPException, status +from ..controllers.user import * +from fastapi import Depends +from sqlalchemy.orm import Session +from ..dependencies.database import get_db + + +router = APIRouter() + + +#角色创建接口 +@router.post('/users', response_model=UserCrateResponse) +async def create_user(user: UserCrateRequest,db: Session = Depends(get_db)): + response = await create_user_handler(user,db) + return response + + +#角色更新接口 +@router.put('/users/{user_id}', response_model=UserUpdateResponse) +async def update_user(user_id: int, user: UserUpdateRequest, db: Session = Depends(get_db)): + response = await update_user_handler(user_id, user, db) + return response + + +#角色删除接口 +@router.delete('/users/{user_id}', response_model=UserDeleteResponse) +async def delete_user(user_id: int, db: Session = Depends(get_db)): + response = await delete_user_handler(user_id, db) + return response + + +#角色查询接口 +@router.get('/users/{user_id}', response_model=UserQueryResponse) +async def get_user(user_id: int, db: Session = Depends(get_db)): + response = await get_user_handler(user_id, db) + return response + + +#硬件绑定接口 +@router.post('/users/hardware',response_model=HardwareBindResponse) +async def bind_hardware(hardware: HardwareBindRequest, db: Session = Depends(get_db)): + response = await bind_hardware_handler(hardware, db) + return response + + +#硬件解绑接口 +@router.delete('/users/hardware/{hardware_id}',response_model=HardwareUnbindResponse) +async def unbind_hardware(hardware_id: int, db: Session = Depends(get_db)): + response = await unbind_hardware_handler(hardware_id, db) + return response + + +#硬件换绑 +@router.put('/users/hardware/{hardware_id}/bindchange',response_model=HardwareChangeBindResponse) +async def change_bind_hardware(hardware_id: int, user: HardwareChangeBindRequest, db: Session = Depends(get_db)): + response = await change_bind_hardware_handler(hardware_id, user, db) + return response + + +#硬件信息更新 +@router.put('/users/hardware/{hardware_id}/info',response_model=HardwareUpdateResponse) +async def update_hardware_info(hardware_id: int, hardware: HardwareUpdateRequest, db: Session = Depends(get_db)): + response = await update_hardware_handler(hardware_id, hardware, db) + return response + + +#硬件查询 +@router.get('/users/hardware/{hardware_id}',response_model=HardwareQueryResponse) +async def get_hardware(hardware_id: int, db: Session = Depends(get_db)): + response = await get_hardware_handler(hardware_id, db) + return response \ No newline at end of file diff --git a/app/schemas/__init__.py b/app/schemas/__init__.py new file mode 100644 index 0000000..b974282 --- /dev/null +++ b/app/schemas/__init__.py @@ -0,0 +1 @@ +from . import * \ No newline at end of file diff --git a/app/schemas/base.py b/app/schemas/base.py new file mode 100644 index 0000000..58ff5d5 --- /dev/null +++ b/app/schemas/base.py @@ -0,0 +1,6 @@ +from pydantic import BaseModel + +class BaseResponse(BaseModel): + status: str + message: str + data: dict \ No newline at end of file diff --git a/app/schemas/character.py b/app/schemas/character.py new file mode 100644 index 0000000..d67fc12 --- /dev/null +++ b/app/schemas/character.py @@ -0,0 +1,79 @@ +from pydantic import BaseModel +from typing import Optional +from .base import BaseResponse + +#---------------------------角色创建----------------------------- +#角色创建请求类 +class CharacterCreateRequest(BaseModel): + voice_id:int + avatar_id:str + background_ids:str + name:str + wakeup_words:str + world_scenario:str + description:str + emojis:str + dialogues:str + +#角色创建返回类 +class CharacterCreateData(BaseModel): + character_id:int + createdAt:str + +#角色创建响应类 +class CharacterCreateResponse(BaseResponse): + data: Optional[CharacterCreateData] +#---------------------------------------------------------------- + + +#---------------------------角色更新------------------------------ +#角色更新请求类 +class CharacterUpdateRequest(BaseModel): + voice_id:int + avatar_id:str + background_ids:str + name:str + wakeup_words:str + world_scenario:str + description:str + emojis:str + dialogues:str + +#角色更新返回类 +class CharacterUpdateData(BaseModel): + updatedAt:str + +#角色更新响应类 +class CharacterUpdateResponse(BaseResponse): + data: Optional[CharacterUpdateData] +#------------------------------------------------------------------ + + +#---------------------------角色查询-------------------------------- +#角色查询返回类 +class CharacterQueryData(BaseModel): + voice_id:int + avatar_id:str + background_ids:str + name:str + wakeup_words:str + world_scenario:str + description:str + emojis:str + dialogues:str + +#角色查询响应类 +class CharacterQueryResponse(BaseResponse): + data: Optional[CharacterQueryData] +#------------------------------------------------------------------ + + +#---------------------------角色删除-------------------------------- +#角色删除返回类 +class CharacterDeleteData(BaseModel): + deletedAt:str + +#角色删除响应类 +class CharacterDeleteResponse(BaseResponse): + data: Optional[CharacterDeleteData] +#------------------------------------------------------------------- diff --git a/app/schemas/chat.py b/app/schemas/chat.py new file mode 100644 index 0000000..d1fe253 --- /dev/null +++ b/app/schemas/chat.py @@ -0,0 +1,49 @@ +from pydantic import BaseModel +from typing import Optional +from .base import BaseResponse + +#--------------------------------新聊天创建-------------------------------- +#创建新聊天请求类 +class ChatCreateRequest(BaseModel): + user_id: int + character_id: int + +#创建新聊天返回类 +class ChatCreateData(BaseModel): + user_character_id: int + session_id: str + createdAt: str + +#创建新聊天相应类 +class ChatCreateResponse(BaseResponse): + data: Optional[ChatCreateData] +#-------------------------------------------------------------------------- + + +#----------------------------------聊天删除-------------------------------- +#删除聊天返回类 +class ChatDeleteData(BaseModel): + deletedAt: str + +#创建新聊天相应类 +class ChatDeleteResponse(BaseResponse): + data: Optional[ChatDeleteData] +#-------------------------------------------------------------------------- + + +#-----------------------------------非流式聊天------------------------------ +#非流式聊天请求类 +class ChatNonStreamRequest(BaseModel): + format: str + rate: int + session_id: str + speech:str + +#非流式聊天返回类 +class ChatNonStreamData(BaseModel): + audio_url: str + +#非流式聊天相应类 +class ChatNonStreamResponse(BaseResponse): + data: Optional[ChatNonStreamData] +#-------------------------------------------------------------------------- \ No newline at end of file diff --git a/app/schemas/session.py b/app/schemas/session.py new file mode 100644 index 0000000..e725a97 --- /dev/null +++ b/app/schemas/session.py @@ -0,0 +1,58 @@ +from pydantic import BaseModel +from typing import List +from typing import Optional +from .base import BaseResponse + +#----------------------------Session_id查询------------------------------ +#session_id查询请求类 +class SessionIdQueryRequest(BaseModel): + user_id: int + character_id: int + +#session_id查询返回类 +class SessionIdQueryData(BaseModel): + session_id: str + +#session_id查询响应类 +class SessionIdQueryResponse(BaseResponse): + data: Optional[SessionIdQueryData] +#------------------------------------------------------------------------- + + +#----------------------------Session会话查询------------------------------- +#session会话查询请求类 +class SessionQueryRequest(BaseModel): + user_id: int + +class SessionQueryData(BaseModel): + user_id: int + messages: str + user_info: str + tts_info: str + llm_info: str + token: int + +#session会话查询响应类 +class SessionQueryResponse(BaseResponse): + data: Optional[SessionQueryData] +#------------------------------------------------------------------------- + + +#-------------------------------Session修改-------------------------------- +#session修改请求类 +class SessionUpdateRequest(BaseModel): + user_id: int + messages: str + user_info: str + tts_info: str + llm_info: str + token: int + +#session修改返回类 +class SessionUpdateData(BaseModel): + updatedAt:str + +#session修改响应类 +class SessionUpdateResponse(BaseResponse): + data: Optional[SessionUpdateData] +#-------------------------------------------------------------------------- \ No newline at end of file diff --git a/app/schemas/user.py b/app/schemas/user.py new file mode 100644 index 0000000..8caa3db --- /dev/null +++ b/app/schemas/user.py @@ -0,0 +1,140 @@ +from pydantic import BaseModel +from typing import Optional +from .base import BaseResponse + + + +#---------------------------------用户创建---------------------------------- +#用户创建请求类 +class UserCrateRequest(BaseModel): + open_id: str + username: str + avatar_id: str + tags: str + persona: str + +#用户创建返回类 +class UserCrateData(BaseModel): + user_id : int + createdAt: str + +#用户创建响应类 +class UserCrateResponse(BaseResponse): + data: Optional[UserCrateData] +#--------------------------------------------------------------------------- + + + +#---------------------------------用户更新----------------------------------- +#用户更新请求类 +class UserUpdateRequest(BaseModel): + open_id: str + username: str + avatar_id: str + tags: str + persona: str + +#用户更新返回类 +class UserUpdateData(BaseModel): + updatedAt: str + +#用户更新响应类 +class UserUpdateResponse(BaseResponse): + data: Optional[UserUpdateData] +#---------------------------------------------------------------------------- + + + +#---------------------------------用户查询------------------------------------ +#用户查询返回类 +class UserQueryData(BaseModel): + open_id: str + username: str + avatar_id: str + tags: str + persona: str + +#用户查询响应类 +class UserQueryResponse(BaseResponse): + data: Optional[UserQueryData] +#----------------------------------------------------------------------------- + + + +#---------------------------------用户删除------------------------------------ +#用户删除返回类 +class UserDeleteData(BaseModel): + deletedAt: str + +#用户删除响应类 +class UserDeleteResponse(BaseResponse): + data: Optional[UserDeleteData] +#----------------------------------------------------------------------------- + + + +#---------------------------------硬件绑定------------------------------------- +class HardwareBindRequest(BaseModel): + mac:str + user_id:int + firmware:str + model:str + +class HardwareBindData(BaseModel): + hardware_id: int + bindedAt: str + +class HardwareBindResponse(BaseResponse): + data: Optional[HardwareBindData] +#----------------------------------------------------------------------------- + + + +#---------------------------------硬件解绑------------------------------------- +class HardwareUnbindData(BaseModel): + unbindedAt: str + +class HardwareUnbindResponse(BaseResponse): + data: Optional[HardwareUnbindData] +#------------------------------------------------------------------------------ + + + +#---------------------------------硬件换绑-------------------------------------- +class HardwareChangeBindRequest(BaseModel): + user_id:int + +class HardwareChangeBindData(BaseModel): + bindChangedAt: str + +class HardwareChangeBindResponse(BaseResponse): + data: Optional[HardwareChangeBindData] +#------------------------------------------------------------------------------ + + + +#-------------------------------硬件信息更新------------------------------------ +class HardwareUpdateRequest(BaseModel): + mac:str + firmware:str + model:str + +class HardwareUpdateData(BaseModel): + updatedAt: str + +class HardwareUpdateResponse(BaseResponse): + data: Optional[HardwareUpdateData] +#------------------------------------------------------------------------------ + + + +#--------------------------------硬件查询--------------------------------------- +class HardwareQueryData(BaseModel): + user_id:int + mac:str + firmware:str + model:str + +class HardwareQueryResponse(BaseResponse): + data: Optional[HardwareQueryData] +#------------------------------------------------------------------------------ \ No newline at end of file diff --git a/config/__init__.py b/config/__init__.py new file mode 100644 index 0000000..d5f7bdc --- /dev/null +++ b/config/__init__.py @@ -0,0 +1,13 @@ +import os +from .development import DevelopmentConfig +from .production import ProductionConfig + +def get_config(): + mode = os.getenv('MODE','development').lower() + if mode == 'development': + return DevelopmentConfig + elif mode == 'production': + return ProductionConfig + else: + raise ValueError('Invalid MODE environment variable') + \ No newline at end of file diff --git a/config/development.py b/config/development.py new file mode 100644 index 0000000..2152925 --- /dev/null +++ b/config/development.py @@ -0,0 +1,23 @@ +class DevelopmentConfig: + SQLALCHEMY_DATABASE_URI = f"mysql+pymysql://admin02:LabA100102@127.0.0.1/takway?charset=utf8mb4" #mysql数据库连接配置 + REDIS_URL = "redis://:takway@127.0.0.1:6379/0" #redis数据库连接配置 + LOG_LEVEL = "DEBUG" #日志级别 + class XF_ASR: + APP_ID = "your_app_id" #讯飞语音识别APP_ID + API_SECRET = "your_api_secret" #讯飞语音识别API_SECRET + API_KEY = "your_api_key" #讯飞语音识别API_KEY + DOMAIN = "iat" + LANGUAGE = "zh_cn" + ACCENT = "mandarin" + VAD_EOS = 10000 + class MINIMAX_LLM: + API_KEY = "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJHcm91cE5hbWUiOiIyMzQ1dm9yIiwiVXNlck5hbWUiOiIyMzQ1dm9yIiwiQWNjb3VudCI6IiIsIlN1YmplY3RJRCI6IjE3NTk0ODIxODAxMDAxNzAyMDgiLCJQaG9uZSI6IjE1MDcyNjQxNTYxIiwiR3JvdXBJRCI6IjE3NTk0ODIxODAwOTU5NzU5MDQiLCJQYWdlTmFtZSI6IiIsIk1haWwiOiIiLCJDcmVhdGVUaW1lIjoiMjAyNC0wNC0xMyAxOTowNDoxNyIsImlzcyI6Im1pbmltYXgifQ.RO_WJMz5T0XlL3F6xB9p015hL3PibCbsr5KqO3aMjBL5hKrf1uIjOICTDZWZoucyJV1suxvFPAd_2Ds2Rv01eCu6GFdai1hUByfp51mOOD0PtaZ5-JKRpRPpLSNpqrNoQteANZz0gdr2_GEGTgTzpbfGbXfRYKrQyeQSvq0zHwqumGPd9gJCre2RavPUmzKRrq9EAaQXtSNhBvVkf5lDlxr8fTAHgbj6MLAJZIvvf4uOZErNrbPylo1Vcy649KxEkc0HCWOZErOieeUQFRkKibnE5Q30CgywqxY2qMjrxGRZ_dtizan_0EZ62nXp-J6jarhcY9le1SqiMu1Cv61TuA" + URL = "https://api.minimax.chat/v1/text/chatcompletion_v2" + class MINIMAX_TTA: + API_KEY = "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJHcm91cE5hbWUiOiIyMzQ1dm9yIiwiVXNlck5hbWUiOiIyMzQ1dm9yIiwiQWNjb3VudCI6IiIsIlN1YmplY3RJRCI6IjE3NTk0ODIxODAxMDAxNzAyMDgiLCJQaG9uZSI6IjE1MDcyNjQxNTYxIiwiR3JvdXBJRCI6IjE3NTk0ODIxODAwOTU5NzU5MDQiLCJQYWdlTmFtZSI6IiIsIk1haWwiOiIiLCJDcmVhdGVUaW1lIjoiMjAyNC0wNC0xMyAxOTowNDoxNyIsImlzcyI6Im1pbmltYXgifQ.RO_WJMz5T0XlL3F6xB9p015hL3PibCbsr5KqO3aMjBL5hKrf1uIjOICTDZWZoucyJV1suxvFPAd_2Ds2Rv01eCu6GFdai1hUByfp51mOOD0PtaZ5-JKRpRPpLSNpqrNoQteANZz0gdr2_GEGTgTzpbfGbXfRYKrQyeQSvq0zHwqumGPd9gJCre2RavPUmzKRrq9EAaQXtSNhBvVkf5lDlxr8fTAHgbj6MLAJZIvvf4uOZErNrbPylo1Vcy649KxEkc0HCWOZErOieeUQFRkKibnE5Q30CgywqxY2qMjrxGRZ_dtizan_0EZ62nXp-J6jarhcY9le1SqiMu1Cv61TuA", + URL = "https://api.minimax.chat/v1/t2a_pro", + GROUP_ID ="1759482180095975904" + class STRAM_CHAT: + ASR = "LOCAL" + TTS = "LOCAL" + \ No newline at end of file diff --git a/config/production.py b/config/production.py new file mode 100644 index 0000000..7fb841c --- /dev/null +++ b/config/production.py @@ -0,0 +1,8 @@ +class ProductionConfig: + SQLALCHEMY_DATABASE_URI = f"mysql+pymysql://root:takway@127.0.0.1/takway?charset=utf8mb4" #mysql数据库连接配置 + REDIS_URL = "redis://:takway@127.0.0.1:6379/0" #redis数据库连接配置 + LOG_LEVEL = "INFO" #日志级别 + class XF_ASR: + APP_ID = "your_app_id" #讯飞语音识别APP_ID + API_SECRET = "your_api_secret" #讯飞语音识别API_SECRET + API_KEY = "your_api_key" #讯飞语音识别API_KEY \ No newline at end of file diff --git a/main.py b/main.py new file mode 100644 index 0000000..93e804e --- /dev/null +++ b/main.py @@ -0,0 +1,9 @@ +import os + +if __name__ == '__main__': + + script_path = os.path.join(os.path.dirname(__file__), 'app', 'main.py') + + # 使用exec函数执行脚本 + with open(script_path, 'r') as file: + exec(file.read()) diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000..13d7b4f --- /dev/null +++ b/requirements.txt @@ -0,0 +1,5 @@ +uvicorn~=0.29.0 +fastapi~=0.110.1 +sqlalchemy~=2.0.25 +pydantic~=2.6.4 +redis~=5.0.3 \ No newline at end of file diff --git a/tests/__init__.py b/tests/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/tests/assets/example_recording.wav b/tests/assets/example_recording.wav new file mode 100644 index 0000000000000000000000000000000000000000..2f166687ae76ed57871c78eec54d8c86c52f46c2 GIT binary patch literal 159788 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�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 hx0z`%G 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 SyXjp_D%*lTERe49?*9QRi=WK^ literal 0 HcmV?d00001 diff --git a/tests/assets/voice_call.wav b/tests/assets/voice_call.wav new file mode 100644 index 0000000000000000000000000000000000000000..6315fc58f664c23e37c150b8772db0eed8e8c741 GIT binary patch literal 703286 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≠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 z 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

W)6v89Y6>v+6jWJw3g-JrDgcuCMlrXS$F&WZwgp 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