做360网站优化快/什么是外链

做360网站优化快,什么是外链,南昌企业网站开发,鞍山做百度网站一年多少钱本篇通过将句子数组转换为句子的向量表示,并通过平均池化和归一化处理,生成适合机器学习或深度学习任务使用的特征向量为例,演示通过NodeJS 的方式调用Xenova/all-MiniLM-L6-v2 的过程。 关于 all-MiniLM-L6-v2 的介绍,可以参照上…

本篇通过将句子数组转换为句子的向量表示,并通过平均池化和归一化处理,生成适合机器学习或深度学习任务使用的特征向量为例,演示通过NodeJS 的方式调用Xenova/all-MiniLM-L6-v2 的过程。

关于 all-MiniLM-L6-v2 的介绍,可以参照上一篇:

一篇吃透模型:all-MiniLM-L6-v2

可以访问 Hugging Face的状况

Hugging 的站点是:

https://huggingface.co/

如果可以访问该站点的话,则直接安装 Hugging Face 的 Transformers 库。

npm i @huggingface/transformers

之后就可以编写代码:

import { pipeline } from '@huggingface/transformers';// Create a feature-extraction pipeline
const extractor = await pipeline('feature-extraction', 'Xenova/all-MiniLM-L6-v2');// Compute sentence embeddings
const sentences = ['This is an example sentence', 'Each sentence is converted'];
const output = await extractor(sentences, { pooling: 'mean', normalize: true });
console.log(output);

上面代码作用就是加载模型,将语句转换为向量,细节的部分下面再介绍,执行的效果如下:

到此,就成功的运行了。

但是如果无法访问Hugging Face 的化, 运行就会出现如下错误:

PS D:\devworkspace\vs\ai_ency\ai_nodejs_ency> node .\src\llm\minilm\huggingface-minilm.js
node:internal/deps/undici/undici:12502Error.captureStackTrace(err, this);^TypeError: fetch failedat node:internal/deps/undici/undici:12502:13at processTicksAndRejections (node:internal/process/task_queues:95:5)at runNextTicks (node:internal/process/task_queues:64:3)at process.processImmediate (node:internal/timers:449:9)at async getModelFile (file:///D:/devworkspace/vs/ai_ency/ai_nodejs_ency/node_modules/@huggingface/transformers/dist/transformers.mjs:31325:24)at async getModelJSON (file:///D:/devworkspace/vs/ai_ency/ai_nodejs_ency/node_modules/@huggingface/transformers/dist/transformers.mjs:31427:18)at async Promise.all (index 0)at async loadTokenizer (file:///D:/devworkspace/vs/ai_ency/ai_nodejs_ency/node_modules/@huggingface/transformers/dist/transformers.mjs:24731:18)at async AutoTokenizer.from_pretrained (file:///D:/devworkspace/vs/ai_ency/ai_nodejs_ency/node_modules/@huggingface/transformers/dist/transformers.mjs:29020:50)at async Promise.all (index 0) {[cause]: ConnectTimeoutError: Connect Timeout Errorat onConnectTimeout (node:internal/deps/undici/undici:6635:28)at node:internal/deps/undici/undici:6587:50at Immediate._onImmediate (node:internal/deps/undici/undici:6617:37)at process.processImmediate (node:internal/timers:478:21) {code: 'UND_ERR_CONNECT_TIMEOUT'}
}

因为默认会从Hugging Face下载模型文件,无法下载,报上面的fetch 获取错误, 有解决方法吗?

答案就是从ModelScope 下载模型文件。

从 ModelScope 下载模型文件

ModelScope上面也维护了 Xenova/all-MiniLM-L6-v2 的模型文件, 地址是:

https://www.modelscope.cn/models/Xenova/all-MiniLM-L6-v2/files

但是,ModelScope提供了Python的库,却没有NodeJS的库,所以无法直接通过ModelScope的来下载,但是可以下载模型的文件,下载方式就是先安装ModelScope,然后用ModelScope 的命令行下载模型文件:

