当前位置: 首页 > article >正文

使用 Vertex AI Gemini 模型和 Elasticsearch Playground 快速创建 RAG 应用程序

作者:来自 Elastic Jeff Vestal

在这篇博客中,我们将使用 Elastic 的 Playground 和 Vertex AI API 将 Elasticsearch 连接到 Google 的 Gemini 1.5 聊天模型。将 Gemini 模型添加到 Playground 使 Google Cloud 开发人员能够快速建立 LLM、测试检索、调整分块并使用 Elastic 将 gen AI 搜索应用程序交付到生产环境。

你需要一个启动并运行的 Elasticsearch 集群。我们将在 Elastic Cloud 上使用 serverless 项目。如果你没有帐户,可以注册免费试用。

你还需要一个启用了 Vertex AI 的 Google Cloud 帐户。如果你没有 Google Cloud 帐户,可以注册免费试用。

配置 Vertex AI

首先,我们将配置一个 Vertex AI 服务帐户,这将允许我们安全地从 Elasticsearch 向 Gemini 模型进行 API 调用。你可以按照此处 Google Cloud 文档页面上的详细说明进行操作,但我们将介绍要点。

转到 Google Cloud 控制台的 “ Create Service Account” 部分。在那里,选择已启用 Vertex AI 的项目。

接下来,为你的服务帐户命名,并可选地提供描述。点击 “Create and Continue”。

为你的项目设置访问控制。对于本博客,我们使用了 “Vertex AI User” 角色,但你需要确保你的访问控制适合你的项目和帐户。

单击 “Done”。

Google Cloud 中的最终设置是为服务帐户创建 API 密钥并以 JSON 格式下载。

单击服务帐户中的 “KEYS”,然后单击 “ADD KEY” 和 “Create New”。

确保选择 “json” 作为密钥类型,然后单击 “CREATE”。

密钥将被创建并自动下载到你的计算机。我们将在下一节中需要此密钥。

从 Playground 连接到你的 LLM

配置 Google Cloud 后,我们可以继续在 Elastic 的 Playground 中配置 Gemini LLM 连接。

本博客假设你已经在 Elasticsearch 中拥有要与 Playground 一起使用的数据。如果没有,请按照搜索实验室博客 Playground:在几分钟内使用 Elasticsearch 试验 RAG 应用程序以开始使用。

在 Kibana 中,从侧面导航菜单中选择 Playground。在 Serverless 中,它位于 “Build” 标题下。首次打开时,你可以选择 “Connect to an LLM”。

选择 “Google Gemini”

填写表格以完成配置。

打开上一节创建并下载的 JSON 凭证文件,复制完整的 JSON,并将其粘贴到 “Credentials JSON” 部分。然后点击 “Save

现在是 Playground 时间!

Elastic 的 Playground 允许你在集成到完整代码之前尝试 RAG 上下文设置和系统提示。

通过在与模型聊天时更改设置,你可以看到哪些设置将为你的应用程序提供最佳响应。

此外,配置搜索 Elasticsearch 数据中的哪些字段以将上下文添加到你的聊天完成请求中。添加上下文将有助于巩固模型并提供更准确的响应。

此步骤使用 Elastic 的 ELSER 稀疏嵌入模型(内置),通过语义搜索检索上下文,并将其传递给 Gemini 模型。

就这些(目前)

对话式搜索是一个令人兴奋的领域,开发人员正在使用强大的大型语言模型(例如 Google Vertex AI 提供的模型)来构建新的体验。Playground 简化了原型设计和调整过程,使你能够更快地交付应用程序。

探索更多使用 Elasticsearch 和 Google Vertex AI 构建的想法,祝你搜索愉快!

准备好自己尝试一下了吗?开始免费试用。
想要获得 Elastic 认证吗?了解下一期 Elasticsearch 工程师培训何时开始!

原文:Quickly iterate chat apps on Elasticsearch playground with Google Cloud Gemini models — Search Labs


http://www.kler.cn/news/334381.html

相关文章:

  • 12.1 Linux_进程间通信_管道
  • 开发指南066-平台紧凑版
  • 学生多元智能测评
  • TCP 流量控制 - 滑动窗口和拥塞控制算法解析
  • 大学生就业服务:Spring Boot技术实践
  • 项目管理-信息系统治理
  • rk3568 LTE(EC20 Android14)
  • 一篇文章搞懂Android 刷卡器对接:RS232 DB9串口通讯,通讯设置,刷卡器API介绍;代码示例;MDB协议;
  • 掌握嵌套子查询:复杂 SQL 中 * 列的准确表列关系
  • C/C++/EasyX——入门图形编程(3)
  • javascript:void(0)
  • 【开源免费】基于SpringBoot+Vue.JS美发门店管理系统(JAVA毕业设计)
  • Hadoop-HDFS-core-site.xml,hdfs-site.xml,yarn-site.xml,krb5.conf 都是做什么的?
  • 基金好书入门阅读笔记《基金作战笔记:从投基新手到配置高手的进阶之路》1
  • 面试-2024年9月13号
  • Kafka:架构与核心机制
  • 【BUG】P-tuningv2微调ChatGLM2-6B时所踩的坑
  • 图解C#高级教程(三):泛型
  • 存储电话号码的数据类型,用 int 还是用 string?
  • 【目标检测】桥梁表面缺陷检测数据集6710张7类缺陷VOC+YOLO格式