当前位置: 首页 > article >正文

MLLM SDK与CLI工具使用指南:轻松实现模型部署与推理

MLLM SDK与CLI工具使用指南轻松实现模型部署与推理【免费下载链接】mllmFast Multimodal LLM on Mobile Devices项目地址: https://gitcode.com/gh_mirrors/ml/mllmMLLMFast Multimodal LLM on Mobile Devices是一款专为移动设备优化的快速多模态大语言模型工具包提供了强大的SDK和便捷的CLI工具帮助开发者轻松实现模型部署与推理。本文将详细介绍MLLM SDK与CLI工具的安装、配置及使用方法让你快速上手移动设备上的AI模型部署。 核心功能与架构概览MLLM架构涵盖从算法优化到硬件加速的完整栈支持通过量化、剪枝和投机解码等技术实现了在移动设备上高效运行大语言模型的能力。MLLM架构概览左侧为OP执行工作流右侧为IR执行工作流展示了模型从模块到任务再到调度执行的完整流程MLLM支持多种硬件加速方案包括Ascend、Arm CPU、Qualcomm NPU和X86 CPU等同时集成了CANN、Kleidiai、Qnn和MLIR等AI编译器与运行时为不同硬件平台提供最佳性能支持。MLLM技术栈展示了算法层、AI推理框架、AI编译器与运行时以及加速器的完整技术架构 SDK安装与环境配置1. 准备工作首先克隆MLLM仓库到本地git clone https://gitcode.com/gh_mirrors/ml/mllm cd mllm2. 安装依赖MLLM提供了便捷的安装脚本可快速安装所需依赖# 安装pymllmPython绑定 bash ./scripts/install_pymllm.sh默认情况下SDK会安装到mllm项目的根目录。若需自定义安装路径可在任务的YAML文件中修改-DCMAKE_INSTALL_PREFIX选项。3. 构建项目MLLM使用任务脚本进行项目构建根据目标平台选择相应的构建任务# 构建X86平台版本 python task.py tasks/build_x86.yaml # 构建Android平台版本 python task.py tasks/build_android.yaml 模型转换与量化1. 获取模型资产从Hugging-Face或ModelScope下载原始模型典型文件包括config.jsontokenizer.json/tokenizer.modelPyTorch / Safetensors检查点.bin.safetensors以Qwen3-0.6B为例git clone https://www.modelscope.cn/Qwen/Qwen3-0.6B.git2. 转换为MLLM格式使用mllm-convertor工具将Hugging-Face/PyTorch模型转换为MLLM内部格式mllm-convertor \ --input_path ./Qwen3-0.6B/model.safetensors \ --output_path ./Qwen3-0.6B/w4a32.mllm \ --cfg_path ./Qwen3-0.6B/quant_config.json \ --pipeline w4a32_kai_pipeline3. 模型量化可选MLLM提供mllm-quantizer工具支持在设备上进行量化特别适用于Android设备mllm-quantizer \ -i ./Qwen3-0.6B/model.mllm \ -c ./Qwen3-0.6B/quant_config.json \ -iv v2 \ -o ./Qwen3-0.6B/w4a32.mllm \ -ov v2支持的量化类型包括GGUFCPU跨平台和KAIARMApple Silicon可根据目标硬件选择合适的量化方案。MLLM工作流程展示了从PyTorch/SafeTensors模型到MLLM量化模型再到运行时推理的完整流程⚙️ SDK使用示例以下是使用MLLM SDK在C中加载并运行Qwen3模型的示例代码#include mllm/mllm.hpp #include mllm/models/qwen3/modeling_qwen3.hpp #include mllm/models/qwen3/tokenization_qwen3.hpp #include mllm/models/qwen3/configuration_qwen3.hpp int main(int argc, char* argv[]) { mllm::init(); std::string config_path path/to/config.json; std::string tokenizer_path path/to/tokenizer; std::string prompt Once upon a time; auto cfg mllm::models::qwen3::Qwen3Config(config_path); auto tokenizer mllm::models::qwen3::Qwen3Tokenizer(tokenizer_path); auto model mllm::models::qwen3::Qwen3ForCausalLM(cfg); auto inputs tokenizer.convertMessage({.prompt prompt}); for (auto step : model.chat(inputs)) { std::wcout tokenizer.detokenize(step.cur_token_id) std::flush; } return 0; }配置文件示例config.json{ architectures: [Qwen3ForCausalLM], bos_token_id: 151643, eos_token_id: 151645, attention_bias: false, hidden_size: 1024, head_dim: 128, intermediate_size: 3072, num_attention_heads: 16, num_key_value_heads: 8, num_hidden_layers: 28, max_position_embeddings: 40960, rms_norm_eps: 1e-06, vocab_size: 151936, max_cache_length: 2048, rope_theta: 1000000.0, tie_word_embeddings: true, linear_impl_type: KaiLinear_f32_qai8dxp_qsi4c32p_mxk_nxk_qai8dxp1x8_qsi4c32p8x8_1x8x32 }️ CLI工具使用指南MLLM提供了基于Golang构建的mllm-cli命令行工具实现了与MLLM C SDK的无缝集成。虽然目前详细使用文档正在完善中但基本使用流程如下1. 模型推理# 使用CLI进行模型推理 mllm-cli infer --model_path ./Qwen3-0.6B/w4a32.mllm --prompt Hello, world!2. 模型转换# 使用CLI进行模型转换 mllm-cli convert --input ./Qwen3-0.6B --output ./Qwen3-0.6B/mllm_model --quantization w4a323. 性能评估# 评估模型性能 mllm-cli benchmark --model_path ./Qwen3-0.6B/w4a32.mllm --iterations 100 高级功能QNN后端支持MLLM支持QNN后端可在Qualcomm NPU上实现高效推理。以下是QNN后端的执行流程QNN跟踪执行序列展示了从示例应用到模型加载、创建操作、跟踪IR、图重写和执行的完整流程使用QNN后端需进行以下步骤配置QNN环境编译模型为QNN格式使用QNN后端加载并执行模型详细配置可参考官方文档docs/qnn_backend/setup_env.rst 张量存储与内存优化MLLM采用高效的张量存储策略通过TensorStorage和TensorViewImpl实现内存共享和高效访问减少内存占用并提高性能。张量存储结构展示了张量如何通过Storage、TensorStorage和TensorViewImpl进行存储和访问 总结MLLM SDK与CLI工具为移动设备上的大语言模型部署提供了完整的解决方案从模型转换、量化到推理执行覆盖了整个生命周期。通过本文的指南你可以快速上手MLLM在移动设备上实现高效的AI模型部署与推理。无论是开发移动AI应用还是进行边缘计算研究MLLM都能为你提供强大的支持。立即尝试体验移动设备上的高性能AI推理【免费下载链接】mllmFast Multimodal LLM on Mobile Devices项目地址: https://gitcode.com/gh_mirrors/ml/mllm创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关文章:

