【个人笔记本】本地化部署 类chatgpt模型 详细流程
不推荐小白,环境配置比较复杂
全部流程
- 下载原始模型:Chinese-LLaMA-Alpaca-2
- linux部署llamacpp环境
- 使用llamacpp将Chinese-LLaMA-Alpaca-2模型转换为gguf模型
- windows部署Text generation web UI 环境
- 使用Text generation web UI 加载模型并进行对话
准备工作
-
笔记本环境:
- 操作系统:win11
- CPU:AMD R7535HS
- GPU:笔记本4060显卡
- CUDA版本:11.8
- VM虚拟机:Ubuntu16
-
下载模型和部署环境全程需要挂梯子
下载原始模型
原项目链接:https://github.com/ymcui/Chinese-LLaMA-Alpaca-2
| 模型名称 | 类型 | 大小 | 下载地址 |
|---|---|---|---|
| Chinese-LLaMA-2-13B | 基座模型 | 24.7 GB | [百度] [Google] [🤗HF] |
| Chinese-LLaMA-2-7B | 基座模型 | 12.9 GB | [百度] [Google] [🤗HF] |
| Chinese-Alpaca-2-13B | 指令模型 | 24.7 GB | [百度] [Google] [🤗HF] |
| Chinese-Alpaca-2-7B | 指令模型 | 12.9 GB | [百度] [Google] [🤗HF] |
下载Chinese-Alpaca-2-7B模型即可,百度网盘不需要挂梯子,其他都需要梯子
linux部署llamacpp环境
原项目链接:https://github.com/ggerganov/llama.cpp
原文档链接:https://github.com/ymcui/Chinese-LLaMA-Alpaca-2/wiki/llamacpp_zh
Step 1: 安装python3.10
sudo apt update
sudo apt install python3.10
Step 2: 克隆和编译llama.cpp
-
拉取最新版llama.cpp仓库代码
# 要安装git+梯子 git clone https://github.com/ggerganov/llama.cpp或者
#浏览器挂梯子打开https://github.com/ggerganov/llama.cpp #下载项目 #解压缩项目到本地 -
对llama.cpp项目进行编译,生成./main(用于推理)和./quantize(用于量化)二进制文件
cd 解压缩项目路径 make
Step 3: 生成量化版本模型
-
创建目录并拷贝模型到项目目录:zh-models/7B/
-
将Chinese-LLaMA-Alpaca-2模型转换为gguf模型
#根目录 python convert.py zh-models/7B/ -
将生成的fp16格式的gguf模型进行4-bit量化
./quantize ./zh-models/7B/ggml-model-f16.gguf ./zh-models/7B/ggml-model-q4_0.gguf q4_0
Step 4: 加载并启动模型
到这一步其实可以用llama.cpp的加载模型方式对话了
但我用的虚拟机,性能有限,故而使用Text generation web UI 加载模型,具体如何加载建议看原文档和项目说明
windows部署Text generation web UI 环境
原项目:https://github.com/oobabooga/text-generation-webui
Step 1: 下载安装Miniconda3_py310
链接:https://repo.anaconda.com/miniconda/Miniconda3-py310_23.3.1-0-Windows-x86_64.exe
Step 2: 克隆项目到本地
git clone https://github.com/oobabooga/text-generation-webui
Step 3: 打开Miniconda3命令行,建立新conda环境
conda create -n textgen
Step 4: 下载安装相关的python各类环境库
有github链接的必须手动下载whl,再pip安装whl的绝对位置
conda activate textgen
cd 项目位置
pip install env/bitsandbytes-0.41.1-py3-none-win_amd64.whl
pip install E:\AI\环境第三方库\auto_gptq-0.4.2+cu117-cp310-cp310-win_amd64.whlhttps://github.com/jllllll/exllama/releases/download/0.0.17/exllama-0.0.17+cu117-cp310-cp310-win_amd64.whl
pip install E:\AI\环境第三方库\exllama-0.0.17+cu117-cp310-cp310-win_amd64.whlpip install llama-cpp-python==0.1.84https://github.com/jllllll/llama-cpp-python-cuBLAS-wheels/releases/download/textgen-webui/llama_cpp_python_cuda-0.1.84+cu117-cp310-cp310-win_amd64.whl
pip install E:\AI\环境第三方库\llama_cpp_python_cuda-0.1.84+cu117-cp310-cp310-win_amd64.whlhttps://github.com/jllllll/GPTQ-for-LLaMa-CUDA/releases/download/0.1.0/gptq_for_llama-0.1.0+cu117-cp310-cp310-win_amd64.whl
pip install E:\AI\环境第三方库\gptq_for_llama-0.1.0+cu117-cp310-cp310-win_amd64.whlhttps://github.com/jllllll/ctransformers-cuBLAS-wheels/releases/download/AVX2/ctransformers-0.2.25+cu117-py3-none-any.whl
pip install E:\AI\环境第三方库\ctransformers-0.2.25+cu117-py3-none-any.whlpip install -r requirements.txt -i 换源
Step 5: 启动web服务
conda activate textgen
cd E:/AI/项目/text-generation-webui-main
python server.py
使用Text generation web UI 加载模型并进行对话
- 打开生成的url网址
- 加载本地模型
- 对话即可
相关文章:
【个人笔记本】本地化部署 类chatgpt模型 详细流程
不推荐小白,环境配置比较复杂 全部流程 下载原始模型:Chinese-LLaMA-Alpaca-2linux部署llamacpp环境使用llamacpp将Chinese-LLaMA-Alpaca-2模型转换为gguf模型windows部署Text generation web UI 环境使用Text generation web UI 加载模型并进行对话 准…...
RFID与人工智能怎么融合,RFID与人工智能融合的应用
随着物联网技术的不断发展,现实世界与数字世界的桥梁已经被打通。物联网通过各种传感器,将现实世界中的光、电、热等信号转化为有价值的数据。这些数据可以通过RFID技术进行自动收集和传输,然后经由人工智能算法进行分析、建模和预测…...
性能测试 —— Jmeter 常用三种定时器
1、同步定时器 位置:HTTP请求->定时器->Synchronizing Timer 当需要进行大量用户的并发测试时,为了让用户能真正的同时执行,添加同步定时器,用户阻塞线程,知道线程数达到预先配置的数值,才开始执行…...
每个高级前端工程师都应该知道的前端布局
首发于公众号 大迁世界,欢迎关注。📝 每周一篇实用的前端文章 🛠️ 分享值得关注的开发工具 😜 分享个人创业过程中的趣事 快来免费体验ChatGpt plus版本的,我们出的钱 体验地址:https://chat.waixingyun.cn 可以加入网站底部技术群,一起找bug,另外新版作图神器已上线…...
100道基于Android毕业设计的选题题目,持续更新
博主介绍:✌程序员徐师兄、7年大厂程序员经历。全网粉丝30W,Csdn博客专家、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ 大家好,我是程序员徐师兄、今天给大家谈谈基于android的app开发毕设题目,以及基于an…...
idea显示git分支信息(GitToolBox插件)
效果图 说明 本身idea在右下角会有git分支信息,但是显示的当前打开文件的分支信息,并且不够显眼 解决 1、安装插件(GitToolBox插件) 2、修改idea.properties project.tree.structure.show.urlfalse ide.tree.horizontal.default.autoscrollingfalse将…...
Hadoop知识点之Hadoop发展历程
一、Hadoop名字的起源 Hadoop这个名字不是一个缩写,它是一个虚构的名字。 该项目的创建者,Doug Cutting如此解释Hadoop: 这个名字是我孩子给一头吃饱了的棕黄色大象命名的。我的命名标准就是简短,容易发音和拼写,没有…...
阿里云无影电脑:免费体验无影云电脑3个月
阿里云无影云电脑免费领取流程,免费无影云电脑配置为4核8G,可以免费使用3个月,阿里云百科分享阿里云无影云电脑(云桌面)免费申请入口、申请流程及免费使用限制条件说明: 目录 阿里云无影云电脑免费申请入…...
菜鸟教程《Python 3 教程》笔记(20):面向对象
菜鸟教程《Python 3 教程》笔记(20) 20 面向对象20.1 面向对象技术简介20.2 创建类20.2.1 类定义20.2.2 实例化20.2.3 初始化20.2.4 类变量、实例变量20.2.5 类方法、实例方法、静态方法 20.3 访问可见性20.3.1 property装饰器 20.4 动态性20.4.1 __slot…...
vue2编辑markdown
效果 npm i mavon-editor --save 只能全局注册 使用...
PCB走线规则
1、线间距。 这里应该遵循3W规则,所谓3W就是为了减少线间串扰,应保证线间距足够大,当线中心不少于3倍线宽,则可 保持70%的电场不互相干扰。如要达到98%的电场不互相干扰,可使用10W的间距。——这是查阅华为PCB布线规则…...
webpack静态资源上传到CDNS (阿里云 OSS,亚马逊 AWS S3,七牛云 Qiniu Cloud Kodo)webpack-plugin-cdns
webpack-plugin-cdns 是一个 Webpack 插件,用于实现将前端项目中的资源(如 JavaScript、CSS、图片等)上传到 CDN(OSS、S3、Kodo) 服务器。从而完成资源的 CDN 加速。 在开发前端项目时,我们通常会将静态资源放在本地服务器上&…...
python 异常
1.捕获异常 2.密码爆破 3....
stm32--独立看门狗
最近学习到独立看门狗,总结下笔记 1.看门狗的作用:防止程序异常跑飞,跑飞时,进行系统复位,从而不会导致代码瘫痪,奔溃卡死在某段程序。 2.看门狗其实是12bit递减计数器,,减到0会产…...
vue3中css使用script中定义的变量
代码 <template><div class"box">haha</div> </template><script setup lang"ts"> const boxWidth 500px </script><style lang"scss"> .box {width: v-bind(boxWidth);height: 200px;background-c…...
Ubuntu 22.04 安装配置 flatpak
Ubuntu 22.04 安装配置 Flatpak 安装 Flatpak sudo apt install flatpakFlatpak 仓库配置 官方仓库 https://flathub.org/repo/flathub上交大镜像 https://mirror.sjtu.edu.cn/flathub flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatp…...
oracle创建数据库以及用户,并导入dmp格式数据
oracle创建数据库以及用户,并导入dmp格式数据 安装可参考之前的文章https://blog.csdn.net/qq_43421954/article/details/132717546?spm1001.2014.3001.5501 首先创建表空间(也就是其他数据库所谓的数据库) 使用的是navicat,连接配置可以参…...
[deeplearning]pytorch实现softmax多分类问题预测训练
写在前面:俺这两天也是刚刚加入实验室,因为之前的学习过程中用到更多的框架是tensorflow,所以突然上手pytorch多少有些力不从心了。 这两个框架的主要区别在与tensorflow更偏向于工业使用,所以里面的很多函数和类都已经封装得很完…...
【C++初阶】动态内存管理
👻内容专栏: C/C编程 🐨本文概括: C/C内存分布、C语言动态内存管理、C动态内存管理、operator new与operator delete函数、new和delete的实现原理、定位new表达式、常见面试问题等。 🐼本文作者: 阿四啊 …...
Mac电脑安装Zulu Open JDK 8 使用 spring-kafka 消费不到Kafka Partition中的消息
一、现象描述 使用Mac电脑本地启动spring-kakfa消费不到Kafka的消息,监控消费组的消息偏移量发现存在Lag的消息,但是本地客户端就是拉取不到,通过部署到公司k8s容器上消息却能正常消费! 本地启动的服务消费组监控 公司k8s容器服…...
告别盲目搜索!Unity大版本升级时,系统化处理API变更的5个步骤
Unity大版本升级的系统化实践:从API变更管理到团队协作优化 当Unity 2023 LTS发布时,某中型游戏团队在升级过程中发现超过40%的脚本因API变更而报错,导致项目停滞两周。这种场景在技术迭代中并不罕见,但大多数团队仍采用"遇到…...
【仿真】Carla跨平台部署指南:从零到一,附ROS2与Autoware.auto连接实战
1. Carla仿真平台概述 Carla是一款开源的自动驾驶仿真平台,基于虚幻引擎构建,能够提供高度逼真的城市环境和交通场景。我第一次接触Carla是在2018年,当时它还处于早期开发阶段,但已经展现出惊人的潜力。经过多年发展,现…...
Remotery WebSocket通信机制:浏览器端性能数据可视化
Remotery WebSocket通信机制:浏览器端性能数据可视化 【免费下载链接】Remotery Single C file, Realtime CPU/GPU Profiler with Remote Web Viewer 项目地址: https://gitcode.com/gh_mirrors/re/Remotery Remotery作为一款轻量级实时CPU/GPU性能分析工具&…...
STM32CubeMX+Keil MDK联合开发:手把手教你配置蓝桥杯G431工程模板
STM32CubeMXKeil MDK联合开发:手把手教你配置蓝桥杯G431工程模板 对于参加蓝桥杯嵌入式赛道的选手来说,掌握STM32G431RBT6开发板的快速工程搭建是必备技能。本文将带你从零开始,通过STM32CubeMX和Keil MDK的协同工作,完成一个标准…...
Virtuoso ADE仿真避坑指南:你的时钟占空比测对了吗?详解dutyCycle函数threshold参数设置
Virtuoso ADE仿真避坑指南:时钟占空比测量的关键参数解析 在模拟电路设计中,时钟信号的占空比精度往往直接影响系统性能。许多工程师虽然熟悉Virtuoso ADE的基础操作,却在自动测量占空比时遭遇"数据看起来合理但实际存在偏差"的困境…...
FPGA信号调试必备:Quartus中keep、preserve、noprune的正确用法与避坑指南
FPGA信号调试必备:Quartus中keep、preserve、noprune的正确用法与避坑指南 在FPGA开发过程中,信号调试是最令人头疼的环节之一。特别是当你发现仿真时明明存在的关键信号,在综合后却神秘消失时,那种挫败感简直难以言表。作为一名长…...
音频标注:从原理到产业,AI听懂世界的“翻译官”
音频标注:从原理到产业,AI听懂世界的“翻译官” 引言 在人工智能的浪潮中,计算机视觉的“看”和自然语言处理的“读”已广为人知,而让机器学会“听”——理解并解析复杂的声音世界,正成为新的前沿。这一切的基石&…...
PyFluent:重新定义CFD仿真自动化的技术革命
PyFluent:重新定义CFD仿真自动化的技术革命 【免费下载链接】pyfluent 项目地址: https://gitcode.com/gh_mirrors/pyf/pyfluent 行业痛点分析:CFD工程师的效率困境 在现代工程设计流程中,计算流体动力学(CFD)…...
Multisim电路设计避坑指南:红绿灯项目里那些容易忽略的时序与驱动问题
Multisim电路设计避坑指南:红绿灯项目里那些容易忽略的时序与驱动问题 当你第一次在Multisim中完成红绿灯控制电路的设计时,那种成就感确实令人兴奋。但很快,你可能就会遇到一些令人头疼的问题:黄灯闪烁频率不稳定、倒计时显示乱跳…...
FastAdmin+PHPStudy保姆级安装教程:从下载到配置数据库的完整流程
FastAdminPHPStudy极速开发环境搭建实战指南 作为一名长期使用FastAdmin框架的开发者,我深知一个顺畅的本地开发环境对项目效率的影响。本文将带你从零开始,用最简洁的方式完成FastAdmin与PHPStudy的完美搭配,避开那些新手常踩的"坑&quo…...
