Link Search Menu Expand Document Documentation Menu

神经搜索 API

神经网络搜索插件提供多个 API 用于监控语义和混合搜索功能。

统计

神经网络搜索统计 API 提供关于神经网络搜索插件当前状态的信息。这包括集群级和节点级统计数据。集群级统计数据对整个集群有一个单一值。节点级统计数据对集群中的每个节点有一个单一值。

默认情况下,神经网络搜索统计 API 通过集群设置禁用。要启用统计数据收集,请使用以下命令

PUT /_cluster/settings
{
  "persistent": {
    "plugins.neural_search.stats_enabled": "true"
  }
}

要禁用统计数据收集,请将集群设置设为 false。禁用时,所有值都将重置,并且不会收集新的统计数据。

端点

GET /_plugins/_neural/stats
GET /_plugins/_neural/stats/<stats>
GET /_plugins/_neural/<nodes>/stats
GET /_plugins/_neural/<nodes>/stats/<stats>

路径参数

下表列出了可用的路径参数。所有路径参数均为可选。

参数 数据类型 描述
节点 字符串 一个或多个(逗号分隔)节点,用于按节点过滤统计数据。默认为所有节点。
统计数据 字符串 要返回的一个或多个(逗号分隔)统计名称。默认为所有统计数据。

查询参数

下表列出了可用的查询参数。所有查询参数都是可选的。

参数 数据类型 描述
include_metadata 布尔型 当为 true 时,为每个统计数据包含额外的元数据字段(参见 可用元数据)。默认为 false
flat_stat_paths 布尔型 当为 true 时,扁平化 JSON 响应结构以方便解析。默认为 false
include_individual_nodes 布尔型 当为 true 时,在 nodes 类别中包含各个节点的统计数据。当为 false 时,从响应中排除 nodes 类别。默认为 true
include_all_nodes 布尔型 当为 true 时,在 all_nodes 类别中包含所有节点聚合的统计数据。当为 false 时,从响应中排除 all_nodes 类别。默认为 true
include_info 布尔型 当为 true 时,在 info 类别中包含集群范围的信息。当为 false 时,从响应中排除 info 类别。默认为 true

参数交互

请求示例

GET /_plugins/_neural/node1,node2/stats/stat1,stat2?include_metadata=true,flat_stat_paths=true

示例响应

