当前位置:首页>python>6python之ES速度测试及专家诊断联网搜索研究

6python之ES速度测试及专家诊断联网搜索研究

  • 2026-10-11 07:47:57
6python之ES速度测试及专家诊断联网搜索研究

写在前面的话

客气的哥。上个礼拜,正准备去图书馆,堂哥说他在昌平。我说,来昌平做生意吗,上次你不是说在天津吗。哥说:给你侄女来看个技术学校,想着让她学个技术。我说:时间过的真快啊,上次见还是不大一点,现在都出来读大学了。我看了堂哥发的位置,想着中午时请堂哥他们吃个饭,好久没见了,见面聊聊,随后,堂哥说,想让我帮忙查查这个学校每天回怀柔的话,坐公交应该是哪个路线。我查了一下,大概两个小时,在北京这边应该还可以。又过了一个小时,堂哥说,他们回去了,现在上高速了。我说,你们走太快了,想着中午请你们吃个饭呢。堂哥说,以后有的是机会,以后再说。觉得堂哥太客气了,不想给我添麻烦,真是一个客气的哥啊。我感觉自己也是挺奇怪的,有时亲戚找我,我觉得挺麻烦。他们来了不找我,还挺失落。慢慢调节吧,也许这就是生活。

[229+100]-------->底部有张生活照(头条号运营:大家想全托管上号的联系我哦,每天让你得个早餐钱,wx: qhz198607)

关键词:python、小程序、web端、专家诊断

一、ubuntu上安装cpython-3.13.2(三级)

描述:要安装cpython-3.13.2+freethreaded-linux-x86_64-gnu 及虚拟环境。

开工:

第一步:虚拟环境(四级)

20250408周二时间段:21:01-21:30

安装扩展:

.venv/bin/pip install numpy

注:安装成功截图如下:

图6a-1

第二步:测试(四级)

测试还可以

二、ES速度(三级)

描述:现在es做了分片,看下查询速度提上来没有。

开工:

第一步:测试速度(四级)

20250408周二时间段:23:03-00:00
20250409周三时间段:09:50-10:00

测试下es速度,效果如下:

图6a-2

注:现在查询还是慢,需要9分钟。排查下原因。

第二步:排查原因(四级)

20250409周三时间段:10:03-11:00

三、专家诊断(三级)

描述:用测试用例测下专家诊断,看下效果会不会好一点。

开工:

第一步:跑测试用例(四级)

20250409周三时间段:10:15-11:00

试了一下,发现是可以的,运行ragflow,为什么,因为虚拟环境没有动,如果重新uv sync,可能就报错了,接下来,运行专家诊断测试用例,看下有没有问题。

运行专家诊断,测试用例如下:

def test_expert_diagnosis(client):
    log.info("test_expert_diagnosis")
    '''
    测试专家诊断--主要为了测试es的速度
    '''
    json_data = {    
        "conversation_id": 'fff19f22fc0111efa7f900e003c42347',
        "question": '我家狗拉肚子'
    }

    url = f"/v1/conversation/expert_diagnosis"
    resp = client.post(
        url,
        json=json_data,
        headers={
            "Content-type": "application/json",
            "Authorization": "Bearer ragflow-UxOGYzZjUwYjMwOTExZWZiODc0MDI0Mm"
        }
    )
    if not 200 <= resp.status_code < 300:
        raise Exception(f"GET {url} status_code {resp.status_code}.")

    # received_data = []
    for chunk in resp.iter_encoded():
        answer = chunk.decode('utf-8').strip()
        log.info(f"\n\n answer: {answer} \n\n")      

 注:因为龙哥正在跑批,会影响es效率,先不测,做下联网搜索。

第二步:联网搜索(四级)

20250409周三时间段:11:15-12:00

看下联网搜索需要传什么参数。

先跑测试用例,

第三步:专家诊断测试用例(四级)

20250409周三时间段:16:43-17:00
20250409周三时间段:18:26-19:00

跑的截图如下:

图6c-1

注:为啥问基础问题去了,这是一个问题。还有,就是下面这个截图,如下:

图6c-2

注:这个连接超时了,看下这个查询语句,如下:

query:{"knn": {"field": "q_4096_vec", "k": 128, "num_candidates": 256, "query_vector": [6.1073222160339355, -1.404711365699768, 1.6913169622421265, 1.3805965185165405, -2.808076858520508, -4.008290767669678, -3.010448932647705, -9.411792755126953, 4.551467418670654, 1.8493108749389648, "..."], "filter": {"bool": {"filter": [{"terms": {"kb_id": ["bf5b0a6eff1211ef94e1acde48001122"]}}, {"term": {"knowledge_graph_kwd": "relation"}}]}}, "similarity": 0.6}, "from": 0, "size": 56} 

注:接下来,看一下这个语句,查查原因,为啥这么慢。

四、zero3上ragflow启动(三级)

描述:现在zero3上ragflow启动不起来了,看下什么原因。

开工:

第一步:复现问题(四级)

20250409周三时间段:15:13-16:00

问题截图如下:

图6d-1

注:问下deepseek,如下:

这个错误 No module named '_sqlite3' 通常是因为 Python 在编译安装时没有正确链接 SQLite 库,导致标准库中的 sqlite3 模块不可用。以下是解决方法:


原因分析

  1. Python 编译时缺少 SQLite 支持

    • 你的 Python 3.12.9 可能是通过 pyenv 或其他方式手动编译安装的,但编译时系统缺少 sqlite3 开发库。

  2. 系统 SQLite 库未安装或版本不兼容

    • Linux 系统可能未安装 libsqlite3-dev(Debian/Ubuntu)或 sqlite-devel(RHEL/CentOS)。


解决方法

1. 安装系统依赖(SQLite 开发库)
  • Debian/Ubuntu:

    sudo apt update && sudo apt install libsqlite3-dev
  • RHEL/CentOS:

    sudo yum install sqlite-devel
  • Arch Linux:

    sudo pacman -S sqlite
2. 重新编译安装 Python 3.12.9

由于你的 Python 是通过 pyenv 安装的,可以重新安装并确保启用 SQLite:

pyenv uninstall 3.12.9  # 卸载现有版本(可选)
pyenv install 3.12.9   # 重新安装(会自动检测系统依赖)

注:重新截图如下:

图6d-2

3. 验证 SQLite 支持

重新安装后,检查 Python 是否能导入 sqlite3:

python -c "import sqlite3; print(sqlite3.sqlite_version)"

如果正常,会输出 SQLite 的版本号(如 3.37.2)。

注:再次重启,报了新的错误,如下:

图6d-3

注:处理一下。

第二步:【no module named _bz2】

20250409周三时间段:16:13-17:00

查下资料,解决方案如下:

这个错误 No module named '_bz2' 是因为 Python 在编译安装时缺少 bzip2 开发库(libbz2-dev),导致 Python 的标准库 _bz2 模块无法使用。以下是解决方法:


解决方法

1. 安装系统依赖(bzip2 开发库)

Ubuntu/Debian

sudo apt update && sudo apt install libbz2-dev

RHEL/CentOS

sudo yum install bzip2-devel

Arch Linux

sudo pacman -S bzip2
2. 重新编译安装 Python

由于你的 Python 是通过 pyenv 安装的,卸载并重新安装:

pyenv uninstall 3.12.9   # 卸载当前版本(可选)
pyenv install 3.12.9    # 重新安装(会自动检测依赖)

确保安装时没有警告(如 missing bzip2 headers)。


3. 验证 _bz2 模块

重新安装后,检查 Python 是否能导入 _bz2:

python -c "import _bz2; print('Success')"

如果输出 Success,说明问题已解决。

注:运行结果如下:

图6d-4

注:处理一下。

第三步:【no module named _lzma】

20250409周三时间段:16:35-17:00

遇到 No module named '_lzma' 错误,说明 Python 在编译时缺少 LZMA/XZ 压缩库(liblzma-dev)的支持。这个问题通常出现在手动编译 Python 或使用 pyenv 安装时。以下是完整的解决方案:


解决方法

1. 安装系统依赖(LZMA/XZ 开发库)

Ubuntu/Debian

sudo apt update && sudo apt install liblzma-dev

RHEL/CentOS/Fedora

sudo yum install xz-devel      # RHEL/CentOS
sudo dnf install xz-devel      # Fedora

Arch Linux

sudo pacman -S xz

2. 重新编译安装 Python

由于你的 Python 是通过 pyenv 安装的,卸载并重新安装:

pyenv uninstall 3.12.9   # 卸载当前版本(可选)
pyenv install 3.12.9    # 重新安装(会自动检测依赖)

安装完成后,检查是否有 missing lzma headers 之类的警告。


3. 验证 _lzma 模块

重新安装后,检查 Python 是否能导入 _lzma:

python -c "import _lzma; print('Success')"

如果输出 Success,说明问题已解决。

注:这个扩展安装之后,终于跑起来了,如下:

图6d-5

注:接下来,研究下专家诊断吧。

五、头条号战果汇报

昨日数据来啦,累计总收入:5441.52,昨日总收入:295.12     昨日总播放:290.1万,可提现总金额:2199.57软件截图如下:

图6e-1

注:想要全脱管运营头条号的联系我,你出账号,我来运营,收益四六分成(你六我四),你当甩手掌柜,每天都能得几块零花钱,财富wx: 17701328814,也可以加群先了解一下。

图6e-2

六、生活照片

拍摄于‎2025‎年‎8‎月‎19‎日,‏‎20:44:14,两个孩子在一起玩,当时大宝七岁八个月,二宝两岁十个月。后来想了想,其实我和堂哥是一样的人,去哪个地方,明明有同学或者有亲戚,办完事立马回去,从来不联系,主要是觉得别人可能有事,要耽误别人时间,让别人请假陪我,自己还要多待一天,两方都不划算,但人和人是要交往的,越走越亲,这是个相互矛盾的事,慢慢来吧。

图6f-1

《本文完》

最新文章

随机文章