拓十年匠心定制 · 商业建站与技术教学双线并行 咨询热线:400-886-1026 service@lmnt.cn
ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

Rag评测-链接数据库

Rag评测-链接数据库

前面已经讲了如何配置config.yaml和config.py,那么现在讲怎么链接es数据库和mangodb数据库吧。

#链接mongodb from config import configs from pymongo import mongoclient def get_mongo(): conf= configs["mongodb"] return MongoClient( host=conf["host"] port=conf["port"] username= conf["username"] password=conf["password"] ) print("mango库列表:",get_mongo().list_database_names())

大家使用这个代码前肯定是要pip install pymango这个库的,然后运行,就可能大概率报错了😛,其实代码没问题,而是在安装pymongo时系统会自动安装最新版本的mongodb驱动,而你使用的mongo数据库版本较老的话,会报"pymongo.erros.ConfigurationError:Server report wire version 7",这是版本不适配的意思,所以已经安装了驱动的话就先pip uninstall卸载,没有安装的,就先查看自己使用的mongodb版本是多少,再用ai问一下适配这个mongodb版本的pymongo库装什么版本合适,然后执行pip install pymongo==版本号即可,链接成功的话可以看到这个数据库中的库名。
然后开始链接es数据库,接上代码直接写;

#链接es from elasticsearch import Elasticsearch es=Elasticsearch( host=[configs["es"]["url"]] http_auth=(configs["es"]["username"],configs ["es"]["password"]), verify_certs=False,#不检验ssl证书,检验必失败 ssl_show_warn=False#把没检验证书的警告静音,不然会刷屏 ) print("ES集群名:", es.info()["cluster_name"])

其实链接es库的时候真是折腾了好久,使用ai写的时候,ai一直使用request.post的方式去链接es库,但是网关会把request请求当做是外来请求,直接拒绝接入,所以ai也搞得晕头转向的,后面发现只要调用一个elasticsearch库去链接这么简单,当然也需要和mongodb库一样注意版本,版本不对会则会报错("TypeError:…unexpected keyword argument ‘http_auth’"),如果公司es数据库版本低,则es库需要降级处理,具体的也可以问ai使用什么版本的驱动合适,只要链接成功即可返回正确的集群名。
下一篇就开始讲构建query集的模型层了,祝大家2026年国庆节快乐🙂

返回列表