one-api 接口的问题是我犯傻了。。请求地址不一样都没看出来。
但是 try
Traceback (most recent call last):
File "/usr/local/lib/python3.10/site-packages/gunicorn/workers/
sync.py", line 134, in handle
self.handle_request(listener, req, client, addr)
File "/usr/local/lib/python3.10/site-packages/gunicorn/workers/
sync.py", line 180, in handle_request
for item in respiter:
File "/usr/local/lib/python3.10/site-packages/werkzeug/
wsgi.py", line 506, in __next__
return self._next()
File "/usr/local/lib/python3.10/site-packages/werkzeug/wrappers/
base_response.py", line 45, in _iter_encoded
for item in iterable:
File "/app/scenes/
medical_base_openai.py", line 37, in chat_completion
data = context_func(req_data)
File "/app/scenes/
wpa_report.py", line 60, in report_context
messages[0]['content'] = prompt(messages[0]['content'])
IndexError: list index out of range
@
zictos 能看到日志,只是分析不出原因。。改成 BaseException 也捕获不了。
程序简化一下大概是长这样:
import copy
import os
from requests import Session
from loguru import logger
import openai
class B(object):
def child_function(self,num):
raise Exception('here')
class A(B):
def parent_function(self,num,child_function):
return self.child_function(num)
def main(self,num):
try:
ret = self.parent_function(num,child_function)
except Exception as e:
logger.error(e)
ret = 0
return ret
A().main(1)
在 child_function 里面报错,正常是可以捕获的,似乎放到在线服务上就捕捉不到了。。