解决离线服务器无法加载HuggingFaceEmbeddings向量化模型的问题

由于服务器是离线的,因此我先在本地到huggingface官网下载模型text2vec,然后上传到服务器上运行,报错:

(MaxRetryError('HTTPSConnectionPool(host=\'huggingface.co\', port=443): Max retries exceeded with url: /api/models/sentence-transformers/text2vec-base-chinese/revision/main (Caused by NameResolutionError("<urllib3.connection.HTTPSConnection object at 0x7f12ebf56350>: Failed to resolve \'huggingface.co\' ([Errno -3] Temporary failure in name resolution)"))'), '(Request ID: d787098f-eabd-4f11-8150-623bd99a55e2)')

An error happened while trying to locate the files on the Hub and we cannot find the appropriate snapshot folder for the specified revision on the local disk. Please check your internet connection and try again.

huggingface_hub.utils._errors.LocalEntryNotFoundError: Cannot find an appropriate cached snapshot folder for the specified revision on the local disk and outgoing traffic has been disabled. To enable repo look-ups and downloads online, pass 'local_files_only=False' as input.
 

HuggingFaceEmbeddings它识别不了这个路径下的文件,因此我将cache_folder的值换成'shibing624/text2vec-base-chinese'依然报相同的错误。

然后我去官网看如何调用这个模型,选择了下面这种方式:

再次报错:

 db = store_chroma(documents,embeddings)

AttributeError: 'BertModel' object has no attribute 'embed_documents'

也就是说加载完向量化模型后,我初始化了Chroma向量数据库,然后对传入的doc文档数据进行向量化,它会提示找不到embed_documents这个属性。本身BertModel是没有这个属性的,但是Chroma却需要调用这个属性来实现文档向量化(通过HuggingFaceEmbeddings来加载模型就不会报错,但是离线服务器上用不了)。因此,自己写一个embed_documents来实现就好啦,如下所示:

先在load_embedding_mode里面添加一个方法embedding_function,然后再建立一个类:

最后再调用这个类,就能正常对文档进行向量化和本地持久化了。

embedding_function = EmbeddingFunction(load_embedding_mode())
db = Chroma(embedding_function=embedding_function, persist_directory='VectorStore')

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

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

相关文章

代码随想录——二叉树的层序遍历Ⅱ(Leetcode107)

题目链接 层序遍历&#xff08;队列&#xff09; /*** Definition for a binary tree node.* public class TreeNode {* int val;* TreeNode left;* TreeNode right;* TreeNode() {}* TreeNode(int val) { this.val val; }* TreeNode(int val, Tre…

### 【数据结构】线性表--顺序表(二)

文章目录 1、什么是线性表2、线性表的基本操作3、顺序表3.1、顺序表的定义3.2、顺序表的实现方式&#xff1a;静态分配3.3、顺序表的实现方式&#xff1a;动态分配3.4、顺序表的特点3.5、顺序表的初始化与插入操作3.6、顺序表的删除与查询 1、什么是线性表 ​ 线性表是具有相同…

常用的 Ansible 模块

以下是一些常用的 Ansible 模块&#xff1a; - ping 模块&#xff1a;用于检测目标主机是否可达。 - file 模块&#xff1a;可以管理文件和目录&#xff0c;如创建、删除、修改权限等。 - copy 模块&#xff1a;用于将本地文件复制到远程主机。 - service 模块&#xff1a;管…

【配置】IT-Tools部署

github地址 docker运行如下&#xff0c;记得打卡端口 docker run -d --name it-tools --restart unless-stopped -p 9090:80 corentinth/it-tools:latestip:9090查看&#xff0c;很香大部分工具都有

【神经网络】矩阵乘法的应用详解

文章目录 一、多维数组使用NumPy创建和操作多维数组 二、矩阵乘法矩阵乘法的基本定义计算 2x2 矩阵的乘积矩阵形状的要求特殊情况&#xff1a;矩阵与向量的乘积 三、神经网络中的矩阵乘法神经网络的结构简介矩阵乘法在神经网络中的应用计算细节和NumPy的实现 一、多维数组 多维…

一键追爆款,GPT一键改文‌‍‬⁣⁡​⁤⁢​⁢⁡⁣‬‍‌​​‬ ​‍⁤‬ ‬⁡⁡⁡‍‌‬⁡⁡⁢‬⁤⁢⁢⁤​‍‌​​‬ ​⁣‌,绘唐3,绘唐工具

ai画影满足你的制作要求 一键追爆款&#xff0c;GPT一键改文 AI推文小说&漫画解说&解压混剪 人物定义&#xff0c;角色定义&#xff0c;lora转换&#xff0c;模型转换&#xff0c;可视化参考满足 一键追爆款 一键挂机生成&#xff0c;效果更精彩&#xff0c;使用更方…

mysql 其他类型转换为BIT

看官网说明,BIT没什么特殊之处。但实际操作却不能将任何其他类型字段转为BIT,下面两个都报语法错误 CAST(column AS BIT(1)) AS aa , CAST(column AS BIT) AS bb, BIT value则模式是VARBINARY b1 as cc, -- cc为VARBINARY类型 下面是《高性能MySQL(第四版)》中关于BIT类型的…

