InferLLM
InferLLM 是一个轻量级的大语言模型推理框架,旨在让开发者能够更简单高效地在本地设备上运行量化后的 LLM 模型。它参考了 llama.cpp 的设计,但通过重构代码结构,将框架部分与内核计算部分解耦,避免了大量宏定义和单文件集中编码,使得代码更易阅读、修改和调试。
这个框架主要解决了在资源受限环境中部署大模型的难题。相比原版 llama.cpp 复杂的代码组织,InferLLM 提供了清晰简洁的架构,降低了学习和定制门槛。它支持多种主流模型格式,如 ChatGLM、LLaMA、Alpaca、Baichuan 等,并针对 CPU 和 GPU 进行了性能优化,尤其对 ARM、x86、CUDA 及 RISC-V 向量指令集做了适配,可在手机等移动设备上实现可接受的推理速度。
InferLLM 适合有一定技术背景的开发者、模型部署工程师或嵌入式 AI 研究人员使用,尤其适合希望在边缘设备、移动端或本地环境中低成本集成大模型能力的团队。对于普通用户,则需通过开发者二次封装或应用间接使用。
其技术亮点包括:专为 KV 缓存设计的存储管理机制,提升了推理效率;已移植 llama.cpp 中多数高性能计算内核;支持多平台编译与部署,包括 Android 交叉编译;默认兼容多种 4 比特量化模型,平衡了精度与速度。项目持续更新,已加入对 LLaMA-2 等新模型的支持,并在 Apache 2.0 协议下开源,方便商用与集成。
使用场景
某智能家居公司的嵌入式开发团队正在为新一代智能中控屏开发离线语音助手功能,需要将一个大语言模型(如 ChatGLM-6B)部署到基于 ARM 架构的嵌入式设备上,以实现本地、低延迟的意图理解和对话交互。
没有 InferLLM 时
- 部署门槛高:团队尝试使用原版推理框架,但其代码结构复杂,宏定义繁多,定制和适配到特定嵌入式平台需要投入大量时间进行代码梳理和修改。
- 资源消耗大:框架对内存和存储的占用较高,在资源受限的嵌入式设备上运行困难,难以满足产品对功耗和成本的严格要求。
- 性能优化难:缺乏对 ARM 架构(特别是手机级芯片)的深度优化,在设备上运行量化模型的速度缓慢,交互延迟明显,用户体验不佳。
- 跨平台部署繁琐:为不同硬件(如测试用的 x86 服务器、量产用的 ARM 设备)需要维护多套编译和部署脚本,流程复杂且容易出错。
使用 InferLLM 后
- 快速上手与集成:InferLLM 结构清晰、模块解耦,团队能快速理解框架并针对嵌入式平台进行轻量级集成,大幅缩短了开发周期。
- 高效利用资源:框架轻量化,并提供了专用的 KV 存储管理,有效降低了内存占用,使得在嵌入式设备上稳定运行量化模型成为可能。
- 获得优异性能:得益于其对 ARM 架构(如使用汇编优化 int4 矩阵乘)的深度优化,模型在设备上的推理速度显著提升,实现了可接受的实时交互响应。
- 实现统一部署:InferLLM 支持从 x86、ARM 到 RISC-V 等多种 CPU,以及 CUDA GPU,团队可以使用同一套代码和模型,通过简单的编译选项切换,轻松完成从开发到生产的全链路部署。
InferLLM 通过其轻量、高效且跨平台友好的设计,使开发团队能够将强大的 LLM 能力快速、经济地部署到资源受限的边缘设备上,打通了从模型到实际产品的关键一环。
运行环境要求
- Linux
- Android
- riscv-vector
可选 NVIDIA GPU(CUDA),默认 CPU 推理
未说明

