【pkuseg】由于网络策略组织下载请求,因此直接在github中下载细分领域模型medicine

简介: 【pkuseg】由于网络策略组织下载请求,因此直接在github中下载细分领域模型medicine

写在最前面

运行代码时,报错。

代码示例2:细领域分词(如果用户明确分词领域,推荐使用细领域模型分词)

import pkuseg

seg = pkuseg.pkuseg(model_name='medicine')  # 程序会自动下载所对应的细领域模型
text = seg.cut('我爱北京天安门')              # 进行分词
print(text)

解决方案

Downloading: “https://github.com/lancopku/pkuseg-python/releases/download/v0.0.16/medicine.zip” to /home/tjh/.pkuseg/medicine.zip

搜索下载https://github.com/lancopku/pkuseg-python/releases/download/v0.0.16/medicine.zip

然后解压,并将压缩包+解压后文件夹,放到文件夹/home/tjh/.pkuseg/medicine.zip下。

然后就完美解决啦!!!嘿嘿

记得解压,否则报错:

Traceback (most recent call last):
  File "/home/tjh/wyt/CT-base/4-2.Seq2seq_Att/load_data.py", line 41, in <module>
    seg = pkuseg.pkuseg(model_name='medicine')
  File "/home/tjh/miniconda3/envs/pytorch1.12_gpu/lib/python3.9/site-packages/pkuseg/__init__.py", line 239, in __init__
    self.postprocesser = Postprocesser(None, other_names)
  File "/home/tjh/miniconda3/envs/pytorch1.12_gpu/lib/python3.9/site-packages/pkuseg/__init__.py", line 148, in __init__
    with open(other_name, "rb") as f:
FileNotFoundError: [Errno 2] No such file or directory: '/home/tjh/.pkuseg/medicine/medicine_dict.pkl'

pkuseg是什么?

PKUSEG 是一个由北京大学开发的多领域中文分词工具。这个工具在分词精度上比很多流行的中文分词工具都要优秀,特别是在处理不同领域的文本时,因为它支持对特定领域的文本进行训练和优化。下面是一些PKUSEG的关键特性:

  1. 多领域分词:PKUSEG 支持多种领域的分词,包括但不限于通用文本、网络文本、旅游、新闻等,可以根据特定的领域数据进行优化。
  2. 高精度:该工具使用了基于深度学习的模型,与传统的基于规则和统计的分词工具相比,能更好地处理复杂的中文文本和歧义现象。
  3. 易于使用:PKUSEG 提供了简洁的 API,便于在Python环境中直接使用。用户可以很容易地集成和部署在自己的应用程序中。
  4. 自定义模型训练:用户可以使用自己的标注数据来训练专门的分词模型,进一步提升分词效果在特定应用场景中的表现。
  5. 开源:PKUSEG 是开源软件,任何人都可以使用、修改和分发,这为开发者提供了极大的灵活性和扩展性。

使用PKUSEG进行中文分词非常简单,一般包括安装、模型选择、文本分词等步骤。这样的工具非常适合需要处理具体领域中文文本的开发者和研究人员。

报错原因

你的代码试图从GitHub下载一个名为"medicine.zip"的文件,但是在SSL证书验证过程中出现了错误。这可能是由于你的网络环境中的SSL证书问题,或者是因为你的Python环境中缺少某些必要的证书。

这里我的问题是第一个,因此直接下载后复制到该区域即可。

你可以尝试以下几种解决方案:

  1. 如果你在公司或学校网络环境中,可能存在网络策略阻止了你的下载请求。你可以尝试在其他网络环境中运行你的代码。
  1. 你可以尝试更新你的Python环境中的certifi库。这个库包含了Python需要的SSL证书。你可以在终端中运行以下命令来更新这个库:
pip install --upgrade certifi
  1. 如果以上方法都不能解决问题,你可以尝试禁用SSL证书验证。但是请注意,这种方法可能会带来安全风险。你可以在你的代码中找到所有的requests.get或requests.post调用,然后添加一个参数verify=False来禁用SSL证书验证。例如:
requests.get(url, verify=False)

请注意,这种方法可能会导致你的代码在某些环境中无法正常工作,因为它依赖于你的网络环境是否允许未经验证的SSL连接。

