smgc commited on
Commit
36752d5
1 Parent(s): 5598419

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +13 -0
app.py CHANGED
@@ -8,6 +8,7 @@ import requests
8
  import logging
9
  from threading import Event
10
  import re
 
11
 
12
  app = Flask(__name__)
13
  logging.basicConfig(level=logging.INFO)
@@ -124,6 +125,12 @@ def messages():
124
 
125
  try:
126
  json_body = request.json
 
 
 
 
 
 
127
  model = json_body.get('model', 'claude-3-opus-20240229') # 动态获取模型,默认 claude-3-opus-20240229
128
  stream = json_body.get('stream', True) # 默认为True
129
 
@@ -223,7 +230,9 @@ def messages():
223
  })
224
 
225
  except Exception as e:
 
226
  logging.error(f"Error during WebSocket communication: {str(e)}")
 
227
  yield create_event("content_block_delta", {
228
  "type": "content_block_delta",
229
  "index": 0,
@@ -247,7 +256,9 @@ def messages():
247
  return Response(generate(), content_type='text/event-stream')
248
 
249
  except Exception as e:
 
250
  logging.error(f"Request error: {str(e)}")
 
251
  log_request(request.remote_addr, request.path, 400)
252
  return jsonify({"error": str(e)}), 400
253
 
@@ -328,7 +339,9 @@ def handle_non_stream(previous_messages, msg_id, model, input_tokens):
328
  return Response(json.dumps(full_response, ensure_ascii=False), content_type='application/json')
329
 
330
  except Exception as e:
 
331
  logging.error(f"Request error: {str(e)}")
 
332
  return jsonify({"error": str(e)}), 500
333
  finally:
334
  if sio.connected:
 
8
  import logging
9
  from threading import Event
10
  import re
11
+ import traceback # 用于捕获详细的堆栈信息
12
 
13
  app = Flask(__name__)
14
  logging.basicConfig(level=logging.INFO)
 
125
 
126
  try:
127
  json_body = request.json
128
+
129
+ # 检查请求数据是否过大
130
+ request_size = len(json.dumps(json_body))
131
+ if request_size > 1 * 1024 * 1024: # 超过 1MB 的请求大小
132
+ logging.warning(f"Request size is too large: {request_size / 1024:.2f} KB")
133
+
134
  model = json_body.get('model', 'claude-3-opus-20240229') # 动态获取模型,默认 claude-3-opus-20240229
135
  stream = json_body.get('stream', True) # 默认为True
136
 
 
230
  })
231
 
232
  except Exception as e:
233
+ # 捕获并记录详细的堆栈信息
234
  logging.error(f"Error during WebSocket communication: {str(e)}")
235
+ logging.error(traceback.format_exc()) # 输出堆栈信息
236
  yield create_event("content_block_delta", {
237
  "type": "content_block_delta",
238
  "index": 0,
 
256
  return Response(generate(), content_type='text/event-stream')
257
 
258
  except Exception as e:
259
+ # 捕获并记录详细的堆栈信息
260
  logging.error(f"Request error: {str(e)}")
261
+ logging.error(traceback.format_exc()) # 输出堆栈信息
262
  log_request(request.remote_addr, request.path, 400)
263
  return jsonify({"error": str(e)}), 400
264
 
 
339
  return Response(json.dumps(full_response, ensure_ascii=False), content_type='application/json')
340
 
341
  except Exception as e:
342
+ # 捕获并记录详细的堆栈信息
343
  logging.error(f"Request error: {str(e)}")
344
+ logging.error(traceback.format_exc()) # 输出堆栈信息
345
  return jsonify({"error": str(e)}), 500
346
  finally:
347
  if sio.connected: