当前位置: 代码网 > 服务器>服务器>Linux > 【linux服务器】大语言模型实战教程:LLMS大模型快速部署到个人服务器

【linux服务器】大语言模型实战教程:LLMS大模型快速部署到个人服务器

2024年08月03日 Linux 我要评论
说到大语言模型相信大家都不会陌生,大型语言模型(LLMs)是人工智能文本处理的主要类型,也现在最流行的人工智能应用形态。ChatGPT就是是迄今为止最著名的使用LLM的工具,它由OpenAI的GPT模型的特别调整版本提供动力,而今天我们就来带大家体验一下部署大模型的实战。

在这里插入图片描述

🎬 鸽芷咕

 🔥 个人专栏: 《c++干货基地》

⛺️生活的理想,就是为了理想的生活!

引言

一、项目选择与系统介绍

1.1 项目介绍

本来博主是准备来部署一下咱们的,清华大语言模型镜像这个目前也是非常的火啊,吸引了很多人的注意其优秀的性能和gpt3 不相上下,但是由于考虑到,大部分人电脑其实跑大模型是有一点点吃力的,为了让更多人来先迈出部署模型的第一步,于是就决定去 gitee 上找一个小型一点的大模型来实战一下。

1.2 tiny-llama语言模型

  • 果不其然刚搜索就发现 一个基于香橙派ai pro 部署的语言大模型项目,这不正好吗?直接开始

在这里插入图片描述

  • 点进去一看发现这是南京大学开源的一套基于香橙派 aipro部署的tiny-llama语言模型
  • (开源地址)

1.3 进入系统

在这里插入图片描述

  • openeuler 是一由中国开源软件基金会主导,以linux稳定系统内核为基础,华为深度参与,面向服务器、桌面和嵌入式等的一个开源操作系统。

1.4 进行远程连接

  • 这里直接插电启动,默认用户名 hwhiaiuser、密码 mind@123 当然root密码也是一样的

  • 这里我们进来之后可以直接选择链接wifi 非常便捷

  • 当然这里大家在这里也可以选择云服务器远程实战

在这里插入图片描述

  • 然后我们打开命令窗查看ip , 由于系统默认支持ssh 远程连接,所以博主这里就直接采用 sxhell 进行连接
  • 输入ip 选择 hwhiaiuser 登录 密码 mind@123

在这里插入图片描述

二、部署llms大模型

2.1 拉取代码到环境

  • 先cd进入 cd ~/samples 目录
  • 之后直接利用git 拉取我们的项目,git 由于系统镜像自带的有就不用我们手动安装了

在这里插入图片描述

2.2 自定义算子部署

配置protoc 环境

  • 使用wget工具从指定的华为云链接下载 protobuf-all-3.13.0.tar.gz文件
wget  https://obs-9be7.obs.cn-east-2.myhuaweicloud.com/wanzutao/tiny-llama/protobuf-all-3.13.0.tar.gz --no-check-certificate

在这里插入图片描述

  • 解压刚刚下载的文件
tar -zxvf protobuf-all-3.13.0.tar.gz

在这里插入图片描述

在这里插入图片描述

  • 进入 protobuf-3.13.0 文件夹中
cd protobuf-3.13.0
apt-get update

在这里插入图片描述

  • 使用apt-get安装必要的构建工具,包括autoconf、automake和libtool,这些工具用于配置和构建开源项目
apt-get install autoconf automake libtool

在这里插入图片描述

  • 生成配置脚本 configure , 运行 ./configure 生成一个makefile
./autogen.sh
./configure
  • 编译源代码,由于 香橙派 aipro 是4核64位处理器+ ai处理器支持8个线程,我们我们可以大胆的使用4个并行进程进行编译,以加快编译速度。
  • 编译这里的时候大家就可以放松放松了大概只需要10几分钟就好了
make -j4

在这里插入图片描述

  • 将编译后的二进制文件和库文件安装到系统指定的位置
make install

在这里插入图片描述

  • 更新系统共享库缓存的工具,检查protoc 版本
sudo ldconfig

protoc --version

在这里插入图片描述

算子编译部署

  • 将当前工作目录切换到 tiny_llama

在这里插入图片描述

  • 设置了一个环境变量 ascend_path,并将其值设为 /usr/local/ascend/ascend-toolkit/latest
  • export ascend_path=/usr/local/ascend/ascend-toolkit/latest
    在这里插入图片描述
  • custom_op/matmul_integer_plugin.cc 文件复制到指定路径
cp custom_op/matmul_integer_plugin.cc $ascend_path/tools/msopgen/template/custom_operator_sample/dsl/onnx/framework/onnx_plugin/
  • cd 进入 目标文件夹进行配置
cd $ascend_path/tools/msopgen/template/custom_operator_sample/dsl/onnx

在这里插入图片描述

修改环境变量

  • 打开build.sh,找到下面四个环境变量,解开注释并修改如下:
#命令为 vim build.sh

在这里插入图片描述

# 修改内容为
export ascend_tensor_compiler_include=/usr/local/ascend/ascend-toolkit/latest/include
export toolchain_dir=/usr
export aicpu_kernel_target=cust_aicpu_kernels
export aicpu_soc_version=ascend310b4

在这里插入图片描述
在这里插入图片描述

编译运行& 依赖安装

  • 编译构建项目,进入到构建输出目录以后续处理生成的文
./build.sh
cd build_out/

在这里插入图片描述

  • 生成文件到 customize 到默认目录 $ascend_path/opp/vendors/
./custom_opp_ubuntu_aarch64.run
  • 删除冗余文件
cd $ascend_path/opp/vendors/customize
rm -rf op_impl/ op_proto/

在这里插入图片描述

  • 安装依赖:从指定的华为云 pypi 镜像源安装所需的 python 包
cd tiny_llama/inference
pip install -r requirements.txt -i https://mirrors.huaweicloud.com/repository/pypi/simple
  • 先cd 回到根目录,在进入家目录,找到咱们的 tiny_llama/inference
    在这里插入图片描述

2.3 推理启动

  • 下载tokenizer文件
cd tokenizer
wget https://obs-9be7.obs.cn-east-2.myhuaweicloud.com/wanzutao/tiny-llama/tokenizer.zip
unzip tokenizer.zip   

在这里插入图片描述

  • 获取onnx模型文件
cd ../model
wget https://obs-9be7.obs.cn-east-2.myhuaweicloud.com/wanzutao/tiny-llama/tiny-llama.onnx
  • 我们在复制代码的时候一定要仔细嗷博主这里少打了一个w 导致并没有获取到模型,后期找了半天才发现错误所以提醒大家一定要注意好每一步
    在这里插入图片描述

  • atc模型转换

atc --framework=5 --model="./tiny-llama.onnx"  --output="tiny-llama" --input_format=nd --input_shape="input_ids:1,1;attention_mask:1,1025;position_ids:1,1;past_key_values:22,2,1,4,1024,64" --soc_version=ascend310b4 --precision_mode=must_keep_origin_dtype

在这里插入图片描述

三、 项目体验

  • cd tiny_llama/inference 目录下运行命令
python3 main.py

在这里插入图片描述

  • 打开网址进行访问

在这里插入图片描述
在这里插入图片描述

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com