手机也能跑大模型?阿里千问Qwen端侧部署,只需这几步(上)
本文详细介绍了AI大模型从零部署到Android环境的全流程配置指南。内容包括:1)下载Qwen1.5-1.8B-Chat模型;2)安装Miniconda并创建Python3.11虚拟环境;3)配置TVM和MLC-LLM运行环境;4)安装JDK和Android SDK/NDK工具链;5)设置Rust编译环境;6)配置关键环境变量。文中提供了各组件下载链接、安装命令和路径配置方法,为开发者实现大模型
-
引言
-
下载待部署模型
-
安装minconda
-
安装tvm和mlc-llm
-
安装 JDK
-
安装 Android SDK
-
下载mlc-llm仓库
-
设置环境变量
-
安装Rust
1. 引言
梨花风起正清明,游子寻春半出城。

2.下载待部署模型
将 https://huggingface.co/Qwen/Qwen1.5-1.8B-Chat 下载到本地:
/share/model_zoo/LLM/Qwen/Qwen1.5-1.8B-Chat
3. 安装minconda
在下载好minconda的安装脚本之后,使用以下命令进行无交互安装:
bash Miniconda3-latest-Linux-x86_64.sh -b -p /home/your_user_name/opt/miniconda
将 bin 目录添加到PATH,
/home/your_user_name/opt/miniconda/bin
为实现长期可以使用conda命令具体实现,在/etc/profile文件末尾添加:
export PATH="/home/your_user_name/opt/miniconda/bin:$PATH"
在终端运行:source /etc/profile。
创建虚拟环境:
conda env remove -n mlc-chat-env-py311
conda create -n mlc-chat-env-py311 -c conda-forge "llvmdev>=15" "cmake>=3.24" git python=3.11
# enter the build environment
conda deactivate
conda activate mlc-chat-env-py311
4. 安装tvm和mlc-llm
前往 https://mlc.ai/wheels 下载安装预构建的安装文件, 本文实验采用的版本分别是:
mlc_ai_nightly_cu122-0.15.dev228
mlc_llm_nightly_cu122-0.1.dev1072
具体下载链接:
https://github.com/mlc-ai/package/releases/download/v0.9.dev0/mlc_ai_nightly_cu122-0.15.dev228-cp311-cp311-manylinux_2_28_x86_64.whl
https://github.com/mlc-ai/package/releases/download/v0.9.dev0/mlc_llm_nightly_cu122-0.1.dev1072-cp311-cp311-manylinux_2_28_x86_64.whl
安装命令:
pip3 install mlc_ai_nightly_cu122-0.15.dev228-cp311-cp311-manylinux_2_28_x86_64.whl -i https://mirrors.cloud.tencent.com/pypi/simple
pip3 install mlc_llm_nightly_cu122-0.1.dev1072-cp311-cp311-manylinux_2_28_x86_64.whl -i https://mirrors.cloud.tencent.com/pypi/simple
5. 安装 JDK
在目录/share_tools中执行以下命令:
# 下载 JDK
wget https://download.oracle.com/java/17/latest/jdk-17_linux-x64_bin.tar.gz
tar -zxvf jdk-17_linux-x64_bin.tar.gz
export JAVA_HOME=/share_tools/jdk-17.0.10/
6. 安装 Android SDK
先安装 Android SDK,直接在借助 Android SDK 安装 NDK。下载 Android SDK 命令行版,在目录/share_tools执行以下命令:
wget https://dl.google.com/android/repository/commandlinetools-linux-11076708_latest.zip
unzip -d android-sdk commandlinetools-linux-11076708_latest.zip
此时,Android SDK即可为/share_tools/android-sdk/cmdline-tools。
查看可下载的sdk版本:
cd android-sdk/cmdline-tools/bin
./sdkmanager --sdk_root=/share_tools/android-sdk/ --list
按需下载sdk版本:
./sdkmanager --sdk_root=/share_tools/android-sdk/ "platforms;android-28"
./sdkmanager --sdk_root=/share_tools/android-sdk/ "platform-tools"
./sdkmanager --sdk_root=/share_tools/android-sdk/ "build-tools;28.0.3"
./sdkmanager --sdk_root=/share_tools/android-sdk/ "ndk;25.2.9519653"
查看安装之后的结果:ls -lrth /share_tools/android-sdk/ndk
drwxr-xr-x 13 root root 4.0K Mar 29 12:35 21.3.6528147
drwxr-xr-x 11 root root 4.0K Apr 1 01:58 25.2.9519653
后续使用25.2.9519653这个版本,所以将其添加到系统环境变量中:export ANDROID_NDK=/share_tools/android-sdk/ndk/25.2.9519653。
此外,还需要设置NDK的clang compilerexport TVM_NDK_CC=$ANDROID_NDK/toolchains/llvm/prebuilt/linux-x86_64/bin/aarch64-linux-android24-clang
以上,已经配置了:
export ANDROID_NDK=... # Android NDK toolchain
export TVM_NDK_CC=... # Android NDK clang
export JAVA_HOME=... # Java
那么还需要配置TVM_HOME。由于TVM Unity runtime 置于MLC LLM项目中的 3rdparty/tvm。因此,可以不用额外安装,设置以下环境变量:
export TVM_HOME=/home/your_user_name/Repository/LLM/mlc-llm/3rdparty/tvm/
设置TVM_HOME之后,可以通过$TVM_HOME/include/tvm/runtime访问headers。
7. 下载mlc-llm仓库
执行以下命令下载mlc-llm仓库:
git clone --recursive https://github.com/mlc-ai/mlc-llm.git
上述命令会同时clone该目标仓库内的子模块,如果出现网络原因导致git clone 目标仓库报错,则可以在系统层面将https://github.com/统一改成GitHub的镜像网站。以下假设https://github-proxy.com/是其镜像网站,具体实现如下:
git config --global url."https://github-proxy.com/".insteadOf "https://github.com/"
然后在目录/home/Repository/LLM/下载mlc-llm仓库:
git clone --recursive https://github.com/mlc-ai/mlc-llm/
cd ./mlc-llm/
8. 设置环境变量
在配置文件/etc/profile中新增以下:
export JAVA_HOME=/share_tools/jdk-17.0.10/
# 设置 Android SDK 路径
export ANDROID_HOME=/share_tools/android-sdk
export ANDROID_NDK=/share_tools/android-sdk/ndk/25.2.9519653/
export TVM_NDK_CC=$ANDROID_NDK/toolchains/llvm/prebuilt/linux-x86_64/bin/aarch64-linux-android24-clang
export TVM_HOME=/home/Repository/LLM/mlc-llm/3rdparty/tvm/
export PATH="$JAVA_HOME/bin:$PATH"
9. 安装Rust
在Android上交叉编译HuggingFace tokenizers需要安装Rust,并确保$PATH中有rustc、cargo和rustup`。
下载&安装:
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
打印信息如下:
info: default toolchain set to 'stable-x86_64-unknown-linux-gnu'
stable-x86_64-unknown-linux-gnu installed - rustc 1.75.0 (82e1608df 2023-12-21)
Rust is installed now. Great!
To get started you may need to restart your current shell.
This would reload your PATH environment variable to include
Cargo's bin directory ($HOME/.cargo/bin).
To configure your current shell, run:
source "$HOME/.cargo/env"
配置:
source ~/.bashrc
至此,完成rustc、cargo、和rustup命令安装:
/home/your_user_name/.cargo/bin/rustc
/home/your_user_name/.cargo/bin/cargo
/home/your_user_name/.cargo/bin/rustup
支持,完成所需环境配置,进入 mlc-llm 目录,跟着实战篇中的步骤一步步操作即可。
《AI大模型从0到精通全套学习大礼包》
我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。
只要你是真心想学AI大模型,我这份资料就可以无偿共享给你学习。大模型行业确实也需要更多的有志之士加入进来,我也真心希望帮助大家学好这门技术,如果日后有什么学习上的问题,欢迎找我交流,有技术上面的问题,我是很愿意去帮助大家的!
如果你也想通过学大模型技术去帮助就业和转行,可以点扫描下方链接👇👇
大模型重磅福利:入门进阶全套104G学习资源包免费分享!

01.从入门到精通的全套视频教程
包含提示词工程、RAG、Agent等技术点
02.AI大模型学习路线图(还有视频解说)
全过程AI大模型学习路线


03.学习电子书籍和技术文档
市面上的大模型书籍确实太多了,这些是我精选出来的

04.大模型面试题目详解


05.这些资料真的有用吗?
这份资料由我和鲁为民博士共同整理,鲁为民博士先后获得了北京清华大学学士和美国加州理工学院博士学位,在包括IEEE Transactions等学术期刊和诸多国际会议上发表了超过50篇学术论文、取得了多项美国和中国发明专利,同时还斩获了吴文俊人工智能科学技术奖。目前我正在和鲁博士共同进行人工智能的研究。
所有的视频由智泊AI老师录制,且资料与智泊AI共享,相互补充。这份学习大礼包应该算是现在最全面的大模型学习资料了。
资料内容涵盖了从入门到进阶的各类视频教程和实战项目,无论你是小白还是有些技术基础的,这份资料都绝对能帮助你提升薪资待遇,转行大模型岗位。


智泊AI始终秉持着“让每个人平等享受到优质教育资源”的育人理念,通过动态追踪大模型开发、数据标注伦理等前沿技术趋势,构建起"前沿课程+智能实训+精准就业"的高效培养体系。
课堂上不光教理论,还带着学员做了十多个真实项目。学员要亲自上手搞数据清洗、模型调优这些硬核操作,把课本知识变成真本事!

如果说你是以下人群中的其中一类,都可以来智泊AI学习人工智能,找到高薪工作,一次小小的“投资”换来的是终身受益!
应届毕业生:无工作经验但想要系统学习AI大模型技术,期待通过实战项目掌握核心技术。
零基础转型:非技术背景但关注AI应用场景,计划通过低代码工具实现“AI+行业”跨界。
业务赋能 突破瓶颈:传统开发者(Java/前端等)学习Transformer架构与LangChain框架,向AI全栈工程师转型。
👉获取方式:
😝有需要的小伙伴,可以保存图片到wx扫描二v码免费领取【保证100%免费】🆓
更多推荐
所有评论(0)