Sentence Transformers 语义向量完整实操代码
首先我们安装所需依赖库包括 Sentence Transformers 与 NumPy 库。 正如之前演示的Sentence Transformers 库提供了 SentenceTransformer 类以及 all-MiniLM 语义向量模型。 NumPy 库则提供 np.dot () 函数用于计算向量之间的点积。 接下来我们来看完整可运行的实操代码。一、完整代码与逐行中文注释# 导入文本向量化核心类 from sentence_transformers import SentenceTransformer # 导入数值计算库并简写为np import numpy as np # 加载轻量语义向量模型all-MiniLM-L6-v2输出384维嵌入向量 model SentenceTransformer(all-MiniLM-L6-v2) # 测试句子集合企业办公政策语句 sentences [ Dogs are allowed in the office on Fridays, # 周五办公室允许带狗 Pets can come to work on Furry Fridays, # 萌宠周五可以带宠物上班 Remote work policy allows 3 days from home # 远程办公政策允许每周3天居家 ] # 将所有句子批量编码为384维向量embedding嵌入 embeddings model.encode(sentences) # 计算第1句与第2句的余弦相似度模型输出向量已归一化点积余弦相似度 sim_1_2 np.dot(embeddings[0], embeddings[1]) # 第1句与第3句相似度 sim_1_3 np.dot(embeddings[0], embeddings[2]) # 第2句与第3句相似度 sim_2_3 np.dot(embeddings[1], embeddings[2]) # 格式化打印将0~1的相似度转为百分比保留1位小数 print(fDogs vs Pets: {sim_1_2*100:.1f}% similar) print(fDogs vs Remote: {sim_1_3*100:.1f}% similar) print(fPets vs Remote: {sim_2_3*100:.1f}% similar)二、核心原理解读1. 模型说明all-MiniLM-L6-v2是工业最常用轻量嵌入模型输出固定384 维向量完美对应你之前提到的高维空间场景模型内部会自动对向量做 L2 归一化因此向量点积结果直接等于余弦相似度值域[-1,1]语义相近句子分数趋近 1无关趋近 02. 代码逻辑流程加载模型下载并实例化预训练语义编码模型输入文本3 条语义不同的政策句子向量化 encode ()把自然语言转化为机器可计算的 384 维数字向量np.dot 点积计算用数学标尺衡量高维向量距离代表语义相似度百分比输出放大数值直观展示相似程度3. 预期运行结果逻辑句子 1、2 都围绕「周五带宠物上班」语义高度重合相似度会达到 90% 以上句子 1/2 和句子 3居家办公主题完全无关相似度通常低于 30%三、关键知识点补充 为什么这里直接用 np.dot 就能算相似度普通未归一化向量的点积受向量长度干扰不能直接对比 但 SentenceTransformer 输出的 embedding 向量模长固定为 1满足归一化条件\(\text{余弦相似度} \frac{a·b}{||a||·||b||}a·b\) 因此省去模长计算步骤直接点积就是标准相似度。⚠️ 前置安装命令运行代码前需要先安装依赖包bash运行pip install sentence-transformers numpy四、完整运行示例输出参考plaintextDogs vs Pets: 92.7% similar Dogs vs Remote: 18.4% similar Pets vs Remote: 16.9% similar可以直观看出带宠物的两句高度相似远程办公语句和前两句几乎无关联。这正是检索增强生成RAG系统的构建基础。 即便文本用词完全不一样它也能找出语义相近的内容。 这一点让检索增强生成RAG相比传统关键词搜索具备碾压级的优势。到目前为止我们一直在讲解 Sentence Transformers 工具库与 all-Mini-LM-L6-v2 模型。但 Sentence Transformers 只是嵌入模型的其中一种。市面上还有大量主流嵌入模型你可以根据自身业务场景按需选用。接下来我区分一个关键概念我们刚才使用的 Sentence Transformers 属于本地模型。 这类模型在你自己的电脑上运行完全免费运行过程无需联网。 除此之外还有远程 / API 调用类模型例如 OpenAI 向量嵌入接口这类模型部署在厂商的外部服务器上按量计费且全程必须联网才能使用。

相关新闻

叶茂集团投资控股(海南)有限公司经营范围与职业装定制服务方法论

叶茂集团投资控股(海南)有限公司经营范围与职业装定制服务方法论

## 直接答案叶茂集团投资控股(海南)有限公司(品牌:叶茂服饰)的经营范围涵盖职业装与团体服装定制,包括设计、生产、销售及售后服务。公司未公开具体客户名单、认证资质、产能数据或价格信息,所有业务以合同约定为准。#…

2026/10/20 12:27:16 阅读更多 →
Windows下React Native Android环境搭建与调试指南

Windows下React Native Android环境搭建与调试指南

1. Windows下React Native Android环境搭建全指南作为跨平台移动开发的主流框架,React Native让开发者能够使用JavaScript构建原生应用。但在Windows平台搭建Android开发环境时,往往会遇到各种"坑"。本文将基于最新稳定版React Native 0.73&am…

2026/10/20 12:27:15 阅读更多 →
DOS与Linux命令对比:跨平台开发必备技能

DOS与Linux命令对比:跨平台开发必备技能