MLLM SDK与CLI工具使用指南:轻松实现模型部署与推理

MLLM SDK与CLI工具使用指南:轻松实现模型部署与推理 【免费下载链接】mllm Fast Multimodal LLM on Mobile Devices 项目地址: https://gitcode.com/gh_mirrors/ml/mllm MLLM(Fast Multimodal LLM on Mobile Devices)是一款专为移动设…...

如何在10分钟内安装Soft Actor-Critic:Docker与本地部署终极教程

如何在10分钟内安装Soft Actor-Critic:Docker与本地部署终极教程 【免费下载链接】sac Soft Actor-Critic 项目地址: https://gitcode.com/gh_mirrors/sa/sac Soft Actor-Critic(SAC)是一种高效的强化学习算法,广泛应用于连…...

一文读懂Dapr SDK for .NET的发布订阅机制:构建实时消息系统

一文读懂Dapr SDK for .NET的发布订阅机制:构建实时消息系统 【免费下载链接】dotnet-sdk Dapr SDK for .NET 项目地址: https://gitcode.com/gh_mirrors/do/dotnet-sdk Dapr SDK for .NET提供了强大的发布订阅(Pub/Sub)机制&#xff…...

如何实现Pyecharts自定义事件处理:从前端到后端的完整联动指南

如何实现Pyecharts自定义事件处理:从前端到后端的完整联动指南 【免费下载链接】pyecharts 🎨 Python Echarts Plotting Library 项目地址: https://gitcode.com/gh_mirrors/py/pyecharts Pyecharts是一款强大的Python数据可视化库,它…...

如何用DVA集成WebAssembly提升前端计算性能:终极优化指南

如何用DVA集成WebAssembly提升前端计算性能:终极优化指南 【免费下载链接】dva dvajs/dva: DVA 是一个基于 Redux 和 React 的轻量级前端框架,用于构建复杂的状态管理方案。它引入了模型(model)的概念,简化了Redux的应用状态管理和异步逻辑处…...

Dio缓存版本控制终极指南:平滑数据迁移的10个关键技巧

