当前位置:   article > 正文

私有化部署网易云-qanything教程_qanything部署

qanything部署

1. 准备工作

首先把准备工作做做好, 这里也是最容易走弯路的地方, 官方的教程虽然没有错误, 但是有点混乱, 而且一些细节隐藏在了更深的文档中, 导致部署过程中遇到不少问题.

1.1 硬性条件

这里说的很明白了, 注意的是linux部署下也需要nvidia, 我一开始就是在云服务器linux下部署, 最终发现没有nvidia显卡, 所以又转到了window下部署.

所以尽量选择一台带有nvidia的机器, 查看显卡的命令为: nvidia-smi, 如果执行完没有结果, 那就不是nvidia

  1. dibole@DIBOLE-AI:~/QAnything$ nvidia-smi
  2. Fri Apr 12 17:14:42 2024
  3. +---------------------------------------------------------------------------------------+
  4. | NVIDIA-SMI 535.98.01 Driver Version: 536.99 CUDA Version: 12.2 |
  5. |-----------------------------------------+----------------------+----------------------+
  6. | GPU Name Persistence-M | Bus-Id Disp.A | Volatile Uncorr. ECC |
  7. | Fan Temp Perf Pwr:Usage/Cap | Memory-Usage | GPU-Util Compute M. |
  8. | | | MIG M. |
  9. |=========================================+======================+======================|
  10. | 0 NVIDIA GeForce RTX 4060 Ti On | 00000000:01:00.0 Off | N/A |
  11. | 0% 39C P8 7W / 165W | 7781MiB / 16380MiB | 0% Default |
  12. | | | N/A |
  13. +-----------------------------------------+----------------------+----------------------+
  14. +---------------------------------------------------------------------------------------+
  15. | Processes: |
  16. | GPU GI CI PID Type Process name GPU Memory |
  17. | ID ID Usage |
  18. |=======================================================================================|
  19. | 0 N/A N/A 26 G /Xwayland N/A |
  20. | 0 N/A N/A 32 G /Xwayland N/A |
  21. | 0 N/A N/A 35 G /Xwayland N/A |
  22. | 0 N/A N/A 45 C /deviceQueryDrv N/A |
  23. +---------------------------------------------------------------------------------------+

1.2 准备好windows11的wsl功能

打开了wsl功能以后, 接下来安装wsl2下的ubuntu系统

这里可以直接通过wsl的命令行直接安装, 或者选择下载appx文件以后离线安装, 由于文件很大, 所以命令行的进度会卡住, 我之前一直以为是报错了, 最终选择了下载文件后安装

方式一: 通过wsl命令行安装

进入powershell 

 输入 wsl -l -o 可以看到所有的支持的有效分发的列表

接用命令  wsl --install  -d  ubuntu-22.04 

方式二: 下载后安装

下载地址: https://learn.microsoft.com/zh-cn/windows/wsl/install-manual#step-4---download-the-linux-kernel-update-package
这里下载的ubuntu-22.04下载完以后解压, 根据你的系统双击安装, 我的是64位

安装完成以后, 设置一个用户和密码, 就成功安装好wsl了

进入wsl的方式跟使用其他软件一样, 在windows的开始程序中找到

1.3 安装docker-desktop

Docker Desktop release notes | Docker Docs

这里记得千万不要下载最新版本, 推荐使用2.24版本

下载完以后安装, 再加上如下配置就可以了

1.4 安装git 和 git-lfs

这个比较简单就不说了

到底基本上准备工作就完成了,接下来进入安装

2. 部署过程

  • step1 进入wsl的ubuntu系统
  • step2 下载项目

git clone https://github.com/netease-youdao/QAnything.git

  • step3 进入项目根目录
cd QAnything
bash run.sh  # 默认在0号GPU上启动

接下来就是漫长的等待, 会自动拉取一堆镜像, 并自启动. 如果一切顺利你会看到

这时候已经可以在前端页面上体验了, 打开页面, 录入一些文件

3. 做一些延展

通过简单的bash run.sh已经运行成功的基础下, 接下来尝试增加一些命令, 通过微调启动命令使用自定义的大模型

  1. Usage: bash run.sh [-c <llm_api>] [-i <device_id>] [-b <runtime_backend>] [-m <model_name>] [-t <conv_template>] [-p <tensor_parallel>] [-r <gpu_memory_utilization>]
  2. -c <llm_api>: "Options {local, cloud} to specify the llm API mode, default is 'local'. If set to '-c cloud', please mannually set the environments {OPENAI_API_KEY, OPENAI_API_BASE, OPENAI_API_MODEL_NAME, OPENAI_API_CONTEXT_LENGTH} into .env fisrt."
  3. -i <device_id>: "Specify argument GPU device_id."
  4. -b <runtime_backend>: "Specify argument LLM inference runtime backend, options={default, hf, vllm}"
  5. -m <model_name>: "Specify argument the model name to load public LLM model using FastChat serve API, options={Qwen-7B-Chat, deepseek-llm-7b-chat, ...}"
  6. -t <conv_template>: "Specify argument the conversation template according to the public LLM model when using FastChat serve API, options={qwen-7b-chat, deepseek-chat, ...}"
  7. -p <tensor_parallel>: "Use options {1, 2} to set tensor parallel parameters for vllm backend when using FastChat serve API, default tensor_parallel=1"
  8. -r <gpu_memory_utilization>: "Specify argument gpu_memory_utilization (0,1] for vllm backend when using FastChat serve API, default gpu_memory_utilization=0.81"
  9. -h: "Display help usage message"

这是一段run.sh的参数解释, 建议逐行观看, 可以看到支持了很多大模型, 这里我想将qanything和openai打通, 结合参数列表, 最终的命令是

 bash ./run.sh -c cloud -i 0 -b default

使用了云端大模型openai的时候, 需要增加以下变量到.env文件中

OPENAI_API_KEY=      #你的密钥
OPENAI_API_BASE=      #你的中转网站, 众所周知不能直接访问
OPENAI_API_MODEL_NAME=    #你的通道名称
OPENAI_API_CONTEXT_LENGTH=   #你的token令牌长度限制

修改完这些参数以后, 重启容器

不出意外的话就要出意外了, 目前在使用云大模型的时候源码会查找

/model_repos/QAEnsemble_embed_rerank/scripts/get_cuda_capability.py

而这个文件确实不存在, 这里的问题截至2024.4.12号还没有解决.

如果你也不幸遇到了你可以...

直接修改源码绕开这个错误!!

记得修改完以后重启容器, 就可以成功的使用openai的大模型运行qanything, 接下来愉快的玩耍吧

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/木道寻08/article/detail/758040
推荐阅读
相关标签
  

闽ICP备14008679号