Elasticsearch:使用 Playground 与你的 PDF 聊天

LLMs作者:来自 Elastic Tomás Murúa

了解如何将 PDF 文件上传到 Kibana 并使用 Elastic Playground 与它们交互。本博客展示了在 Playground 中与 PDF 聊天的实用示例。

Elasticsearch 8.16 具有一项新功能,可让你将 PDF 文件直接上传到 Kibana 并使用 Playground 进行分析。在本文中,我们将了解如何通过上传 PDF 格式的简历然后使用 Playground 与其交互来使用此功能。

Playground 是一个托管在 Kibana 中的低代码平台,可让你创建 RAG 应用程序并与你的内容聊天。你可以在这篇文章中阅读有关它的更多信息,甚至可以使用此链接对其进行测试。

更多阅读 “在不到 5 分钟的时间内将威胁情报 PDF 添加为 AI 助手的自定义知识”。

使用 Playground 与你的 PDF 聊天

步骤

  1. 配置 Elasticsearch 推理服务端点
  2. 将 PDF 上传到 Kibana
  3. 与 Playground 中的数据交互

配置 Elasticsearch 推理服务端点

要运行语义搜索,我们必须首先配置一个推理端点(inference endpoint)。在此示例中,我们将使用 Elasticsearch 推理端点。此端点提供:

  • 重新排序
  • 稀疏嵌入
  • 文本嵌入

在此示例中,让我们选择稀疏嵌入(sparse embedding):

PUT _inference/sparse_embedding/my-elser-model
{
  "service": "elasticsearch",
  "service_settings": {
    "adaptive_allocations": {
      "enabled": true,
      "min_number_of_allocations": 1,
      "max_number_of_allocations": 10
    },
    "num_threads": 1,
    "model_id": ".elser_model_2"
  }
}

配置完成后,通过检查 Kibana UI 中的 Search > Relevance > Inference Endpoint 来确认模型已正确加载到 Kibana 中。

你也可以进行手动加载。详细步骤请参阅文章 “Elasticsearch:部署 ELSER - Elastic Learned Sparse EncoderR”。

将 PDF 上传至 Kibana

我们将上传初级开发人员的简历,以了解如何使用 Kibana 上传文件功能。

转到 Kibana UI 并按照以下步骤操作:

接下来,对于 Import Data,我们有两个选项:

Simple:这是默认选项,它允许我们快速将 PDF 上传到索引中,并自动使用索引信息创建数据视图。

Advanced:此选项允许我们自定义映射或添加摄取管道。在这些设置中,你可以:

  • 添加 semantic text 类型的字段。
  • 索引设置:如果你想要配置分片或分析器等内容。
  • 索引映射:如果你想要更改字段类型或定义数据的方式。
  • 摄取管道:如果你想在索引数据之前对其进行更改。

转到 “Advanced” 并选择 “Add additional field”:

选择字段 attachment.content;在 “copy to field” 中输入 “content”,并确保推理端点是 my-elser-model:

字段 copy_to 用于将内容从 attachment.content 复制到 (content) 的新 semantic_text 字段,该字段使用底层推理端点(本例中为 Elastic 的 ELSER)自动生成向量嵌入。这使语义和文本字段都可用,因此你可以运行全文、语义或混合搜索。

配置完所有内容后,单击 “Import”:

现在索引已经创建,我们可以使用 Playground 来探索它。

与 Playground 中的数据交互

连接到 Playground

配置索引并上传简历后,我们现在需要将索引连接到 Playground。单击 “Connect to an LLM” 并选择其中一个选项。

配置聊天机器人

配置完 Playground 并索引了 Alex Johnson 的简历后,我们就可以与数据进行交互了。使用语义搜索和 LLMs,我们可以使用自然语言提出问题并获得答案,即使文档中没有我们在查询中使用的关键字,如下例所示:

使用说明菜单,我们可以控制聊天机器人的行为并定义响应格式等功能。它还可以包含引用,以确保答案有充分依据。

如果我们转到 “Query” 选项卡,我们可以看到 Playground 生成的查询,并且我们添加了 text 和 semantic_text 字段,Playground 将自动生成混合查询以规范化不同类型的查询之间的分数。

Playground 不仅可以回答问题,还可以帮助我们了解 RAG 系统的内部组件,例如查询、检索阶段、上下文和提示说明。

试试看吧!