C++随手写一个打字练习软件TL(TypeLetters)附原码

C随手写一个打字练习软件TL&#xff08;TypeLetters&#xff09;附原码 说明 软件名称&#xff1a;TL&#xff08;TypeLetters&#xff09; 开发语言&#xff1a;C 适合人群&#xff1a;零基础小白或C学习者 软件功能&#xff1a;打字练习软件TL&#xff08;TypeLetters&#…

解双曲型非线性方程的Harden-Yee算法(TVD格式)

解双曲型非线性方程的Harden-Yee算法 先贴代码&#xff0c;教程后面有空再写 import matplotlib import math matplotlib.use(TkAgg) import numpy as np import matplotlib.pyplot as plt def Phiy(yy,epsi):#phi(y)if abs(yy) > epsi:phiyy abs(yy)else:phiyy (yy*yy…

国外在线教育系统源码,知识付费课程录制流程是什么样?

无论是从信息内容优化&#xff0c;还是知识产权保护的角度来看&#xff0c;“内容付费”都是一个有力的抓手&#xff0c;并且也一定是未来互联网发展的一个重要方向。与此同时&#xff0c;互联网技术的不断进步降低了“内容付费”的使用门槛&#xff0c;越来越多的人企图搭上这…

2024年华为OD机试真题-螺旋数字矩阵-Java-OD统一考试(C卷D卷)

题目描述: 疫情期间,小明隔离在家,百无聊赖,在纸上写数字玩。他发明了一种写法: 给出数字个数n和行数m(0 < n ≤ 999,0 < m ≤ 999),从左上角的1开始,按照顺时针螺旋向内写方式,依次写出2,3...n,最终形成一个m行矩阵。 小明对这个矩阵有些要求: 1.每行数字的…

2024年记录

kong docker 安装: kong docker 安装

C++ VScode: launch: program ...... dose not exist

VScode: launch: program … dose not exist 介绍 参考VS Code 配置 C/C 编程运行环境&#xff08;保姆级教程&#xff09;教程配置了VSCode。在配置launch.json适用多个.c 文件编译时&#xff0c;弹出下面错误。 原因和解决方法 是task.json 默认配置的问题。 默认的 cwd参…

【深度学习Labelme】使用Segment Anything Model (SAM)快速打标,labelme多边形转yolo txt框看看对不对

文章目录 windows安装环境打开labelme自动保存勾选上&#xff0c;保存图片数据不要勾选选SAM精准模型&#xff0c;然后打开图片路径&#xff0c;然后点击创建AI多边形&#xff1a;鼠标点击确认物体控制点&#xff0c;确认完成后&#xff0c;双击鼠标完成选取&#xff0c;并给上…

利用OpenShift的ImageStream部署临时版本

公司是港企&#xff0c;项目都部署在OpenShift上统一管理&#xff0c;因为运行环境为香港网络(外网)&#xff0c;配置、中间件等大陆无法直接访问联通。因此在大陆开发时&#xff0c;测试是个很大的问题。为了避免往Git上频繁提交未确定可用的版本&#xff0c;选择用利用OpenSh…

知识付费系统方面的源码,如何提高培训成果转化的可能性?重心应放在哪?

培训成果转化对于一个教育机构来说是非常关键的&#xff0c;因为不管是学员的成果还是员工的培训&#xff0c;它的目的性都非常的关键&#xff0c;但是如何提高成果转化的可能性?这个在很大程度上来说&#xff0c;可能大家还存有疑问。 一、提高培训成果转化的可能性 成人学习…

嵌入式学习70-复习(wireshark使用和http协议)

--------------------------------------------------------------------------------------------------------------------------------- wireshark 1.sudo wireshark 2.选择 any &#xff0c; 3.搜索 http/tcp 54 为 发送的数据包 58 回复的数据包 请求报文 请求报文…

【NLP练习】使用seq2seq实现文本翻译

使用seq2seq实现文本翻译 &#x1f368; 本文为&#x1f517;365天深度学习训练营 中的学习记录博客&#x1f356; 原作者&#xff1a;K同学啊 from __future__ import unicode_literals, print_function, division from io import open import unicodedata import string impo…

05、Kafka 操作命令

05、Kafka 操作命令 1、主题命令 &#xff08;1&#xff09;创建主题 kafka-topics.sh --create --bootstrap-server 192.168.135.132:9092,192.168.135.133:9092,192.168.135.134:9092 --topic test1 --partitions 4 --replication-factor 3–bootstrap-server&#xff1a;…

Gradient发布支持100万token的Lllama3,上下文长度从8K扩展到1048K

前言 近日Gradient公司在Crusoe Energy公司的算力支持下&#xff0c;开发了一款基于Llama-3的大型语言模型。这款新模型在原Llama-3 8B的基础上&#xff0c;将上下文长度从8000 token大幅扩展到超过104万token。 这一创新性突破&#xff0c;展现了当前SOTA大语言模型在长上下…