响应
GET /_plugins/_neural/stats/
{
	"_nodes": {
		"total": 1,
		"successful": 1,
		"failed": 0
	},
	"cluster_name": "integTest",
	"info": {
		"cluster_version": "3.1.0",
		"processors": {
			"search": {
				"hybrid": {
					"comb_geometric_processors": 0,
					"comb_rrf_processors": 0,
					"norm_l2_processors": 0,
					"norm_minmax_processors": 0,
					"comb_harmonic_processors": 0,
					"comb_arithmetic_processors": 0,
					"norm_zscore_processors": 0,
					"rank_based_normalization_processors": 0,
					"normalization_processors": 0
				},
				"rerank_ml_processors": 0,
				"rerank_by_field_processors": 0,
				"neural_sparse_two_phase_processors": 0,
				"neural_query_enricher_processors": 0
			},
			"ingest": {
				"sparse_encoding_processors": 0,
				"skip_existing_processors": 0,
				"text_image_embedding_processors": 0,
				"text_chunking_delimiter_processors": 0,
				"text_embedding_processors_in_pipelines": 0,
				"text_chunking_fixed_token_length_processors": 0,
				"text_chunking_fixed_char_length_processors": 0,
				"text_chunking_processors": 0
			}
		}
	},
	"all_nodes": {
		"query": {
			"hybrid": {
				"hybrid_query_with_pagination_requests": 0,
				"hybrid_query_with_filter_requests": 0,
				"hybrid_query_with_inner_hits_requests": 0,
				"hybrid_query_requests": 0
			},
			"neural": {
				"neural_query_against_semantic_sparse_requests": 0,
				"neural_query_requests": 0,
				"neural_query_against_semantic_dense_requests": 0,
				"neural_query_against_knn_requests": 0
			},
			"neural_sparse": {
				"neural_sparse_query_requests": 0
			}
		},
		"semantic_highlighting": {
			"semantic_highlighting_request_count": 0
		},
		"processors": {
			"search": {
				"neural_sparse_two_phase_executions": 0,
				"hybrid": {
					"comb_harmonic_executions": 0,
					"norm_zscore_executions": 0,
					"comb_rrf_executions": 0,
					"norm_l2_executions": 0,
					"rank_based_normalization_processor_executions": 0,
					"comb_arithmetic_executions": 0,
					"normalization_processor_executions": 0,
					"comb_geometric_executions": 0,
					"norm_minmax_executions": 0
				},
				"rerank_by_field_executions": 0,
				"neural_query_enricher_executions": 0,
				"rerank_ml_executions": 0
			},
			"ingest": {
				"skip_existing_executions": 0,
				"text_chunking_fixed_token_length_executions": 0,
				"sparse_encoding_executions": 0,
				"text_chunking_fixed_char_length_executions": 0,
				"text_chunking_executions": 0,
				"text_embedding_executions": 0,
				"semantic_field_executions": 0,
				"semantic_field_chunking_executions": 0,
				"text_chunking_delimiter_executions": 0,
				"text_image_embedding_executions": 0
			}
		}
	},
	"nodes": {
		"_cONimhxS6KdedymRZr6xg": {
			"query": {
				"hybrid": {
					"hybrid_query_with_pagination_requests": 0,
					"hybrid_query_with_filter_requests": 0,
					"hybrid_query_with_inner_hits_requests": 0,
					"hybrid_query_requests": 0
				},
				"neural": {
					"neural_query_against_semantic_sparse_requests": 0,
					"neural_query_requests": 0,
					"neural_query_against_semantic_dense_requests": 0,
					"neural_query_against_knn_requests": 0
				},
				"neural_sparse": {
					"neural_sparse_query_requests": 0
				}
			},
			"semantic_highlighting": {
				"semantic_highlighting_request_count": 0
			},
			"processors": {
				"search": {
					"neural_sparse_two_phase_executions": 0,
					"hybrid": {
						"comb_harmonic_executions": 0,
						"norm_zscore_executions": 0,
						"comb_rrf_executions": 0,
						"norm_l2_executions": 0,
						"rank_based_normalization_processor_executions": 0,
						"comb_arithmetic_executions": 0,
						"normalization_processor_executions": 0,
						"comb_geometric_executions": 0,
						"norm_minmax_executions": 0
					},
					"rerank_by_field_executions": 0,
					"neural_query_enricher_executions": 0,
					"rerank_ml_executions": 0
				},
				"ingest": {
					"skip_existing_executions": 0,
					"text_chunking_fixed_token_length_executions": 0,
					"sparse_encoding_executions": 0,
					"text_chunking_fixed_char_length_executions": 0,
					"text_chunking_executions": 0,
					"text_embedding_executions": 0,
					"semantic_field_executions": 0,
					"semantic_field_chunking_executions": 0,
					"text_chunking_delimiter_executions": 0,
					"text_image_embedding_executions": 0
				}
			}
		}
	}
}

如果 include_metadatatrue,则每个统计对象都包含额外的元数据

{
    ...,
    "text_embedding_executions": {
      "value": 0,
      "stat_type": "timestamped_event_counter",
      "trailing_interval_value": 0,
      "minutes_since_last_event": 29061801
    },
    ...
}

有关更多信息,请参阅 可用元数据

响应正文字段

以下部分描述了响应正文字段。

统计类别

下表列出了所有统计类别。

类别 数据类型 描述
信息 对象 包含集群范围的信息和不特定于单个节点的统计数据。
所有节点 对象 提供集群中所有节点的聚合统计数据。
节点 对象 包含节点特定统计数据,每个节点由其唯一的节点 ID 标识。

可用统计数据

下表列出了可用的统计数据。对于路径前缀为 nodes.<node_id> 的统计数据,聚合的集群级统计数据也可以在相同路径前缀 all_nodes 下获得。

统计名称 类别 类别中的统计路径 描述
cluster_version 信息 cluster_version 集群版本。

信息统计数据:处理器

统计名称 类别 类别中的统计路径 描述
text_embedding_processors_in_pipelines 信息 processors.ingest.text_embedding_processors_in_pipelines 摄取管道中 text_embedding 处理器数量。
sparse_encoding_processors 信息 processors.ingest.sparse_encoding_processors 摄取管道中 sparse_encoding 处理器数量。
skip_existing_processors 信息 processors.ingest.skip_existing_processors 摄取管道中 skip_existing 设置为 true 的处理器数量。
text_image_embedding_processors 信息 processors.ingest.text_image_embedding_processors 摄取管道中 text_image_embedding 处理器数量。
text_chunking_delimiter_processors 信息 processors.ingest.text_chunking_delimiter_processors 摄取管道中使用 delimiter 算法的 text_chunking 处理器数量。
text_chunking_fixed_token_length_processors 信息 processors.ingest.text_chunking_fixed_token_length_processors 摄取管道中使用 fixed_token_length 算法的 text_chunking 处理器数量。
text_chunking_fixed_char_length_processors 信息 processors.ingest.text_chunking_fixed_char_length_processors 摄取管道中使用 fixed_character_length 算法的 text_chunking 处理器数量。
text_chunking_processors 信息 processors.ingest.text_chunking_processors 摄取管道中 text_chunking 处理器数量。
rerank_ml_processors 信息 processors.search.rerank_ml_processors 搜索管道中 ml_opensearch 类型的 rerank 处理器数量。
rerank_by_field_processors 信息 processors.search.rerank_by_field_processors by_field 类型的 rerank 处理器数量。
neural_sparse_two_phase_processors 信息 processors.search.neural_sparse_two_phase_processors 搜索管道中 neural_sparse_two_phase_processor 处理器数量。
neural_query_enricher_processors 信息 processors.search.neural_query_enricher_processors 搜索管道中 neural_query_enricher 处理器数量。

信息统计数据:混合处理器

统计名称 类别 类别中的统计路径 描述
normalization_processors 信息 processors.search.hybrid.normalization_processors normalization-processor 处理器数量。
norm_minmax_processors 信息 processors.search.hybrid.norm_minmax_processors normalization.technique 设置为 min_maxnormalization-processor 处理器数量。
norm_l2_processors 信息 processors.search.hybrid.norm_l2_processors normalization.technique 设置为 l2normalization-processor 处理器数量。
norm_zscore_processors 信息 processors.search.hybrid.norm_zscore_processors normalization.technique 设置为 z_scorenormalization-processor 处理器数量。
comb_arithmetic_processors 信息 processors.search.hybrid.comb_arithmetic_processors combination.technique 设置为 arithmetic_meannormalization-processor 处理器数量。
comb_geometric_processors 信息 processors.search.hybrid.comb_geometric_processors combination.technique 设置为 geometric_meannormalization-processor 处理器数量。
comb_harmonic_processors 信息 processors.search.hybrid.comb_harmonic_processors combination.technique 设置为 harmonic_meannormalization-processor 处理器数量。
rank_based_normalization_processors 信息 processors.search.hybrid.rank_based_normalization_processors score-ranker-processor 处理器数量。
comb_rrf_processors 信息 processors.search.hybrid.comb_rrf_processors combination.technique 设置为 rrfscore-ranker-processor 处理器数量。

节点级统计数据:处理器

统计名称 类别 类别中的统计路径 描述
text_embedding_executions nodes, all_nodes processors.ingest.text_embedding_executions text_embedding 处理器执行次数。
skip_existing_executions nodes, all_nodes processors.ingest.skip_existing_executions skip_existing 设置为 true 的处理器执行次数。
text_chunking_fixed_token_length_executions nodes, all_nodes processors.ingest.text_chunking_fixed_token_length_executions 使用 fixed_token_length 算法的 text_chunking 处理器执行次数。
sparse_encoding_executions nodes, all_nodes processors.ingest.sparse_encoding_executions sparse_encoding 处理器执行次数。
text_chunking_fixed_char_length_executions nodes, all_nodes processors.ingest.text_chunking_fixed_char_length_executions 使用 fixed_character_length 算法的 text_chunking 处理器执行次数。
text_chunking_executions nodes, all_nodes processors.ingest.text_chunking_executions text_chunking 处理器执行次数。
semantic_field_executions nodes, all_nodes processors.ingest.semantic_field_executions semantic 字段系统处理器执行次数。
semantic_field_chunking_executions nodes, all_nodes processors.ingest.semantic_field_chunking_executions semantic 字段系统分块处理器执行次数。
text_chunking_delimiter_executions nodes, all_nodes processors.ingest.text_chunking_delimiter_executions 使用 delimiter 算法的 text_chunking 处理器执行次数。
text_image_embedding_executions nodes, all_nodes processors.ingest.text_image_embedding_executions text_image_embedding 处理器执行次数。
neural_sparse_two_phase_executions nodes, all_nodes processors.search.neural_sparse_two_phase_executions neural_sparse_two_phase_processor 处理器执行次数。
rerank_by_field_executions nodes, all_nodes processors.search.rerank_by_field_executions by_field 类型的 rerank 处理器执行次数。
neural_query_enricher_executions nodes, all_nodes processors.search.neural_query_enricher_executions neural_query_enricher 处理器执行次数。
rerank_ml_executions nodes, all_nodes processors.search.rerank_ml_executions ml_opensearch 类型的 rerank 处理器执行次数。

