nndeploy
nndeploy 是一款专为 AI 算法落地打造的高性能部署框架,致力于解决模型从训练环境到多端设备(如桌面、手机、边缘计算盒子及服务器)高效迁移的难题。无论是传统的计算机视觉任务,还是参数量超过 10B 的大语言模型与 AIGC 应用,它都能提供流畅的运行支持。
这款工具特别适合希望快速验证算法效果的 AI 研究人员、需要兼顾开发效率与运行性能的工程师,以及想要直观构建复杂处理流程的开发者。其核心亮点在于“可视化工作流”:用户无需编写大量底层代码,只需通过拖拽节点即可搭建并调试 AI 应用,参数调整实时可见。同时,nndeploy 并未牺牲性能,它内置了零拷贝、内存池复用等优化策略,并支持 C++/CUDA 自定义节点开发。更强大的是,它深度集成了 ONNXRuntime、TensorRT、MNN 等 13 种主流推理引擎,实现“一次构建,多端运行”,让同一套工作流能灵活适配 Windows、Linux、Android、iOS 等多种操作系统与硬件平台,大幅降低了跨平台部署的技术门槛。
使用场景
某智慧零售团队需要将实验室训练好的商品识别与背景移除模型,快速部署到门店的 Android 平板和边缘计算盒子上,以支持实时货架分析。
没有 nndeploy 时
- 多端适配痛苦:开发人员需分别为 Android (Java/Kotlin)、边缘设备 (C++) 编写重复的推理代码,维护多套工程,耗时且易出错。
- 性能调优门槛高:难以直接利用 TensorRT 或 MNN 等底层加速库,导致模型在移动端推理延迟高,无法达到实时流畅效果。
- 算法迭代缓慢:每次调整预处理逻辑或更换模型,都需要重新编译打包整个应用,验证周期长达数小时,严重拖慢研发节奏。
- 内存管理复杂:在多视频流并发场景下,频繁的数据拷贝导致内存溢出,稳定性差,崩溃问题频发。
使用 nndeploy 后
- 一套工作流通吃多端:通过可视化拖拽构建一次 AI 处理流程,即可一键导出并部署到 Android 平板和边缘盒子,无需重写核心逻辑。
- 内置高性能引擎:直接调用框架集成的 TensorRT 和 MNN 后端,结合零拷贝与内存池技术,将单帧推理耗时从 200ms 降至 40ms。
- 热调试与快速迭代:利用可视化界面实时调整节点参数和预处理脚本,效果立竿见影,将算法验证时间从小时级缩短至分钟级。
- 稳定并发处理:借助框架自带的流水线并行机制和内存复用策略,轻松支撑多路摄像头同时分析,系统连续运行无崩溃。
nndeploy 通过可视化工作流与深度优化的多端推理能力,让 AI 算法从实验室到真实硬件的落地效率提升了数倍。
运行环境要求
- Linux
- Windows
- macOS
- Android
- iOS
- 非必需(支持 CPU 推理)
- 若使用 GPU 加速,支持 NVIDIA (CUDA), Ascend, Rockchip NPU 等
- 具体显存和 CUDA 版本取决于所选推理后端(如 TensorRT, ONNXRuntime)及运行的模型大小(例如运行 10B+ 大模型需较高显存)
未说明(取决于运行模型的大小,大模型需要更大内存)

快速开始
English | 简体中文
nndeploy:一款简单易用和高性能的AI部署框架
文档 | Ask DeepWiki | 微信 | Discord
介绍
nndeploy 是一款简单易用和高性能的 AI 部署框架。解决的是 AI 算法在端侧部署的问题,包含桌面端(Windows、macOS)、移动端(Android、iOS)、边缘计算设备(NVIDIA Jetson、Ascend310B、RK 等)以及单机服务器(RTX 系列、T4、Ascend310P 等),基于可视化工作流和多端推理,可让 AI 算法在上述平台和硬件更高效、更高性能的落地。
针对10B以上的大模型(如大语言模型和 AIGC 生成模型),nndeploy 适合作为一款可视化工作流工具。
简单易用
可视化工作流:拖拽节点即可部署 AI 算法,参数实时可调,效果一目了然。
自定义节点:支持 Python/C++自定义节点,无论是用 Python 实现预处理,还是用 C++/CUDA 编写高性能节点,均可无缝集成到与可视化工作流。
一键部署:工作流支持导出为 JSON,可通过 C++/Python API 调用,适用于 Linux、Windows、macOS、Android 等平台
桌面端搭建AI工作流 移动端部署 

