Elasticsearch 向量数据库:几分钟内完成部署,以经济高效的方式扩展至数千亿规模

作者:来自 Elastic Dustin Coates

混合检索中那些最棘手的部分,我们已经替你完成:开箱即用的优化默认配置、第三方及原生 Jina AI 模型,以及托管 GPU 推理。快速构建可扩展的 AI 应用,而不是基础设施。

尝试使用向量搜索。你可以通过这个自主进度的动手实践学习课程亲自体验 Search AI。你可以立即开始免费云试用,或者在你的本地机器上尝试 Elastic。

Elasticsearch 是全球部署最广泛的向量工作负载平台之一,为 GitHub、Docusign、Seismic 以及许多其他公司提供语义搜索、检索增强生成(RAG)和推荐功能。今天,我们宣布推出 Elasticsearch 向量数据库,这是一项针对向量应用进行优化的新型无服务器服务。你提供文档和查询,我们负责处理嵌入和索引调优,以及底层基础设施。此外,我们还让它保持低成本并具备可扩展性。

对于新用户来说,这是最快让高质量向量搜索运行起来的方式。如果你已经在使用 Elasticsearch,那么这项新服务就是在你的数据已经存在的平台上提供向量搜索,无需再采用新的系统。Elasticsearch Vector Database 支持从为大语言模型(LLM)提供基础信息,到为 AI agent 提供检索和记忆,再到服务数千亿个向量等各种场景。创建一个新项目,几分钟即可开始使用。

一个引擎,覆盖所有向量使用场景

Elasticsearch Vector Database 专为任何使用向量构建应用的开发者而打造:

  • RAG :使用稠密向量和稀疏向量检索,为 LLM 获取正确的上下文;或者使用结合向量检索和词法检索的混合搜索。检索质量越高,生成结果的质量就越高。

  • **AI agent:**为 agent 提供对文档和对话记忆的快速、可过滤检索,以及多步骤 agent 循环所要求的低延迟。

  • **语义搜索:**根据含义而不是关键词进行匹配,只需使用一种字段类型,无需编写 pipeline 代码。

  • **推荐和相似度:**在产品、图像或你拥有的任何内容中,以大规模方式查找最近邻。

向量工作负载所需的一切,开箱即用完成优化

构建基于向量的应用意味着需要将多个独立组件连接起来:设置并托管嵌入模型,通过这些模型为文档建立索引,高效存储向量,将嵌入模型应用于每个查询,与向量存储进行匹配,最后获取匹配结果背后的文档。Elasticsearch Vector Database 将这一切全部为你处理,无需额外配置或设置。

使用 vectordb_document 索引模式进行向量索引

vectordb_document 索引模式是一种专门为向量优先工作负载设计的新索引配置,默认启用,因此你可以直接获得专家会选择的设置。它会启用以下功能:

  • 默认使用 bfloat16 :向量的存储大小只有 float32 的一半,同时对 recall 的影响可以忽略不计,因此即使还没有使用量化,也能将磁盘占用大致降低一半。

  • 排除 Source 中的向量 :在 Elasticsearch 中,你的嵌入已经存在于用于搜索的索引结构中;在 _source 中保留第二份原始副本只会增加存储空间,并降低结果获取速度。我们排除了这份重复数据,因此响应速度更快,存储需求也更低。

  • **预加载正确的文件到缓存:**向量查询首先访问的数据结构会提前加载到内存中,因此第一次查询和第一千次查询都能获得极快的速度。

  • **并行合并:**合并操作会将 segment 整合为组织更好的向量结构,从而提升 recall 和 latency;以多线程方式执行这些合并,可以更快完成这一过程。

向量存储、压缩和自动调优

  • 你的向量会自动进行压缩。Better Binary Quantization(BBQ)可以在保持 recall 的同时,将向量内存占用最多缩小 32 倍,而 DiskBBQ 可以进一步降低大规模工作负载的内存需求。

  • 选择启用自动校准,它会针对你的数据调整每个 segment 的量化方式,并在数据发生变化时的每次合并过程中重新进行调优。在 18 个数据集上的测试中,QPS 平均提升了 16.7%,并且大多数数据集的 recall 也有所提升。

通过托管 GPU 推理生成嵌入

混合搜索和过滤向量搜索

  • 混合搜索内置于系统中,可以在单个查询中结合全文检索和向量检索。你可以使用倒数排名融合(RRF)或其他任何你希望使用的融合机制来组合结果。向量搜索通常是混合搜索中最难正确配置的部分。使用 Elasticsearch Vector Database,这部分已经为你处理好,整个混合搜索技术栈也会因此得到提升。

  • 借助过滤向量搜索,可以将元数据过滤作为向量检索本身的一部分,而不是事后再进行过滤,从而避免严重影响 recall。

从第一天起就具备企业级能力

你还可以获得基于角色的访问控制(RBAC)、审计日志以及纯向量数据库通常缺乏的合规认证。

大规模部署,经济实惠且成本可预测

