当前位置: 首页 > news >正文

一篇普通的bug日志——bug的尽头是next吗?

在这里插入图片描述

文章目录

  • [bug 1] TypeError: 'method' object is not subscriptable
  • [bug 2] TypeError: unsupported format string passed to numpy.ndarray.__format__
  • [bug 3] ValueError:Hint: Expected dtype() == paddle::experimental::CppTypeToDataType<T>::Type()
  • [bug 4] CondaSSLError: Encountered an SSL error.
  • [bug 5] pip install paddleclas失败
  • [bug 6] 想删除原来的文件夹后新建一个(逻辑错误)


[bug 1] TypeError: ‘method’ object is not subscriptable

问题代码:

print(item.full_name(), x.shape, item.parameters()[0].shape, item.parameters[1].shape)

原因:
parameters后面少了个括号。

在这里插入图片描述


[bug 2] TypeError: unsupported format string passed to numpy.ndarray.format

这段报错可以用如下代码重现出来:

import numpy as np
x = np.array([1.])
print('{:4f}'.format(x))

原因:
传给{:4f}的应该是一个浮点数数值,而 x 是 numpy 的数组,于是类型不匹配。我们只需将 x 转为浮点型即可,正确代码如下:

import numpy as np
x = np.array([1.])
x = float(x)
print('{:4f}'.format(x))

[bug 3] ValueError:Hint: Expected dtype() == paddle::experimental::CppTypeToDataType::Type()

描述
学习预训练模型的 fine-tune 时,将 AI Studio 上能跑的代码拷下来,到本地就报错了,我真的一脸懵。

当时上网查 ValueError,大多说将 ‘float64’ 换成 'float32‘,但我将输入的特征astype('float32')后,还是没用。

报错信息

ValueError: (InvalidArgument) The type of data we are trying to retrieve does not match the type of data currently contained in the container.[Hint: Expected dtype() == paddle::experimental::CppTypeToDataType<T>::Type(), but received dtype():5 != paddle::experimental::CppTypeToDataType<T>::Type():7.] (at ..\paddle\phi\core\dense_tensor.cc:137)[operator < accuracy > error]

解决

最后发现要改的是这里:

return im, int(grt)

int是 python 内置的数据类型,我将它转成 numpyint64 就好了。真没想到,python 内置的 int 居然不行。

# grt原本是给字符串
grt = np.int64(int(grt))
return im, grt

[bug 4] CondaSSLError: Encountered an SSL error.

使用 pipconda 安装 python 包时,如果开了梯子,可能会出现这样的报错,把梯子关掉就好了。

完整的报错如下:

CondaSSLError: Encountered an SSL error. Most likely a certificate verification issue.
Exception: HTTPSConnectionPool(host='mirrors.tuna.tsinghua.edu.cn', port=443):Max retries exceeded with url: /anaconda/pkgs/main/win-64/current_repodata.json(Caused by SSLError(SSLEOFError(8, 'EOF occurred in violation of protocol(_ssl.c:1125)')))

翻译:


CondaSSLError:遇到 SSL 错误。很可能是证书验证问题。 
异常:HTTPSConnectionPool(host='mirrors.tuna.tsinghua.edu.cn', port=443):
超出最大重试次数,网址为:/anaconda/pkgs/main/win-64/current_repodata.json 
(由 SSLError(SSLEOFError(8'EOF 发生违反协议 (_ssl.c:1125)')))

[bug 5] pip install paddleclas失败

描述
一开始看到好像是faiss包的问题,一顿操作之后,我把 faiss 包下下来了,但还是无法下载 paddleclas。这应该是 python 版本的问题,现在的版本是 python3.10.6,但我之前在 python3.8.4 的版本下使用 pip 下载成功了。

处理方案
从 github 上下载 PaddleClas 的代码库后,直接 import 导入,跳过 pip 这一步。

import sys
sys.path.append('D:/code_all/gitCode/PaddleClas')  # 这里是代码库的路径
import ppcls

可能编辑器会提示 "没有名称为'ppcls'的模块”,但不用管,只要运行时不报错就行。因为sys.path.append()在运行的时候才会执行,而在它执行之前你确实没有 ppcls 这个包。


[bug 6] 想删除原来的文件夹后新建一个(逻辑错误)

错误代码片段:

import os
import shutilisExist = os.path.exists(saveDir)
if isExist and deleteOld:shutil.rmtree(saveDir)
if not isExist:os.makedirs(saveDir)

但如果原本路径saveDir存在,则isExistTrue,执行删除,但是后面isExist依然为True,并不会重新创建路径。

修改:创建前再插入一段判断。

isExist = os.path.exists(saveDir)
if isExist and deleteOld:shutil.rmtree(saveDir)
isExist = os.path.exists(saveDir)
if not isExist:os.makedirs(saveDir)

相关文章:

一篇普通的bug日志——bug的尽头是next吗?

文章目录[bug 1] TypeError: method object is not subscriptable[bug 2] TypeError: unsupported format string passed to numpy.ndarray.__format__[bug 3] ValueError:Hint: Expected dtype() paddle::experimental::CppTypeToDataType<T>::Type()[bug 4] CondaSSLE…...

Vue 3 第八章:Watch侦听器

文章目录Watch侦听器1. 基础概念1.1. Watch的基本用法例子1&#xff1a;监听单个ref的值&#xff0c;直接监听例子2&#xff1a;监听多个ref的值&#xff0c;采用数组形式例子3&#xff1a;深度监听例子4&#xff1a;监听reactive响应式对象单一属性&#xff0c;采用回调函数的…...

GlassFish的安装与使用

一、产品下载与安装glassfish下载地址&#xff1a;https://download.oracle.com/glassfish/5.0.1/release/index.html下载后解压即完成安装&#xff0c;主要目录说明&#xff1a;bin目录&#xff1a;为asadmin命令所在目录。glassfish为主目录&#xff1a;glassfish\bin目录为命…...

【java】Java 重写(Override)与重载(Overload)

文章目录重写(Override)方法的重写规则Super 关键字的使用重载(Overload)重载规则实例重写与重载之间的区别总结重写(Override) 重写是子类对父类的允许访问的方法的实现过程进行重新编写, 返回值和形参都不能改变。即外壳不变&#xff0c;核心重写&#xff01; 重写的好处在于…...

OpenCV-PyQT项目实战(12)项目案例08:多线程视频播放

欢迎关注『OpenCV-PyQT项目实战 Youcans』系列&#xff0c;持续更新中 OpenCV-PyQT项目实战&#xff08;1&#xff09;安装与环境配置 OpenCV-PyQT项目实战&#xff08;2&#xff09;QtDesigner 和 PyUIC 快速入门 OpenCV-PyQT项目实战&#xff08;3&#xff09;信号与槽机制 …...

面向对象设计模式:结构型模式之装饰器模式

文章目录一、引入二、装饰器模式2.1 Intent 意图2.2 Applicability 适用性2.3 类图2.4 优缺点2.5 应用实例&#xff1a;Java IO 类2.6 应用实例&#xff1a;咖啡馆订购系统一、引入 咖啡馆订购系统 Initial 初始 4 种咖啡 House blend (混合咖啡)Dark Roast (深度烘培)Decaf (…...

Unity iOS 无服务器做一个排行榜 GameCenter

