Elasticsearch 8.16:适用于生产的混合对话搜索和创新的向量数据量化,其性能优于乘积量化 (PQ)

作者:来自 Elastic Ranjana Devaji, Dana Juratoni

Elasticsearch 8.16 引入了 BBQ(Better Binary Quantization - 更好的二进制量化)—— 一种压缩向量化数据的创新方法,其性能优于传统方法,例如乘积量化 (Product Quantization - PQ)。Elastic 是第一家实施这种方法的向量数据库供应商,它使此功能可用于实际搜索工作负载,减少必要的计算资源,同时保持低查询延迟和高排名质量。

此版本还带来了倒数排名融合 (Reciprocal Rank Fusion - RRF)、检索器和开放推理 API 的正式发布,以及一套全面的工具,用于简化工作流程以构建基于混合搜索和检索增强生成 (retrieval augmented generation - RAG) 的应用程序。

Elasticsearch 8.16 现已在 Elastic Cloud 上提供 —— 这是唯一一款包含此最新版本所有新功能的托管 Elasticsearch 产品。这些功能也可在 Elastic Cloud 上完全托管的无服务器 Elasticsearch 项目中使用。你还可以下载 Elastic Stack 和我们的云编排产品 —— Elastic Cloud Enterprise 和 Elastic Cloud for Kubernetes —— 以获得自我管理体验。

要开始使用 Elasticsearch 进行本地开发运行,请查看我们的 start-local 脚本,以便在几分钟内在笔记本电脑上进行本地部署。

curl -fsSL https://elastic.co/start-local | sh

Elastic 8.16 还有哪些新功能?查看 8.16 公告帖子了解更多信息 >>

Elastic 实现了 BBQ

认识 Better Binary Quantization (BBQ),这是一种针对象量数据的尖端优化,可在不影响准确性的情况下将向量数据的压缩率提高 32 倍。Elastic 很自豪能够率先为分布式可扩展 Elasticsearch 向量数据库的用户提供此功能,以减少和扩展依赖于大型数据集的工作负载。

此功能最初仅供 Elastic 客户使用,但将迅速贡献给 Lucene 社区,以提升所有向量存储的潜在功能。

BBQ 保持了高排名质量,同时实现了与标量量化几乎相同的速度和存储效率。其高压缩级别使组织能够有效地管理大型数据集并以可承受的价格扩展其向量存储和搜索操作。此外,BBQ 可将内存使用量减少 95% 以上,同时在数据集扩展时仍能保持出色的召回率。它还可以轻松地与 Elasticsearch 中的其他量化方法结合使用,以最大限度地提高效益。

混合对话式搜索,更多工具,更简单

混合搜索是管理搜索体验相关性的关键技术。通过将词汇关键字搜索的精确度与语义搜索的上下文理解相结合,电子商务目录搜索可以在获得语义理解的同时保持精确度。此外,RAG 和对话式搜索体验可以减少 LLM 上下文带来的幻觉。

虽然有几种方法可以实现混合搜索,包括对分数进行加权,但在检索方法之间规范分数的最简单方法是 RRF。Elastic 首次在 8.8 中将 RRF 作为技术预览版进行集成,随后将可组合检索器(retrievers)抽象引入查询 DSL,从而简化了使用。这些功能的结合使构建混合搜索变得像对 /_search 进行一次查询调用一样简单。

以下是结合三种检索器的伪代码 —— 一种用于匹配查询,一种用于向量 (kNN) 查询,另一种用于简单的语义查询(使用推理 API 中指定的推理服务)。这三个检索器结果可以通过 RRF 快速规范化。另外,还有一个检索器,可轻松进行 semantic_reranking,以实现第二阶段检索并提高相关性。对于你的生产工作负载来说,完整的相关性功能堆栈可以如此简单!