Elasticsearch Vector Database 的设计目标是随着你的规模增长依然保持经济实惠:BBQ 和 DiskBBQ 压缩能够保持存储空间线性增长并降低内存需求,因此扩展到数千亿个向量不会让你的账单失控。而你需要支付的费用基于你已经熟悉的指标:存储的数据量、索引数据量,以及所需的搜索容量。估算你的文档数量和向量维度,再加上查询负载,你就可以在创建项目之前计算出需要支付的费用。月底时,你还可以逐项查看账单。没有不透明的计算单元,也不会因为后台操作而产生意外费用。

如何开始使用 Elasticsearch Vector Database

创建无服务器向量数据库项目

在 Elastic Cloud 中创建一个新的无服务器 Vector Database 项目。将你的数据指向该 endpoint,然后就可以开始建立索引了。

使用 semantic_text 创建索引

向量索引模式会处理向量配置。使用 semantic_text 意味着嵌入和分块设置都会由系统为你管理,同时索引设置也会通过托管 GPU 推理完成,无需构建嵌入 pipeline。

复制代码
PUT my-vectors
{
  "mappings": {
    "properties": {
      "description": {
        "type": "semantic_text"
      }
    }
  }
}

注:在默认的情况下,在没有知道 inference_id 的情况下,它使用的是 .jina-embeddings-v5-text-small

复制代码
GET my-vectors/_mapping

{
  "my-vectors": {
    "mappings": {
      "properties": {
        "description": {
          "type": "semantic_text",
          "inference_id": ".jina-embeddings-v5-text-small"
        }
      }
    }
  }
}

摄取文档

将文本建立索引,嵌入会自动为你生成。

复制代码
POST /my-vectors/_doc
{
  "id": "park_rocky-mountain",
  "title": "Rocky Mountain",
  "description": "Bisected north to south by the Continental Divide, this portion of the Rockies has ecosystems varying from over 150 riparian lakes to montane and subalpine forests to treeless alpine tundra."
}

运行语义搜索查询

查询你刚刚创建的同一个语义字段:

复制代码
GET /my-vectors/_search
{
  "query": {
    "semantic": {
      "field": "description",
      "query": "a mountain range in the middle of north america"
    }
  }
}

你就会获得返回的结果:

复制代码
{
  "took": 80,
  "hits": {
    "max_score": 0.7792325,
    "hits": [
      {
        "_index": "my-vectors",
        "_score": 0.7792325,
        "_source": {
          "id": "park_rocky-mountain",
          "title": "Rocky Mountain",
          "description": "Bisected north to south by the Continental Divide, ..."
        }
      }
    ]
  }
}

语义搜索只是开始。你可以运行完整的文本查询,也可以将两者结合起来执行混合查询。你甚至可以自行构建向量查询,以获得完全的控制。请按照文档中的语义搜索快速入门操作,获取完整的使用说明。

Elasticsearch 中向量搜索的下一步

我们已经在着手进行下一步改进:

  • **更好的多租户处理:**如果你的数据需要按租户进行隔离,我们将提供一种更快、代码更少的实现方式。

  • **自动索引优化:**从"全新索引"到"完全优化",尽可能减少手动调优。

  • **持续改进基础设施:**持续调优 Vector Database 的设置和基础设施,让你始终获得最佳吞吐量和最快响应速度。

在 Elastic Cloud Serverless 上尝试 Elasticsearch Vector Database

从一个空项目开始,只需几分钟即可完成混合、过滤向量查询,并由生产级默认配置自动为你完成调优。快速构建可扩展的 AI 应用,而不是基础设施。

立即从 Elastic Cloud Serverless 开始,或者深入了解完整文档和API 参考。

原文:Elasticsearch Vector Database: Serverless search for RAG and agents | Elasticsearch Labs

相关推荐
动恰客流统计4 小时前
景区客流统计怎么做?兼顾管控与运营的实施方案解析
大数据·前端·人工智能
weixin_443883014 小时前
合规整改倒计时:高等级签名证书的应用场景
大数据·人工智能·法大大·法大大电子签·电子合同
优化Henry5 小时前
LTE 载波频率与频点配置详解
运维·网络·学习·5g·信息与通信
笨小孩@GF 知行合一5 小时前
易语言-高级应用
数据库·编程·易语言·中文编程
代码方舟6 小时前
数据科学风控实战:基于天远全能消金报告构建自动化信用评估网关
运维·人工智能·自动化
科力锐品牌君6 小时前
应用级灾备 | 海量非结构化数据如何实现高效数据保护
linux·运维·网络·安全·系统安全·数据安全·灾备
KaiwuDB6 小时前
KaiwuDB 运维实战04:DRBD + KaiwuDB——物联网场景下的低成本数据库高可用方案
运维·数据库·物联网·时序数据库·kaiwudb·aiot·多模数据库
dozenyaoyida6 小时前
AI与大模型新闻日报 | 2026-09-30
大数据·人工智能·大模型·新闻
福建佰胜张工7 小时前
A5E00839230西门子工业核心配件详解:参数、安装调试与故障运维全攻略
运维·网络·安全·自动化