通过 Elasticsearch 8.16 更新,我们可以使用 Kibana UI 轻松上传 PDF/Word/Powerpoint 文件。它可以在简单模式下自动创建索引,你可以使用高级模式自定义索引并根据你的需求进行定制。

上传文件后,你可以访问 Playground 并快速轻松地与他们聊天,因为 Playground 将处理 LLM 交互并根据你要搜索的字段类型提供最佳查询。

想要获得 Elastic 认证?了解下一次 Elasticsearch 工程师培训的时间!

Elasticsearch 包含许多新功能,可帮助你为你的用例构建最佳搜索解决方案。深入了解我们的示例笔记本以了解更多信息,开始免费云试用,或立即在你的本地机器上试用 Elastic。

原文:Chatting with your PDFs using Playground - Elasticsearch Labs

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/951612.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

ClickHouse vs StarRocks 选型对比

一、面向列存的 DBMS 新的选择 Hadoop 从诞生已经十三年了,Hadoop 的供应商争先恐后的为 Hadoop 贡献各种开源插件,发明各种的解决方案技术栈,一方面确实帮助很多用户解决了问题,但另一方面因为繁杂的技术栈与高昂的维护成本&…

机器翻译优缺点

随着科技的飞速发展,机器翻译是近年来翻译行业的热门话题,在人们的生活和工作中日益普及,使用机器能够提高翻译效率,降低成本。尽管关于机器翻译为跨语言交流带来了诸多便利,但在译文的正确率和局限性方面存在一定争议…

【redis初阶】浅谈分布式系统

目录 一、常见概念 1.1 基本概念 2.2 评价指标(Metric) 二、架构演进 2.1 单机架构 2.2 应用数据分离架构 2.3 应用服务集群架构 2.4 读写分离/主从分离架构 2.5 引入缓存 ⸺ 冷热分离架构 2.6 数据库分库分表 2.7 业务拆分 ⸺ 引入微服务 redis学习&…

【Linux】文件 文件描述符fd

🌻个人主页:路飞雪吖~ 🌠专栏:Linux 目录 🌻个人主页:路飞雪吖~ 一、C文件接口 🌟写文件 🌠小贴士: 🌠stdin && stdout && stderr Linux下…

uni-app如何引入echarts

在uni-app官网的官网插件中找echarts 打开图片对应的echarts&#xff0c;点击下载并导入插件 如果是vue3使用const echarts require(../../uni_modules/lime-echart/static/echarts.min);引入echarts <template><view><view style"width:750rpx; height:…

ue5 GAS 从零开始00

技能属性GAS 技能 属性 创建一个项目c 插件搜索 gameplay 保证这里勾选上 把这三个弄上去 “GameplayAbilities”,“GameplayTags”,“GameplayTasks” 这样就加载了三个模块 一定要先关ue 先关掉ue 生成 如果没编过&#xff0c;你就检查模块名字是不是没写对 一定要…

基于SpirngBoot的家电销售管理系统

作者&#xff1a;计算机学姐 开发技术&#xff1a;SpringBoot、SSM、Vue、MySQL、JSP、ElementUI、Python、小程序等&#xff0c;“文末源码”。 专栏推荐&#xff1a;前后端分离项目源码、SpringBoot项目源码、Vue项目源码、SSM项目源码、微信小程序源码 精品专栏&#xff1a;…

Redis之秒杀活动

目录 全局唯一ID&#xff1a; 为什么 count 不可能为 null&#xff1f; 为什么返回值是 timestamp << COUNT_BITS | count&#xff1f; 整体的逻辑 (1) 生成时间戳 (2) 生成序列号 (3) 拼接时间戳和序列号 超卖问题&#xff1a; 基于版本号的乐观锁 CAS思想 …

Linux环境(Ubuntu)上搭建MQTT服务器(EMQX )网络环境部署

支持的 Ubuntu 版本&#xff1a;Ubuntu 22.04(本人使用)、Ubuntu 20.04、Ubuntu 1 下面开始环境搭建&#xff1a; &#xff08;1&#xff09;从github在线地址克隆压缩包&#xff0c;然后进行压缩&#xff08;不好用&#xff09;&#xff0c;在对环境进行依赖包的下载 &…

JavaSE(十五)——认识进程与多线程入门

文章目录 认识进程进程的概念进程的特性进程的状态进程的优先级进程的描述进程的调度 并发与并行认识线程线程的概念Java中线程的表示认识Thread类线程的创建 线程的控制和管理线程启动-start()线程休眠-sleep()线程中断-interrupt()线程插队-join()线程让步-yield() 线程的状态…

