llama:由AlexGabbia添加的Maple 20B-A1B三元MoE架构(CPU支持)· 拉取请求 #27000 · ggml-org/llama.cpp
摘要
此拉取请求为llama.cpp框架添加了Maple 20B-A1B三元混合专家架构的CPU推理支持。
查看缓存全文
缓存时间: 2026/09/14 13:08
ggml-org/llama.cpp
来源:https://github.com/ggml-org/llama.cpp
llama.cpp
使用 C/C++ 实现的 LLM 推理引擎
许可证:MIT (https://opensource.org/licenses/MIT)
发布版 (https://github.com/ggml-org/llama.cpp/releases?q=tag:v0)
每日构建版 (https://github.com/ggml-org/llama.cpp/releases?q=b)
服务器 (https://github.com/ggml-org/llama.cpp/actions/workflows/server.yml)
Docker (https://github.com/ggml-org/llama.cpp/actions/workflows/docker.yml)
Winget (https://github.com/ggml-org/llama.cpp/actions/workflows/winget.yml)
ggml (https://github.com/ggml-org/ggml) / 操作集 (https://github.com/ggml-org/llama.cpp/blob/master/docs/ops.md) / 维护者 PR (https://github.com/ggml-org/llama.cpp/issues?q=is%3Apr%20is%3Aopen%20draft%3AFalse%20(author%3Argerganov%20OR%20author%3AKitaitiMakoto%20OR%20author%3Adanbev%20OR%20author%3Aaldehir%20OR%20author%3Amax-krasnyansky%20OR%20author%3ACISC%20OR%20author%3Aggerganov%20OR%20author%3Aam17an%20OR%20author%3Ajhen0409%20OR%20author%3Abartowski1182%20OR%20author%3Anikwen%20OR%20author%3Ahipudding%20OR%20author%3Aravi9%20OR%20author%3AServeurpersoCom%20OR%20author%3Apwilkin%20OR%20author%3Areeselevine%20OR%20author%3Angxson%20OR%20author%3Ajeffbolznv%20OR%20author%3Amarty1885%20OR%20author%3A0cc4m%20OR%20author%3ATitaniumtown%20OR%20author%3Aangt%20OR%20author%3AIMbackK%20OR%20author%3Aarthw%20OR%20author%3AJohannesGaessler%20OR%20author%3AORippler%20OR%20author%3Aruixiang63%20OR%20author%3Axctan%20OR%20author%3Aallozaur%20OR%20author%3Ayomaytk%20OR%20author%3Aaendk%20OR%20author%3Awine99%20OR%20author%3Agaugarg-nv%20OR%20author%3Ataronaeo%20OR%20author%3Aforforever73%20OR%20author%3Alhez%20OR%20author%3Anetrunnereve%20OR%20author%3Afairydreaming)%20sort%3Aupdated-desc) / 开发统计 (https://github.com/ggml-org/llama.cpp-dev) / 库 llama API (https://github.com/ggml-org/llama.cpp/issues/9289) / llama-server REST API (https://github.com/ggml-org/llama.cpp/issues/9291)
快速开始
以下是在您的机器上安装 llama.cpp 的几种方式:
- 访问 https://llama.app 并按照说明操作
- 使用 Docker 运行——参见我们的 Docker 文档
- 从发布页面 (https://github.com/ggml-org/llama.cpp/releases) 下载预构建二进制文件
- 从源码构建——克隆此仓库,并查阅 我们的构建指南
安装完成后:
# 从 Hugging Face 直接下载并运行模型
llama cli -hf ggml-org/Qwen3.5-0.8B-GGUF
# 启动兼容 OpenAI 的 API 服务器
llama serve -hf ggml-org/Qwen3.5-0.8B-GGUF
通过 llama cli 进行 VLM 会话
通过 llama serve 使用内置 Web 界面
描述
llama.cpp 的主要目标是在本地和云端各种硬件上,以最少的配置和最先进的性能实现 LLM(和 VLM)推理。
- 纯 C/C++ 实现,无任何依赖
- Apple silicon 是一等公民——通过 ARM NEON、Accelerate 和 Metal 框架进行优化
- 支持 x86 架构的 AVX、AVX2、AVX512 和 AMX
- 支持 RISC-V 架构的 RVV、ZVFH、ZFH、ZICBOP 和 ZIHINTPAUSE
- 支持 1.5 位、2 位、3 位、4 位、5 位、6 位和 8 位整数量化,以实现更快的推理和减少内存使用
- 定制 CUDA 内核用于在 NVIDIA GPU 上运行 LLM(支持 AMD GPU(通过 HIP)和 Moore Threads GPU(通过 MUSA))
- Vulkan 和 SYCL 后端支持
- CPU+GPU 混合推理,可部分加速超出总显存容量的大模型
llama.cpp 项目构建在 ggml (https://github.com/ggml-org/ggml) 库之上。
支持的后端
| 后端 | 目标设备 |
|---|---|
| BLAS | 所有 |
| BLIS | 所有 |
| CANN | Ascend NPU |
| CUDA | Nvidia GPU |
| HIP | AMD GPU |
| Hexagon | Snapdragon |
| IBM zDNN | IBM Z & LinuxONE |
| MUSA | Moore Threads GPU |
| Metal | Apple Silicon |
| OpenCL | Adreno GPU |
| OpenVINO [进行中] | Intel CPU、GPU 和 NPU |
| RPC (https://github.com/ggml-org/llama.cpp/tree/master/tools/rpc) | 所有 |
| SYCL | Intel GPU |
| VirtGPU | VirtGPU APIR |
| Vulkan | GPU |
| WebGPU | 所有 |
| ZenDNN | AMD CPU |
文档
工具
开发
- 如何构建
- 在 Docker 上运行
- 在 Android 上构建
- 多 GPU 使用
- 性能故障排除
- GGML 技巧与窍门 (https://github.com/ggml-org/llama.cpp/wiki/GGML-Tips-&-Tricks)
- XCFramework
- 补全
- 模型
- 发布流程
贡献
- 贡献者可以提交 PR
- 协作者将根据贡献邀请加入
- 维护者可以推送到
llama.cpp仓库的分支,并将 PR 合并到master分支 - 任何有助于管理 issue、PR 和项目的帮助都非常欢迎!
- 阅读 CONTRIBUTING.md 了解更多信息
致谢
- yhirose/cpp-httplib (https://github.com/yhirose/cpp-httplib) —— 单头文件 HTTP 服务器,
llama-server使用,MIT 许可证 - nothings/stb (https://github.com/nothings/stb) —— 单头文件图像格式解码器,多模态子系统使用,公共领域
- nlohmann/json (https://github.com/nlohmann/json) —— 单头文件 JSON 库,各种工具/示例使用,MIT 许可证
- mackron/miniaudio (https://github.com/mackron/miniaudio) —— 单头文件音频格式解码器,多模态子系统使用,公共领域
- sheredom/subprocess.h (https://github.com/sheredom/subprocess.h) —— C 和 C++ 的单头文件进程启动解决方案,公共领域
相似文章
llama:为驻留在主机内存中的 MoE 专家添加 GPU 缓存 · Pull Request #29887 · ggml-org/llama.cpp
PR #29887 在 llama.cpp 中为驻留在主机内存中的 MoE 专家添加了 GPU 缓存,从而在专家权重溢出到 CPU 内存时提升性能。
ggml-org/llama.cpp
llama.cpp 是一个开源 C/C++ 库,用于在本地硬件上高效运行 LLM 推理,支持多种量化方法和多后端(CPU、GPU 等)。
llama + spec: 由 am17an 提交的 MTP 支持 · Pull Request #22673 · ggml-org/llama.cpp
拉取请求为 llama.cpp 添加多令牌预测(MTP)支持,启用推测解码以加速推理。
B70 推测解码重大改进 - budiony 重构 Intel XMX 矩阵引擎 · 拉取请求 #29864 · ggml-org/llama.cpp
一个针对 llama.cpp 的拉取请求重构了对英特尔 XMX 矩阵引擎的支持,大幅提升了英特尔硬件上的推测解码性能。
model:新增 K2 Horizon dense 与 MoVA 支持 · bitalov · Pull Request #29535 · ggml-org/llama.cpp
该拉取请求为 llama.cpp 新增了 K2 Horizon dense 模型与 MoVA 架构的支持,扩展了这一流行 C/C++ 推理框架的本地大模型推理覆盖范围。