当前位置: 首页 > news >正文

二、LangChain之认识嵌入式模型

三、认识嵌入模型

1. 什么是嵌入模型?

大语言模型是生成式模型。它理解输入并生成新的文本(回答问题、写文章)。它内部实际上也使用 嵌入技术来理解输入,但最终目标是“创造”。

而嵌入模型(Embedding Model)是表示型模型。它的目标不是生成文本,而是为输入的文本创建 一个最佳的、富含语义的数值表示(向量)。

由于计算机天生擅长处理数字,但不理解文字、图片的含义。嵌入(Embedding)的核心思想就是

将 人类世界的符号(如单词、句子、产品、用户、图片)转换为计算机能够理解的数值形式(即向量, 本质上是一个数字列表),并且要求这种转换能够保留原始符号的语义和关系。

我们可以把它想象成一个翻译过程,把人类语言“翻译”成计算机的“数学语言”。

结论:既然是“数学语言”,那么我们可以用数学的方式来比较向量,从而达到【度量语义】的目 的!

2. 嵌入模型应用场景

根据嵌入的特性,由此延伸出了许多嵌入模型在 AI 应用的使用场景:

• 语义搜索(Semantic Search)

传统搜索:依赖关键词匹配(搜 “苹果” ,只能找到包含 “苹果” 这个词的文档)。

语义搜索:则能将查询和文档都转换为向量通过计算向量间的相似度来找到相关内容,即使文档中 没有查询的确切词汇也能被检索到。

如下图所示,即使知识库中并未直接出现 “笔记本电脑无法充 电” 这个词组,语义搜索也能通过向量相似度精准地找到该文档。

• 检索增强生成(Retrieval-Augmented Generation, RAG)

这是当前大语言模型应用的核心模式。当用户向 LLM 提问时,系统首先使用嵌入模型在知识库(如公 司内部文档)中进行语义搜索,找到最相关的内容,然后将这些内容和问题一起交给 LLM来生成答 案。这极大地提高了答案的准确性和时效性。

• 推荐系统(Recommendation Systems)

将用户(根据其历史行为、偏好)和物品(商品、电影、新闻)都转换为向量。喜欢相似物品的用 户,其向量会接近;相似的物品,其向量也会接近。通过计算用户和物品向量的相似度,就可以进行 精准推荐

• 异常检测(Anomaly Detection)

正常数据的向量通常会聚集在一起。如果一个新数据的向量远离大多数向量的聚集区,它就可能是一 个异常点(如垃圾邮件、欺诈交易)。

例如:一个信用卡交易反欺诈系统,通过学习海量正常交易记录(如金额、地点、时间、商户类型等 特征的向量)形成了“正常交易”的向量聚集区。当一笔新的交易发生时,系统将其转换为向量。如 果该向量出现在“正常聚集区”之外(例如,一笔发生在通常消费地之外的高额交易),系统则会将 其标记为潜在的欺诈交易并进行警报。

3. 主流的嵌入模型

• text-embedding-3-large (OpenAI):OpenAI 最强大的英语和非英语任务嵌入模型。默认维度 3072,可降维如1024维;输入令牌长度支持为8192

• Qwen3-Embedding-8B (阿里巴巴) :开源模型,支持100+种语言;上下文长度 32k;嵌入维度最 高 4096,支持用户定义的输出维度,范围从 32 到 4096。推理需要一定的GPU计算资源(例如, 至少需要16GB以上显存的GPU才能高效运行)。

• gemini-embedding-001 (Google) :支持100+种语言;默认维度 3072,可选降维版本:1536维 或 768维;输入令牌长度支持为2048

• Huggingface 的 MTEB 评测:https://huggingface.co/spaces/mteb/leaderboard

Huggingface 的 MTEB(Massive Multilingual Text Embedding Benchmark)评测,是业界比较公 认的标准

4. 嵌入模型接入方式

嵌入模型接入和使用方式根据模型类型(开源或闭源)有根本性的不同。下图清晰地展示了两种典型 的接入流程:

4.1 API 接入(闭源)

这是最快速、最简单的方式,无需管理任何基础设施。只需要向模型提供商的服务端发送一个 HTTP 请求即可。 适用模型: text-embedding-3-large , gemini-embedding-001 等。

通用步骤:

1. 注册账号并获取API Key:在对应的云服务平台(如OpenAI Platform, Google AI Studio/Vertex AI)上注册账号,获取用于身份验证的API Key。

2. 安装 SDK 或构造 HTTP请求:使用官方提供的SDK(如 openai , google-generativeai ) 或直接构造HTTP请求。

3. 调用API并处理响应:发送文本,接收返回的JSON格式的向量数据。

示例1:发起 HTTP 请求

curl https://api.openai.com/v1/embeddings -H "Content-Type: application/json" -H "Authorization: Bearer $OPENAI_API_KEY" -d '{ "input": "Your text string goes here", "model": "text-embedding-3-small" }'

响应包含嵌入向量(浮点数列表)以及一些其他元数据:

{ "object": "list", "data": [ { "object": "embedding", "index": 0, "embedding": [ -0.006929283495992422, -0.005336422007530928, -4.547132266452536e-05, -0.024047505110502243 ], } ], "model": "text-embedding-3-small", "usage": { "prompt_tokens": 5, "total_tokens": 5 } }

