python调用pytorch的clip模型时报错

这篇具有很好参考价值的文章主要介绍了python调用pytorch的clip模型时报错。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

使用python调用pytorch中的clip模型时报错:AttributeError: partially initialized module ‘clip’ has no attribute ‘load’ (most likely due to a circular import)

现象

clip源码及官方文档

在使用pyton调用pytorch中的clip模型获取图片的关键词时,根据官方文档的代码描述,代码内容如下

import torch
import clip
from PIL import Image

device = "cuda" if torch.cuda.is_available() else "cpu"
model, preprocess = clip.load("ViT-B/32", device=device)

image = preprocess(Image.open("C:/Users/HLY/Desktop/3.jpeg")).unsqueeze(0).to(device)
text = clip.tokenize(["a diagram", "a dog", "a cat"]).to(device)

with torch.no_grad():
    image_features = model.encode_image(image)
    text_features = model.encode_text(text)

    logits_per_image, logits_per_text = model(image, text)
    probs = logits_per_image.softmax(dim=-1).cpu().numpy()

print("Label probs:", probs)  # prints: [[0.9927937  0.00421068 0.00299572]]

根据官方文档安装pytorch,clip等版本后,报错,报错信息如下

Traceback (most recent call last):
  File "D:\WorkTest\pythonProject\resnetTest\clip.py", line 2, in <module>
    import clip
  File "D:\WorkTest\pythonProject\resnetTest\clip.py", line 6, in <module>
    model, preprocess = clip.load("ViT-B/32", device=device)
                        ^^^^^^^^^
AttributeError: partially initialized module 'clip' has no attribute 'load' (most likely due to a circular import)

解决方案

一、查看项目中是否有为clip名的文件

如果项目中有clip.py名文件,import clip会默认为引入自己,则会出现上述所说循环导入的问题。
将clip.py文件更名即可

python调用pytorch的clip模型时报错,python,python,pytorch,开发语言

二、查看clip是否安装成功

如果上述方案没有解决,查看是否为clip安装的问题
1、先调用如下命令,卸载已安装的clip

pip uninstall clip

2、再根据官方文档的介绍,重新安装clip
python调用pytorch的clip模型时报错,python,python,pytorch,开发语言
3、如果重新安装后也无效,尝试卸载后以如下命令

pip install openai-clip

如有其他疑问欢迎留言文章来源地址https://www.toymoban.com/news/detail-631817.html

到了这里,关于python调用pytorch的clip模型时报错的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • LLM大语言模型(三):使用ChatGLM3-6B的函数调用功能前先学会Python的装饰器

    目录 ChatGLM3-6B的函数调用模式示例 本地启动ChatGLM3-6B工具模式 如何在ChatGLM3-6B里新增一个自定义函数呢? get_weather基于Python的装饰器实现 函数注解@register_tool 现在我们来自定义一个kuakuawo()函数 ChatGLM3-6B目前有三种使用模式: 对话模式 工具模式(也就是本文要介绍的函数调用

    2024年01月25日
    浏览(72)
  • C++&Python&C# 三语言OpenCV从零开发(6):边界填充+Csharp调用Python matplotlib代码

    C++PythonCsharp in OpenCV 专栏 【2022B站最好的OpenCV课程推荐】OpenCV从入门到实战 全套课程(附带课程课件资料+课件笔记) 今天来接着学习OpenCV,现在主要是以Python代码为主了,所以先实现Python,在用C++/Csharp重现一遍。 边界填充就是向外填充图片信息,将图片扩大。填充分为上下

    2024年01月23日
    浏览(63)
  • Windows11环境下VS2019调用Pytorch语义分割模型(C++版)

             语义分割模型在训练时往往采用python脚本进行网络搭建和训练,并获得训练好的模型。为了提高效率方便整个工程项目部署,实际工程应用中通常希望使用C++编程语言调用训练好的网络模型。查询大量网络资料并踩过无数坑后,经实际测试实现了在window11环境下调用

    2024年02月14日
    浏览(57)
  • 使用qtquick调用python程序,pytorch

    使用qtquick调用python程序 2.1vsCode 2.2Anaconda version: conda 22.9.0 2.3pytorch 安装pytorch() 2.4QT 5.14.1 新版QT6.4,,6.5在线安装经常失败,而5.9版本又无法编译64位程序,所以就采用5.14.1这个用的比较多也比较稳定的一个版本。 QT编译器采用的是MSVC2017 64bit。 链接:https://pan.baidu.com/s/1ER98DPA

    2024年02月02日
    浏览(53)
  • 超详细Pytorch环境配置及CLIP应用实例

      最近想体验一下OpenAI新发布的基于自然语言和图片的预训练模型-CLIP(不得不感叹一句,真是大力出奇迹啊),遂想搭建一个Pytorch环境,跑一跑实例。本以为几十页的论文是最大的障碍,没想到配置环境才是最令人崩溃的阶段。anaconda反复重装了几个来回,不过最后终于

    2023年04月08日
    浏览(31)
  • 【pytorch】torch.clip() & torch.clamp() 数值裁剪

    这两个函数用法一样,效果也一样。 例子:

    2024年02月11日
    浏览(40)
  • 【ONNX】使用 C++ 调用 ONNX 格式的 PyTorch 深度学习模型进行预测(Windows, C++, PyTorch, ONNX, Visual Studio, OpenCV)

    要使用 ONNX 模型进行预测,就需要使用 onnx runtime 首先到 ONNX 官网查询所需的版本 这里使用的 Windows,同时装了 CUDA 下面的链接可以进入到安装网址 https://www.nuget.org/packages/Microsoft.ML.OnnxRuntime.Gpu 安装命令为: 首先打开 Visual Studio 2019 新建一个用于测试的项目 右键点击项目,可

    2024年02月09日
    浏览(55)
  • 大语言模型LLM中Transformer模型的调用过程与步骤

    在LLM(Language Model)中,Transformer是一种用来处理自然语言任务的模型架构。下面是Transformer模型中的调用过程和步骤的简要介绍: 数据预处理:将原始文本转换为模型可以理解的数字形式。这通常包括分词、编码和填充等操作。 嵌入层(Embedding Layer):将输入的词索引转换

    2024年02月22日
    浏览(39)
  • 使用PyTorch开发AI大模型

    在过去的几年里,人工智能(AI)技术的发展迅速,尤其是深度学习(Deep Learning)技术,它已经成为解决许多复杂问题的关键技术之一。PyTorch是一个流行的深度学习框架,它提供了易于使用的API,使得开发人员可以快速地构建和训练AI大模型。在本文中,我们将讨论如何使用PyTor

    2024年02月22日
    浏览(41)
  • 《动手学深度学习 Pytorch版》 8.3 语言模型和数据集

    依靠在 8.1 节中对序列模型的分析,可以在单词级别对文本数据进行词元化。基本概率规则如下: P ( x 1 , x 2 , … , x T ) = ∏ t = 1 T P ( x t ∣ x 1 , … , x t − 1 ) P(x_1,x_2,dots,x_T)=prod^T_{t=1}P(x_t|x_1,dots,x_{t-1}) P ( x 1 ​ , x 2 ​ , … , x T ​ ) = t = 1 ∏ T ​ P ( x t ​ ∣ x 1 ​ , … , x t −

    2024年02月07日
    浏览(38)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包