modelscope download --model Xenova/all-MiniLM-L6-v2

下载后的文件目录如下图:

下载后,将这个目录中的内容复制到NodeJS 项目的node_modules 目录下的 node_modules@huggingface\transformers.cache 目录下, 这也是Hugging Face下载模型文件的目录,结构如下图:

复制完成之后,就可以正常运行了。

补充介绍: Transformers 是什么?

Transformers 是由 Hugging Face 团队开发的开源 库,专注于提供基于 Transformer 架构 的预训练模型和工具。它简化了自然语言处理(NLP)任务的实现流程,支持文本生成、翻译、分类、问答等场景,并兼容 PyTorch、TensorFlow 等深度学习框架。

Transformers 有Python 和 NodeJS 两个版本。

如果Hugging Face无法访问

  • Python 版本可以使用ModelScope提供的库
  • NodeJS

补充介绍: 代码详细解释

const extractor = await pipeline(...) 是使用 Hugging Face Transformers.js 库的核心方法之一,用于创建一个 预训练模型的推理管道。通过 pipeline,可以轻松加载模型并执行各种任务(如文本分类、特征提取、问答等)。


pipeline 的作用是:

  1. 加载模型:从本地或远程加载预训练模型和分词器。
  2. 封装推理逻辑:将模型的输入预处理、推理和后处理逻辑封装成一个简单的接口。
  3. 执行任务:根据任务类型(如 feature-extractiontext-classification 等),对输入数据进行处理并返回结果。

参数详解

pipeline 方法的完整签名如下:

const pipeline = await transformers.pipeline(task, model, options);
1. task(必需)

指定要执行的任务类型。常见的任务包括:

  • feature-extraction:特征提取(生成句子或词的嵌入向量)。
  • text-classification:文本分类。
  • question-answering:问答任务。
  • translation:翻译任务。
  • text-generation:文本生成。
  • 其他任务:如 summarizationfill-mask 等。

示例

const extractor = await pipeline('feature-extraction');

2. model(可选)

指定要加载的模型。可以是以下之一:

  • 模型名称:从 Hugging Face Hub 加载的模型名称(如 Xenova/all-MiniLM-L6-v2)。
  • 本地路径:本地模型文件的路径(如 ./custom_model)。
  • 未指定:如果不提供,库会加载默认模型。

示例

// 从 Hugging Face Hub 加载模型
const extractor = await pipeline('feature-extraction', 'Xenova/all-MiniLM-L6-v2');// 从本地路径加载模型
const extractor = await pipeline('feature-extraction', './custom_model');

3. options(可选)

一个配置对象,用于自定义模型加载和推理行为。常见选项包括:

选项类型描述
local_files_onlyboolean是否仅从本地加载模型(默认 false)。设置为 true 可禁用网络请求。
revisionstring模型版本(如 main 或特定 commit hash)。
cache_dirstring缓存目录路径。设置为 null 可禁用缓存。
quantizedboolean是否加载量化模型(默认 false)。
progress_callbackfunction加载模型时的进度回调函数。
devicestring推理设备(如 cpugpu)。
poolingstring特征提取时的池化方式(如 meanmax)。
normalizeboolean是否对特征向量进行归一化(默认 false)。

示例

const extractor = await pipeline('feature-extraction', 'Xenova/all-MiniLM-L6-v2', {local_files_only: true, // 仅从本地加载revision: 'main',       // 使用主分支版本pooling: 'mean',        // 使用均值池化normalize: true,        // 对输出向量归一化
});

返回值

pipeline 返回一个 推理函数,可以直接用于处理输入数据。具体返回值类型取决于任务类型。

示例

// 特征提取任务
const extractor = await pipeline('feature-extraction');// 使用推理函数
const sentences = ['This is an example sentence'];
const embeddings = await extractor(sentences, { pooling: 'mean' });
console.log(embeddings);


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

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