节点级统计数据:混合处理器

统计名称 类别 类别中的统计路径 描述
normalization_processor_executions nodes, all_nodes processors.search.hybrid.normalization_processor_executions normalization-processor 处理器执行次数。
rank_based_normalization_processor_executions nodes, all_nodes processors.search.hybrid.rank_based_normalization_processor_executions score-ranker-processor 处理器执行次数。
comb_harmonic_executions nodes, all_nodes processors.search.hybrid.comb_harmonic_executions combination.technique 设置为 harmonic_meannormalization-processor 处理器执行次数。
norm_zscore_executions nodes, all_nodes processors.search.hybrid.norm_zscore_executions normalization.technique 设置为 z_scorenormalization-processor 处理器执行次数。
comb_rrf_executions nodes, all_nodes processors.search.hybrid.comb_rrf_executions combination.technique 设置为 rrfscore-ranker-processor 处理器执行次数。
norm_l2_executions nodes, all_nodes processors.search.hybrid.norm_l2_executions normalization.technique 设置为 l2normalization-processor 处理器执行次数。
comb_arithmetic_executions nodes, all_nodes processors.search.hybrid.comb_arithmetic_executions combination.technique 设置为 arithmetic_meannormalization-processor 处理器执行次数。
comb_geometric_executions nodes, all_nodes processors.search.hybrid.comb_geometric_executions combination.technique 设置为 geometric_meannormalization-processor 处理器执行次数。
norm_minmax_executions nodes, all_nodes processors.search.hybrid.norm_minmax_executions normalization.technique 设置为 min_maxnormalization-processor 处理器执行次数。

节点级统计数据:查询

统计名称 类别 类别中的统计路径 描述
hybrid_query_with_pagination_requests nodes, all_nodes query.hybrid.hybrid_query_with_pagination_requests 带分页的 hybrid 查询请求数量。
hybrid_query_with_filter_requests nodes, all_nodes query.hybrid.hybrid_query_with_filter_requests 带过滤器的 hybrid 查询请求数量。
hybrid_query_with_inner_hits_requests nodes, all_nodes query.hybrid.hybrid_query_with_inner_hits_requests 带内部命中的 hybrid 查询请求数量。
hybrid_query_requests nodes, all_nodes query.hybrid.hybrid_query_requests hybrid 查询请求总数。
neural_query_against_semantic_sparse_requests nodes, all_nodes query.neural.neural_query_against_semantic_sparse_requests 针对语义稀疏字段的 neural 查询请求数量。
neural_query_requests nodes, all_nodes query.neural.neural_query_requests neural 查询请求总数。
neural_query_against_semantic_dense_requests nodes, all_nodes query.neural.neural_query_against_semantic_dense_requests 针对语义密集字段的 neural 查询请求数量。
neural_query_against_knn_requests nodes, all_nodes query.neural.neural_query_against_knn_requests 针对 k-NN 字段的 neural 查询请求数量。
neural_sparse_query_requests nodes, all_nodes query.neural_sparse.neural_sparse_query_requests neural_sparse 查询请求数量。

节点级统计数据:语义高亮

统计名称 类别 类别中的统计路径 描述
semantic_highlighting_request_count nodes, all_nodes semantic_highlighting.semantic_highlighting_request_count semantic 高亮请求数量。

可用元数据

include_metadatatrue 时,响应中的字段值将替换为其各自的元数据对象,其中包含有关统计类型的信息,如下表所述。

统计类型 描述
信息字符串 提供信息内容(如版本或名称)的基本字符串值。参见 info_string
信息计数器 表示静态或缓慢变化数值的数字计数器。参见 info_counter
带时间戳的事件计数器 跟踪随时间变化的事件的计数器,包括关于近期活动的信息。参见 timestamped_event_counter

info_string 对象包含以下元数据字段。

元数据字段 数据类型 描述
字符串 统计数据的实际字符串值。
stat_type 字符串 始终设置为 info_string

info_counter 对象包含以下元数据字段。

元数据字段 数据类型 描述
整数 当前计数值。
stat_type 字符串 始终设置为 info_counter

timestamped_event_counter 对象包含以下元数据字段。

元数据字段 数据类型 描述
整数 自节点启动以来发生的事件总数。
stat_type 字符串 始终设置为 timestamped_event_counter
trailing_interval_value 整数 过去 5 分钟内发生的事件数量。
minutes_since_last_event 整数 自上次记录事件以来的时间量(分钟)。
剩余 350 字符

有问题?

想贡献?