llama.cpp部署(windows)

一、下载源码和模型

下载源码和模型
复制代码
# 下载源码
git clone https://github.com/ggerganov/llama.cpp.git

# 下载llama-7b模型
git clone https://www.modelscope.cn/skyline2006/llama-7b.git
查看cmake版本:
复制代码
D:\pyworkspace\llama_cpp\llama.cpp\build>cmake --version
cmake version 3.22.0-rc2

CMake suite maintained and supported by Kitware (kitware.com/cmake).

二、开始build

复制代码
# 进入llama.cpp目录
mkdir build
cd build
cmake ..

build信息

复制代码
D:\pyworkspace\llama_cpp\llama.cpp\build>cmake ..
-- Building for: Visual Studio 16 2019
-- Selecting Windows SDK version 10.0.18362.0 to target Windows 10.0.22631.
-- The C compiler identification is MSVC 19.29.30137.0
-- The CXX compiler identification is MSVC 19.29.30137.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: D:/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Tools/MSVC/14.29.30133/bin/Hostx64/x64/cl.exe - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: D:/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Tools/MSVC/14.29.30133/bin/Hostx64/x64/cl.exe - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Found Git: D:/Git/Git/cmd/git.exe (found version "2.29.2.windows.2")
-- Looking for pthread.h
-- Looking for pthread.h - not found
-- Found Threads: TRUE
-- CMAKE_SYSTEM_PROCESSOR: AMD64
-- CMAKE_GENERATOR_PLATFORM:
-- x86 detected
-- Performing Test HAS_AVX_1
-- Performing Test HAS_AVX_1 - Success
-- Performing Test HAS_AVX2_1
-- Performing Test HAS_AVX2_1 - Success
-- Performing Test HAS_FMA_1
-- Performing Test HAS_FMA_1 - Success
-- Performing Test HAS_AVX512_1
-- Performing Test HAS_AVX512_1 - Failed
-- Performing Test HAS_AVX512_2
-- Performing Test HAS_AVX512_2 - Failed
-- Configuring done
-- Generating done
-- Build files have been written to: D:/pyworkspace/llama_cpp/llama.cpp/build

本地使用Realease会出现报错,修改为Debug进行build,这里会使用到visual studio进行build

复制代码
cmake --build . --config Debug

build信息

复制代码
D:\pyworkspace\llama_cpp\llama.cpp\build>cmake --build . --config Debug
用于 .NET Framework 的 Microsoft (R) 生成引擎版本 16.11.2+f32259642
版权所有(C) Microsoft Corporation。保留所有权利。

  Checking Build System
  Generating build details from Git
  -- Found Git: D:/Git/Git/cmd/git.exe (found version "2.29.2.windows.2")
  Building Custom Rule D:/pyworkspace/llama_cpp/llama.cpp/common/CMakeLists.txt
  build-info.cpp
  build_info.vcxproj -> D:\pyworkspace\llama_cpp\llama.cpp\build\common\build_info.dir\Debug\build_info.lib
  Building Custom Rule D:/pyworkspace/llama_cpp/llama.cpp/CMakeLists.txt
  ggml.c

在我本地D:\pyworkspace\llama_cpp\llama.cpp\build\bin\Debug目录下面产生了quantize.exe和main.exe等

三、量化和推理

安装相关python依赖

复制代码
python -m pip install -r requirements.txt

将下载好的llama-7b模型放入models目录下,并执行命令,会在llama-7b目录下面产生ggml-model-f16.gguf文件

复制代码
python convert.py models/llama-7b/

对产生的文件进行量化

复制代码
D:\pyworkspace\llama_cpp\llama.cpp\build\bin\Debug\quantize.exe ./models/llama-7b/ggml-model-f16.gguf ./models/llama-7b/ggml-model-q4_0.gguf q4_0

进行推理

复制代码
D:\pyworkspace\llama_cpp\llama.cpp\build\bin\Debug\main.exe -m ./models/llama-7b/ggml-model-q4_0.gguf -n 256 --repeat_penalty 1.0 --color -i -r "User:" -f prompts/chat-with-bob.txt
相关推荐
阿杰学AI25 分钟前
AI核心知识98——大语言模型之 Generative AI(简洁且通俗易懂版)
人工智能·语言模型·自然语言处理·aigc·生成式ai·generative ai
阿杰学AI36 分钟前
AI核心知识108—大语言模型之 AI Aesthetics Engineer(简洁且通俗易懂版)
人工智能·ai·语言模型·自然语言处理·aigc·新型职业·ai美学工程师
陈天伟教授1 小时前
人工智能应用- 搜索引擎:06. PageRank 算法
神经网络·搜索引擎·语言模型·自然语言处理·机器翻译
大模型任我行2 小时前
阿里:具身智能模型ABot-M0
人工智能·语言模型·自然语言处理·论文笔记
阿杰学AI3 小时前
AI核心知识107—大语言模型之 Prompt Engineer(简洁且通俗易懂版)
人工智能·ai·语言模型·自然语言处理·aigc·prompt engineer·提示词工程师
量子-Alex13 小时前
【大模型思维链】自洽性提升语言模型中的思维链推理能力
人工智能·语言模型·自然语言处理
硅谷秋水14 小时前
RoboBrain 2.5:视野中的深度,思维中的时间
深度学习·机器学习·计算机视觉·语言模型·机器人
MaoziShan15 小时前
CMU Subword Modeling | 07 Allomorphy
人工智能·机器学习·语言模型·自然语言处理
向量引擎小橙15 小时前
视觉艺术的“奇点”:深度拆解 Gemini-3-Pro-Image-Preview 绘画模型,看这只“香蕉”如何重塑 AI 创作逻辑!
人工智能·python·gpt·深度学习·llama
minhuan19 小时前
大模型应用:轻量化视觉语言模型(VLM):基于Qwen2-VL多模态模型实践.87
人工智能·语言模型·自然语言处理·qwen2-vl·轻量化vlm模型