# Fi13 demo 代码 ## 文件说明 - 服务入口 ``` web_server.py ``` - 配置文件 ``` config.py 1. 指定日志文件路径和名称 2. 指定阳光保险问答文件名称 3. 主要的prompt 4. 固定回复话术 ``` - langchain框架组合对应的prompt ``` utils.py ``` - 测试代码 ``` debug.py ``` ## conda环境准备 #### 1. 建议新建虚拟环境 ``` conda create -n sunshine python=3.10 conda activate sunshine pip install -r requirment.txt -i https://pypi.tuna.tsinghua.edu.cn/simple 删除环境 conda remove -n sunshine --all ``` #### 2. 启动服务 ``` python web_server.py ``` ## 3. docker打包环境和nuitka编译代码 ``` sudo docker pull ubuntu:latest sudo docker run -itd -p 8086:8086 --name fi13 -v /home/opendco/3080/fi13/workspace/compile/reconstruct:/workspace --entrypoint /bin/bash ubuntu:latest sudo docker exec -it fi13 /bin/bash apt update apt install wget wget -c https://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh bash Miniconda3-latest-Linux-x86_64.sh conda --version pip install -r requirment.txt -i https://pypi.tuna.tsinghua.edu.cn/simple ``` ## 4. nuitka编译代码 ``` pip install nuitka==1.7.10 -i https://pypi.tuna.tsinghua.edu.cn/simple conda install libpython-static # apt-get install patchelf # apt-get install -y gcc python -m nuitka --standalone --output-dir=./result web_server.py ``` ### 5. 编译后运行 - 需要手动把langchain包和阳光保险context文件等放到编译后的文件路径 ``` cd result/web_server.dist/ cp -r /home/opendco/Software/anaconda3/envs/sunshine/lib/python3.10/site-packages/langchain ./ mkdir data cp ../../data/context.txt data/ ``` - 运行 ``` ./web_server.bin ``` ### 6. 打包docker镜像 - 编译通过后,保存容器为新的镜像 ``` sudo docker commit fi13 ubuntu:fi13 ``` - 将保存的镜像导出为一个 tar 文件 ``` sudo docker save -o .tar sudo docker save -o ubuntu_fi13.tar ubuntu:fi13 ``` ### 7. 私有化部署 - 将ubuntu_fi13.tar & result/ 文件夹拷贝到新机器上 - 在新机器上将保存的镜像导入docker中实现环境迁移 ``` sudo docker load -i .tar sudo docker load -i ubuntu_fi13.tar ``` - 查看新机器上已导入镜像 ``` sudo docker images ``` - 新机器上新建容器,映射端口号和result路径 ``` sudo docker run -itd -p 8086:8086 --name fi13 -v /home/zy/workspace/result:/workspace --entrypoint /bin/bash ubuntu:fi13 ``` - 进入容器运行程序(首先配置好openai key & vpn等) ``` sudo docker exec -it fi13 /bin/bash export OPENAI_API_KEY=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 cd workspace/result/web_server.dist ./web_server.bin ``` ## 8. ``` opendco@172.16.2.4 已经配置好环境的镜像: ubuntu:fi13 已经打包好的镜像文件: /home/opendco/3080/fi13/workspace/compile/reconstruct/ubuntu_fi13.tar 编译好的文件: /home/opendco/3080/fi13/workspace/compile/fi13/result ```