高性能
并行优化:支持串行、流水线并行、任务并行等执行模式
内存优化:零拷贝、内存池、内存复用等优化策略
高性能优化:内置 C++/CUDA/Ascend C/SIMD 等优化实现的节点
多端推理:一套工作流适配多端推理,深度集成 13 种主流推理框架,全面覆盖云端服务器、桌面应用、移动设备、边缘计算等全平台部署场景。框架支持灵活选择推理引擎,可按需编译减少依赖,同时支持接入自定义推理框架的独立运行模式。
推理框架 状态 ONNXRuntime ✅ TensorRT ✅ OpenVINO ✅ MNN ✅ TNN ✅ ncnn ✅ CoreML ✅ AscendCL ✅ RKNN ✅ SNPE ✅ TVM ✅ PyTorch ✅ nndeploy内部推理子模块 ✅
开箱即用的算法
已部署多类 AI 模型,并开发 100+可视化节点,实现开箱即用体验。随着部署节点数量的增加,节点库的复用性不断提升,这将显著降低后续算法部署的开发成本。我们还将持续部署更多具有实用价值的算法。
| Application Scenario | Available Models | Remarks |
|---|---|---|
| Large Language Models | QWen-2.5, QWen-3 | Support small B models |
| Image/Video Generation | Stable Diffusion 1.5, Stable Diffusion XL, Stable Diffusion 3, HunyuanDiT, etc. | Support text-to-image, image-to-image, image inpainting, based on diffusers |
| Face Swapping | deep-live-cam | |
| OCR | Paddle OCR | |
| Object Detection | YOLOv5, YOLOv6, YOLOv7, YOLOv8, YOLOv11, YOLOx | |
| Object Tracking | FairMot | |
| Image Segmentation | RBMGv1.4, PPMatting, Segment Anything | |
| Classification | ResNet, MobileNet, EfficientNet, PPLcNet, GhostNet, ShuffleNet, SqueezeNet | |
| API Services | OPENAI, DeepSeek, Moonshot | Support LLM and AIGC services |
更多查看已部署模型列表详解
快速开始
步骤一:安装
pip install --upgrade nndeploy步骤二:启动可视化界面
# 方式一:命令行 nndeploy-app --port 8000 # 方式二:代码启动 cd path/to/nndeploy python app.py --port 8000启动成功后,打开 http://localhost:8000 即可访问工作流编辑器。在这里,你可以拖拽节点、调整参数、实时预览效果,所见即所得。
步骤三:保存并加载运行
在可视化界面中搭建、调试完成后,点击保存,工作流会导出 JSON 文件,文件中封装了所有的处理流程。你可以用以下两种方式在生产环境中运行:
方式一:命令行运行
用于调试
# Python CLI nndeploy-run-json --json_file path/to/workflow.json # C++ CLI nndeploy_demo_run_json --json_file path/to/workflow.json方式 2:在 Python/C++ 代码中加载运行
可以将 JSON 文件集成到你现有的 Python 或 C++ 项目中,以下是一个加载和运行 LLM 工作流的示例代码:
- Python API 加载运行 LLM 工作流
graph = nndeploy.dag.Graph("") graph.remove_in_out_node() graph.load_file("path/to/llm_workflow.json") graph.init() input = graph.get_input(0) text = nndeploy.tokenizer.TokenizerText() text.texts_ = [ "<|im_start|>user\nPlease introduce NBA superstar Michael Jordan<|im_end|>\n<|im_start|>assistant\n" ] input.set(text) status = graph.run() output = graph.get_output(0) result = output.get_graph_output() graph.deinit() - C++ API 加载运行 LLM 工作流
std::shared_ptr<dag::Graph> graph = std::make_shared<dag::Graph>(""); base::Status status = graph->loadFile("path/to/llm_workflow.json"); graph->removeInOutNode(); status = graph->init(); dag::Edge* input = graph->getInput(0); tokenizer::TokenizerText* text = new tokenizer::TokenizerText(); text->texts_ = { "<|im_start|>user\nPlease introduce NBA superstar Michael Jordan<|im_end|>\n<|im_start|>assistant\n"}; input->set(text, false); status = graph->run(); dag::Edge* output = graph->getOutput(0); tokenizer::TokenizerText* result = output->getGraphOutput<tokenizer::TokenizerText>(); status = graph->deinit();
- Python API 加载运行 LLM 工作流
要求 Python 3.10+,默认包含 ONNXRuntime、MNN,更多推理后端请采用开发者模式。
文档
性能测试
测试环境:Ubuntu 22.04,i7-12700,RTX3060
流水线并行加速。以 YOLOv11s 端到端工作流总耗时,串行 vs 流水线并行
运行方式\推理引擎 ONNXRuntime OpenVINO TensorRT 串行 54.803 ms 34.139 ms 13.213 ms 流水线并行 47.283 ms 29.666 ms 5.681 ms 性能提升 13.7% 13.1% 57% 任务并行加速。组合任务(分割 RMBGv1.4+检测 YOLOv11s+分类 ResNet50)的端到端总耗时,串行 vs 任务并行
运行方式\推理引擎 ONNXRuntime OpenVINO TensorRT 串行 654.315 ms 489.934 ms 59.140 ms 任务并行 602.104 ms 435.181 ms 51.883 ms 性能提升 7.98% 11.2% 12.2%
下一步计划
联系我们
如果你热爱开源、喜欢折腾,不论是出于学习目的,亦或是有更好的想法,欢迎加入我们
微信:Always031856(欢迎加好友,进群交流,备注:nndeploy_姓名)
致谢
感谢以下项目:TNN、FastDeploy、opencv、CGraph、tvm、mmdeploy、FlyCV、oneflow、flowgram.ai、deep-live-cam。
感谢HelloGithub推荐
贡献者
版本历史
v3.0.102026/04/04v3.0.92026/04/04v3.0.82025/12/04v3.0.72025/11/12v3.0.62025/11/04v3.0.52025/11/03v3.0.42025/11/02v3.0.32025/11/01v3.0.22025/10/31v3.0.12025/10/30v3.0.02025/10/26v2.6.22025/10/02v2.5.02025/08/28常见问题
相似工具推荐
openclaw
OpenClaw 是一款专为个人打造的本地化 AI 助手,旨在让你在自己的设备上拥有完全可控的智能伙伴。它打破了传统 AI 助手局限于特定网页或应用的束缚,能够直接接入你日常使用的各类通讯渠道,包括微信、WhatsApp、Telegram、Discord、iMessage 等数十种平台。无论你在哪个聊天软件中发送消息,OpenClaw 都能即时响应,甚至支持在 macOS、iOS 和 Android 设备上进行语音交互,并提供实时的画布渲染功能供你操控。 这款工具主要解决了用户对数据隐私、响应速度以及“始终在线”体验的需求。通过将 AI 部署在本地,用户无需依赖云端服务即可享受快速、私密的智能辅助,真正实现了“你的数据,你做主”。其独特的技术亮点在于强大的网关架构,将控制平面与核心助手分离,确保跨平台通信的流畅性与扩展性。 OpenClaw 非常适合希望构建个性化工作流的技术爱好者、开发者,以及注重隐私保护且不愿被单一生态绑定的普通用户。只要具备基础的终端操作能力(支持 macOS、Linux 及 Windows WSL2),即可通过简单的命令行引导完成部署。如果你渴望拥有一个懂你
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 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能,使其成为当前最灵活、生态最丰富的开源扩散模型工具之一,帮助用户将创意高效转化为现实。
gemini-cli
gemini-cli 是一款由谷歌推出的开源 AI 命令行工具,它将强大的 Gemini 大模型能力直接集成到用户的终端环境中。对于习惯在命令行工作的开发者而言,它提供了一条从输入提示词到获取模型响应的最短路径,无需切换窗口即可享受智能辅助。 这款工具主要解决了开发过程中频繁上下文切换的痛点,让用户能在熟悉的终端界面内直接完成代码理解、生成、调试以及自动化运维任务。无论是查询大型代码库、根据草图生成应用,还是执行复杂的 Git 操作,gemini-cli 都能通过自然语言指令高效处理。 它特别适合广大软件工程师、DevOps 人员及技术研究人员使用。其核心亮点包括支持高达 100 万 token 的超长上下文窗口,具备出色的逻辑推理能力;内置 Google 搜索、文件操作及 Shell 命令执行等实用工具;更独特的是,它支持 MCP(模型上下文协议),允许用户灵活扩展自定义集成,连接如图像生成等外部能力。此外,个人谷歌账号即可享受免费的额度支持,且项目基于 Apache 2.0 协议完全开源,是提升终端工作效率的理想助手。
markitdown
MarkItDown 是一款由微软 AutoGen 团队打造的轻量级 Python 工具,专为将各类文件高效转换为 Markdown 格式而设计。它支持 PDF、Word、Excel、PPT、图片(含 OCR)、音频(含语音转录)、HTML 乃至 YouTube 链接等多种格式的解析,能够精准提取文档中的标题、列表、表格和链接等关键结构信息。 在人工智能应用日益普及的今天,大语言模型(LLM)虽擅长处理文本,却难以直接读取复杂的二进制办公文档。MarkItDown 恰好解决了这一痛点,它将非结构化或半结构化的文件转化为模型“原生理解”且 Token 效率极高的 Markdown 格式,成为连接本地文件与 AI 分析 pipeline 的理想桥梁。此外,它还提供了 MCP(模型上下文协议)服务器,可无缝集成到 Claude Desktop 等 LLM 应用中。 这款工具特别适合开发者、数据科学家及 AI 研究人员使用,尤其是那些需要构建文档检索增强生成(RAG)系统、进行批量文本分析或希望让 AI 助手直接“阅读”本地文件的用户。虽然生成的内容也具备一定可读性,但其核心优势在于为机器
