工业异常检测AnomalyGPT-Demo试跑

2024-01-09

写在前面:如果你有大的cpu和gpu可以使用,直接根据官方的安装说明就可以,如果没有,可以点进来试着看一下我个人的安装经验。

一、试跑环境

NVIDIA4090显卡24g,cpu内存33G,交换空间8g,操作系统ubuntu22.04(试跑过程cpu使用峰值为32.8g,交换空间使用峰值8g)

二、数据准备

1.AnomalyGPT源码下载

git clone https://github.com/CASIA-IVA-Lab/AnomalyGPT.git

2.权重准备

(1) ImageBind 权重: https://dl.fbaipublicfiles.com/imagebind/imagebind_huge.pth

(下载后放到AnomalyGPT/pretrained_ckpt/imagebind_ckpt文件夹下)

(2)vicuna权重:vicuna权重是由llama权重和vicuna 的delta权重组成,完整的vicuna权重需要由这两个权重合并而来。

llama权重获取: https://huggingface.co/huggyllama/llama-7b/tree/main

vicunav0权重获取: https://huggingface.co/lmsys/vicuna-7b-delta-v0

vicunav1权重获取: https://huggingface.co/lmsys/vicuna-7b-delta-v1.1/tree/main

(3)AnomalyGPT的Delta 权重: https://huggingface.co/openllmplayground/pandagpt_7b_max_len_1024

(下载后放在AnomalyGPT/pretrained_ckpt/pandagpt_ckpt/7b文件夹下)

(4)AnomalyGPT权重:

https://huggingface.co/FantasticGNU/AnomalyGPT/blob/main/train_supervised/pytorch_model.pt

(下载后放在AnomalyGPT/code/ckpt/train_supervised文件夹下)

三、运行

1.环境搭建

(打开requirements.txt  把torch版本号去掉让其自动选择安装版本,然后保存。这里修改是因为我本地是cuda12,官方默认装的是cuda11.7对应的torch,担心不适配所以修改一下。)

创建anomalygpt环境并安装相关包

conda create -n anomalygpt python=3.8
conda activate anomalygpt
pip install -r requirements.txt

2.vicuna权重合并

vicuna权重合并用的是fastchat工具

fastchat环境搭建

conda create -n fastchat python=3.8
conda activate fastchat
pip3 install "fschat[model_worker,webui]"

合并命令:( 注意:(1).这里的fastchat版本不能为0.1.10,因为0.1.10没有--low-cpu-mem这个参数,无法在cpu内存小的设备上进行合并权重;(2).vicuna的delta权重版本选1.1,vicunav0版本的时候有一个tensor错误,会报RuntimeError: The size of tensor a (32000) must match the size of tensor b (32001) at non-singleton dimension 0错误 )

python -m fastchat.model.apply_delta --base llama权重文件夹路径 \
 --target 合并后的权重保存路径 \
 --delta vicuna的delta权重文件夹路径 \
 --low-cpu-mem

合并成功:

3.demo运行

(1)直接运行python web_demo.py,会报被kill的错;

(2)解决被杀死问题:将delta_chpt_path,anomaly_ckpt_path,imagebind_ckpt_path模型加载到gpu上(共5g左右的显存),这样vicuna模型才能正常加载完成。

(3)有时候直接运行python web_demo.py会报ValueError: Unknown scheme for proxy URL URL('socks://127.0.0.1:7891/')的错,

解决方案:在terminal中运行一下命令:

unset all_proxy; unset ALL_PROXY

(4)正常运行运行python web_demo.py成功:

(5)线上线下demo效果对比:

线上:

本地:

五、参考文献

vacuna大模型训练: 大模型也内卷,Vicuna训练及推理指南,效果碾压斯坦福羊驼

anomalygpt文章介绍: 大模型也能用来做工业异常检测 - 知乎

大模型相关: UC伯克利发布大语言模型排行榜,Vicuna夺冠,清华ChatGLM进前5-36氪