排行榜需求解决方案一(嗯目前只有一)UnityEngine.SocialPlatformsiOS GameCenterAppStoreConnect配置Unity 调用(如果使用GameCenter系统的面板&#xff0c;看到这里就可以了&#xff09;坑(需要获取数据做自定义面板的看这里)iOS代码Unity 代码吐槽需求 需求&#xff1a;接入…...

现在招个会自动化测试的人是真难呀~你会个锤子的自动化测试

现在招个会自动化测试的人是真难呀~ 前一段时间公司计划要招2个自动化测试到岗&#xff0c;同事面试了十几个来应聘的人&#xff0c;发现一个很奇怪的现象&#xff0c;在面试的时候&#xff0c;如果问的是框架API、脚本编写这些问题&#xff0c;基本上所有人都能对答如流&…...

OracleDatabase——数据库表空间dmp导出与导入

由于公司的程序一直部署在客户现场内网&#xff0c;内网调试难度高&#xff0c;一般是有备份还原数据库的需求&#xff0c;这里简记备份&#xff08;导出&#xff09;数据库dmp文件与恢复&#xff08;导入&#xff09;的步骤。 一、导出dmp文件 exp与expdp命令异同 相同点&a…...

20张图带你彻底了解ReentrantLock加锁解锁的原理

哈喽大家好&#xff0c;我是阿Q。 最近是上班忙项目&#xff0c;下班带娃&#xff0c;忙的不可开交&#xff0c;连摸鱼的时间都没有了。今天趁假期用图解的方式从源码角度给大家说一下ReentrantLock加锁解锁的全过程。系好安全带&#xff0c;发车了。 简单使用 在聊它的源码…...

Dockerfile构建Springboot镜像

Dockerfile构建Springboot镜像 文章目录 Dockerfile构建Springboot镜像 简介实例演示 前期准备 Docker环境Springboot项目Dockerfile文件 Windows 要求构建镜像启动测试 Linux 要求构建镜像启动测试 简介 容器技术大流行的时代&#xff0c;也是docker大流行的时代。 此文…...

从深分页查询到覆盖索引

最近看到一道面试题&#xff0c;如何优化深分页查询 最简单的例子是 select * from web_bill_main limit 30000,10;分页达到30000行&#xff0c;需要把前面29999行都过滤掉&#xff0c;才能找到这10条数据 所以整体时间花了80ms(工具显示时间) 我当时的第一反应是&#xff0…...

Go语言学习的第三天--下部分(Gin框架的基础了解)

每天都会分享Go的知识&#xff0c;喜欢的朋友关注一下。每天的学习分成两部分基础&#xff08;必要的&#xff0c;基础不牢地动山摇&#xff09;&#xff0c;另一部分是Go的一些框架知识&#xff08;会不定时发布&#xff0c;因为小Wei也是一名搬砖人&#xff09;。但是可以保证…...

JDK的动态代理(powernode 文档)(内含源代码)

JDK的动态代理&#xff08;powernode 文档&#xff09;&#xff08;内含源代码&#xff09; 源代码下载链接地址&#xff1a;https://download.csdn.net/download/weixin_46411355/87546086 一、动态代理 目录JDK的动态代理&#xff08;powernode 文档&#xff09;&#xff0…...

第1章 多线程基础

第1章 多线程基础 1.1.2 线程与进程的关系 进程可以看成是线程的容器&#xff0c;而线程又可以看成是进程中的执行路径。 1.2 多线程启动 线程有两种启动方式&#xff1a;实现Runnable接口&#xff1b;继承Thread类并重写run()方法。 执行进程中的任务时才会产生线程&a…...

Linux基本指令(一)

文章目录文件操作文档操作系统管理网络通信备份压缩Ctrl Alt T 打开终端 文件操作 1.复制文件 cp afile bfile &#xff08;将名为afile的文件复制到名为bfile的文件夹中&#xff0c;如果bfile文件不存在&#xff0c;系统将会创建此文件&#xff0c;如果bfile文件已经存在&a…...

el-dialog子组件在mounted周期内获取不到dom?

el-dialog子组件在mounted周期内获取不到dom&#xff1f;一、问题描述二、分析原因三、猜测正常父子组件在mounted生命周期内可以获得dom 父created—子created—子mounted—父mounted----子updated—父updated 一、问题描述 ** el-dialog控制显示隐藏是css控制的display&…...

第九章 opengl之光照(光照贴图)

OpenGL光照贴图漫反射贴图镜面光贴图光照贴图 一个物体的不同部分是不同的材质&#xff0c;那么会有不同的环境光和漫反射颜色表现。 漫反射贴图 原理就是&#xff1a;纹理。 是对同样的原理使用了不同的名字&#xff1a;其实都是使用一张覆盖物体的图像&#xff0c;让我们能…...

JDK动态代理(powernode CD2207 video)(内含教学视频+源代码)

JDK动态代理&#xff08;powernode CD2207 video&#xff09;&#xff08;内含教学视频源代码&#xff09; 教学视频原代码下载链接地址&#xff1a;https://download.csdn.net/download/weixin_46411355/87545977 目录JDK动态代理&#xff08;powernode CD2207 video&#xf…...

【Linux】Sudo的隐晦bug引发的一次业务问题排查

Sudo的隐晦bug引发的一次业务问题排查写在前面问题描述问题排查高负载现象排查日志排查跟踪任务调度过程Sudo引发的问题手动复现问题分析处理方案写在前面 记录一次生产环境sudo启动进程频繁被Kill且不报错的异常处理过程&#xff0c;如果遇到同样的问题只想要解决方案&#x…...

基于算法竞赛的c++编程(28)结构体的进阶应用

结构体的嵌套与复杂数据组织 在C中&#xff0c;结构体可以嵌套使用&#xff0c;形成更复杂的数据结构。例如&#xff0c;可以通过嵌套结构体描述多层级数据关系&#xff1a; struct Address {string city;string street;int zipCode; };struct Employee {string name;int id;…...

Chapter03-Authentication vulnerabilities

文章目录 1. 身份验证简介1.1 What is authentication1.2 difference between authentication and authorization1.3 身份验证机制失效的原因1.4 身份验证机制失效的影响 2. 基于登录功能的漏洞2.1 密码爆破2.2 用户名枚举2.3 有缺陷的暴力破解防护2.3.1 如果用户登录尝试失败次…...

论文解读:交大港大上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化学习框架(二)

HoST框架核心实现方法详解 - 论文深度解读(第二部分) 《Learning Humanoid Standing-up Control across Diverse Postures》 系列文章: 论文深度解读 + 算法与代码分析(二) 作者机构: 上海AI Lab, 上海交通大学, 香港大学, 浙江大学, 香港中文大学 论文主题: 人形机器人…...

CVPR 2025 MIMO: 支持视觉指代和像素grounding 的医学视觉语言模型

CVPR 2025 | MIMO&#xff1a;支持视觉指代和像素对齐的医学视觉语言模型 论文信息 标题&#xff1a;MIMO: A medical vision language model with visual referring multimodal input and pixel grounding multimodal output作者&#xff1a;Yanyuan Chen, Dexuan Xu, Yu Hu…...

【Linux】C语言执行shell指令

在C语言中执行Shell指令 在C语言中&#xff0c;有几种方法可以执行Shell指令&#xff1a; 1. 使用system()函数 这是最简单的方法&#xff0c;包含在stdlib.h头文件中&#xff1a; #include <stdlib.h>int main() {system("ls -l"); // 执行ls -l命令retu…...

第一篇:Agent2Agent (A2A) 协议——协作式人工智能的黎明

AI 领域的快速发展正在催生一个新时代&#xff0c;智能代理&#xff08;agents&#xff09;不再是孤立的个体&#xff0c;而是能够像一个数字团队一样协作。然而&#xff0c;当前 AI 生态系统的碎片化阻碍了这一愿景的实现&#xff0c;导致了“AI 巴别塔问题”——不同代理之间…...

土地利用/土地覆盖遥感解译与基于CLUE模型未来变化情景预测;从基础到高级,涵盖ArcGIS数据处理、ENVI遥感解译与CLUE模型情景模拟等

&#x1f50d; 土地利用/土地覆盖数据是生态、环境和气象等诸多领域模型的关键输入参数。通过遥感影像解译技术&#xff0c;可以精准获取历史或当前任何一个区域的土地利用/土地覆盖情况。这些数据不仅能够用于评估区域生态环境的变化趋势&#xff0c;还能有效评价重大生态工程…...

uniapp手机号一键登录保姆级教程(包含前端和后端)

目录 前置条件创建uniapp项目并关联uniClound云空间开启一键登录模块并开通一键登录服务编写云函数并上传部署获取手机号流程(第一种) 前端直接调用云函数获取手机号&#xff08;第三种&#xff09;后台调用云函数获取手机号 错误码常见问题 前置条件 手机安装有sim卡手机开启…...

解决:Android studio 编译后报错\app\src\main\cpp\CMakeLists.txt‘ to exist

现象&#xff1a; android studio报错&#xff1a; [CXX1409] D:\GitLab\xxxxx\app.cxx\Debug\3f3w4y1i\arm64-v8a\android_gradle_build.json : expected buildFiles file ‘D:\GitLab\xxxxx\app\src\main\cpp\CMakeLists.txt’ to exist 解决&#xff1a; 不要动CMakeLists.…...

【从零开始学习JVM | 第四篇】类加载器和双亲委派机制(高频面试题)

前言&#xff1a; 双亲委派机制对于面试这块来说非常重要&#xff0c;在实际开发中也是经常遇见需要打破双亲委派的需求&#xff0c;今天我们一起来探索一下什么是双亲委派机制&#xff0c;在此之前我们先介绍一下类的加载器。 目录 ​编辑 前言&#xff1a; 类加载器 1. …...