ElasticSearch中使用向量和关键词联合检索

ops/2024/9/23 20:24:43/

注:案例测试数据及其索引构建详见:ElasticSearch中使用bge-large-zh-v1.5进行向量检索(一)-CSDN博客 中的第三部分。

假设任务场景为:用“新疆”向量检索相关的数据,同时需要匹配关键词“巴州”。

首先获取“新疆”的bge-large-zh-v1.5向量:

POST _ml/trained_models/bge-large-zh-v1.5/_infer
{"docs": [{"text_field": "新疆"}]
}

结果如下:

直接根据“新疆”向量查询

GET article_embeddings/_search
{"query": {"knn": {"field": "text_embedding.predicted_value","num_candidates": 10,"query_vector": [-0.03627504035830498,-0.007771393284201622,0.036312565207481384,此处省略若干值]}}
}

默认返回所有的数据,且编号002的文档排在003前面。

如果我们想让包含关键词“巴州”的003文档排在002的前面,可以采用加filter的方式:

编写相应语句:

GET article_embeddings/_search
{"knn": {"field": "text_embedding.predicted_value","num_candidates": 10,"filter": {"match": {"title": "巴州"}},"query_vector": [-0.03627504035830498,-0.007771393284201622,0.036312565207481384,此处省略若干值]}
}

结果如下:

此时发现最终只剩一条满足title中有“巴州”的文档了。

如果只是想把含有“巴州”的文档提前,不过滤,则可以采用如下的方式:

GET article_embeddings/_search
{"query": {"match": {"title": "巴州"}},"knn": {"field": "text_embedding.predicted_value","num_candidates": 10,"query_vector": [-0.03627504035830498,-0.007771393284201622,0.036312565207481384,此处省略若干值]}
}

效果如下:


http://www.ppmy.cn/ops/6772.html

相关文章

3d模型渲染怎么会没材质---模大狮模型网

在进行3D模型渲染时,有时会遇到材质丢失的问题,这可能会给设计师们带来一些困扰。材质是渲染的重要组成部分,它们赋予了模型真实感和视觉吸引力。然而,当模型在渲染过程中出现没有材质的情况时,可能会导致最终效果不如…

Matlab-AMF算法(自适应中值滤波Adaptive Median Filtering)

作者:翟天保Steven 版权声明:著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处 实现原理 AMF(Adaptive Median Filter,自适应中值滤波)是一种用于图像处理和信号处理的滤波算…

TC38X GTM模块MCS学习笔记

博世的GTM IP 模块为汽车产业的复杂应用提供了通用定时器平台,诸如动力传动、动力转向、底盘和传输控制等。GTM提供了多种不同的定时器功能,例如:计数器、多功能捕捉/比较、PWM功能、占空比测量等。GTM还兼具类似RISC的可编程内核MCS&#xf…

2024五一杯数学建模C题思路分析

文章目录 1 赛题思路2 比赛日期和时间3 组织机构4 建模常见问题类型4.1 分类问题4.2 优化问题4.3 预测问题4.4 评价问题 5 建模资料 1 赛题思路 (赛题出来以后第一时间在CSDN分享) https://blog.csdn.net/dc_sinor?typeblog 2 比赛日期和时间 报名截止时间:2024…

Android Studio 之 Intent及其参数传递

一、Intent 显式Intent:通过组件名指定启动的目标组件,比如startActivity(new Intent(A.this,B.class)); 每次启动的组件只有一个~隐式Intent:不指定组件名,而指定Intent的Action,Data,或Category,当我们启动组件时, 会去匹配AndroidManifest.xml相关组件的Intent-…

Ctrl + B 复制图片Base64

简介 这是一个专为Windows系统设计的工具,用于快速获取资源管理器(文件夹)中选中图片文件的Base64编码。 背景 由于工作需求经常需要获取图片的Base64并粘贴到postman中调用接口。最开始的做法是使用在线工具将图片转换为Base64编码&#…

PlistEdit Pro for Mac激活版:强大的Plist文件编辑工具

PlistEdit Pro for Mac是一款专为Mac用户设计的强大Plist文件编辑工具。Plist文件是苹果公司开发的一种XML文件格式,用于存储应用程序的配置信息和数据。这款软件为用户提供了直观、易用的界面,使编辑和管理Plist文件变得轻松简单。 PlistEdit Pro for M…

web配置https

Tomcat8 配置: 1.单向认证,就是传输的数据加密过了,但是不会校验客户端的来源 2.双向认证,如果客户端浏览器没有导入客户端证书,是访问不了web系统的,找不到地址 如果只是加密,我感觉单向就行…