HuggingFace踩坑记录-连不上,根本连不上

学习 transformers 的第一步,往往是几句简单的代码

from transformers import pipelineclassifier = pipeline("sentiment-analysis")
classifier("We are very happy to show you the 🤗 Transformers library.")
"""
[{'label': 'POSITIVE', 'score': 0.9998}]
"""

但等你配好环境然后简单运行一下,你就会发现一点也不简单!
在这里插入图片描述
直接报错ConnectionError,一查原来是被huggingface被和谐了啊,科学上网都救不了,然后报错里提到是:
https://huggingface.co/distilbert/distilbert-base-uncased-finetuned-sst-2-english
连不上。

但方法肯定是有的,网上大多数方法都是照搬
https://hf-mirror.com/
的主页,又是改环境变量又是下载下载工具的,给的例子也一点不具体。实际根本不好用,命令行配置太多,然后名字有太长,实际上它的作用也就是把
https://hf-mirror.com/distilbert/distilbert-base-uncased-finetuned-sst-2-english
下面所有的东西都下下来。。。 这些东西并非全都用得到吧,下下来是需要好很长时间的吧,那假设我只是使用pytorch而已的话,需要下哪些东西呢?(附注:你当然可以通过代码或者命令行指定匹配规则进行过滤来指定下什么东西,但是这样看着太冗长,感觉不如自己手下来的方便直观)
在这里插入图片描述
经过各种查阅和总结试错,假如你只是想使用pytorch下的模型,你只需要下载:

pytorch_model.bin
config.json
tokenizer_config.json
vocab.txt

即可,那么好,接下来要怎么加载这个模型并使用它呢?这个问题得到了很快的解决,通过报错的提示,还有命名,大概就能猜出来。一般来说,先指定根路径,也就是刚刚下载好的那4个文件的路径,然后指定模型基类和tokenizer基类,最后才可以顺利调用pipleline.总结如下:

import transformers
from transformers import pipeline, DistilBertForSequenceClassification, DistilBertTokenizer# 1. 手动下载好上面说的四个文件并存到指定目录
bert_path = "D:/datasets/huggingface/models/distilbert-base-uncased-finetuned-sst-2-english"
# 2. 使用正确的基类(鸡肋)来加载 model tokenizer 
#    (DistilBertTokenizer, DistilBertForSequenceClassification)也都是尝试出来的
tokenizer = DistilBertTokenizer.from_pretrained(bert_path)
model = DistilBertForSequenceClassification.from_pretrained(bert_path)
classifier = pipeline("sentiment-analysis", model=model, tokenizer=tokenizer)

随后,就可以进行玩耍了
比如这里我给了一个长长的句子,大概描述了我刚刚踩的坑(你也知道这是negative啊)

classifier("It is a bad experience when I try to access hugging face, "+"I have to downald them in mirror website and analyze which files shoud I downald!")[{'label': 'NEGATIVE', 'score': 0.999805748462677}]

再来个句子,带点转折意味

classifier("However, method always exists, although it takes too much time!")[{'label': 'POSITIVE', 'score': 0.9861053824424744}]

再来个,断章取义取自不要断章取义!

classifier("although it takes too much time!")
[{'label': 'NEGATIVE', 'score': 0.9921171069145203}]

看得出来还是挺准的

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

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

相关文章

Flask-RESTful 分析

Flask-RESTful 是一个 Flask 扩展,它为构建 RESTful API 提供了方便的工具和资源。它简化了创建 RESTful 服务的过程,允许开发者专注于业务逻辑而不是 HTTP 协议的细节。 资源(Resources): Resource 类:是…

Java集合详解(一)-- List集合

1.集合简介 java集合可分为Set、List、Queue和Map四种体系。 Java集合就像一种容器,可以把多个对象(实际上是对象的引用,但习惯上都称对象)“丢进”该容器中。从Java 5 增加了泛型以后,Java集合可以记住容器中对象的数…

static关键字和const关键字有什么区别

static 关键字和 const 关键字在编程中各自扮演着不同的角色,它们的主要区别体现在以下方面: 作用与用途: static:主要用于修饰变量、方法、代码块和内部类。它确保为特定数据类型或对象分配唯一的存储空间,该空间与创…

PW1503限流芯片:可达3A限流,保障USB电源管理安全高效

在电源管理领域,开关的性能直接关系到设备的稳定性和安全性。今天,我们将详细解析一款备受关注的超低RDS(ON)开关——PW1503。它不仅具有可编程的电流限制功能,还集成了多项保护机制,为各类电子设备提供了高…

解决在统信UOS Linux下缺乏zlib和jpeg库导致的安装Pillow报错问题

☞ ░ 前往老猿Python博客 ░ https://blog.csdn.net/LaoYuanPython 一、引言 今天在统信UOS Linux的Python3环境下安装Pillow遇到了问题,导致安装不成功,通过报错信息。 二、第一执行pip3 install pillow安装报错 为了提高效率,指向了清华…

Windows下如何确定虚函数在虚函数表中的位置

我需要用c#调用 c 的 类的函数, 虽然可以通过头文件的顺序,但是如果可以打印出虚函数在虚表中的Offset更好。 测试要求: Windows, x86 只有1层虚函数,没有被override过 虚函数调用如下 auto a_reqCreditDetail &XtTraderApi::reqCreditDetail; (a…

