【个人开发】llama2部署实践(一)——基于CPU部署

1. Anaconda安装

shell 复制代码
mkdir -p /opt/anaconda
cd /opt/anaconda
# 参考链接:https://repo.anaconda.com/archive/index.html
wget https://repo.anaconda.com/archive/Anaconda3-2023.07-2-Linux-x86_64.sh
sh Anaconda3-2023.07-2-Linux-x86_64.sh

2.安装git

shell 复制代码
yum install git
yum install git-lfs # 安装依赖
git lfs install 

3.安装g++

shell 复制代码
yum install gcc-c++
## 升级版本,否则会报错
sudo yum install centos-release-scl
sudo yum install devtoolset-9-gcc*
scl enable devtoolset-9 bash

## 查看版本
gcc -v

4.llama2 安装

shell 复制代码
# 1.下载项目
git clone https://github.com/ggerganov/llama.cpp
pip3 install -r requirements.txt
make

# GPU编译方式。

## 2.获取 下载链接、下载模型 
#  注意代理节点跟所选地址的关系。
# https://llama.meta.com/llama-downloads/
git clone https://github.com/facebookresearch/llama.git

## 下载(输入邮箱链接)
./download.sh 
## 得到模型文件 llama-2-7b

# 3.文件转化
## 将llama中的文件tokenizer.model 复制到模型的位置 llama-2-7b,否则会报错
## Found vocab files: {'tokenizer.model': None, 'vocab.json': None, 'tokenizer.json': None}      FileNotFoundError: spm vocab not found.

## 模型转化
cd llama.cpp
mkdir -p models/7B/
mkdir -p models/13B/
python3 convert.py --outfile models/7B/ggml-model-f16.bin ../llama-2-7b/
python3 convert.py --outfile models/13B/ggml-model-f16.bin ../llama-2-13b/

python3 convert.py --outfile /data/opt/llama2_model/llama-2-7b-bin/ggml-model-f16.bin /data/opt/llama2_model/llama-2-7b


## 模型量化(q4_0为原始的量化)
./quantize ./models/7B/ggml-model-f16.bin ./models/7B/ggml-model-q4_0.gguf q4_0
## 启动服务
./server -m ./models/7B/ggml-model-q4_0.gguf  -c 2048 -ngl 1 --host localhost --port 8080 
## 终端对话
./main -m ./models/7B/ggml-model-q4_0.gguf -n 256 --repeat_penalty 1.0 --color -i -r "User:" -f prompts/chat-with-bob.txt 
## 服务调用
curl --request POST \
    --url http://localhost:8080/completion \
    --header "Content-Type: application/json" \
    --data '{"prompt": "Building a website can be done in 10 simple steps:","n_predict": 128}'

以上,End!

相关推荐
2601_961845153 天前
粉笔行测5000题电子版|pdf|解析
pdf·新媒体运营·github·个人开发·内容运营·规格说明书·极限编程
AI小百科3 天前
llama.cpp vs vLLM:深度解析与选型指南
llama·vllm
下班走回家4 天前
本地部署大模型的三种方式:Ollama vs vLLM vs llama.cpp
人工智能·llama·vllm
四六的六4 天前
WebView里跑RAG——浏览器内知识检索增强实战
前端·实战·个人开发·webview·ai大模型·rag·webview内嵌开发
2601_961845154 天前
行测电子版pdf教材|真题|解析
pdf·新媒体运营·github·个人开发·内容运营·规格说明书·极限编程
本人手速666+4 天前
Codex安装适配国产信创环境的
个人开发·codex
Java知识技术分享4 天前
安装yarn 指南(通过 npm)
个人开发·ai编程·yarn
zhy295636 天前
【DNN】基于llama.cpp的Qwen3-0.6B量化部署微调
人工智能·lora·dnn·llama·qwen3
游戏开发爱好者87 天前
iPhone真机调试有哪些方法?一次定位推送权限问题时整理出来的几种方案
ide·vscode·ios·objective-c·个人开发·swift·敏捷流程