"retriever": {
  "text_similarity_reranker": {
    // ... semantic reranking parameters
    "retriever": {
      "rrf": {
        "retrievers": [{
          "standard": {
            "query"."semantic": {
                "field": "a-semantic_text-field",
                "query": "why are retrievers fun?"
          }}},{
          "knn": {
            // ... knn parameters 
            // ... query_vector_builder parameters
              "model_text": "why are retrievers fun?" 
          }}}},{
          "standard": {
            "query"."match": {
                "some-field": "why are retrievers fun?"
}}}}]}}}}

现在,这两项关键功能(检索器和倒数秩融合 (RRF))均已向企业许可客户正式开放,从而增强了可组合性和性能,以实现自信的生产部署。8.16 支持多级嵌套,每个级别都提供所有功能,为学习排序 (Learning to Rank - LTR) 和基于规则的检索器铺平了道路。

厌倦了不相关的搜索结果?使用排除查询规则( exclude Query Rules)轻松排除特定结果,确保你的用户获得更准确、更集中的搜索结果。

Elastic 的开放推理 API(open inference API - 现在也已普遍可用)使你能够创建端点并使用来自流行推理提供商的机器学习模型。这些端点可以在 semantic_text 中用于轻松检索,检索器可用于语义查询、kNN 查询和语义重新排序(semantic reranking)。我们的集成推理提供商目录包括 Anthropic、Mistral、Cohere 等!在 8.16 中,我们现在提供对 Watsonx.ai Slate 嵌入模型和阿里云 AI 嵌入模型的支持、重新排序功能以及对 Qwen LLM 系列的完成支持。

此外,semantic_text 现在支持新的可调整分块选项,使用户可以灵活地修改我们针对向量化数据的原生分块策略,从单词分块改为句子,并调整分块窗口大小。

客户还可以在其摄取管道中使用推理 API 中的 completion 任务类型来丰富文档处理和摘要存储。这与我们的 Elastic 集成目录(例如 Elastic Open Web Crawler 和连接器)特别匹配。

增强开发人员体验

出色的搜索体验由开发人员构建。Kibana 已更新,包括使 Kibana 体验更好的功能,可以迭代机器学习和调优的所有潜在组合。在代码和 Kibana 中快速执行此操作的能力可以加速对点击转化率产生积极影响的变化,或完善对组织的关键见解的总结。

首先从可自定义的导航(navigation)选项开始,开发人员可以直接访问重要的工具。

Playground 已增强会话持久性和支持后续问题的能力。使用 Playground 进行 PDF 或 Word 文档上传更加容易,使文件实验更快、更高效。结合将开发控制台请求导出到 Python 和 Javascript 的能力,迭代和合并到你首选的开发环境中只是一个复制命令。

利用 8.16 的开源创新,该版本具有 Elastic Open Web Crawler(目前为测试版),可通过 CLI 进行管理,以实现高效的网站数据采集并将向量数据存储在 Elasticsearch 的顶级向量数据库中。此外,使用新的 start-local 功能,几分钟内即可开始使用,只需一步即可在本地启动 Elasticsearch 和 Kibana,以进行快速试用和评估。

用于搜索的 Elastic AI 助手

使用内置的用于搜索的 Elastic AI 助手改善你使用 Elasticsearch 和 Kibana 的方式。你不仅可以利用 Elastic 的功能构建自己的基于 RAG 的对话代理或应用程序,还可以利用开箱即用的加速入门功能并在 Elastic 部署中获得帮助。

所有 Elastic AI 助手都受益于自定义知识 — 引入和导入你的知识库或使用现有索引来使用自定义的 AI 驱动帮助中心,让你的团队快速掌​​握 Elastic 的强大功能。Web 爬虫和连接器(connectors )可用于增强和同步存储你知识的第三方数据源并个性化你的 Elastic AI 助手体验。

试用

阅读发行说明,了解这些功能及其他信息。

现有的 Elastic Cloud 客户可以直接从 Elastic Cloud 控制台访问其中许多功能。还未在云端使用 Elastic?立即开始免费试用。

本文中描述的任何特性或功能的发布和时间均由 Elastic 自行决定。任何当前不可用的特性或功能可能无法按时交付或根本无法交付。

