处理异常
This commit is contained in:
parent
ceca424248
commit
9b98e60870
@ -255,7 +255,7 @@ class ChatHub:
|
||||
extra_headers=HEADERS,
|
||||
max_size=None,
|
||||
ssl=ssl_context,
|
||||
open_timeout=30,
|
||||
open_timeout=45,
|
||||
)
|
||||
await self.__initial_handshake()
|
||||
# Construct a ChatHub request
|
||||
|
||||
@ -56,23 +56,41 @@ async def ws_chat(request, ws):
|
||||
logger.warn('Receive data: %s', data)
|
||||
sid = data['sid']
|
||||
q = data['q']
|
||||
async for response in get_bot(sid).ask_stream(q, conversation_style=ConversationStyle.creative):
|
||||
final, res = response
|
||||
if final:
|
||||
processed_data = await process_data(res, q, sid, auto_reset=1)
|
||||
if processed_data['data']['status'] == 'Throttled':
|
||||
reset_cookie()
|
||||
await get_bot(sid).reset()
|
||||
processed_data['data']['suggests'].append(q)
|
||||
await ws.send(raw_json.dumps({
|
||||
'final': final,
|
||||
'data': processed_data
|
||||
}))
|
||||
else:
|
||||
await ws.send(raw_json.dumps({
|
||||
'final': final,
|
||||
'data': res
|
||||
}))
|
||||
try:
|
||||
async for response in get_bot(sid).ask_stream(q, conversation_style=ConversationStyle.creative):
|
||||
final, res = response
|
||||
if final:
|
||||
processed_data = await process_data(res, q, sid, auto_reset=1)
|
||||
if processed_data['data']['status'] == 'Throttled':
|
||||
reset_cookie()
|
||||
await get_bot(sid).reset()
|
||||
processed_data['data']['suggests'].append(q)
|
||||
await ws.send(raw_json.dumps({
|
||||
'final': final,
|
||||
'data': processed_data
|
||||
}))
|
||||
else:
|
||||
await ws.send(raw_json.dumps({
|
||||
'final': final,
|
||||
'data': res
|
||||
}))
|
||||
except Exception as e:
|
||||
logger.error(e)
|
||||
await ws.send(
|
||||
raw_json.dumps({
|
||||
'final': True,
|
||||
'data': {
|
||||
'data': {
|
||||
'status': 'Error',
|
||||
'text': str(e),
|
||||
'suggests': [q],
|
||||
'message': str(e),
|
||||
'num_in_conversation': -1,
|
||||
},
|
||||
'cookie': os.environ.get('COOKIE_FILE'),
|
||||
}
|
||||
})
|
||||
)
|
||||
|
||||
|
||||
def get_bot(sid):
|
||||
|
||||
Loading…
Reference in New Issue
Block a user