示例2:接入 SDK

安装库:pip install openai

# 使用 OpenAI Python SDK from openai import OpenAI import os # 1. 设置 API Key client = OpenAI(api_key="your-api-key") # 2. 准备输入文本 text = "这是一段需要转换为向量的文本。" # 3. 调用 API response = client.embeddings.create( model="text-embedding-3-large", # 指定模型 input=text, dimensions=1024 # 可选:指定输出维度,例如从3072降维到1024 ) # 4. 获取向量 embedding = response.data[0].embedding print(f"向量维度:{len(embedding)}") print(embedding)

4.2 本地部署(开源)

这种方式需要自行准备计算资源(通常是带有GPU的机器)来运行模型,适合对数据隐私、成本和控 制权有更高要求的场景。

适用模型: Qwen3-Embedding-8B 等。

通用步骤:

1. 环境准备:准备一台有足够 GPU 显存的服务器(对于Qwen3-Embedding-8B,需要至少16GB以 上显存)。

2. 模型下载:从 Hugging Face 等模型仓库下载模型权重文件和配置文件。

3. 代码集成:使用像 transformers 这样的库来加载模型并进行推理。

在实际应用中,直接调用嵌入模型获取结果,与直接调用原生 LLM 存在相似的问题:无论是通过 API 还是本地部署获得向量,下一步通常都是将它们存入向量数据库(如Chroma, Milvus, Pinecone等) 以供后续检索。为了便于切换不同的嵌入模型,很多项目会使用像 LangChain 这样的框架,它们提供 了统一的嵌入模型接口。

四、模型平台

1. Hugging Face(国外)

Hugging Face 是一个知名的开源库和平台,该平台以其强大的 Transformer 模型库和易用的 API 而闻 名,为开发者和研究人员提供了丰富的预训练模型、工具和资源。对于从事 AI 研究的人来说,其重要 性不亚于 GitHub。

官网:https://huggingface.co/

2. 魔搭社区(国内)

魔搭(ModelScope)是由阿里巴巴达摩院推出的开源模型即服务(MaaS)共享平台,汇聚了计算机 视觉、自然语言处理、语音等多领域的数千个预训练 AI 模型。其核心理念是"开源、开放、共创",通 过提供丰富的工具链和社区生态,降低 AI 开发门槛,尤其为企业本地私有化部署提供了一条高效路 径。

官网:https://www.modelscope.cn/(界面和 HuggingFace 设计的基本一样

http://www.rkmt.cn/news/1405225.html

相关文章:

  • 别再拍脑袋做功能了!一套科学的App开发流程,帮你省下几十万
  • 体验Taotoken官方价折扣活动为高频API调用者带来的实际节省
  • Windows驱动管理利器:Driver Store Explorer完整使用指南
  • 精通League Akari:5大实战技巧深度解析
  • 水务SCADA系统标准化与模块化升级:从数据孤岛到统一平台的实战架构
  • Bloom-1b7快速上手:3分钟完成文本生成的超简单教程(附完整代码示例)
  • 观察使用 Taotoken Token Plan 套餐后月度 API 成本的变化趋势
  • 为Hermes Agent配置自定义Provider并指向Taotoken
  • 阿西米尼Asciminib对比博舒替尼治疗慢性髓性白血病的动脉闭塞事件及胰腺炎风险不同
  • 嵌入式视觉DNN模型选型实战:基于加权FoM的量化评估方法
  • 深度解析:FactoryBluePrints如何构建戴森球计划最高效工厂蓝图库
  • 超宽带PLL环路增益补偿:基于PFD增益调制驯服毫米波频率合成器
  • 告别枯燥教程!用Unity Tilemap复刻《超级马里奥》第一关,手把手教你搭建童年回忆
  • 基于JIT快照的Flink算子级动态伸缩:实现秒级弹性与零感知扩缩容
  • K-medoids采样技术:解决医疗数据不平衡的智能方案
  • 为什么我的 DPDK 程序偶尔“瞬间卡死”几十毫秒?一次排查让我彻底理解 TLB shootdown
  • Visio导出清晰合适的pdf插入到Latex模板中
  • 初创公司如何利用Taotoken的Token Plan套餐应对波动性AI需求
  • 如何在iOS 14.0-16.6.1设备上快速安装TrollStore:TrollInstallerX完整指南
  • 5分钟快速上手Hap视频编解码器:为多媒体项目注入GPU加速动力
  • Cimoc数据库设计:GreenDAO在漫画管理中的应用实践指南
  • re2g-reranker-nq入门指南:5分钟快速上手IBM的NQ重排序模型
  • 2026石家庄鲜花花束消费现状及选购实用全攻略 - 百航
  • 跑遍张家口四个区!金裕恒黄金回收凭什么让我把另外两家都比下去了? - 润富黄金珠宝行
  • 086.YOLOv7训练技巧与部署优化:从炼丹到落地的实战笔记
  • 空地通信中基于位置辅助的低复杂度大规模MIMO预编码方案
  • RSCAAT:基于递归重映射的缓存侧信道攻击防御机制解析
  • 3分钟上手!用Ultralytics YOLO打造你的第一个AI视觉应用
  • GHelper完整指南:3分钟掌握华硕笔记本终极性能优化
  • 拒绝文字搬家:答辩PPT精炼公式