相关文章

【C++学习篇】智能指针

目录 1. 智能指针的使用场景分析 2. RAII和智能指针的设计思路 3. C标准库智能指针的使用 4.shared_ptr和weak_ptr 4.1shared_ptr的循环引用问题 4.2 weak_ptr 1. 智能指针的使用场景分析 下⾯程序中我们可以看到,new了以后,我们也delete了&#xff0c…

IntelliJ IDEA集成MarsCode AI

IntelliJ IDEA集成MarsCode AI IDEA中安装插件 安装完毕之后登录自己的账号 点击链接,注册账号 https://www.marscode.cn/events/s/i5DRGqqo/ 可以选择不同的模型

Python学习(十四)pandas库入门手册

目录 一、安装与导入二、核心数据结构2.1 Series 类型(一维数组)2.2 DataFrame 类型(二维数组) 三、数据读取与写入3.1 读取 CSV 和 Excel 文件3.2 写入数据 四、数据清洗与处理4.1 处理缺失值4.2 数据筛选4.3 数据排序 五、数据分…

【Python 数据结构 4.单向链表】

目录 一、单向链表的基本概念 1.单向链表的概念 2.单向链表的元素插入 元素插入的步骤 3.单向链表的元素删除 元素删除的步骤 4.单向链表的元素查找 元素查找的步骤 5.单向链表的元素索引 元素索引的步骤 6.单向链表的元素修改 元素修改的步骤 二、Python中的单向链表 ​编辑 三…

第1章:项目概述与环境搭建

第1章:项目概述与环境搭建 学习目标 了解YunChangAction灵感记录应用的整体架构和功能掌握SwiftUI开发环境的配置方法创建项目基础结构并理解文件组织方式实现应用的启动屏幕和基本主题设置 理论知识讲解 灵感记录应用概述 灵感记录应用是一种专门设计用来帮助…

全球首创!微软发布医疗AI助手,终结手写病历时代

今天凌晨,微软发布了医疗界首个用于临床工作流程的AI助手Microsoft Dragon Copilot。 Dragon Copilot是基于语音文本的混合架构,能够将医生的语音或临床口述内容实时转换为文本。例如,医生可以通过语音输入患者的病历信息、医嘱或诊断结果&a…

[自动驾驶-传感器融合] 多激光雷达的外参标定

文章目录 引言外参标定原理ICP匹配示例参考文献 引言 多激光雷达系统通常用于自动驾驶或机器人,每个雷达的位置和姿态不同,需要将它们的数据统一到同一个坐标系下。多激光雷达外参标定的核心目标是通过计算不同雷达坐标系之间的刚性变换关系&#xff08…

Blazor-路由模板(下)

路由约束 类型约束 我们这里使用{id:int}限制路由&#xff0c;id为int类型&#xff0c;并且路由参数 id 对应的 Id 属性也必须是 int 类型。我们试试能否正常访问 page "/demoPage/{id:int}" <h3>demoPage</h3> <h2>路由参数Id&#xff1a;Id&l…

多线程-JUC源码

简介 JUC的核心是AQS&#xff0c;大部分锁都是基于AQS扩展出来的&#xff0c;这里先结合可重入锁和AQS&#xff0c;做一个讲解&#xff0c;其它的锁的实现方式也几乎类似 ReentrantLock和AQS AQS的基本结构 AQS&#xff0c;AbstractQueuedSynchronizer&#xff0c;抽象队列…

通过多线程获取RV1126的AAC码流

目录 一RV1126多线程获取音频编码AAC码流的流程 1.1AI模块的初始化并使能 1.2AENC模块的初始化 ​​​​​​​1.3绑定AI模块和AENC模块 ​​​​​​​1.4多线程获取每一帧AAC码流 ​​​​​​​1.5每个AAC码流添加ADTSHeader头部 ​​​​​​​1.6写入具体每一帧AAC的…

