LangChain——Embedding 智谱AI

Embedding 嵌入

Embedding嵌入创建一段文本的矢量表示。这很有用,因为这意味着我们可以考虑向量空间中的文本,并执行语义搜索之类的操作,在其中查找向量空间中最相似的文本片段。

LangChain 中的基类 Embeddings 提供了两种方法:一种用于嵌入文档,另一种用于嵌入查询。前者 embed_documents 采用多个文本作为输入,而后者 embed_query 采用单个文本。

embed_documents

embed-documents将文本嵌入为embeddings(向量)。

python 复制代码
embeddings = embeddings_model.embed_documents(
    [
        "Hi there!",
        "Oh, hello!",
        "What's your name?",
        "My friends call me World",
        "Hello World!"
    ]
)
len(embeddings), len(embeddings[0])

embed_query

embed_query其实和embed-documents差不多,区别在于embed-query嵌入单段文本,而embed-documents嵌入的是一个文本列表。

python 复制代码
embedded_query = embeddings_model.embed_query("What was the name mentioned in the conversation?")
embedded_query[:5]

官方教程使用的openai的api作为示例,需要付费才能使用,因此我们选择使用国产的智谱ai开源的嵌入模型来进行实验。

首先我们需要获取到智谱AI的api-key,前往 https://bigmodel.cn/)https://bigmodel.cn/注册智普 AI 并生成 API 密钥。完成此操作后,设置 ZHIPUAI_API_KEY 环境变量即可。

然后我们只需要导入ZhipuAIEmbeddings,并且声名所使用的的模型即可。

python3 复制代码
from langchain_community.embeddings import ZhipuAIEmbeddings

embeddings = ZhipuAIEmbeddings(
    model="embedding-3",
)

embed_query嵌入单个文本

python3 复制代码
text = "LangChain is the framework for building context-aware reasoning applications"
single_vector = embeddings_model.embed_query(text)
len(single_vector)

2048

eimbed_documents嵌入多个文本

python3 复制代码
text2 = (
    "LangGraph is a library for building stateful, multi-actor applications with LLMs"
)
two_vectors = embeddings_model.embed_documents([text, text2])
print(len(two_vectors), len(two_vectors[0]))

2 2028
相关推荐
lvyuanj14 小时前
深度解析Agent技术演进路径与未来趋势
人工智能
卷卷说风控14 小时前
Claude Code 技术架构深扒:Prompt / Context / Harness 三维设计实践
人工智能·架构·prompt
Frank学习路上14 小时前
【AI技能】跟着费曼学自动驾驶
人工智能·机器学习·自动驾驶
Want59514 小时前
Rokid AI Glasses应用开发实战:把记账助手“戴”在脸上
人工智能
bryant_meng15 小时前
【Reading Notes】(4)Favorite Articles from 2021
人工智能·深度学习·业界资讯
雷工笔记15 小时前
MES / WMS / AGV 交互时序图及生产管理模块界面设计清单
人工智能·笔记
海兰15 小时前
使用 Spring AI 打造企业级 RAG 知识库第二部分:AI 实战
java·人工智能·spring
清空mega15 小时前
动手学深度学习——多尺度锚框
人工智能·深度学习·目标跟踪
pzx_00115 小时前
【优化器】 随机梯度下降 SGD 详解
人工智能·python·算法
波动几何15 小时前
风格设计技能Style Design Generator
人工智能