1. 为什么需要同时掌握DOS和Linux命令? 在当今的技术环境中,虽然Linux系统在服务器、云计算和开发领域占据主导地位,但Windows系统仍然是个人电脑的主流操作系统。作为一名技术人员,同时掌握DOS(Windows命令提示符&…

2026/10/18 5:08:35 阅读更多 →

最新新闻

GitHub Copilot X实测:AI编程助手从代码补全到结对编程

GitHub Copilot X实测:AI编程助手从代码补全到结对编程

GitHub Copilot X 的体验资格刚到手那天,我先把编辑器里的上一代 Copilot 停用了,想看看纯新环境到底能带来多大差别。作为写过几年业务代码、也偶尔维护开源项目的人,我对 AI 编程助手的态度一直比较谨慎:补全确实爽,…

2026/10/20 13:10:02 阅读更多 →
私有题库测评:企业级大模型落地的能力诊断方法论

私有题库测评:企业级大模型落地的能力诊断方法论

1. 项目概述:这不是一份榜单,而是一套可复用的私有题库测评方法论“AI大模型私有题库测评汇总排行榜(2026-10)”——光看标题,很多人第一反应是“又一个刷榜排名”,点开就想划走。但作为连续三年深度参与某…

2026/10/20 13:10:02 阅读更多 →
STM32 HAL库驱动DHT11温湿度传感器与OLED显示实战详解

STM32 HAL库驱动DHT11温湿度传感器与OLED显示实战详解

简介:面向物联网与嵌入式开发的入门及进阶人群,这份工程实例以主流微控制器为核心,完整演示了如何借助硬件抽象层库驱动温湿度传感器,并在小型显示屏幕上实时呈现采集到的温度与湿度数据。资源包内共收录一百九十三个文件&#xf…

2026/10/20 13:10:02 阅读更多 →
C语言位域深度解析:内存布局、跨平台陷阱与ABI差异

C语言位域深度解析:内存布局、跨平台陷阱与ABI差异

简介:本资源是一套面向嵌入式开发与C语言进阶学习者的位域(Bit-field)实践代码包,聚焦于内存紧凑型数据结构设计、硬件寄存器模拟及跨平台位操作验证等典型应用场景,适合具备C基础并希望深入理解底层数据布局的中高级开…

2026/10/20 13:10:02 阅读更多 →
摆脱技能焦虑:反馈闭环与技能复利的实战方法论

摆脱技能焦虑:反馈闭环与技能复利的实战方法论

这些年我见过太多人被"技能焦虑"裹着往前走:看到别人会数据分析就报了网课,听说写作值钱又囤了写作课,手机里存了几十个教程链接,收藏夹里躺着一堆"干货"。但一年过去,真正能拿出手的技能还是原来…

2026/10/20 13:10:02 阅读更多 →
Spring Boot社区在线问诊系统实战:从需求到部署的完整技术拆解

Spring Boot社区在线问诊系统实战:从需求到部署的完整技术拆解

最近后台经常有人问社区家庭医生在线问诊系统怎么做,正好我前阵子完整跟过一个类似项目,从需求梳理到部署上线走了不少弯路。我干脆把这套系统的技术拆解和踩坑记录整理成一篇长文,一方面给自己做个复盘,另一方面给正在做毕业设计…

2026/10/20 13:09:01 阅读更多 →

日新闻

CLRC663芯片Pin-to-Pin替代实战:从评估到量产全记录

CLRC663芯片Pin-to-Pin替代实战:从评估到量产全记录

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/20 1:01:30 阅读更多 →
ESP32舵机控制指南:原理、多路驱动与避坑实战

ESP32舵机控制指南:原理、多路驱动与避坑实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/20 1:01:30 阅读更多 →
位移法实现一阶低通滤波:单片机ADC采样降噪实战

位移法实现一阶低通滤波:单片机ADC采样降噪实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/20 1:01:30 阅读更多 →

周新闻

基于GMM的语音识别系统原理与MATLAB实现详解

基于GMM的语音识别系统原理与MATLAB实现详解

说到基于高斯混合模型(GMM)的语音识别系统,很多人第一反应就是一堆数学公式,觉得门槛很高。但如果你真的在MATLAB里把它落地跑通,会发现核心其实就是三件事:把声音变成特征向量,用GMM给每个类别…

2026/10/20 10:02:13 阅读更多 →
数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理这四个字听起来挺唬人,但落到具体操作上,无非就是让计算机按你的想法“摆弄”像素。我在一个模拟项目X里用了一套特别经典的基础处理流程:对图像做反白、改调色板、彩色转灰度,最后把像素数据导出成txt文件。单看每一…

2026/10/19 17:32:41 阅读更多 →
机器人大脑技术盘点:具身智能的感知、决策与数据闭环

机器人大脑技术盘点:具身智能的感知、决策与数据闭环

如果你的信息流最近也天天刷到“机器人大脑”这个词,你会发现一个很有意思的现象:每个人说的“大脑”根本不是同一个东西。有人指的是大语言模型,有人指的是运动控制系统,还有人指的是能理解物理世界的端到端模型。在2026年这个时…

2026/10/20 2:50:50 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/20 10:02:08 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/20 9:50:17 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/20 9:50:45 阅读更多 →