是否已有关于该错误的issue或讨论? | Is there an existing issue / discussion for this?
- 我已经搜索过已有的issues和讨论 | I have searched the existing issues / discussions
该问题是否在FAQ中有解答? | Is there an existing answer for this in FAQ?
- 我已经搜索过FAQ | I have searched FAQ
当前行为 | Current Behavior
已经修改llm_for_openai_api.py为openai接口,并且已经通过本地测试。使用docker启动(命令为“bash ./run.sh -c cloud -i 0”),streaming=False,服务启动正常,前端展示正常,可以正常新建知识库。
但是在问问题后,会一直反复调用sanic_api.py中local_doc_chat接口,前端一开始没有报错,然后查询sanic_api.log, 可以看到openai正常返回了结果(ChatCompletion(id='cmpl-782b8d6783034163b48abec915a07346',包含了content的正常结果 )。然后报下面错误:
Exception ignored in: <generator object OpenAILLM._call at 0x7f881c11b610>
Traceback (most recent call last):
File "/workspace/qanything_local/qanything_kernel/core/local_doc_qa.py", line 265, in get_knowledge_based_answer
yield response, history
RuntimeError: generator ignored GeneratorExit
然后程序继续调用local_doc_chat接口,重新调用openai接口并且结果返回正常,RuntimeError: generator ignored GeneratorExit报错继续出现,前端也没有报错。然后程序继续重复以上调用,直到出现如下错误:Error code: 429 - {'error': {'message': 'Your account ************* request reached max concurrency: 1, please try again after 1 seconds', 'type': 'rate_limit_reached_error'}}
请问大家怎么解决!!
期望行为 | Expected Behavior
- No response*
运行环境 | Environment
- OS:
- NVIDIA Driver:
- CUDA:
- docker:
- docker-compose:
- NVIDIA GPU:
- NVIDIA GPU Memory:
QAnything日志 | QAnything logs
Exception ignored in: <generator object OpenAILLM._call at 0x7f881c11aea0>
Traceback (most recent call last):
File "/workspace/qanything_local/qanything_kernel/core/local_doc_qa.py", line 265, in get_knowledge_based_answer
yield response, history
RuntimeError: generator ignored GeneratorExit
复现方法 | Steps To Reproduce
- 适配llm_for_openai_api.py为openai接口
- docker 启动 bash ./run.sh -c cloud -i 0
- 前端提问
备注 | Anything else?
- No response*
3条答案
按热度按时间azpvetkf1#
您好,根据我所查到的资料,Sanic后端调用OpenAI接口次数取决于您的代码逻辑。如果您想要修改前端retry次数,可以在前端代码中设置retry次数。如果您想要修改后端调用OpenAI接口次数,可以在后端代码中设置调用次数。
ttvkxqim2#
理论上来说,前端调用一次问答只会调用一次
local_qa_chat
接口,后端只会调用一次openai
。但是,Docker的前端代码目前存在bug,Python版的前端已经修复了这个问题。Docker版暂无排期,我们预计下周发布v2.0版本,合并Docker和Python版本。到时候可以再体验一下。qgelzfjb3#
理论上来说,前端调用一次问答只会调用一次
local_qa_chat
接口,后端只会调用一次openai。但是,docker的前端代码目前存在bug,python版的前端已经修复了这个问题。docker版暂无排期,我们预计下周发布v2.0版本,合并docker和python版本。到时候可以再体验一下。感谢告知,已经切换到python版本。期待v2.0版本!