|
|
|
@ -177,10 +177,12 @@ class EsSearchUtil:
|
|
|
|
|
vector_int = 0
|
|
|
|
|
for hit in vector_results['hits']['hits']:
|
|
|
|
|
if hit['_score'] > 0.6: # 阀值0.6
|
|
|
|
|
logger.info(f" {vector_int + 1}. 文档ID: {hit['_id']}, 相似度分数: {hit['_score']:.2f}")
|
|
|
|
|
logger.info(f" 内容: {hit['_source']['user_input']}")
|
|
|
|
|
filtered_vector_hits.append(hit)
|
|
|
|
|
vector_int += 1
|
|
|
|
|
# 新增语义相关性检查
|
|
|
|
|
if all(word in hit['_source']['user_input'] for word in jieba.lcut(query)):
|
|
|
|
|
logger.info(f" {vector_int + 1}. 文档ID: {hit['_id']}, 相似度分数: {hit['_score']:.2f}")
|
|
|
|
|
logger.info(f" 内容: {hit['_source']['user_input']}")
|
|
|
|
|
filtered_vector_hits.append(hit)
|
|
|
|
|
vector_int += 1
|
|
|
|
|
|
|
|
|
|
# 更新vector_results只包含通过过滤的文档
|
|
|
|
|
vector_results['hits']['hits'] = filtered_vector_hits
|
|
|
|
|