工业缺陷数据集: MVTEC公开数据集_mvtec数据集-CSDN博客

高效大模型微调框架: 大模型高效微调-PEFT框架介绍 - 知乎

DeepSpeedAgent: [LLM]大模型训练(一)--DeepSpeed介绍-CSDN博客

SelfInstructTestDataset:生成语料方式 【self-instruct方式生成语料代码实战】-CSDN博客

LDAP命令介绍---dsconfig_ldap 查看所有 bind dn-CSDN博客

权重合并操作参考: https://github.com/CASIA-IVA-Lab/AnomalyGPT/tree/main/pretrained_ckpt#1-prepare-vicuna-checkpoint

合并权重操作手册常见的坑: 【LLM入门】Vicuna 模型部署与测试 - 知乎

GitHub - lm-sys/FastChat: An open platform for training, serving, and evaluating large language models. Release repo for Vicuna and Chatbot Arena.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

工业异常检测AnomalyGPT-Demo试跑 的相关文章

随机推荐

  • 【Java】2023年业务实践中遇到的所有OOM情况及实战总结

    OOM分析 实战 引言 一 JVM内存结构 二 JVM OOM错误情况 三 实践 案例一 案例二 案例三 四 总结 五 分析工具推荐 六 参考
  • Mac版 Photoshop 2021---PS2021

    Adobe Photoshop 2021是一款强大的图像处理软件 它可以帮助用户进行各种图像编辑 修饰和合成工作 这款软件拥有先进的图像处理技术 支持多种图像格式 可以轻松实现各种复杂的图像处理任务 它还提供了丰富的滤镜和工具 使用户可以自
  • Mac系统安装Tomcat、创建Java Web项目并配置Tomcat作为服务器

    mac安装Tomcat tomcat下载链接 https tomcat apache org download 80 cgi 解压 访问http localhost 8080 出现如下页面 说明tomcat启动成功 启动成功之后 记得先执行
  • 基于Python + Requests 的Web接口自动化测试框架

    之前采用JMeter进行接口测试 每次给带新人进行培训比较麻烦 干脆用Python实现 将代码和用例分离 易于维护 项目背景 公司的软件采用B S架构 进行数据存储 分析 管理 工具选择 python开发的速度很快 且容易上手 丰富的第三方
  • 用免费敏捷工具Leangoo领歌做敏捷需求管理

    传统的瀑布工作模式使用详细的需求说明书来表达需求 需求人员负责做需求调研 根据调研情况编制详细的需求说明书 进行需求评审 评审之后签字确认交给研发团队设计开发 在这样的环境下 需求文档是信息传递的主体 也是一份契约 然而详细的需求说明书有以
  • 监控显卡显存(python代码)

    一 前言 我和我同学的代码 分别占用14G显存 而显卡的显存只有24G 没有办法同时跑 所以 他先跑 我的代码时刻监控显存的使用情况 只要显卡显存大于14G 我的代码就自动启动 二 代码 import pynvml import time
  • vue 点击改变数组中选中的icon颜色(结合拖拽实现)

    1 vue 点击改变数组中选中的icon颜色 在Vue中 可以通过使用v bind指令来动态地修改元素的样式 要根据点击事件来改变数组中选中图标的颜色 首先需要定义一个data属性来存储当前被选中的索引值或者其他相关信息 然后 在模板中使用
  • 1-创建小程序项目

    注册 打开https mp weixin qq com 点击 立即注册 选择小程序 获取APPID 登录小程序在 开发管理 gt 开发设置 获取 APPID 开发工具 登录小程序在 开发工具 gt 开发者工具 获取 微信开发者工具 创建小程
  • 学习STM32正点原子好吗?

    今日话题 学习STM32正点原子好吗 正点原子的教程内容简单明了 代码也清晰直接 使初学者能够轻松理解其功能和使用方法 尤其对于需要快速完成大学作业等任务的大学生来说 可以直接借鉴并稍作修改 便可满足需求 正点原子提供的资料通俗易懂 适合用
  • 微信扫一扫,ios系统扫码失效解决

    问题场景 调用微信扫一扫的 sdk时 安卓系统没有问题 苹果系统怎么点击都没反应 解决一 扫一扫的页面 是需要给接口传递当前页面地址生成签名的 ios系统不行 不能访问根路径 的地址 访问根路径 微信会用根路径签名 签名会过不去 必须用当前
  • golang 生成一年的周数

    GetWeekTimeCycleForGBT74082005 获取星期周期 中华人民共和国国家标准 GB T 7408 2005 参数 year 年份 GB T 7408 2005 func GetWeekTimeCycleForGBT74
  • 大创项目推荐 深度学习图像风格迁移

    文章目录 0 前言 1 VGG网络 2 风格迁移 3 内容损失 4 风格损失 5 主代码实现 6 迁移模型实现 7 效果展示 8 最后 0 前言 优质竞赛项目系列 今天要分享的是 深度学习图
  • vue中的防抖和节流

    在Vue中 防抖和节流是两种常用的优化技术 用于限制事件的触发频率 以提高页面性能 防抖 Debounce 是指在事件被触发后 等待一段时间后再执行回调函数 如果在这段等待时间内 事件又被触发 则重新计时 防抖通常用于限制重复触发频率较高的
  • 【Vue3】2-3 : 选项式API的编程风格与优势

    本书目录 点击 进入 一 选项式API 三大优势 只有一个参数 不会出现参数顺序的问题 随意调整配置的位置 传入的是一个对象 没有参数顺序问题 对比反面教材 非常清晰 语法化特别强 非常适合添加默认值的 一 选项式API 三大优势 只有一个
  • Win11熄屏,自动断开WiFi解决方法

    一 前言 由于 我需要使用自己的电脑 远程连接服务器跑代码 电脑息屏之后 wifi断开 代码也就自动停止了 非常生气 二 解决办法 网上的办法很多都是win10 而且别人的都有电源管理 而我的没有 下面是别人的 这是我的 就是没有电源管理
  • 会stm32有机会进大公司吗?

    今日话题 会stm32有机会进大公司吗 我本科期间参与了飞思卡尔和电赛等比赛 使用过多种单片机 但渐渐发现单片机只是其中的一小部分 不要过分迷恋所谓的单片机基础和技巧 更值得深入研究的是C语言 如果你对此感兴趣 我愿意无偿分享一个资源包 其
  • 网络基础面试题(二)

    11 什么是网桥 防火墙的端口防护是指什么 网桥是一种网络设备 用于连接两个或多个局域网 LAN 并转发数据包 它能够根据MAC地址来识别和转发数据 提高网络的传输效率和安全性 防火墙的端口防护是指对防火墙上的各个端口进行保护和限制 只允许
  • 研究生写爬虫险些锒铛入狱,起因竟是为爱冲锋?

    我国目前并未出台专门针对网络爬虫技术的法律规范 但在司法实践中 相关判决已屡见不鲜 K 哥特设了 K哥爬虫普法 专栏 本栏目通过对真实案例的分析 旨在提高广大爬虫工程师的法律意识 知晓如何合法合规利用爬虫技术 警钟长鸣 做一个守法 护法 有
  • 构建免费的Dokan和WooCommerce构建线上课程市场在线销售数字课程

    我们知道创建良好的学习说明和材料很困难 但当涉及到销售时 就变得更加困难 如果您无法出售您的课程 那么没有什么比这更令人沮丧的了 幸运的是 如果您使用的是 WordPress 网站 那么您可以非常轻松且免费地完成此操作 借助LearnPre
  • 工业异常检测AnomalyGPT-Demo试跑

    写在前面 如果你有大的cpu和gpu可以使用 直接根据官方的安装说明就可以 如果没有 可以点进来试着看一下我个人的安装经验 一 试跑环境 NVIDIA4090显卡24g cpu内存33G 交换空间8g 操作系统ubuntu22 04 试跑过