报错详情

(pytorch1.12_gpu) tjh@tjh-SYS:~/wyt/CT-base$ /home/tjh/miniconda3/envs/pytorch1.12_gpu/bin/python /home/tjh/wyt/CT-base/4-2.Seq2seq_Att/load_data.py

cuda

Downloading: “https://github.com/lancopku/pkuseg-python/releases/download/v0.0.16/medicine.zip” to /home/tjh/.pkuseg/medicine.zip

Traceback (most recent call last):

  File "/home/tjh/miniconda3/envs/pytorch1.12_gpu/lib/python3.9/site-packages/urllib3/connectionpool.py", line 467, in _make_request
    self._validate_conn(conn)
  File "/home/tjh/miniconda3/envs/pytorch1.12_gpu/lib/python3.9/site-packages/urllib3/connectionpool.py", line 1096, in _validate_conn
    conn.connect()
  File "/home/tjh/miniconda3/envs/pytorch1.12_gpu/lib/python3.9/site-packages/urllib3/connection.py", line 642, in connect
    sock_and_verified = _ssl_wrap_socket_and_match_hostname(
  File "/home/tjh/miniconda3/envs/pytorch1.12_gpu/lib/python3.9/site-packages/urllib3/connection.py", line 782, in _ssl_wrap_socket_and_match_hostname
    ssl_sock = ssl_wrap_socket(
  File "/home/tjh/miniconda3/envs/pytorch1.12_gpu/lib/python3.9/site-packages/urllib3/util/ssl_.py", line 470, in ssl_wrap_socket
    ssl_sock = _ssl_wrap_socket_impl(sock, context, tls_in_tls, server_hostname)
  File "/home/tjh/miniconda3/envs/pytorch1.12_gpu/lib/python3.9/site-packages/urllib3/util/ssl_.py", line 514, in _ssl_wrap_socket_impl
    return ssl_context.wrap_socket(sock, server_hostname=server_hostname)
  File "/home/tjh/miniconda3/envs/pytorch1.12_gpu/lib/python3.9/ssl.py", line 500, in wrap_socket
    return self.sslsocket_class._create(
  File "/home/tjh/miniconda3/envs/pytorch1.12_gpu/lib/python3.9/ssl.py", line 1040, in _create
    self.do_handshake()
  File "/home/tjh/miniconda3/envs/pytorch1.12_gpu/lib/python3.9/ssl.py", line 1309, in do_handshake
    self._sslobj.do_handshake()
ssl.SSLCertVerificationError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: Hostname mismatch, certificate is not valid for 'objects.githubusercontent.com'. (_ssl.c:1122)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/tjh/miniconda3/envs/pytorch1.12_gpu/lib/python3.9/site-packages/urllib3/connectionpool.py", line 790, in urlopen
    response = self._make_request(
  File "/home/tjh/miniconda3/envs/pytorch1.12_gpu/lib/python3.9/site-packages/urllib3/connectionpool.py", line 491, in _make_request
    raise new_e
urllib3.exceptions.SSLError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: Hostname mismatch, certificate is not valid for 'objects.githubusercontent.com'. (_ssl.c:1122)

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/home/tjh/miniconda3/envs/pytorch1.12_gpu/lib/python3.9/site-packages/requests/adapters.py", line 486, in send
    resp = conn.urlopen(
  File "/home/tjh/miniconda3/envs/pytorch1.12_gpu/lib/python3.9/site-packages/urllib3/connectionpool.py", line 844, in urlopen
    retries = retries.increment(
  File "/home/tjh/miniconda3/envs/pytorch1.12_gpu/lib/python3.9/site-packages/urllib3/util/retry.py", line 515, in increment
    raise MaxRetryError(_pool, url, reason) from reason  # type: ignore[arg-type]
urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='objects.githubusercontent.com', port=443): Max retries exceeded with url: /github-production-release-asset-2e65be/143589809/c6d88a00-360f-11e9-9b5e-57de5648f695?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAVCODYLSA53PQK4ZA%2F20240511%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20240511T053934Z&X-Amz-Expires=300&X-Amz-Signature=8d5146d02a102c051952c64a2a73d2b6e58486d736468807511cb2e4c7c82ad0&X-Amz-SignedHeaders=host&actor_id=0&key_id=0&repo_id=143589809&response-content-disposition=attachment%3B%20filename%3Dmedicine.zip&response-content-type=application%2Foctet-stream (Caused by SSLError(SSLCertVerificationError(1, "[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: Hostname mismatch, certificate is not valid for 'objects.githubusercontent.com'. (_ssl.c:1122)")))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/tjh/wyt/CT-base/4-2.Seq2seq_Att/load_data.py", line 41, in <module>
    seg = pkuseg.pkuseg(model_name='medicine')
  File "/home/tjh/miniconda3/envs/pytorch1.12_gpu/lib/python3.9/site-packages/pkuseg/__init__.py", line 207, in __init__
    download_model(config.model_urls[model_name], config.pkuseg_home, config.model_hash[model_name])
  File "/home/tjh/miniconda3/envs/pytorch1.12_gpu/lib/python3.9/site-packages/pkuseg/download.py", line 38, in download_model
    _download_url_to_file(url, cached_file, hash_prefix, progress=progress)
  File "/home/tjh/miniconda3/envs/pytorch1.12_gpu/lib/python3.9/site-packages/pkuseg/download.py", line 44, in _download_url_to_file
    u = urlopen(url, stream=True, timeout=5)
  File "/home/tjh/miniconda3/envs/pytorch1.12_gpu/lib/python3.9/site-packages/requests/api.py", line 73, in get
    return request("get", url, params=params, **kwargs)
  File "/home/tjh/miniconda3/envs/pytorch1.12_gpu/lib/python3.9/site-packages/requests/api.py", line 59, in request
    return session.request(method=method, url=url, **kwargs)
  File "/home/tjh/miniconda3/envs/pytorch1.12_gpu/lib/python3.9/site-packages/requests/sessions.py", line 589, in request
    resp = self.send(prep, **send_kwargs)
  File "/home/tjh/miniconda3/envs/pytorch1.12_gpu/lib/python3.9/site-packages/requests/sessions.py", line 725, in send
    history = [resp for resp in gen]
  File "/home/tjh/miniconda3/envs/pytorch1.12_gpu/lib/python3.9/site-packages/requests/sessions.py", line 725, in <listcomp>
    history = [resp for resp in gen]
  File "/home/tjh/miniconda3/envs/pytorch1.12_gpu/lib/python3.9/site-packages/requests/sessions.py", line 266, in resolve_redirects
    resp = self.send(
  File "/home/tjh/miniconda3/envs/pytorch1.12_gpu/lib/python3.9/site-packages/requests/sessions.py", line 703, in send
    r = adapter.send(request, **kwargs)
  File "/home/tjh/miniconda3/envs/pytorch1.12_gpu/lib/python3.9/site-packages/requests/adapters.py", line 517, in send
    raise SSLError(e, request=request)
requests.exceptions.SSLError: HTTPSConnectionPool(host='objects.githubusercontent.com', port=443): Max retries exceeded with url: /github-production-release-asset-2e65be/143589809/c6d88a00-360f-11e9-9b5e-57de5648f695?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAVCODYLSA53PQK4ZA%2F20240511%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20240511T053934Z&X-Amz-Expires=300&X-Amz-Signature=8d5146d02a102c051952c64a2a73d2b6e58486d736468807511cb2e4c7c82ad0&X-Amz-SignedHeaders=host&actor_id=0&key_id=0&repo_id=143589809&response-content-disposition=attachment%3B%20filename%3Dmedicine.zip&response-content-type=application%2Foctet-stream (Caused by SSLError(SSLCertVerificationError(1, "[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: Hostname mismatch, certificate is not valid for 'objects.githubusercontent.com'. (_ssl.c:1122)")))


相关实践学习
部署Stable Diffusion玩转AI绘画(GPU云服务器)
本实验通过在ECS上从零开始部署Stable Diffusion来进行AI绘画创作,开启AIGC盲盒。
目录
相关文章
|
19天前
|
JSON API 开发者
Python网络编程新纪元:urllib与requests库,让你的HTTP请求无所不能
【7月更文挑战第31天】互联网的发展使网络编程成为软件开发的关键部分. Python以简洁、功能强大著称, 在此领域尤显突出. `urllib`作为标准库, 自Python初期便支持URL处理, 如读取URL (`urllib.request`) 和解析 (`urllib.parse`). 尽管API底层, 但奠定了网络编程基础.
33 4
|
6天前
|
Web App开发 Linux 开发工具
告别卡顿,畅享GitHub:国内开发者必看的五大加速访问与下载技巧
【8月更文挑战第4天】告别卡顿,畅享GitHub:国内开发者必看的五大加速访问与下载技巧
告别卡顿,畅享GitHub:国内开发者必看的五大加速访问与下载技巧
|
11天前
|
存储 网络架构
网络速率与下载速率
【8月更文挑战第8天】
24 1
网络速率与下载速率
|
2天前
|
JSON API 数据格式
Python网络编程:HTTP请求(requests模块)
在现代编程中,HTTP请求几乎无处不在。无论是数据抓取、API调用还是与远程服务器进行交互,HTTP请求都是不可或缺的一部分。在Python中,requests模块被广泛认为是发送HTTP请求的最简便和强大的工具之一。本文将详细介绍requests模块的功能,并通过一个综合示例展示其应用。
|
7天前
|
存储 SQL 安全
网络安全的守护者:从漏洞到加密技术,提升个人与组织的安全意识
在数字时代的浪潮中,网络安全成为保护信息资产的关键盾牌。本文深入探讨了网络安全的薄弱环节—漏洞,并解析了如何通过加密技术加固这道防线。同时,文章强调了培养安全意识的重要性,指出这是预防网络攻击的第一道门槛。我们将从个人用户到大型组织的角度出发,提供一系列实用的知识分享,旨在增强网络防御能力,构建一个更加安全的网络环境。
|
25天前
|
机器学习/深度学习 自然语言处理
像生物网络一样生长,具备结构可塑性的自组织神经网络来了
【7月更文挑战第24天】Sebastian Risi团队发布的arXiv论文探讨了一种模仿生物神经网络生长与适应特性的新型神经网络。LNDP利用结构可塑性和经验依赖学习,能根据活动与奖励动态调整连接,展现自我组织能力。通过基于图变换器的机制,LNDP支持突触动态增删,预先通过可学习随机过程驱动网络发育。实验在Cartpole等任务中验证了LNDP的有效性,尤其在需快速适应的场景下。然而,LNDP在复杂环境下的可扩展性及训练优化仍面临挑战,且其在大规模网络和图像分类等领域的应用尚待探索
54 20
|
11天前
|
XML SQL 安全
【网络安全】Web Hacking网络黑客手册,GitHub星标3.7K!
在黑客攻击的演变过程中,防火墙只是一个减速带。黑客攻击不断发展,变得越来越复杂,适应能力和创造力都在不断增强,造成的破坏也越来越大。通过网络端口进行的 Web 攻击影响巨大。 今天给小伙伴们分享的这份手册主要讲解了Web黑客攻击方向。描述了 Web 语言和协议、Web 和数据库服务器以及支付系统。介绍了完整的方法论,包括技术和攻击、对策、工具,以及案例研究和 Web 攻击场景,展示了不同攻击的工作原理及其工作原理。
|
18天前
|
缓存 负载均衡 算法
(四)网络编程之请求分发篇:负载均衡静态调度算法、平滑轮询加权、一致性哈希、最小活跃数算法实践!
先如今所有的技术栈中,只要一谈关于高可用、高并发处理相关的实现,必然会牵扯到集群这个话题,也就是部署多台服务器共同对外提供服务,从而做到提升系统吞吐量,优化系统的整体性能以及稳定性等目的。
|
4天前
|
Java 网络安全 开发工具
新手入门Java。如何下载Eclipse、写出最基本的“Hello word”以及如何连接github并且上传项目。
新手入门Java。如何下载Eclipse、写出最基本的“Hello word”以及如何连接github并且上传项目。
12 0
|
28天前
|
缓存 安全 Web App开发
Chrome插件实现问题之网络进程接收到URL请求后会如何解决
Chrome插件实现问题之网络进程接收到URL请求后会如何解决