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

news2024/10/7 20:29:04

GPT-4 Vision 系列:

  • 翻译: GPT-4 with Vision 升级 Streamlit 应用程序的 7 种方式一
  • 翻译: GPT-4 with Vision 升级 Streamlit 应用程序的 7 种方式二
  • 翻译: GPT-4 Vision静态图表转换为动态数据可视化 升级Streamlit 三
  • 翻译: GPT-4 Vision从图像转换为完全可编辑的表格 升级Streamlit四
  • 翻译: GPT-4 Vision通过量身定制的推荐来增强应用的用户体验 升级Streamlit五
  • 翻译: GPT-4 Vision征服LLM幻觉hallucinations 升级Streamlit六

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/

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1426153.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【C/Python】GtkApplicationWindow

一、C语言 GtkApplicationWindow 是 GTK 库中用于创建应用程序主窗口的一个控件。 首先&#xff0c;需要确保环境安装了GTK开发库。然后&#xff0c;以下是一个简单的使用 GtkApplicationWindow 创建一个 GTK 应用程序的示例&#xff1a; #include <gtk/gtk.h>static …

前端JavaScript篇之let、const、var的区别

目录 let、const、var的区别 let、const、var的区别 let、const和var是JavaScript中用于声明变量的关键字&#xff0c;它们之间有一些区别。 首先&#xff0c;var是在ES5中引入的关键字&#xff0c;而let和const是在ES6中引入的。在ES6之前&#xff0c;我们只能使用var来声明…

Thinkphp5.0.23远程代码执行漏洞复现

★★免责声明★★ 文章中涉及的程序(方法)可能带有攻击性&#xff0c;仅供安全研究与学习之用&#xff0c;读者将信息做其他用途&#xff0c;由Ta承担全部法律及连带责任&#xff0c;文章作者不承担任何法律及连带责任。 1、漏洞介绍 使用Thinkphp5.x远程代码执行漏洞&#xf…

操作系统--进程、线程基础知识

一、进程 我们编写的代码只是一个存储在硬盘的静态文件&#xff0c;通过编译后就会生成二进制可执行文件&#xff0c;当我们运行这个可执行文件后&#xff0c;它会被装载到内存中&#xff0c;接着 CPU 会执行程序中的每一条指令&#xff0c;那么这个运行中的程序&#xff0c;就…

python爬虫-多线程-数据库——WB用户

数据库database的包&#xff1a; Python操作Mysql数据库-CSDN博客 效果&#xff1a; 控制台输出&#xff1a; 数据库记录&#xff1a; 全部代码&#xff1a; import json import os import threading import tracebackimport requests import urllib.request from utils im…

博客文章质量分数列表【分页、排序、搜索】

文章目录 一、分析二、代码1、前端代码2、后端代码 三、实现效果四、总结1、出现安全验证2、401 Unauthorized: [no body] 一、分析 官方提供的质量分查询入口&#xff1a;CSDN质量分 输入我们要查的文章即可&#xff0c;比如&#xff1a;https://blog.csdn.net/qq_36433289/a…

开发板——X210开发板的SD卡启动方式

以下内容源于朱有鹏嵌入式课程的学习与整理&#xff0c;如有侵权请告知删除。 参考博客&#xff1a; S5PV210 SD卡启动 - 简书 关于存储器的相关基础知识&#xff0c;见博文&#xff1a; 外存——SD卡/iNand芯片与S5PV210的SD/MMC/iNand控制器-CSDN博客 RAM、ROM和FLASH三…

了解WPF控件:TreeView常用属性与用法(十五)

引言 TreeView控件是WPF&#xff08;Windows Presentation Foundation&#xff09;中用于显示分层数据的常用控件。这个控件允许用户以树形结构展示数据&#xff0c;使得数据更加清晰易懂。在创建文件浏览器、组织结构图等应用程序时&#xff0c;TreeView控件非常有用。 Tree…

R语言入门笔记2.0

1.创建数据框 在R语言中&#xff0c;可以使用data.frame函数来创建数据框。以下是一个简单的示例&#xff0c;这段R语言代码创建了一个名为student的数据框&#xff0c;其中包含了学生的ID、性别、姓名和出生日期&#xff0c;首先创建一个包含学生出生日期的向量&#xff0c;再…

