llama.cpp编译和运行 API调用

llama.cpp编译和运行 API调用

llama.cpp介绍

llama.cpp是一个开源项目,官方地址:https://github.com/ggerganov/llama.cpp,使用纯 C/C++推理 Meta 的LLaMA模型,专门为在本地CPU上部署量化模型而设计。

它提供了一种简单而高效的方法,将训练好的量化模型转换为可在CPU上运行的低配推理版本,可加快推理速度并减少内存使用。

llama.cpp优势
  • 高性能:llama.cpp针对CPU进行了优化,能够在保证精度的同时提供高效的推理性能。

  • 低资源:由于采用了量化技术,llama.cpp可以显著减少模型所需的存储空间和计算资源,可运行在端侧设备上。

  • 易集成:llama.cpp提供了简洁的API和接口,方便开发者将其集成到自己的项目中。

  • 跨平台支持:llama.cpp可在多种操作系统和CPU架构上运行,具有很好的可移植性。

llama.cpp编译
shell 复制代码
安装编译环境
sudo apt install cmake g++ git

下载源代码
git clone https://github.com/ggerganov/llama.cpp


cd llama.cpp/
cd build/
编译
cmake ..
make

gcc --version
g++ --version
cmake .. -DCMAKE_CXX_FLAGS="-mavx -mfma"
    
cmake --build build --config Release -march=native -mtune=native
cmake -march=native -mtune=native --build build --config Release
cmake -DLLAMA_NATIVE=OFF
cmake -B build -DGGML_LLAMAFILE=OFF

编译完成后,会生成很多可执行文件,如图

llama.cpp运行

llama.cpp提供了与OpenAI API兼容的API接口,使用make生成的llama-server来启动API服务

shell 复制代码
本地启动 HTTP 服务器,使用端口:8080 指定Llama-3.1-8B-Instruct推理模型
.\llama-server.exe -m E:\ai_model\Imstudio-ai\lmstudio-community\Meta-Llama-3.1-8B-Instruct-GGUF\Meta-Llama-3.1-8B-Instruct-Q4_K_M.gguf --port 8080

调用API服务

shell 复制代码
curl --request POST     --url http://localhost:8080/completion
     --header "Content-Type: application/json"
     --data '{"prompt": "介绍一下llama.cpp"}'
     ```
相关推荐
伊一大数据&人工智能学习日志29 分钟前
机器学习经典无监督算法——聚类K-Means算法
人工智能·算法·机器学习
可涵不会debug1 小时前
Git在码云上的使用指南:从安装到推送远程仓库
linux·运维·服务器·c++·git
Flocx1 小时前
联合体(Union)
开发语言·网络·c++·stm32
游王子1 小时前
机器学习(3):逻辑回归
人工智能·机器学习·逻辑回归
迂幵myself1 小时前
14-1C++STL的初始
开发语言·c++
laopeng3011 小时前
4.Spring AI Prompt:与大模型进行有效沟通
人工智能·spring·prompt
dwjf3212 小时前
神经网络基础-正则化方法
人工智能·深度学习·神经网络
姚家湾2 小时前
语音技术在播客领域的应用(2)
人工智能·播客·ai 语音
三月七(爱看动漫的程序员)2 小时前
LARGE LANGUAGE MODELS ARE HUMAN-LEVEL PROMPT ENGINEERS
大数据·人工智能·算法·语言模型·自然语言处理·prompt
羑悻的小杀马特2 小时前
【狂热算法篇】探秘图论之 Floyd 算法:解锁最短路径的神秘密码(通俗易懂版)
c++·算法·图论·floyd算法