论STM32如何使用I2C协议

前言 当提到STM32微控制器使用I2C协议时,通常意味着通过I2C总线与其他外设进行通信。I2C(Inter-Integrated Circuit)是一种常用的串行通信协议,用于在微控制器和外部设备之间传输数据。ST公司的STM32系列微控制器广泛应用于各种嵌…

Spring重点知识(个人整理笔记)

目录 1. 为什么要使用 spring? 2. 解释一下什么是 Aop? 3. AOP有哪些实现方式? 4. Spring AOP的实现原理 5. JDK动态代理和CGLIB动态代理的区别? 6. 解释一下什么是 ioc? 7. spring 有哪些主要模块?…

MBTI与团队合作:如何根据性格类型打造高效团队?

MBTI简介 迈尔斯-布里格斯类型指标(Myers–Briggs Type Indicator,MBTI)是由美国作家伊莎贝尔布里格斯迈尔斯和她的母亲凯瑟琳库克布里格斯共同制定的一种人格类型理论模型。 该指标以瑞士心理学家卡尔荣格划分的8种心理类型为基础&#xff…

Linux: module: dump_pagetables: Unknown symbol init_top_pgt (err 0)

这个错误的log; [1743497.964200] dump_pagetables: Unknown symbol init_top_pgt (err 0) [1744367.885924] dump_pagetables: Unknown symbol init_top_pgt (err 0) [1744983.735103] dump_pagetables: Unknown symbol init_top_pgt (err 0)原因是在编译内核模块…

Spring-IoC 基于注解

基于xml方法见:http://t.csdnimg.cn/dir8j 注解是代码中的一种特殊标记,可以在编译、类加载和运行时被读取,执行相应的处理,简化 Spring的 XML配置。 格式:注解(属性1"属性值1",...) 可以加在类上…

Linux ARM平台开发系列讲解(u-boot篇) 5.1 u-boot的启动流程分析(ARMv8-a)

1. 概述 对于嵌入式来说,bootload对于开发人员来说并不陌生,但是在不同芯片架构中,bootload程序所做的一些操作是有所不同的,比如常见的STM32 Cotex-M和RK3568 之间的启动流程所做的操作是有所不同的。本小节就来概述一下U-boot的启动流程: 注意:本章节中的源码我大多数…

计算机网络-HTTP相关知识-基础

HTTP基础 基本概念:HTTP是一种计算机之间交流通信的规范,它允许数据在两点之间传输,这个过程可以包括中转或接力。HTTP不仅仅包括文本,还可以包括图片、音频等超文本。状态码:HTTP状态码分为五类: 2xx&…

一文搞懂 ThreadLocal

简介 ThreadLocal存取的数据,总是与当前线程相关,也就是说,JVM 为每个运行的线程,绑定了私有的本地实例存取空间,从而为多线程环境常出现的并发访问问题提供了一种隔离机制。 ThreadLocal的作用是提供线程内的局部变…

RK3588 NPU 研究(二)

RK提供了两个模型,mobilenet和YOLO5。 mobilenet模型相对小,使用起来不是很明显yolo5模型大一些,可以对88种目标进行检测,提供检测的结果包括类别、包围框坐标、可信度等信息。基于rknn_yolov5_demo进行分析。 rknn_yolov5_demo基…

TIMO后台管理系统-入门,简单易懂教程-技巧总结

Timo 要说的话: 这个项目的技术栈是JPA,会有很多文件去追踪,这些文件大多是使用内部的代码生成器做的,API文档做得不错,之前没做过项目的同学花一天了解API文件还是不错的 资料: 文档:http:…

360手机位置穿越修复 360手机位置穿越 360手机刷机 360手机黑科技 360位置穿越下载

360手机位置穿越修复 360手机位置穿越 360手机刷机 360手机黑科技 360位置穿越下载 360手机位置穿越钉钉打卡 360手机位置穿越微信打卡 360手机位置穿越滴滴打卡 360手机位置穿越美团打卡 360手机位置穿越 360手机位置穿越下载 360手机位置穿越 支持钉钉、微信等位置修改…

若依自带vue-cropper上传图片(可旋转、缩放)

2024.4.4今天我学习了如何使用若依的vue-cropper上传图片组件,在工作中遇到一个需求,需要对上传的图片进行旋转的操作,然后我先找到el-upload组件,使用之后发现它有一个自动上传和非自动上传的功能,是不是就可以通过非…

vulhub中Struts2-001 远程代码执行漏洞复现

该漏洞因为用户提交表单数据并且验证失败时,后端会将用户之前提交的参数值使用 OGNL 表达式 %{value} 进行解析,然后重新填充到对应的表单数据中。例如注册或登录页面,提交失败后端一般会默认返回之前提交的数据,由于后端使用 %{v…

【快速解决】python缺少了PyQt5模块的QtMultimedia子模块

目录 问题描述 问题原因 解决方法 成功示范 问题描述 Traceback (most recent call last): File "d:\桌面\python项目\DesktopWords-master\main.py", line 4, in <module> from PyQt5.QtMultimedia import QMediaPlayer, QMediaContent ModuleNotFoundEr…