news 2026/6/10 18:08:27

LangChain嵌入:从原理到实践

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
LangChain嵌入:从原理到实践

嵌入

嵌入(Embedding)可以将文本转换为向量表示,从而实现文本的语义分析和相似度计算

简单来说,就是给每个文本分配一个"数字身份证",相似的文本会有相似的"身份证号码"

应用场景

日常我们接触到的实际的场景应用,比如:

  • 智能搜索:比如在文档库中查找与查询语义相关的内容,而不仅仅是关键词匹配
  • 问答系统:找到与用户问题最相关的文档片段作为答案依据
  • 推荐系统:根据用户兴趣向量推荐相关内容

代码实现

示例提供了两个例子,一个是文本对比,一个是文本搜索

from langchain_huggingface import HuggingFaceEmbeddings from sklearn.metrics.pairwise import cosine_similarity import numpy as np import os # 示例 1: 使用 HuggingFace 嵌入模型(无需 API 密钥) def use_huggingface_embeddings(): """使用 HuggingFace 提供的预训练模型生成嵌入""" print("\n=== 使用 HuggingFace 嵌入模型 ===") # 创建嵌入模型实例 embeddings = HuggingFaceEmbeddings(model_name="all-MiniLM-L6-v2") # 示例文本 texts = [ "猫是一种常见的家养宠物", "狗是人类最好的朋友", "大象是陆地上最大的动物", "家养宠物中猫特别普遍" ] # 生成嵌入向量 print("生成文本嵌入向量...") vectors = embeddings.embed_documents(texts) # 查看嵌入向量的维度 print(f"嵌入向量维度: {len(vectors[0])}") # 计算文本之间的相似度 print("\n计算文本之间的相似度:") similarity_matrix = cosine_similarity(vectors) for i, text1 in enumerate(texts): for j, text2 in enumerate(texts): if i < j: # 避免重复计算 similarity = similarity_matrix[i][j] print(f"'{text1}' 与 '{text2}' 的相似度: {similarity:.4f}") # 示例 2: 文本搜索功能 def text_search_demo(): """使用嵌入实现简单的文本搜索功能""" print("\n=== 文本搜索功能演示 ===") # 创建嵌入模型实例 embeddings = HuggingFaceEmbeddings(model_name="all-MiniLM-L6-v2") # 文档集合 documents = [ "Python 是一种广泛使用的高级编程语言", "LangChain 是一个用于构建 LLM 应用的框架", "机器学习是人工智能的一个分支", "深度学习是机器学习的一个子领域", "数据科学涉及数据的分析和可视化" ] # 生成文档嵌入 doc_vectors = embeddings.embed_documents(documents) # 用户查询 query = "什么是 LangChain?" print(f"\n查询: {query}") # 生成查询嵌入 query_vector = embeddings.embed_query(query) # 计算查询与每个文档的相似度 similarities = cosine_similarity([query_vector], doc_vectors)[0] # 按相似度排序 sorted_indices = np.argsort(similarities)[::-1] # 显示搜索结果 print("\n搜索结果(按相似度排序):") for i, idx in enumerate(sorted_indices): print(f"{i+1}. 相似度: {similarities[idx]:.4f} - {documents[idx]}") # 运行示例 if __name__ == "__main__": print("LangChain 嵌入示例") print("=" * 50) # 运行 HuggingFace 嵌入示例 use_huggingface_embeddings() # 运行文本搜索示例 text_search_demo() print("\n示例运行完成!")

运行结果如下:

HuggingFaceEmbeddings 类

来源:langchain-huggingface 包中的类

功能:封装了 HuggingFace 的预训练嵌入模型,提供统一的接口用于文本向量化

主要方法:

  • embed_documents(texts):批量为多个文本生成嵌入向量
  • embed_query(text):为单个查询文本生成嵌入向量

all-MiniLM-L6-v2 模型

轻量级:

  • 基于 MiniLM 架构(BERT 的轻量级版本)
  • 模型大小约 80MB,适合在资源受限环境中使用

