@@ -64,7 +64,7 @@ class RequestData(BaseModel):
64
64
executor = ThreadPoolExecutor (max_workers = 6 )
65
65
66
66
# 异步保存查询信息
67
- async def save_query_info_fastapi (result , model , query , delta_time_log ):
67
+ async def save_query_info (result , model , query , delta_time_log ):
68
68
loop = asyncio .get_running_loop ()
69
69
func = functools .partial (cache .data_manager .save_query_resp , result , model = model , query = json .dumps (query , ensure_ascii = False ), delta_time = delta_time_log )
70
70
await loop .run_in_executor (None , func )
@@ -86,9 +86,12 @@ async def user_backend(request: Request):
86
86
try :
87
87
# 尝试将字符串解析为JSON对象
88
88
request_data = json .loads (raw_body )
89
- except json .JSONDecodeError :
89
+ except json .JSONDecodeError as e :
90
90
# 如果无法解析,返回格式错误
91
- raise HTTPException (status_code = 400 , detail = "Invalid JSON format" )
91
+ result = {"errorCode" : 101 , "errorDesc" : str (e ), "cacheHit" : False , "delta_time" : 0 , "hit_query" : '' ,
92
+ "answer" : '' }
93
+ asyncio .create_task (save_query_info (result , model = '' , query = '' , delta_time_log = 0 ))
94
+ raise HTTPException (status_code = 101 , detail = "Invalid JSON format" )
92
95
else :
93
96
request_data = raw_body
94
97
@@ -97,7 +100,7 @@ async def user_backend(request: Request):
97
100
try :
98
101
request_data = json .loads (request_data )
99
102
except json .JSONDecodeError :
100
- raise HTTPException (status_code = 400 , detail = "Invalid JSON format" )
103
+ raise HTTPException (status_code = 101 , detail = "Invalid JSON format" )
101
104
102
105
request_type = request_data .get ('type' )
103
106
model = None
@@ -106,8 +109,12 @@ async def user_backend(request: Request):
106
109
query = request_data .get ('query' )
107
110
chat_info = request_data .get ('chat_info' )
108
111
109
- if not request_type or request_type not in ['query' , 'insert' , 'remove' , 'detox' ]:
110
- raise HTTPException (status_code = 400 , detail = "Type exception, should be one of ['query', 'insert', 'remove', 'detox']" )
112
+ if not request_type or request_type not in ['query' , 'insert' , 'remove' , 'register' ]:
113
+ result = {"errorCode" : 102 ,
114
+ "errorDesc" : "type exception, should one of ['query', 'insert', 'remove', 'register']" ,
115
+ "cacheHit" : False , "delta_time" : 0 , "hit_query" : '' , "answer" : '' }
116
+ asyncio .create_task (save_query_info (result , model = model , query = '' , delta_time_log = 0 ))
117
+ raise HTTPException (status_code = 102 , detail = "Type exception, should be one of ['query', 'insert', 'remove', 'register']" )
111
118
112
119
except Exception as e :
113
120
request_data = raw_body if 'raw_body' in locals () else None
@@ -145,7 +152,7 @@ async def user_backend(request: Request):
145
152
result = {"errorCode" : 0 , "errorDesc" : '' , "cacheHit" : True , "delta_time" : delta_time , "hit_query" : hit_query , "answer" : answer }
146
153
147
154
delta_time_log = round (time .time () - start_time , 2 )
148
- asyncio .create_task (save_query_info_fastapi (result , model , query , delta_time_log ))
155
+ asyncio .create_task (save_query_info (result , model , query , delta_time_log ))
149
156
return result
150
157
except Exception as e :
151
158
result = {"errorCode" : 202 , "errorDesc" : str (e ), "cacheHit" : False , "delta_time" : 0 ,
0 commit comments