MNN-LLM App:在手机上离线运行大模型,阿里巴巴开源基于 MNN-LLM 框架开发的手机 AI 助手应用

❤️ 如果你也关注 AI 的发展现状,且对 AI 应用开发非常感兴趣,我会每日分享大模型与 AI 领域的最新开源项目和应用,提供运行实例和实用教程,帮助你快速上手AI技术!

🥦 微信公众号|搜一搜:蚝油菜花 🥦


大家好,我是蚝油菜花,今天跟大家分享一下 MNN-LLM App 这个基于 MNN-LLM 框架开发的手机 AI 助手应用。在此之前,如果你想了解什么是 MNN,可以阅读《MNN:阿里开源的轻量级深度学习推理框架,支持在移动端等多种终端上运行,兼容主流的模型格式》。

🚀 快速阅读

MNN-LLM App 是阿里巴巴推出的开源 Android 应用,专注于在手机上离线运行大语言模型(LLM)。

  1. 核心功能:支持多模态交互,包括文本生成文本、图像生成文本、音频转文本及文本生成图像。
  2. 技术原理:针对移动端 CPU 推理进行了深度优化,预填充和解码速度显著提升。

MNN-LLM App 是什么

MNN-LLM App

MNN-LLM App 是阿里巴巴基于 MNN-LLM 框架开源的 Android 手机应用,支持各类大语言模型(LLM)在手机上离线运行。该应用具备多模态功能,能实现文本生成文本、图像生成文本、音频转文本以及文本生成图像等多种任务。应用对 CPU 推理进行了深度优化,确保高效的本地运行,预填充速度和解码速度均显著优于同类产品。

此外,MNN-LLM App 支持多种主流模型,如 Qwen、Gemma、Llama 等,用户可以根据需要选择不同的模型进行任务处理。

MNN-LLM App 的主要功能

  • 多模态交互:支持多种输入输出方式,包括文本生成文本、图像生成文本、音频转文本以及文本生成图像(基于扩散模型)。用户可以通过文字、图片或语音输入,获取相应的生成结果。
  • 模型选择与切换:内置多种主流大语言模型(LLM),如 Qwen、Gemma、Llama、Baichuan 等,用户可以根据需求选择不同的模型。
  • 离线运行:所有功能在本地设备上运行,无需联网,确保数据隐私和安全性。
  • 性能优化:针对移动端 CPU 推理进行了深度优化,预填充和解码速度显著提升,相比同类应用具有更快的响应速度。
  • 本地存储:支持将生成的内容保存到本地,方便用户随时查看和使用。

MNN-LLM App 的技术原理

  • 移动端 CPU 优化:通过深度优化移动端 CPU 推理,预填充和解码速度显著提升,确保高效的本地运行。
  • 多模态支持:集成多种模态处理能力,支持文本、图像和音频的输入输出,满足不同场景的需求。
  • 模型轻量化:采用模型压缩和量化技术,减少模型体积和内存占用,提升运行效率。

如何运行 MNN-LLM App

1. 下载应用

你可以从发布页面下载最新版本的 MNN-LLM 应用,或选择自行编译。

2. 安装应用

安装后,你可以在应用中浏览所有支持的模型,下载并与其交互。此外,你还可以在侧边栏中查看和回顾之前的聊天记录。

3. 自行编译

如果你希望自行编译 MNN-LLM 应用,可以按照以下步骤操作:

4. 克隆仓库
git clone https://github.com/alibaba/MNN.git
5. 构建库
cd project/android
mkdir build_64
../build_64.sh "-DMNN_LOW_MEMORY=true -DMNN_CPU_WEIGHT_DEQUANT_GEMM=true -DMNN_BUILD_LLM=true -DMNN_SUPPORT_TRANSFORMER_FUSE=true -DMNN_ARM82=true -DMNN_USE_LOGCAT=true -DMNN_OPENCL=true -DLLM_SUPPORT_VISION=true -DMNN_BUILD_OPENCV=true -DMNN_IMGCODECS=true -DLLM_SUPPORT_AUDIO=true -DMNN_BUILD_AUDIO=true -DMNN_BUILD_DIFFUSION=ON -DMNN_SEP_BUILD=ON"
6. 复制库文件
find . -name "*.so" -exec cp {} ../apps/MnnLlmApp/app/src/main/jniLibs/arm64-v8a/ \;
7. 构建并安装应用
cd ../apps/MnnLlmApp/
./gradlew installDebug

资源


❤️ 如果你也关注 AI 的发展现状,且对 AI 应用开发非常感兴趣,我会每日分享大模型与 AI 领域的最新开源项目和应用,提供运行实例和实用教程,帮助你快速上手AI技术!

🥦 微信公众号|搜一搜:蚝油菜花 🥦

参考资源链接:[安卓手机部署Qwen1.5-0.5B语言模型教程](https://wenku.csdn.net/doc/12xtvs2csz?utm_source=wenku_answer2doc_content) 部署并优化大语言模型在安卓设备上的运行效率是移动计算和人工智能领域的一项重要任务。为了解决这个技术挑战,你可以参考《安卓手机部署Qwen1.5-0.5B语言模型教程》这一资源。该教程详细介绍了使用MNN框架在安卓设备上部署和优化大型语言模型的完整流程。 首先,模型转换是部署的第一步。你需要将训练好的Qwen1.5-0.5B-Chat模型转换为MNN支持的格式。这一过程可以通过MNN提供的模型转换工具完成,它支持多种训练框架产出的模型格式转换。 其次,为了确保模型在资源受限的安卓设备上有效运行,进行模型压缩和量化是关键步骤。MNN提供了高效的压缩和量化工具,可以帮助你减小模型大小,同时尽量保留模型的性能。在这个阶段,可能需要根据模型的特性选择合适的压缩算法,如权重量化、剪枝等。 接下来,将优化后的模型集成到安卓应用中是实现模型功能的必要步骤。你可以利用MNN提供的Java或C++ API,将模型加载到安卓应用中。同时,你需要处理模型输入输出的编码和解码工作,确保应用能够正确地与模型交互。 最后,针对特定的安卓设备进行性能调优是提升用户体验的关键。由于不同设备的硬件配置差异,你可能需要调整模型运行参数,如批处理大小、线程数等,来获得最佳的运行速度和准确率。 通过上述步骤,你能够将Qwen1.5-0.5B-Chat大语言模型成功部署到安卓手机上,并通过模型优化确保其运行效率。这不仅能够让你的应用在移动设备上提供更加智能化的服务,也能够加深你对移动深度学习应用的理解。如果你希望深入了解相关的优化技术和方法,推荐查阅更多关于MNN框架和大语言模型部署的资料,以获得更全面的知识和技巧。 参考资源链接:[安卓手机部署Qwen1.5-0.5B语言模型教程](https://wenku.csdn.net/doc/12xtvs2csz?utm_source=wenku_answer2doc_content)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值