多语言支持:

  • 支持多种语言的文本嵌入

性能平衡:

  • 在速度和嵌入质量之间取得了良好平衡
  • 虽然比大型模型(如 BERT-base)小,但在大多数任务上表现接近

适用场景:

  • 文本相似度计算
  • 语义搜索
  • 文本分类
  • 聚类分析

相关依赖安装

pip install langchain-huggingface sentence-transformers scikit-learn numpy

欢迎留言交流,如果觉得有帮助,可以点个赞支持一下

学习资源推荐

如果你想更深入地学习大模型,以下是一些非常有价值的学习资源,这些资源将帮助你从不同角度学习大模型,提升你的实践能力。

一、全套AGI大模型学习路线

AI大模型时代的学习之旅:从基础到前沿,掌握人工智能的核心技能!​

因篇幅有限,仅展示部分资料,需要点击文章最下方名片即可前往获取

二、640套AI大模型报告合集

这套包含640份报告的合集,涵盖了AI大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示

​因篇幅有限,仅展示部分资料,需要点击文章最下方名片即可前往获取

三、AI大模型经典PDF籍

随着人工智能技术的飞速发展,AI大模型已经成为了当今科技领域的一大热点。这些大型预训练模型,如GPT-3、BERT、XLNet等,以其强大的语言理解和生成能力,正在改变我们对人工智能的认识。 那以下这些PDF籍就是非常不错的学习资源。

因篇幅有限,仅展示部分资料,需要点击文章最下方名片即可前往获取

四、AI大模型商业化落地方案

作为普通人,入局大模型时代需要持续学习和实践,不断提高自己的技能和认知水平,同时也需要有责任感和伦理意识,为人工智能的健康发展贡献力量。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/10 10:39:12

干货来了:专科生专属AI论文平台 —— 千笔写作工具

你是否曾为论文选题发愁&#xff0c;绞尽脑汁却找不到方向&#xff1f;是否在写到一半时突然卡壳&#xff0c;面对空白文档无从下手&#xff1f;又或是反复修改仍不满意&#xff0c;查重率和格式问题让人焦头烂额&#xff1f;专科生的论文之路本就充满挑战&#xff0c;而千笔AI…

作者头像 李华
网站建设 2026/6/10 10:38:34

个人主页(聚合链接)

个人 主页&#xff1a;https://taplink.cc/chunyu 备用 网址&#xff1a;https://vlink.cc/chunyucode

作者头像 李华
网站建设 2026/6/10 10:44:22

基于深度学习YOLOv12的传送带缺陷识别检测系统(YOLOv12+YOLO数据集+UI界面+登录注册界面+Python项目源码+模型)

一、项目介绍 本文基于YOLOv12深度学习算法&#xff0c;设计并实现了一种高效的传送带缺陷识别检测系统。系统针对传送带表面常见的四类缺陷&#xff08;堵塞、裂缝、异物、孔洞&#xff09;进行自动化检测&#xff0c;通过构建包含1860张训练图像、318张验证图像和167张测试图…

作者头像 李华
网站建设 2026/6/10 12:10:54

AI教材写作全流程揭秘!掌握方法,达成低查重编写目标!

谁没有在编写教材时遇到过框架构建的难题呢&#xff1f;面对一片空白的文档&#xff0c;常常会陷入深思&#xff0c;甚至拖延半小时无从下手——究竟是先讲解概念还是提供案例&#xff1f;章节的安排应该根据逻辑还是课时&#xff1f;经过多次修改的提纲&#xff0c;要么无法达…

作者头像 李华
网站建设 2026/6/10 10:44:00

揭秘低查重AI教材编写:高效工具与实用技巧助你快速完成教材

AI教材写作工具推荐 在准备编写教材时&#xff0c;选择合适的工具简直像是一场“纠结的斗争”&#xff01;如果使用办公软件&#xff0c;功能就会显得极为简单&#xff0c;框架搭建和格式调整还得逐步自己来完成&#xff1b;而用专业的教材编写工具&#xff0c;操作却往往复杂…

作者头像 李华