Dio缓存版本控制终极指南:平滑数据迁移的10个关键技巧 【免费下载链接】dio 项目地址: https://gitcode.com/gh_mirrors/dio/dio 在移动应用和API开发中,Dio作为强大的HTTP客户端库,其缓存机制和版本控制策略直接影响应用性能与用户体…...

Codis容器化终极指南:Docker Compose一键部署与集群管理

Codis容器化终极指南:Docker Compose一键部署与集群管理 【免费下载链接】codis 项目地址: https://gitcode.com/gh_mirrors/cod/codis Codis是一个分布式Redis解决方案,通过Docker容器化部署可以显著简化集群搭建与管理流程。本文将带你快速掌握…...

Bootstrap-sass 终极指南:如何快速掌握Sass版Bootstrap的核心功能

Bootstrap-sass 终极指南:如何快速掌握Sass版Bootstrap的核心功能 【免费下载链接】bootstrap-sass 项目地址: https://gitcode.com/gh_mirrors/boo/bootstrap-sass Bootstrap-sass是将流行的前端框架Bootstrap与强大的CSS预处理器Sass完美结合的项目&#…...

RS®CMW500 全场景一体化无线通信测试平台

看来你对罗德与施瓦茨的专业无线测试设备很熟悉,CMW500作为该品牌经典的宽带无线通信综合测试仪,确实是2G到4G时代无线终端测试领域的标杆产品,至今在消费电子、汽车电子、物联网等行业的研发、生产和认证环节仍有广泛应用。我会从核心定位、…...

Bootstrap-sass自动化测试完整指南:确保组件稳定性的5大策略

Bootstrap-sass自动化测试完整指南:确保组件稳定性的5大策略 【免费下载链接】bootstrap-sass 项目地址: https://gitcode.com/gh_mirrors/boo/bootstrap-sass Bootstrap-sass作为前端开发的重要工具,其组件稳定性直接影响项目质量。本文将分享5…...

7个CSS变量技巧,彻底改变Tippy.js主题定制体验

7个CSS变量技巧,彻底改变Tippy.js主题定制体验 【免费下载链接】tippyjs Tooltip, popover, dropdown, and menu library 项目地址: https://gitcode.com/gh_mirrors/ti/tippyjs Tippy.js是一款功能强大的Tooltip、popover、dropdown和菜单库,它让…...

终极指南:如何利用External-Attention-pytorch实现脑机接口中的神经信号解码

终极指南:如何利用External-Attention-pytorch实现脑机接口中的神经信号解码 【免费下载链接】External-Attention-pytorch 🍀 Pytorch implementation of various Attention Mechanisms, MLP, Re-parameter, Convolution, which is helpful to further …...

Pell编辑器终极扩展指南:10个实用Action与插件开发技巧

Pell编辑器终极扩展指南:10个实用Action与插件开发技巧 【免费下载链接】pell 📝 the simplest and smallest WYSIWYG text editor for web, with no dependencies 项目地址: https://gitcode.com/gh_mirrors/pe/pell Pell是一款轻量级无依赖的We…...

Vim-Pathogen终极指南:轻松管理Vim插件的神器

Vim-Pathogen终极指南:轻松管理Vim插件的神器 【免费下载链接】vim-pathogen pathogen.vim: manage your runtimepath 项目地址: https://gitcode.com/gh_mirrors/vi/vim-pathogen Vim-Pathogen是一款强大的Vim插件管理工具,它能帮助你轻松管理Vi…...

智能矿山GIS一张图:构建透明化智慧矿山新范式

在矿山数字化转型的浪潮中,如何打破数据孤岛、实现全要素安全管控,成为行业高质量发展的核心命题。汇智信科打造的“智能矿山GIS一张图”,以高性能、高安全、高可用、高智能的大数据技术为底座,通过地质测量数据动态处理与多维可视…...

如何用awspec实现AWS基础设施即代码(IaC)的自动化测试

如何用awspec实现AWS基础设施即代码(IaC)的自动化测试 【免费下载链接】awspec RSpec tests for your AWS resources. 项目地址: https://gitcode.com/gh_mirrors/aw/awspec awspec是一款专为AWS资源设计的RSpec测试框架,它能够帮助开…...

C语言--文件

