BettaFish icon indicating copy to clipboard operation
BettaFish copied to clipboard

[Insight Engine Streamlit App] 研究过程中发生错误: Error code: 404 - {'code': 5, 'error':

Open lxs-w opened this issue 2 months ago • 4 comments

错误信息

研究过程中发生错误: Error code: 404 - {'code': 5, 'error': 'url.not_found', 'message': '没找到对象', 'method': 'POST', 'scode': '0x5', 'status': False, 'ua': 'OpenAI/Python 2.7.1', 'url': '/chat/completions'}

错误详情

Traceback (most recent call last):
  File "/app/SingleEngineApp/insight_engine_streamlit_app.py", line 149, in execute_research
    agent._generate_report_structure(query)
  File "/app/SingleEngineApp/../InsightEngine/agent.py", line 417, in _generate_report_structure
    self.state = report_structure_node.mutate_state(state=self.state)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/app/SingleEngineApp/../InsightEngine/nodes/report_structure_node.py", line 204, in mutate_state
    raise e
  File "/app/SingleEngineApp/../InsightEngine/nodes/report_structure_node.py", line 185, in mutate_state
    report_structure = self.run(input_data, **kwargs)
                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/app/SingleEngineApp/../InsightEngine/nodes/report_structure_node.py", line 65, in run
    raise e
  File "/app/SingleEngineApp/../InsightEngine/nodes/report_structure_node.py", line 55, in run
    response = self.llm_client.stream_invoke_to_string(SYSTEM_PROMPT_REPORT_STRUCTURE, self.query)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/app/SingleEngineApp/../InsightEngine/llms/base.py", line 148, in stream_invoke_to_string
    for chunk in self.stream_invoke(system_prompt, user_prompt, **kwargs):
  File "/app/SingleEngineApp/../InsightEngine/llms/base.py", line 132, in stream_invoke
    raise e
  File "/app/SingleEngineApp/../InsightEngine/llms/base.py", line 118, in stream_invoke
    stream = self.client.chat.completions.create(
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/openai/_utils/_utils.py", line 286, in wrapper
    return func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/openai/resources/chat/completions/completions.py", line 1156, in create
    return self._post(
           ^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/openai/_base_client.py", line 1259, in post
    return cast(ResponseT, self.request(cast_to, opts, stream=stream, stream_cls=stream_cls))
                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/openai/_base_client.py", line 1047, in request
    raise self._make_status_error_from_response(err.response) from None
openai.NotFoundError: Error code: 404 - {'code': 5, 'error': 'url.not_found', 'message': '没找到对象', 'method': 'POST', 'scode': '0x5', 'status': False, 'ua': 'OpenAI/Python 2.7.1', 'url': '/chat/completions'}

环境信息

  • 应用: Insight Engine Streamlit App
  • 时间: 2025-11-10 09:39:09

lxs-w avatar Nov 10 '25 09:11 lxs-w

Hi @lxs-w! I'm Dosu and I’m helping the BettaFish team.

这个 404 错误(url.not_found)通常是因为 OpenAI API 的 base URL 配置不正确导致的。根据维护者和其他用户的反馈,最常见的原因是 base URL 缺少了 /v1 路径,或者多了/少了子路由,导致 /chat/completions 路径在目标服务器上不存在。比如,https://aihubmix.com/v1 是正确格式,https://aihubmix.com 就会报 404 错误。请检查你的 INSIGHT_ENGINE_BASE_URL 配置,确保它包含正确的 /v1 路径段。如果你用的是自定义 API 服务商,也要参考其文档确认 base URL 的写法。参考1 参考2

修正方法:

  1. 检查 .env 或环境变量中的 INSIGHT_ENGINE_BASE_URL,确保它类似于 https://api.openai.com/v1https://你的服务商/v1
  2. 修改后重启应用。

如果还有问题,可以贴出你的 base URL 配置内容(注意打码敏感信息),我可以帮你进一步排查。

To reply, just mention @dosu.


How did I do? Good | Irrelevant | Incorrect | Verbose | Hallucination | Report 🐛 | Other  Join Discord Share on X

dosubot[bot] avatar Nov 10 '25 09:11 dosubot[bot]

Image

前几个流程跑完后,最后一个提示框总是处于,提示需要等待前三个跑完,请问是什么情况?

lxs-w avatar Nov 10 '25 10:11 lxs-w

你遇到的“需要等待前三个Agent任务完成”的提示一直不消失,常见原因有:

  1. 某个Agent流程实际没有跑完,或者中途报错(比如你之前遇到的404错误),导致后续总报告Agent一直在等待前置结果,UI就会卡在“等待”状态。只要有一个Agent没正常返回,汇总流程就不会继续。参考
  2. 如果你是服务器部署,前端监控的Agent地址没改成服务器实际IP,还是localhost,前端就无法正确获取各Agent的状态,也会导致UI一直显示“任务未完成”。有用户反馈把前端 index.html 里的 localhost 改成服务器IP后问题解决。参考
  3. 某些情况下,前端只是检测到Agent“已连接”,但并不代表任务已完成。只有每个Agent都生成了独立报告,汇总Agent才会继续。

建议排查:

  • 检查各Agent的独立报告是否都能正常生成(可单独访问每个Agent的web界面测试)。
  • 查看后台日志,确认是否有Agent报错或未返回(如404、超时等)。
  • 部署在服务器时,确保前端监控地址指向实际IP和端口,而不是localhost。

如还有问题,可以贴下各Agent的运行日志或前端监控配置。

To reply, just mention @dosu.


How did I do? Good | Irrelevant | Incorrect | Verbose | Hallucination | Report 🐛 | Other  Join Discord Share on X

dosubot[bot] avatar Nov 10 '25 10:11 dosubot[bot]

@lxs-w 他的report服务是需要出现新文件的,你可以F12打开控制台,有一个接口是返回当前文件数。他是只要出现新文件就可以执行report。你也可以直接在对应的report的输出文件直接加个新文件就行。

mozou avatar Nov 13 '25 01:11 mozou