赞
踩
(1)mkdir qwenrepo
(2)cd qwenrepo
(3)touch Dockerfile
输入以下命令,
vim ./Dokcerfile
进入文本查看状态,按字母i切换进入编辑状态,输入以下内容:
- #Version 1.0
- #FROM 命令是指定基础镜像,这里用ubuntu系统。
- FROM ubuntu
-
- # 这里要替换 your_name 为您的名字, 和your_email 为您的Email
- MAINTAINER hollisyao <hollisyao@qq.com>
-
- #设置root用户为后续命令的执行者
- USER root
-
- #执行操作,命令是在镜像内部执行,可以使用&&拼接命令。
- #RUN yum update -y
- #RUN yum install -y java
- #RUN touch test.txt && echo "abc" >>abc.txt
-
- #对外暴露端口
- #EXPOSE 80 8080 1038
-
- #添加网络文件
- #ADD https://www.baidu.com/img/bd_logo1.png /opt/
-
- #设置环境变量
- #ENV WEBAPP_PORT=9090
-
- #设置工作目录
- #WORKDIR /opt/
-
- #设置启动命令
- #ENTRYPOINT ["ls"]
-
- #设置启动参数,启动运行CMD括号里面的命令
- CMD ["/bin/bash"]
-
- #设置卷
- #VOLUME ["/data", "/var/www"]
按“esc”键之后,输入:wq,保存退出。
在 Dockerfile
文件所在目录执行下面的命令,用来创建镜像。
docker build -t hollisyao/qwenrepo:v1 .
docker build 是docker创建镜像的命令
-t 是标识新建的镜像属于 hollisyao,仓库的名称是qwenrepo
:v1 是tag
"."是用来指明我们使用的Dockerfile文件是在当前目录,前面有个空格
输入以下命令
docker run -t -i hollisyao/qwenrepo:v1 /bin/bash
进入容器的命令行模式,输入
cat /etc/issue
查看容器ubuntu系统版本,我的显示为:
Ubuntu 22.04.3 LTS \n \l
这个操作系统没有sudo,需要安装
- apt-get update
- apt-get install sudo
ubuntu默认安装了2.7,需要安装python3.10
sudo apt update sudo apt install python3.10 -y
安装完成后,验证是否安装成功
python3.10 --version
如果你需要将python 3.10设置运行默认的python版本,/usr/bin/
是Linux PATH环境变量默认搜索路径。因此仅需要将python3.10的可执行二进制文件软链接到/usr/bin/python
文件就可以将python 3.10设置为默认版本。
运行命令
sudo ln -sf /usr/bin/python3.10 /usr/bin/python
创建符号链接,-s
选项是创建软链接,-f
选项是强制。
这样后续可以直接输入python,而不用输入python3.10了。
安装wget
sudo apt-get install wget -y
安装curl
sudo apt install curl -y
ubuntu默认安装了pip2,安装pip3
- curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py python3 get-pip.py
- python get-pip.py
用以下命令确认pip3版本
pip3 --version
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118
- sudo apt install git -y
- sudo apt-get install git-lfs
验证安装是否成功
- git --version
- git lfs env
lfs 环境报错,再运行以下命令修复问题。
执行git init 会生成 /lfs/objects/、/lfs/tmp/目录。运行 git lfs install 一次,为你的系统初始化后,当你克隆包含 Git LFS 内容的仓库时,Git LFS 将自动进行自我引导启用。
- git init //解决上述问题:Error: Failed to call git rev-parse --git-dir: exit status 128
- git lfs install
- --Install Git LFS configuration.
这时候再运行命令验证安装是否成功,再没有报错了。
git lfs env
安装依赖组件
- sudo apt-get install python3-dev
- pip3 install transformers==4.32.0 accelerate tiktoken einops scipy transformers_stream_generator==0.0.4 peft deepspeed
推荐安装flash-attention
库(也可以不装,当前已支持flash attention 2),以实现更高的效率和更低的显存占用。建议使用CUDA 11.4及以上(GPU用户、flash-attention用户等需考虑此选项)
- git clone https://github.com/Dao-AILab/flash-attention
- cd flash-attention && pip3 install .
- # 下方安装可选,安装可能比较缓慢。
- pip3 install csrc/layer_norm
- pip3 install csrc/rotary
下载通义千问7B大模型的源代码
- #下载7b的源代码
- git clone https://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@github.com/QwenLM/Qwen-7B.git qwen-7b-source
查看当前目录,确认存在qwen-7b-source文件夹。
ls -l
进入目录qwen-7b-source,安装依赖组件
- cd qwen-7b-source
- # 安装依赖
- pip install -r requirements.txt
- # 安装 web_demo 依赖
- pip install -r requirements_web_demo.txt
启动 web_demo 快速体验(过程中会自动下载预训练模型,非常大会很慢)
- # 通过参数 --server-port 指定端口号,默认为 8000
- # 通过参数 --server-name 指定服务地址,默认为 127.0.0.1
- # 如果是用 cpu 跑的话,可以加上参数 --cpu-only
- # 如果想生成一个用于公网访问的 url,可以加上参数 --share
- python web_demo.py --server-port 8087 --server-name "0.0.0.0"
启动类 openai api 形式的接口
有个必要的依赖库需要先安装 pip3 install sse_starlette
,然后就可以启动了
- # 通过参数 --server-port 指定端口号,默认为 8000
- # 通过参数 --server-name 指定服务地址,默认为 127.0.0.1
- # 如果是用 cpu 跑的话,可以加上参数 --cpu-only
- python openai_api.py --server-port 8086 --server-name "0.0.0.0"
服务启动正常之后,就可以使用 openai 的客户端使用了,比如 chatbox、opencat 等等。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。