1.什么是⽂件? 磁盘(硬盘)上的⽂件是⽂件。 但是在程序设计中,我们⼀般谈的⽂件有两种:程序⽂件、数据⽂件(从⽂件功能的⻆度来分类 的)。 1.1程序⽂件 程序⽂件包括源程序⽂件(…...

isaac_ros_visual_slam API全解析:从基础到高级应用

isaac_ros_visual_slam API全解析:从基础到高级应用 【免费下载链接】isaac_ros_visual_slam Visual odometry package based on hardware-accelerated NVIDIA Elbrus library with world class quality and performance. 项目地址: https://gitcode.com/gh_mirro…...

Protege Desktop与推理机集成指南:让你的本体具备智能推理能力

Protege Desktop与推理机集成指南:让你的本体具备智能推理能力 【免费下载链接】protege Protege Desktop 项目地址: https://gitcode.com/gh_mirrors/pr/protege Protege Desktop是一款强大的本体编辑工具,通过与推理机集成,能够为你…...

Takahē API完全指南:开发自定义客户端与集成第三方服务

Takahē API完全指南:开发自定义客户端与集成第三方服务 【免费下载链接】takahe An ActivityPub/Fediverse server 项目地址: https://gitcode.com/gh_mirrors/ta/takahe Takahē 是一个功能强大的 ActivityPub/Fediverse 服务器,其 API 为开发者…...

【优化配置】基于遗传算法GA配置配电网络IEEE33和69总线附Matlab代码

✅作者简介:热爱科研的Matlab仿真开发者,擅长毕业设计辅导、数学建模、数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。🍎 往期回顾关注个人主页:Matlab科研工作室👇 关注我领取海量matlab电子书和…...

Rackstack常见问题解决:打印、组装和使用中的技巧与窍门

Rackstack常见问题解决:打印、组装和使用中的技巧与窍门 【免费下载链接】rackstack A modular 3d-printable mini rack system. 项目地址: https://gitcode.com/gh_mirrors/ra/rackstack Rackstack是一款模块化3D打印迷你机架系统,为电子设备提供…...

githubv4企业版配置指南:搭建私有GitHub服务器的API客户端

githubv4企业版配置指南:搭建私有GitHub服务器的API客户端 【免费下载链接】githubv4 Package githubv4 is a client library for accessing GitHub GraphQL API v4 (https://docs.github.com/en/graphql). 项目地址: https://gitcode.com/gh_mirrors/gi/githubv4…...

【优化覆盖】基于改进的灰狼算法IGWO实现长方形 梯形 三角形障碍下的无线传感器网络节点覆盖优化附Matlab复现

✅作者简介:热爱科研的Matlab仿真开发者,擅长毕业设计辅导、数学建模、数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。🍎 往期回顾关注个人主页:Matlab科研工作室👇 关注我领取海量matlab电子书和…...

do expressions从入门到精通:2024年最完整的学习路线图

do expressions从入门到精通:2024年最完整的学习路线图 【免费下载链接】proposal-do-expressions Proposal for do expressions 项目地址: https://gitcode.com/gh_mirrors/pr/proposal-do-expressions do expressions是ECMAScript的一个提案,目…...

Alipay Easy SDK核心功能揭秘:高频场景API设计与动态扩展实战

Alipay Easy SDK核心功能揭秘:高频场景API设计与动态扩展实战 【免费下载链接】alipay-easysdk Alipay Easy SDK for multi-language(java、c#、php、ts etc.) allows you to enjoy a minimalist programming experience and quickly access the various high-frequ…...

HummusJS完全指南:如何快速创建、修改和解析PDF文件

HummusJS完全指南:如何快速创建、修改和解析PDF文件 【免费下载链接】HummusJS Node.js module for high performance creation, modification and parsing of PDF files and streams 项目地址: https://gitcode.com/gh_mirrors/hu/HummusJS HummusJS是一款基…...

Genode VFS插件开发指南:打造灵活的虚拟文件系统扩展

Genode VFS插件开发指南:打造灵活的虚拟文件系统扩展 【免费下载链接】genode Genode OS Framework 项目地址: https://gitcode.com/gh_mirrors/ge/genode Genode OS Framework是一个功能强大的操作系统框架,其虚拟文件系统(VFS&#…...

StatusBarLyric核心功能揭秘:动态歌词速度与固定宽度设置全攻略

StatusBarLyric核心功能揭秘:动态歌词速度与固定宽度设置全攻略 【免费下载链接】StatusBarLyric [Xposed] Status Bar Lyric / 状态栏歌词 项目地址: https://gitcode.com/gh_mirrors/st/StatusBarLyric StatusBarLyric是一款基于Xposed框架的状态栏歌词工具…...

2024 Kunkun路线图:即将上线的7个令人期待的新功能

2024 Kunkun路线图:即将上线的7个令人期待的新功能 【免费下载链接】kunkun An open source, cross-platform, extensible app launcher. 项目地址: https://gitcode.com/gh_mirrors/ku/kunkun Kunkun作为一款开源跨平台可扩展应用启动器,2024年将…...