EasyCVR视频汇聚平台如何配置webrtc播放地址?

EasyCVR安防监控视频系统采用先进的网络传输技术&#xff0c;支持高清视频的接入和传输&#xff0c;能够满足大规模、高并发的远程监控需求。平台支持多协议接入&#xff0c;能将接入到视频流转码为多格式进行分发&#xff0c;包括RTMP、RTSP、HTTP-FLV、WebSocket-FLV、HLS、W…

【免费开源】积木JimuBI大屏集成ruoyiVue

JimuBI介绍 JimuBI 是一个JAVA语言的低代码数据可视化大屏BI产品&#xff0c;将大屏、仪表盘、移动面板、图表或页面元素封装为基础组件&#xff0c;无需编写代码即可完成业务需求。 这是JeecgBoot团队出品的另外一款报表产品&#xff0c;积木报表已经成为业内报表首先&#x…

mysql binlog 日志分析查找

文章目录 前言一、分析 binlog 内容二、编写脚本结果总结 前言 高效快捷分析 mysql binlog 日志文件。 mysql binlog 文件很大 怎么快速通过关键字查找内容 一、分析 binlog 内容 通过 mysqlbinlog 命令可以看到 binlog 解析之后的大概样子 二、编写脚本 编写脚本 search_…

如何在谷歌浏览器中使用安全沙箱

谷歌浏览器的沙箱机制是一种重要的安全功能&#xff0c;可以有效隔离浏览会话中的每个标签页和插件&#xff0c;以防止恶意软件攻击用户系统。本文将详细介绍如何在谷歌浏览器中启用和使用沙箱功能。 一、什么是谷歌浏览器沙箱&#xff1f; 谷歌浏览器的沙箱是一种安全机制&am…

【C++】C++11(二)

目录 九、可变参数模板十、lambda表达式10.1 C98中的一个例子10.2 lambda表达式10.3 lambda表达式语法10.3.1 lambda表达式各部分说明10.3.2 捕获列表说明 10.4 函数对象与lambda表达式 十一、包装器11.1 function包装器11.2 bind 十二、线程库12.1 线程12.1.1 thread类的简单介…

《零基础Go语言算法实战》【题目 1-16】字符串的遍历与比较

《零基础Go语言算法实战》 【题目 1-16】字符串的遍历与比较 给出两个字符串&#xff0c;请编写程序以确定能否将其中一个字符串重新排列后变成另一个字符串&#xff0c; 并规定大小写是不同的字符&#xff0c;空格也作为字符考虑。保证两个字符串的长度小于或等于 5000。 …

Type-C单口便携显示器-LDR6021

Type-C单口便携显示器是一种新兴的显示设备&#xff0c;它凭借其便携性、高性能和广泛的应用场景等优势&#xff0c;正在成为市场的新宠。以下是Type-C单口便携显示器的具体运用方式&#xff1a; 一、连接与传输 1. **设备连接**&#xff1a;Type-C单口便携显示器通过Type-C接…

聚类系列 (二)——HDBSCAN算法详解

在进行组会汇报的时候&#xff0c;为了引出本研究动机&#xff08;论文尚未发表&#xff0c;暂不介绍&#xff09;&#xff0c;需要对DBSCAN、OPTICS、和HDBSCAN算法等进行详细介绍。在查询相关资料的时候&#xff0c;发现网络上对于DBSCAN算法的介绍非常多与细致&#xff0c;但…

玩转 JMeter:Random Order Controller让测试“乱”出花样

嘿&#xff0c;各位性能测试的小伙伴们&#xff01;今天咱要来唠唠 JMeter 里超级有趣又超实用的 Random Order Controller&#xff08;随机顺序控制器&#xff09;&#xff0c;它就像是性能测试这场大戏里的“魔术棒”&#xff0c;轻轻一挥&#xff0c;就能让测试场景变得千变…

L1G5000 XTuner 微调个人小助手认知

使用 XTuner 微调 InternLM2-Chat-7B 实现自己的小助手认知 1 环境配置与数据准备步骤 0. 使用 conda 先构建一个 Python-3.10 的虚拟环境步骤 1. 安装 XTuner 修改提供的数据步骤 0. 创建一个新的文件夹用于存储微调数据步骤 1. 创建修改脚本步骤 2. 执行脚本步骤 3. 查看数据…