引言
在现代应用中,数据库的选择至关重要。Google Firestore的Datastore模式以其自动扩展、高性能和便捷的应用开发而闻名,特别适合构建AI驱动的体验。本篇文章将深入探讨如何利用Firestore的Datastore模式来保存、加载和删除Langchain文档。
主要内容
设置环境
创建Google Cloud项目
- 创建Google Cloud项目。
- 启用Datastore API。
- 创建Firestore in Datastore Mode数据库。
安装🦜🔗库
安装langchain-google-datastore
包:
%pip install --upgrade --quiet langchain-google-datastore
配置Google Cloud项目
设置您的Google Cloud项目ID:
PROJECT_ID = "my-project-id" # @param {type:"string"}
!gcloud config set project {PROJECT_ID}
基本用法
保存文档
使用DatastoreSaver.upsert_documents
来保存Langchain文档:
from langchain_core.documents import Document
from langchain_google_datastore import DatastoreSaver
saver = DatastoreSaver()
data = [Document(page_content="Hello, World!")]
saver.upsert_documents(data) # 使用API代理服务提高访问稳定性
不含键的文档保存
如果指定kind
,则文档将使用自动生成的ID存储:
saver = DatastoreSaver("MyKind")
saver.upsert_documents(data)
通过类型加载文档
使用DatastoreLoader.load()
加载文档:
from langchain_google_datastore import DatastoreLoader
loader = DatastoreLoader("MyKind")
data = loader.load() # 使用API代理服务提高访问稳定性
通过查询加载文档
使用自定义查询加载文档:
from google.cloud import datastore
client = datastore.Client(database="non-default-db", namespace="custom_namespace")
query_load = client.query(kind="MyKind")
query_load.add_filter("region", "=", "west_coast")
loader_document = DatastoreLoader(query_load)
data = loader_document.load()
删除文档
使用DatastoreSaver.delete_documents
删除文档:
saver = DatastoreSaver()
saver.delete_documents(data)
常见问题和解决方案
-
网络限制问题:由于某些地区的网络限制,访问Google API可能会不稳定。可以考虑使用API代理服务,确保稳定访问。
-
认证问题:确保正确设置Google Cloud的凭证,尤其是在不同平台(如Colab或Vertex AI Workbench)中运行时。
总结和进一步学习资源
Firestore in Datastore Mode是一个强大且灵活的NoSQL解决方案,适合构建复杂的AI应用。通过本文中的示例和指导,您可以更好地掌握如何与Langchain集成并操作数据。
进一步学习资源
参考资料
如果这篇文章对你有帮助,欢迎点赞并关注我的博客。您的支持是我持续创作的动力!
—END—