快速开始
InferLLM
InferLLM 是一个轻量级的大语言模型(Large Language Model, LLM)推理框架,主要参考和借鉴了 llama.cpp 项目。llama.cpp 将几乎所有核心代码和内核(kernel)放在一个文件中,并使用了大量宏,这使得开发者难以阅读和修改。InferLLM 具有以下特点:
- 结构简单,易于上手和学习,并将框架部分与内核部分解耦。
- 高效,移植了 llama.cpp 中的大部分内核。
- 定义了专用的 KVstorage 类型,便于缓存和管理。
- 兼容多种模型格式(目前仅支持 alpaca 中英文 int4 量化模型)。
- 目前支持 CPU 和 GPU,针对 Arm、x86、CUDA 和 riscv-vector 进行了优化。可以部署在手机上,速度尚可。
简而言之,InferLLM 是一个简单高效的 LLM CPU 推理框架,可以在本地部署 LLM 量化模型,并具有良好的推理速度。
最新动态
- 2023.08.16:添加对 LLama-2-7B 模型的支持。
- 2023.08.8:优化了在 Arm 平台上的性能,使用 arm 汇编和内核打包(kernel packing)优化了 int4 矩阵乘法(matmul)内核。
- 此前:支持 chatglm/chatglm2、baichuan、alpaca、ggml-llama 模型。
如何使用
下载模型
目前,InferLLM 使用与 llama.cpp 相同的模型,可以从 llama.cpp 项目下载模型。此外,也可以直接从 Hugging Face kewin4933/InferLLM-Model 下载模型。目前,该项目上传了两个 alpaca、llama2、chatglm/chatglm2 和 baichuan 模型,一个是中文 int4 模型,另一个是英文 int4 模型。
编译 InferLLM
本地编译
mkdir build
cd build
cmake ..
make
默认禁用 GPU,如果你想启用 GPU,请使用 cmake -DENABLE_GPU=ON .. 来启用 GPU。目前仅支持 CUDA,使用 CUDA 前请先安装 CUDA 工具包。
Android 交叉编译
根据交叉编译要求,你可以使用预先准备好的 tools/android_build.sh 脚本。你需要提前安装 NDK 并将 NDK 的路径配置到 NDK_ROOT 环境变量中。
export NDK_ROOT=/path/to/ndk
./tools/android_build.sh
运行 InferLLM
运行 ChatGLM 模型请参考 ChatGLM 模型文档。
如果在本地执行,直接运行 ./chatglm -m chatglm-q4.bin -t 4。如果你想在手机上执行,可以使用 adb 命令将 alpaca 和模型文件复制到手机上,然后执行 adb shell ./chatglm -m chatglm-q4.bin -t 4。
默认设备是 CPU,如果你想使用 GPU 进行推理,请使用 ./chatglm -m chatglm-q4.bin -g GPU 来指定 GPU 设备。
- x86 平台:Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz

- android 平台:小米9,Qualcomm SM8150 Snapdragon 855

- CPU 平台:SG2042,支持 riscv-vector 0.7,64 线程

