Elasticsearch(实践2)链接库产生TLS验证安全性报错

文章讲述了在使用ElasticsearchStore时遇到的SSL/TLS证书验证失败问题,提供了两种解决方案:一是通过添加`es_params`字典禁用证书验证,二是使用Elasticsearch类直接连接,以及如何在验证阶段忽略警告。
摘要由CSDN通过智能技术生成

问题:

  File "/home/server/miniconda3/envs/rag/lib/python3.8/site-packages/elastic_transport/_transport.py", line 328, in perform_request
    meta, raw_data = node.perform_request(
  File "/home/server/miniconda3/envs/rag/lib/python3.8/site-packages/elastic_transport/_node/_http_urllib3.py", line 202, in perform_request
    raise err from None
elastic_transport.TlsError: TLS error caused by: TlsError(TLS error caused by: SSLError([SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: self-signed certificate in certificate chain (_ssl.c:1131)))

当前,ElasticVectorSearch和 ElasticKNNSearch 为旧版 ,这里直接使用新版ElasticsearchStore

修改前:

    es_connection = ElasticsearchStore(
        embedding=embedings_h,
        index_name="hello-index",
        es_url = "https://192.168.0.133:9200",
        es_user = "elastic",
        es_password = "cwr9De0nHWPT27QyJMf+",
        distance_strategy = 'COSINE',
   
    )

添加 es_params = {"ca_certs":False,"verify_certs" : False} 字段即可

    es_connection = ElasticsearchStore(
        embedding=embedings_h,
        index_name="hello-index",
        es_url = "https://192.168.0.133:9200",
        es_user = "elastic",
        es_password = "cwr9De0nHWPT27QyJMf+",
        distance_strategy = 'COSINE',
        es_params = {"ca_certs":False,"verify_certs" : False},
    )
    

当前为快速验证阶段,不想看警告信息,可添加到头部

import urllib3
urllib3.disable_warnings()

上述方式如果不行,可以尝试使用以下方式:

es_con = Elasticsearch(
        [{'host': '192.168.0.175', 'port': 9200, 'scheme': 'http'}],
        basic_auth=('elastic', 'PXgjw66hQHSq60SzXmCO')
    )   
def get_collention(dataset_index_name,query_field,vector_query_field):
    es_connection = ElasticsearchStore(
    embedding= embedings_model,
    index_name= dataset_index_name,
    # es_url = "https://192.168.0.175:9200",
    # es_user = "elastic",
    # es_password = "PXgjw66hQHSq60SzXmCO",
    es_connection = es_con,
    distance_strategy = 'COSINE',
    query_field=f"{query_field}",
    vector_query_field =f"{vector_query_field}",
    strategy= ElasticsearchStore.ExactRetrievalStrategy(),
    )
    return es_connection

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

瑾怀轩

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值