网页美工设计教学,网站发的文章如何优化,长沙做网站价格,网站必须要备案吗文章目录 一、关于 文本嵌入模型二、入门1、设置 OpenAI2、embed_documents3、embed_query 三、集成示例1、DashScope2、OpenAI3、Hugging Face Hub4、Fake Embeddings 本文转载改编自#xff1a; https://python.langchain.com.cn/docs/modules/data_connection/text_embeddi… 文章目录 一、关于 文本嵌入模型二、入门1、设置 OpenAI2、embed_documents3、embed_query 三、集成示例1、DashScope2、OpenAI3、Hugging Face Hub4、Fake Embeddings 本文转载改编自 https://python.langchain.com.cn/docs/modules/data_connection/text_embedding/ 一、关于 文本嵌入模型
嵌入类是一个用于与文本嵌入模型进行交互的类。有很多嵌入模型提供商OpenAI、Cohere、Hugging Face等-该类旨在为所有这些提供一个标准接口。
嵌入可以创建文本的向量表示。这很有用因为这意味着我们可以在向量空间中思考文本并进行语义搜索其中我们寻找在向量空间中最相似的文本片段。
LangChain中的基本嵌入类提供两种方法一种用于嵌入文档一种用于嵌入查询。前者以多个文本作为输入而后者以单个文本作为输入。
之所以将它们作为两种不同的方法是因为某些嵌入提供商对于文档要搜索的文档和查询搜索查询本身有不同的嵌入方法。 二、入门
1、设置 OpenAI
首先我们需要安装 OpenAI Python 包
pip install openai访问 API 需要一个 API 密钥您可以通过创建一个帐户并访问 此处 来获取。
一旦我们有了密钥我们将通过运行以下命令将其设置为环境变量
export OPENAI_API_KEY...如果您不想设置环境变量您可以在初始化 OpenAI LLM 类时直接通过 openai_api_key 命名参数传递密钥
from langchain.embeddings import OpenAIEmbeddingsembeddings_model OpenAIEmbeddings(openai_api_key...)否则您可以不使用任何参数进行初始化
from langchain.embeddings import OpenAIEmbeddingsembeddings_model OpenAIEmbeddings()2、embed_documents
Embed list of texts
embeddings embedding_model.embed_documents([Hi there!,Oh, hello!,Whats your name?,My friends call me World,Hello World!]
)
len(embeddings), len(embeddings[0])
# (5, 1536)3、embed_query
嵌入单个查询 (Embed single query)
嵌入单个文本以便与其他嵌入的文本进行比较。
embedded_query embedding_model.embed_query(What was the name mentioned in the conversation?)
embedded_query[:5][0.0053587136790156364,-0.0004999046213924885,0.038883671164512634,-0.003001077566295862,-0.00900818221271038]三、集成示例
1、DashScope
Let’s load the DashScope Embedding class.
from langchain.embeddings import DashScopeEmbeddingsembeddings DashScopeEmbeddings(modeltext-embedding-v1, dashscope_api_keyyour-dashscope-api-key
)text This is a test document.query_result embeddings.embed_query(text)
print(query_result) doc_results embeddings.embed_documents([foo])
print(doc_results)2、OpenAI
加载 OpenAI Embedding 类
from langchain.embeddings import OpenAIEmbeddingsembeddings OpenAIEmbeddings()text This is a test document.query_result embeddings.embed_query(text) doc_result embeddings.embed_documents([text])Let’s load the OpenAI Embedding class with first generation models (e.g. text-search-ada-doc-001/text-search-ada-query-001). Note: These are not recommended models - see here
from langchain.embeddings.openai import OpenAIEmbeddingsembeddings OpenAIEmbeddings()text This is a test document.query_result embeddings.embed_query(text)doc_result embeddings.embed_documents([text])# if you are behind an explicit proxy, you can use the OPENAI_PROXY environment variable to pass through
os.environ[OPENAI_PROXY] http://proxy.yourcompany.com:80803、Hugging Face Hub
Let’s load the Hugging Face Embedding class.
from langchain.embeddings import HuggingFaceEmbeddings
embeddings HuggingFaceEmbeddings()
text This is a test document.
query_result embeddings.embed_query(text)
doc_result embeddings.embed_documents([text])4、Fake Embeddings
LangChain also provides a fake embedding class. You can use this to test your pipelines.
from langchain.embeddings import FakeEmbeddings
embeddings FakeEmbeddings(size1352)query_result embeddings.embed_query(foo) doc_results embeddings.embed_documents([foo])2024-04-08一