java后端开发day27--常用API(二)正则表达式爬虫

&#xff08;以下内容全部来自上述课程&#xff09; 1.正则表达式&#xff08;regex&#xff09; 可以校验字符串是否满足一定的规则&#xff0c;并用来校验数据格式的合法性。 1.作用 校验字符串是否满足规则在一段文本中查找满足要求的内容 2.内容定义 ps&#xff1a;一…

Pytorch中的主要函数

目录 一、torch.manual_seed(seed)二、torch.cuda.manual_seed(seed)三、torch.rand(*size, outNone, dtypeNone, layouttorch.strided, deviceNone, requires_gradFalse)四、给大家写一个常用的自动选择电脑cuda 或者cpu 的小技巧五、torch.version.cuda&#xff1b;torch.bac…

基于PyTorch的深度学习3——基于autograd的反向传播

反向传播&#xff0c;可以理解为函数关系的反向传播。

设备管理系统功能与.NET+VUE(IVIEW)技术实现

在现代工业和商业环境中&#xff0c;设备管理系统&#xff08;Equipment Management System&#xff0c;简称EMS&#xff09;是确保设备高效运行和维护的关键工具。本文采用多租户设计的设备管理系统&#xff0c;基于.NET后端和VUE前端&#xff08;使用IVIEW UI框架&#xff09…

9-Agent大模型中工作流的使用方法分析

目录 关键词 摘要 速览 配置插件进行新闻内容查找的工作流设置 自动化调用用户输入变量的插件配置教程 配置大模型以整理并简要输出新闻内容 新闻内容总结功能调试与优化 搭建与发布工作流优化布局的流程详解 创建和配置智能体工作流程 调试页面与工作流配置演示 思…

记一次:泛微OA集成Mybatis后 insert/update执行成功,但未真正插入或修改数据

背景&#xff1a;通过Mybatis插入数据或更新数据&#xff0c;显示插入/更新成功&#xff0c;查询数据库&#xff0c;发现并未插入成功、数据也没更新成功。下面是Mapper文件 public interface TestOrmMapper {int insertByTest(Param("requestId") Integer requestI…

【大模型系列篇】国产开源大模型DeepSeek-V3技术报告解析

DeepSeek-V3技术报告 目录 DeepSeek-V3技术报告 1. 摘要 2. 引言 3. DeepSeek V3 架构 3.1 基础架构 3.1.1. 多头潜在注意力 3.1.2. DeepSeekMoE和无辅助损失的负载均衡 3.2 多令牌预测 4. 基础设施 4.1 计算集群 4.2 训练框架 4.2.1. DualPipe算法与计算通信协同优…

负载均衡 - 一致性hash算法

构建场景 假如我们有三台缓存服务器编号node0、node1、node2&#xff0c;现在有3000万个key&#xff0c;希望可以将这些个key均匀的缓存到三台机器上&#xff0c;你会想到什么方案呢&#xff1f; 我们可能首先想到的方案&#xff0c;是取模算法hash&#xff08;key&#xff0…

洛谷P1334

题目如下 思路&#xff1a; 每次选择最短的两块木板进行合并&#xff0c;直到只剩下一块木板。使用最小堆&#xff08;优先队列&#xff09;来实现这一过程。使用最小堆&#xff1a; 将所有木板的长度放入最小堆&#xff08;优先队列&#xff09; 每次从堆中取出两块最短的木…

总结(尚硅谷Vue3入门到实战,最新版vue3+TypeScript前端开发教程)

1.Vue简介 2020年9月18日&#xff0c;Vue.js发布版3.0版本&#xff0c;代号&#xff1a;One Piece 1.1.性能的提升 打包大小减少41%。 初次渲染快55%, 更新渲染快133%。 内存减少54%。 1.2.源码的升级 使用Proxy代替defineProperty实现响应式。 重写虚拟DOM的实现和Tree-Shak…