GPT-4 Vision调试任何应用,即使缺少文本日志 升级Streamlit七

GPT-4 Vision 系列:

1.6. 调试任何应用,即使缺少文本日志

作为 Streamlit 的开发倡导者,我花了很大一部分时间在论坛上,帮助我们的社区用户调试他们的 Streamlit 应用程序。

虽然 GPT-4 是一个非常有效的工具,可以快速查看错误日志以找到错误的来源,但有时,用户由于各种原因无法提供错误日志跟踪:

  • 日志跟踪可能包含无法共享的私有数据。
  • 用户可能无法在特定时间访问日志跟踪。

我们可能只能从 Streamlit 前端获得错误标注的屏幕截图,如下所示:

在这里插入图片描述
这可能会使调试问题变得困难,因为我们无权访问完整的日志跟踪。

不要害怕!ChatGPT Vision 仍然可以通过从屏幕截图中提取相关信息来提供有用的调试提示来帮助您。

使用以下提示prompt粘贴上面的图像:

Give me a clue on the error.
给我关于错误的线索。

2. GPT-4 的答案

在这里插入图片描述
根据您提供的截图,看起来一个Streamlit应用程序在执行过程中遇到了ValueError错误。错误源自一个名为classificacao_com_automl_em_manutencao_pred...(由于截图被截断,无法看到完整文件名)的文件中的modelo.predict(listaValores)函数调用。以下是我们可以推断的信息:

  1. ValueError:当一个函数接收到一个类型正确但值不适当的参数,或者当存在函数未设置处理的条件时,就会出现这种类型的错误。

  2. LightGBMScikit-learn集成:回溯显示错误发生在预测步骤中,很可能涉及到使用LightGBM(lightgbm/sklearn.py)的机器学习模型。LightGBM是一个使用基于树的学习算法的梯度提升框架,在这种情况下似乎与Scikit-learn集成。

  3. 数据输入问题:调用了predictpredict_proba函数,这表明问题可能与传递给模型进行预测的输入数据(listaValores)有关。这类错误的常见原因可能包括:

  • 形状不匹配:模型期望输入数据具有一定的形状,但listaValores与此形状不匹配。
  • 预处理不匹配:数据未按照与训练数据相同的方式进行预处理(缩放/标准化/编码)。
  • 数据中存在模型无法处理的缺失值或无限值。
  1. 模型期望:错误可能表明模型对输入数据有一定的期望,但这些期望没有得到满足。例如,模型可能需要数值输入,但它接收到的是需要编码的分类数据。

  2. _LGBMCheckArray函数:这是一个内部LightGBM函数调用,用于验证输入数组。accept_sparse=Trueforce_all_finite=False 参数表明模型被设置为接受稀疏输入并且不要求所有值都是有限的。然而,如果传递给它的数据不满足其他标准(如正确的形状或类型),它仍然可能引发ValueError

为了调试此问题,您应该:

  • 检查listaValores的形状和类型,确保它与模型的训练数据匹配。
  • 确保对训练数据应用的任何预处理步骤也应用于listaValores
  • 查看日志中的完整错误信息,正如Streamlit错误消息所建议的,以获取关于ValueError原因的更具体细节。

通常,调试此类错误涉及在错误发生之前的各个点打印出或记录数据的形状和类型,并确认输入数据满足模型的所有假设。

代码

https://github.com/zgpeace/pets-name-langchain/tree/develop

参考

https://blog.streamlit.io/7-ways-gpt-4-vision-can-uplevel-your-streamlit-apps/

最近更新

  1. TCP协议是安全的吗?

    2024-02-01 07:10:07       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-02-01 07:10:07       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-02-01 07:10:07       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-02-01 07:10:07       18 阅读

热门阅读

  1. 理解React中的setState()方法

    2024-02-01 07:10:07       30 阅读
  2. pyspark学习-spark.sql.functions normal函数

    2024-02-01 07:10:07       29 阅读
  3. Docker学习笔记:Dockerfile文件的应用

    2024-02-01 07:10:07       33 阅读
  4. 使用Server-Sent Events实现后端主动向前端进行通信

    2024-02-01 07:10:07       37 阅读
  5. 机器学习-聚类算法Kmeans【手撕】

    2024-02-01 07:10:07       31 阅读