注意:如果用自己的数据集,需要修改es_config.py
中的变量DATA_PATH
# 设置环境变量,告诉Python解释器在哪些目录中查找模块
export PYTHONPATH=$(pwd)
# 创建索引,写入数据
python vectorstore/es_index.py
参考链接:Docker教程
在当前项目路径(根目录)下,Med-FAQchatbot/ 执行下面的命令。
# -t faq-chatbot选项为构建的镜像指定了一个标签(tag)
# . 指的是Dockerfile所在的目录的路径
docker build -t faq-chatbot:0.1 .
docker run -itd -v $(pwd):/code -p 8008:7000 --name faq --net elastic faq-chatbot:0.1
可以进入Docker容器
# 进入容器
docker exec -it faq /bin/bash
# 退出容器
exit
!!!注意事项:
启动faq服务,一定要在 es_basic.py 修改 ES_URL 地址(ES_URL = "http://172.19.0.2:9200"),
不要使用 "http://0.0.0.0:9200",要使用elasticsearch容器的IP地址。
# 查看容器的IP地址,可以使用命令,找到elasticsearch对应的IP地址
docker network inspect elastic
方式-1 : 终端运行 curl 命令
curl -X 'POST' 'http://127.0.0.1:8008/faq/search' -H 'accept: application/json' -H 'Content-Type: application/json' -d '{"text": "我最近长胖了,这让我有些尴尬,是否可以改善这一状况?"}'
方式-2 :运行测试脚本 test_server.py
pytest test_server.py -k test_faq_search -v -s
场景-1:正常启动服务,直接运行 server.py,然后测试并发处理能力
docker-compose up
# 7001
curl -X 'POST' 'http://127.0.0.1:7001/faq/search' -H 'accept: application/json' -H 'Content-Type: application/json' -d '{"text": "我最近长胖了,这让我有些尴尬,是否可以改善这一状况?"}'
# 7002
curl -X 'POST' 'http://127.0.0.1:7002/faq/search' -H 'accept: application/json' -H 'Content-Type: application/json' -d '{"text": "我最近长胖了,这让我有些尴尬,是否可以改善这一状况?"}'
# 7003
curl -X 'POST' 'http://127.0.0.1:7003/faq/search' -H 'accept: application/json' -H 'Content-Type: application/json' -d '{"text": "我最近长胖了,这让我有些尴尬,是否可以改善这一状况?"}'