在这篇博文中,我们可能使用或提及了第三方生成式 AI 工具,这些工具由其各自的所有者拥有和运营。Elastic 无法控制第三方工具,我们对其内容、操作或使用不承担任何责任,也不对你使用此类工具可能产生的任何损失或损害承担任何责任。在使用 AI 工具处理个人、敏感或机密信息时,请谨慎行事。你提交的任何数据都可能用于 AI 培训或其他目的。我们无法保证你提供的信息将得到安全或保密。在使用任何生成式 AI 工具之前,你应该熟悉其隐私惯例和使用条款。

Elastic、Elasticsearch、ESRE、Elasticsearch Relevance Engine 和相关商标是 Elasticsearch N.V. 在美国和其他国家/地区的商标、徽标或注册商标。所有其他公司和产品名称均为其各自所有者的商标、徽标或注册商标。

原文:Elasticsearch 8.16: Better Binary Quantization (BBQ) — A better way to quantize vector data over Product Quantization (PQ) and production-ready hybrid conversational search | Elastic Blog

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

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

相关文章

MySQL数据库常用命令大全(完整版——表格形式)

✅作者简介:2022年博客新星 第八。热爱国学的Java后端开发者,修心和技术同步精进。 🍎个人主页:Java Fans的博客 🍊个人信条:不迁怒,不贰过。小知识,大智慧。 ✨特色专栏&#xff1a…

微型导轨在自动化生产线中起什么作用?

在现代制造业的飞速跃进中,自动化生产线的蓬勃发展引领了一场效率与质量的双重革命。微型导轨作为传动领域的重要零部件,可用于工业自动化生产线上的零件运输、加工设备定位等,实现自动化生产和减少人力成本。那么,微型导轨在自动…

Flutter 小技巧之 Shader 实现酷炫的粒子动画

在之前的《不一样的思路实现炫酷 3D 翻页折叠动画》我们其实介绍过:如何使用 Shader 去实现一个 3D 的翻页效果,具体就是使用 Flutter 在 3.7 开始提供 Fragment Shader API ,因为每个像素都会过 Fragment Shader ,所以我们可以通…

c++实现B树(下)

书接上回小吉讲的是B树的搭建和新增方法的实现(blog传送门🚪:B树实现上)(如果有小可爱对B树还不是很了解的话,可以先看完上一篇blog,再来看小吉的这篇blog)。那这一篇主要讲的是B树中…

【Oracle篇】掌握SQL Tuning Advisor优化工具:从工具使用到SQL优化的全方位指南(第六篇,总共七篇)

💫《博主介绍》:✨又是一天没白过,我是奈斯,DBA一名✨ 💫《擅长领域》:✌️擅长Oracle、MySQL、SQLserver、阿里云AnalyticDB for MySQL(分布式数据仓库)、Linux,也在扩展大数据方向的知识面✌️…

使用Java绘制图片边框,解决微信小程序map组件中marker与label层级关系问题,label增加外边框后显示不能置与marker上面

今天上线的时候发现系统不同显示好像不一样,苹果手机打开的时候是正常的,但是一旦用安卓手机打开就会出现label不置顶的情况。尝试了很多种办法,也在官方查看了map相关的文档,发现并没有给label设置zIndex的属性,只看到…

关于sass在Vue3中编写bem框架报错以及警告问题记录

在编写完bem框架后 在vite.config.ts文件进行预编译处理时,报错的错误 1. 处理方式:使用新版api, 如图: 2. 处理方式:使用 use 替换掉 import, 如图: 3. 处理方式:使用路径别名&am…

BizDevOps:从理念到实践,贯通企业全链路协同

👆 点击蓝字 关注我们 引言 BizDevOps的概念由DevOps发展和进化而来,其目标超越了开发和运维的协同,进一步实现业务、研发和运维的全链条协作,让业务作为价值的起点及核心目标。 BizDevOps的核心驱动力在于解决效率和正确性上的割…