探秘本庄村果园预售系统的技术之旅

✍✍计算机编程指导师 ⭐⭐个人介绍&#xff1a;自己非常喜欢研究技术问题&#xff01;专业做Java、Python、微信小程序、安卓、大数据、爬虫、Golang、大屏等实战项目。 ⛽⛽实战项目&#xff1a;有源码或者技术上的问题欢迎在评论区一起讨论交流&#xff01; ⚡⚡ Java实战 |…

【MCAL】TC397+EB-tresos之GPT配置实战 - 定时器

本篇文章介绍了在TC397平台使用EB-tresos对GPT驱动模块进行配置的实战过程,不仅介绍了使用GTM来实现定时器的方案&#xff0c;还介绍了基于GPT12来实现连续定时器的实例。因为GTM是德国博世公司开发的IP&#xff0c;而英飞凌的芯片集成了这个IP&#xff0c;并在这个基础上搭建了…

Pytest 与allure测试报告集成

通过Feature, story, step 记录测试的功能&#xff0c;场景及测试步骤 # login.pylogin_func函数 传入参数是name 和 password 当输入的name和password与数据库db_data中数据一致时&#xff0c;返回“XXX成功登录系统&#xff01;” 当输入的name存在于数据库db_data但密码不正…

双非本科准备秋招(13.1)—— 力扣 栈、队列与堆

1、103. 二叉树的锯齿形层序遍历 昨天做的二叉树的层序遍历&#xff0c;把代码直接拿过来。 这个题要求的是一个Z型遍历&#xff0c;如下图。 用一个变量f记录正反顺序&#xff0c;然后使用LinkedList记录答案&#xff0c;下图可以看到LinkedList继承了Deque&#xff0c;所以…

【知识图谱--第一讲概论】

深度学习–连接主义 知识图谱–符号主义 表示 有属性图和RDF图两种 RDF由三元组表示&#xff1a;Subject - Predicate - Object 存储 图数据库 抽取 融合 推理 问答 图算法

Linux:进程信号的概念与产生原理

文章目录 信号的概念实践信号关于前台和后台进程的操作 操作系统与外设信号的产生signal系统调用 前面的篇章结束了信号量的话题&#xff0c;那么接下来引入的是信号的话题&#xff0c;信号和信号量之间没有任何关系&#xff0c;只是名字比较像 信号的概念 在生活中存在各种各…

linux麒麟系统安装mongodb7.0

1.mogedb下载 下载的是他tar包 https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel80-7.0.5.tgz wget -o https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel80-7.0.5.tgz 也可以下载rpm包 2.将包上传至服务器并解压 #进入目录 并解压 cd /opt/ tar…

Linux ---- Shell编程之免交互

一、Here Document 多行重定向 1、Here Document定义 使用I/O重定向的方式将命令列表提供给交互式程序标准输入的一种替代品Here Document 是标准输 入的一种替代品&#xff0c;可以帮助脚本开发人员不必使用临时文件来构建输入信息&#xff0c;而是直接就地生产出一个文件…

技术科普 | 机器视觉5大关键技术及其常见应用

计算机视觉是指&#xff1a;让机器通过数字图像或视频等视觉信息来模拟人类视觉的过程&#xff0c;以达到对物体的理解、识别、分类、跟踪、重建等目的的技术。它是人工智能领域中的一个分支&#xff0c;涉及图像处理、模式识别、机器学习、深度学习等多个领域。 随着人工智能和…

7.2、子集求和问题与背包密码系统

7.2、子集求和问题与背包密码系统 一、数学描述 1.1、第一种描述 20 世纪 70 年代末&#xff0c;默克尔和赫尔曼首次尝试将密码系统建立在一个 NP-完全问题上。他们使用了以下数学问题的一个版本&#xff0c;该问题是对经典knapsack问题的概括。 子集和问题 假设你有一个正…

数据结构——链式二叉树(3)

本篇文章我们依然讲解链式二叉树的OJ题&#xff1b; 一、二叉树的层序遍历 层序遍历即从根节点开始一层一层的遍历。我们可以运用队列的先进先出特性实现&#xff01; //层序遍历 void a(BTNode* root) {Que qhead;Queueinit(&qhead);//先入队根节点if(root)QueuePush(&…