ES实战-相关性搜索

ES打分机制

1.TF-IDF 词频-逆文档频率

2.Okapi BM25

3.随机性分歧- DFR相似度

4.基于信息 - IB相似度

5.LM Dirichlet 相似度

6.LM Jelinek Mercer相似度
解释一个查询的结果集

bash 复制代码
curl -XPOST 'localhost:9200/get-together/_search?pretty' -H 'Content-Type: application/json' -d '
{
  "query": {
    "match": {
      "description": "elasticsearch"
    }
  },
  "explain": true
}'

使用function_score来定制得分

bash 复制代码
#在description字段中匹配到hadoop
#和logstash的文档,分数就乘以2或3
POST /get-together/_search
{
  "query": {
    "function_score": {
      "query": {
        "match": {
          "description": "elasticsearch"
        }
      },
      "functions": [
        {
          "weight": 2,
          "filter": {
            "term": {
              "description": "hadoop"
            }
          }
        },
        {
          "weight": 3,
          "filter": {
            "term": {
              "description": "logstash"
            }
          }
        }
      ]
    }
  }
}

合并得分

1.每个单独函数得分合并 score_mode

multiply,sum,avg,first,max,min

2.函数得分和原始得分合并 boost_mode

sum,avg,max,min,replace

相关推荐
努力努力再努力wz3 分钟前
【内存管理与高并发内存池系列】从 mmap 到 malloc:文件映射、匿名映射与 glibc 内存分配机制详解
linux·c语言·数据结构·数据库·c++·qt·链表
Jurio.43 分钟前
开源 Codex Sticky:在终端 Codex CLI 长对话中始终固定底部输入框
linux·rust·github·开源软件·codex·codex cli
无足鸟ICT1 小时前
【RHCA+】撤销和恢复撤销快捷键
linux
质造者1 小时前
LangChain + Ollama + Tavily 实现旅游问答系统
linux·人工智能·python·langchain·rag
starvapour1 小时前
Ubuntu部署gitlab频繁出现502的问题
linux·ubuntu·gitlab
Java 码思客1 小时前
【ElasticSearch从入门到架构师】第1章:ElasticSearch 核心认知与行业定位
大数据·elasticsearch·搜索引擎
zhangfeng11332 小时前
ps aux讲解,结合国家超算中心 hpc apptainer
linux·服务器·网络
夜月yeyue2 小时前
STM32 DMA 双缓冲采样
linux·stm32·单片机·嵌入式硬件·系统架构
ScilogyHunter2 小时前
Buildroot完全指南:从入门到实战
linux·嵌入式·buildroot
毕竟是shy哥3 小时前
Claude Code 接入 DeepSeek 保姆级教程,WSL/Linux 通用
linux·安装教程·codex·deepseek·claude code·openclaw