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"}'
     ```
相关推荐
stereohomology1 分钟前
外挂可能是用AI工具自定义solomd插件和主题适合的方式
人工智能·markdown·薅羊毛·solomd·外挂新特性
青少儿编程课堂7 分钟前
蓝桥杯·全国青少年信息素养大赛·电子学会Python/C/C++考级:任意进制互转与大数多进制加法解析
c++·python·算法·bfs·信息学竞赛
东离与糖宝11 分钟前
一个句号击穿Copilot安全机制,CVSS8.8高危漏洞深度解析
人工智能
Shadow(⊙o⊙)12 分钟前
仿muduo实现高并发服务器——EPOLL设置与移除Poller.hpp管理Channel
运维·服务器·c++
“AI国潮设计-小江”19 分钟前
《【AIGC实战】Python+SDXL批量生成“英歌舞树莓香草布丁”IP,附保持角色一致性的代码逻辑》
开发语言·人工智能·python·prompt·aigc
const_qiu20 分钟前
第四章 06:4.6 统一入口 —— analyze() 能力收束
java·人工智能
闻缺陷则喜何志丹25 分钟前
【C++特性及类库】多线程
开发语言·c++·多线程·语言特性·系统库
多弗朗皮卡丘25 分钟前
C++ 哈希(下)
c++·算法·哈希算法
硅谷秋水33 分钟前
DynaHarness 方法总结
人工智能·机器学习·语言模型·机器人
TK泰妞33 分钟前
跨境短视频真正难在哪?一套从找参考到批量测试的 AI 工作流
大数据·人工智能