根据 x86 性能分析结果,我们强烈建议使用 4 个线程。
支持的模型
目前 InferLLM 支持以下模型:
- ChatGLM2-6B:用法请参考 ChatGLM
- ChatGLM-6B:用法请参考 ChatGLM
- llama
- llama2
- alpaca
- baichuan :用法请参考 baichuan
许可证
InferLLM 基于 Apache License, Version 2.0 许可证授权
常见问题
相似工具推荐
stable-diffusion-webui
stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面,旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点,将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。 无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师,还是想要深入探索模型潜力的开发者与研究人员,都能从中获益。其核心亮点在于极高的功能丰富度:不仅支持文生图、图生图、局部重绘(Inpainting)和外绘(Outpainting)等基础模式,还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外,它内置了 GFPGAN 和 CodeFormer 等人脸修复工具,支持多种神经网络放大算法,并允许用户通过插件系统无限扩展能力。即使是显存有限的设备,stable-diffusion-webui 也提供了相应的优化选项,让高质量的 AI 艺术创作变得触手可及。
everything-claude-code
everything-claude-code 是一套专为 AI 编程助手(如 Claude Code、Codex、Cursor 等)打造的高性能优化系统。它不仅仅是一组配置文件,而是一个经过长期实战打磨的完整框架,旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。 通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能,everything-claude-code 能显著提升 AI 在复杂任务中的表现,帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略,使得模型响应更快、成本更低,同时有效防御潜在的攻击向量。 这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库,还是需要 AI 协助进行安全审计与自动化测试,everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目,它融合了多语言支持与丰富的实战钩子(hooks),让 AI 真正成长为懂上
ComfyUI
ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎,专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式,采用直观的节点式流程图界面,让用户通过连接不同的功能模块即可构建个性化的生成管线。 这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景,也能自由组合模型、调整参数并实时预览效果,轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性,不仅支持 Windows、macOS 和 Linux 全平台,还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构,并率先支持 SDXL、Flux、SD3 等前沿模型。 无论是希望深入探索算法潜力的研究人员和开发者,还是追求极致创作自由度的设计师与资深 AI 绘画爱好者,ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能,使其成为当前最灵活、生态最丰富的开源扩散模型工具之一,帮助用户将创意高效转化为现实。
NextChat
NextChat 是一款轻量且极速的 AI 助手,旨在为用户提供流畅、跨平台的大模型交互体验。它完美解决了用户在多设备间切换时难以保持对话连续性,以及面对众多 AI 模型不知如何统一管理的痛点。无论是日常办公、学习辅助还是创意激发,NextChat 都能让用户随时随地通过网页、iOS、Android、Windows、MacOS 或 Linux 端无缝接入智能服务。 这款工具非常适合普通用户、学生、职场人士以及需要私有化部署的企业团队使用。对于开发者而言,它也提供了便捷的自托管方案,支持一键部署到 Vercel 或 Zeabur 等平台。 NextChat 的核心亮点在于其广泛的模型兼容性,原生支持 Claude、DeepSeek、GPT-4 及 Gemini Pro 等主流大模型,让用户在一个界面即可自由切换不同 AI 能力。此外,它还率先支持 MCP(Model Context Protocol)协议,增强了上下文处理能力。针对企业用户,NextChat 提供专业版解决方案,具备品牌定制、细粒度权限控制、内部知识库整合及安全审计等功能,满足公司对数据隐私和个性化管理的高标准要求。
ML-For-Beginners
ML-For-Beginners 是由微软推出的一套系统化机器学习入门课程,旨在帮助零基础用户轻松掌握经典机器学习知识。这套课程将学习路径规划为 12 周,包含 26 节精炼课程和 52 道配套测验,内容涵盖从基础概念到实际应用的完整流程,有效解决了初学者面对庞大知识体系时无从下手、缺乏结构化指导的痛点。 无论是希望转型的开发者、需要补充算法背景的研究人员,还是对人工智能充满好奇的普通爱好者,都能从中受益。课程不仅提供了清晰的理论讲解,还强调动手实践,让用户在循序渐进中建立扎实的技能基础。其独特的亮点在于强大的多语言支持,通过自动化机制提供了包括简体中文在内的 50 多种语言版本,极大地降低了全球不同背景用户的学习门槛。此外,项目采用开源协作模式,社区活跃且内容持续更新,确保学习者能获取前沿且准确的技术资讯。如果你正寻找一条清晰、友好且专业的机器学习入门之路,ML-For-Beginners 将是理想的起点。
ragflow
RAGFlow 是一款领先的开源检索增强生成(RAG)引擎,旨在为大语言模型构建更精准、可靠的上下文层。它巧妙地将前沿的 RAG 技术与智能体(Agent)能力相结合,不仅支持从各类文档中高效提取知识,还能让模型基于这些知识进行逻辑推理和任务执行。 在大模型应用中,幻觉问题和知识滞后是常见痛点。RAGFlow 通过深度解析复杂文档结构(如表格、图表及混合排版),显著提升了信息检索的准确度,从而有效减少模型“胡编乱造”的现象,确保回答既有据可依又具备时效性。其内置的智能体机制更进一步,使系统不仅能回答问题,还能自主规划步骤解决复杂问题。 这款工具特别适合开发者、企业技术团队以及 AI 研究人员使用。无论是希望快速搭建私有知识库问答系统,还是致力于探索大模型在垂直领域落地的创新者,都能从中受益。RAGFlow 提供了可视化的工作流编排界面和灵活的 API 接口,既降低了非算法背景用户的上手门槛,也满足了专业开发者对系统深度定制的需求。作为基于 Apache 2.0 协议开源的项目,它正成为连接通用大模型与行业专有知识之间的重要桥梁。