C#与C++交互开发系列(二十二):跨进程通信之使用基于HTTP协议的REST风格的API

1. 前言 REST API(Representational State Transfer Application Programming Interface)是一种基于HTTP协议的通信方式,广泛用于网络服务和分布式应用程序之间的通信。通过REST API,可以让C#和C应用程序进行跨进程、甚至跨平台的…

ECharts饼图-饼图15,附视频讲解与代码下载

引言: 在数据可视化的世界里,ECharts凭借其丰富的图表类型和强大的配置能力,成为了众多开发者的首选。今天,我将带大家一起实现一个饼图图表,通过该图表我们可以直观地展示和分析数据。此外,我还将提供详…

Python在数据科学中的应用

💓 博客主页:瑕疵的CSDN主页 📝 Gitee主页:瑕疵的gitee主页 ⏩ 文章专栏:《热点资讯》 Python在数据科学中的应用 Python在数据科学中的应用 Python在数据科学中的应用 引言 Python 概述 定义与特点 发展历程 Python…

IDEA2024:右下角显示内存

使用场景: 实时知晓idea内存使用情况 解决方案: 开启内存显示 View -> Apperance -> Status Bar Widgets -> Memory Indicator 效果如下:

【计算机网络】【网络层】【习题】

计算机网络-传输层-习题 文章目录 13. 图 4-69 给出了距离-向量协议工作过程,表(a)是路由表 R1 初始的路由表,表(b)是相邻路由器 R2 传送来的路由表。请写出 R1 更新后的路由表(c)。…

vue 计算属性get set

<template><div id"app"><h1>用户信息</h1><p>全名&#xff1a;{{ fullName }}</p><input v-model"fullName" placeholder"请输入全名" /><p>姓&#xff1a;{{ firstName }}</p><p>…

74HC245

74HC245&#xff1a;典型的CMOS型缓冲门电路 在这里用于增加电压

【代码管理之道】Git 高级工作流与团队协作实践:深入探讨与实战案例

引言 在前几篇文章中&#xff0c;我们详细介绍了 Git 的基本概念、高级功能、最佳实践以及高级工作流和团队协作实践。本文将继续深入探讨 Git 的高级工作流和团队协作实践&#xff0c;帮助读者更好地理解和应用这些概念。我们将通过具体的实战案例&#xff0c;展示如何在实际…

NopReport中如何通过可扩展性设计实现二维码导出

NopReport是从零开始编写的下一代中国式报表引擎&#xff0c;它的核心仅有3000多行代码&#xff0c;但是完整实现了中国式非线性报表理论所定义的层次坐标和行列对称展开算法。 使用介绍&#xff1a;采用Excel作为设计器的开源中国式报表引擎:NopReport, 视频讲解源码分析: 非…

Linux(光速安装+rocky linux镜像)

寻找镜像 Download - Rocky Linux 如果用作桌面的&#xff0c;下载DVD的选项&#xff0c;占的存储比较多了&#xff0c;如果下载最小的&#xff0c;则没有桌面环境。 配置虚拟机 Linux&#xff08;光速安装centos镜像 图片大白话&#xff09;-CSDN博客 有些一样的我就不一…

python文件命名,不注意容易出错

在python中&#xff0c;文件名也会作为模块的名称使用。 举个例子 工程目录如下&#xff1a; 其中&#xff0c;文件夹为sys_check&#xff0c;其下还有一个sys_check1.py文件。 如果该文件名也是sys_check.py&#xff0c;可能会导致问题&#xff0c;在其它文件中引用模块时…

给阿里云OSS启用SSL

自定义域名需要指向阿里云 OSS&#xff0c;并且你希望为这个域名获取 SSL 证书&#xff0c;可以使用 DNS 验证的方法来获取证书。以下是详细步骤&#xff1a; 关键前提&#xff1a; 关键是需要在阿里云控制台的域名 权威域名解析中添加子域名aliyuncs.xxx.com 使用 DNS 验证获取…