生产建设兵团第三师政务网站,漂亮的学校网站模板下载,如何用个门户网站做销售,建网站代理商目录 前言
为什么本地部署
目前的工具
vllm
介绍
下载模型
安装vllm
运行
存在问题
chatglm.cpp
介绍
下载
安装
运行
命令行运行
webdemo运行
GPU推理
ollama
介绍
下载
运行
运行不同参数量的模型
存在问题
lmstudio
介绍
下载
使用
下载模型文件…目录 前言
为什么本地部署
目前的工具
vllm
介绍
下载模型
安装vllm
运行
存在问题
chatglm.cpp
介绍
下载
安装
运行
命令行运行
webdemo运行
GPU推理
ollama
介绍
下载
运行
运行不同参数量的模型
存在问题
lmstudio
介绍
下载
使用
下载模型文件
加载模型 前言
为什么本地部署
正常我们要调用大模型就需要将企业或个人信息传递到外部的大模型服务器这种情况在目前极为重视数据安全的情况下可能就有问题了。但是本地部署大模型就没有这个问题本地部署大模型后不需要联网即可调用大模型就没有了通过调用外部大模型导致数据泄露的问题。
再一个一说起大模型不管训练还是推理一般都是需要GPU。能不能有一些方法实现本地也可以部署大模型进行推理
以上也就是写这一篇的初衷了。
目前的工具
目前有vllm、chatglm.cppllama.cpp也类似是通过C实现--提供编程能力可以命令行运行可以提供webapi
Ollama--命令行运行可以提供webapi
lmstudio--纯界面操作
vllm
介绍
vllm主要作用其实是可以提高推理性能但是必须在linux下运行而且必须有GPU
官网地址
vllm官网 Welcome to vLLM! — vLLMhttps://docs.vllm.ai/en/latest/
下载模型
这里以下载千问7B为例由于模型文件会比较大因此安装git的lfs插件
git lfs install git clone https://huggingface.co/Qwen/Qwen-7B-Chat
安装vllm
安装的话为了避免python环境冲突问题先通过conda创建一个新的虚拟环境
然后pip install vllm
也可以先从github下载再去安装
vllm github地址https://github.com/vllm-project/vllm
运行
python -m vllm.entrypoints.openai.api_server --modelQwen/Qwen-7B-Chat --trust-remote-code --port 1234
注意--model参数这里如果之前已经下载了模型文件这里是参数值改为模型文件路径否则设置为模型名然后会自动下载
注意2通过aipost工具调用大模型model参数需要和如上cmd运行命令的--model参数一致否则会提示找不到model这个我觉得是比较不好的一点
存在问题
1通过apipost工具调用webapi回答完还会继续输出其他内容
一样没搞懂为啥
补充运行增加VLLM_USE_MODELSCOPETrue 推理速度会快很多即
VLLM_USE_MODELSCOPETrue python -m vllm.entrypoints.openai.api_server --modelQwen/Qwen-7B-Chat --trust-remote-code --port 1234
说是通过魔塔进行了加速但是其所以然还没搞明白。
chatglm.cpp
介绍
chatglm.cpp主要通过C编译实现性能的提升
下载
git clone --recursive https://github.com/li-plus/chatglm.cpp.git cd chatglm.cpp git submodule update --init --recursive
第二句主要是用于当前代码还引用了其他第三方代码库的情况用于嵌套更新代码状态
安装
安装相关包
python3 -m pip install torch tabulate tqdm transformers accelerate sentencepiece
用于 convert.py 将 ChatGLM-6B 转换为量化的 GGML 格式。要将 fp16 原始模型转换为 q4_0量化 int4GGML 模型请运行
python3 chatglm_cpp/convert.py -i THUDM/chatglm3-6b -t q4_0 -o chatglm3-ggml.bin
运行
命令行运行
第一步使用 CMake 配置项目并在当前目录下创建一个名为 build 的构建目录
cmake -B build
第二步使用先前生成的构建系统文件在构建目录 build 中构建项目采用并行构建和 Release 配置
cmake --build build -j --config Release
第三步运行
./build/bin/main -m chatglm3-ggml.bin -p 你好
注意这里cmake在linux下没问题在windows下需要通过VSVisual Studio安装C Cmake工具 webdemo运行
python3 ./examples/web_demo.py -m chatglm3-ggml.bin
注意这里可能会出错提示找不到chatglm_cpp这个时候可以先pip install ..就是代表安装当前代码包或.替换为chatglm_cpp也可以或者去chatglm.cpp项目的Github网站--release下载对应系统对应python版本的whl文件进行安装也可以
GPU推理
chatglm.cpp主要是用于让普通CPU也可以进行推理因此默认它是CPU推理。但是不妨碍它可以GPU推理毕竟效率更高。
cmake的时候增加-DGGML_CUBLASON即可实现命令行运行通过GPU推理
webdemo运行的话也需要对pip install .增加同样的参数完整命令CMAKE_ARGS-DGGML_CUBLASON pip install .这个时候再次运行webdemo即可实现GPU推理
ollama
介绍
ollama主要简化了部署大模型的复杂度
github地址ollama/ollama启动并运行 Llama 2、Mistral、Gemma 和其他大型语言模型。 (github.com)https://github.com/ollama/ollama
github上可以看ollama相关介绍包括如何使用
下载
ollama一开始主要支持linuxdocker也可以目前有windows下的预览版可以下载
ollama官网 windows预览版下载https://ollama.com/download/OllamaSetup.exe
运行
安装完成即可通过cmd窗口使用ollama命令来运行大模型注意第一次会先下载模型文件我这里用的llama2的大小是4G多还可以 接下来就可以输入进行大模型对话了
不过命令行在实际应用中不方便那么也可以通过ollama实现webapi调用方式
ollama serve--启用server模式
ollama run llama2这里就是具体模型名称
接下来即可通过postman、apipost等工具调用大模型了
注意这里地址是localhost:11434/api/chat
运行不同参数量的模型
同一个模型一般会有多个参数量一般有7B、13B
如上运行ollama run llama2其实是按默认参数量下载并运行模型了也可以设置参数量
如ollama run gemma:2b
:2b即具体参数量
存在问题
1命令行下速度很快但是webapi方式就很慢。可能还是在windows下还是预览版没那么稳定
还没搞懂咋回事现在只是初步知道了怎么用。后面再试试其他模型看看是不是模型的问题
lmstudio
介绍
lmStudio是一个很简单的大模型使用工具直接安装客户端完全界面操作无需编辑代码、无需运行命令即可纯界面操作来使用大模型。
非常适合不懂技术的人员使用
下载
访问lmstudio官网LM Studio 官网 - Discover, download, and run local LLMshttps://lmstudio.ai/
选择对应操作系统的版本下载即可
使用
下载模型文件
打开软件默认界面就是一个搜索框输入你需要使用的模型名点击Go进行搜索。
常用的模型如LLama2、Gemma、QWen等
注这里只能是开源大模型
在搜索结果页面左侧是搜索结果点击左侧其中一个结果右侧显示出所有可以下载的文件主要是量化参数不一样一般选择q4_0的即可选择对应文件下载即可。
页面最下方会显示下载进度
加载模型
模型文件下载完成点击最左侧“AI Chat”图标在最上方有个模型列表选择下载的模型文件会自动加载模型文件
接下来就可以进行模型对话了