Llama 3.2 安卓手机安装教程

news2024/11/29 4:49:40

在刚刚结束的Meta开发者大会上,Llama 3.2惊艳亮相。此次,它不仅拥有多模态能力,还与Arm等公司合作,推出了专门针对高通、联发科硬件优化的“移动”版本。

NSDT工具推荐: Three.js AI纹理开发包 - YOLO合成数据生成器 - GLTF/GLB在线编辑 - 3D模型格式在线转换 - 可编程3D场景编辑器 - REVIT导出3D模型插件 - 3D模型语义搜索引擎 - AI模型在线查看 - Three.js虚拟轴心开发包 - 3D模型在线减面 - STL模型在线切割

具体来说,Meta发布了Llama 3.2的四个模型:

  • 110亿和900亿参数的多模态版本
  • 10亿和30亿参数的轻量级纯文本模型

根据​​官方数据,Llama 3.2 11B和90B已经展现出超越同等规模闭源模型的性能。

尤其是在图像理解任务上,Llama 3.2 11B的表现优于Claude 3 Haiku,90B版本甚至可以与GPT-4o-mini相媲美。

目前,Llama 3.2 的两个最大模型 11B 和 90B 支持图像推理,包括文档级图表理解、图像描述和视觉定位任务,例如基于自然语言描述精确定位图像中的对象。

例如,用户可以问“去年哪个月的销售额最高?”,Llama 3.2 可以通过对现有图表进行推理来快速给出答案。

轻量级 1B 和 3B 版本是纯文本模型,但也拥有多语言文本生成和工具调用功能。Meta 表示,这些模型使开发人员能够构建个性化的设备上通用应用程序——这些应用程序提供了强大的隐私保护,因为数据不需要离开设备。

在本地运行这些模型有两个主要优点:

  • 提示和响应可以即时完成,因为处理是在本地完成的。
  • 在本地运行模型时,无需将消息和日历等私人信息上传到云端,从而确保数据隐私。由于处理是本地的,因此应用程序可以确定哪些任务可以在设备上处理,哪些任务需要更强大的基于云的模型。

虽然目前没有产品允许移动设备有效地运行这些强大的轻量级模型,但我们仍然可以使用 Linux 环境来预览 Ollama。

本文将指导你在 Android 手机上安装 Termux,并在其 Linux 环境中编译和安装 Ollama,以在本地运行 Llama 3.2。可以使用相同的方法运行任何其他受支持的模型。

1、轻量级模型的技术背景

正如Meta在Llama 3.1发布时所提到的,可以利用强大的教师模型来创建更小但性能更好的模型。Meta对1B和3B模型进行了修剪和蒸馏,使其成为第一款能够在设备上高效运行的轻量级Llama模型。

通过修剪技术,Llama系列模型的尺寸可以显著减小,同时尽可能多地保留原有的知识和性能。在1B和3B模型的开发过程中,Meta采用了从Llama 3.1的8B模型中衍生出来的一次性结构化修剪策略。具体来说,Meta系统地删除了网络的某些部分并相应地调整了权重和梯度,从而得到了一个更小、更高效的模型,同时确保它保持与原始网络相同的性能水平。

完成修剪步骤后,Meta应用知识蒸馏来进一步提升模型的性能。

知识蒸馏是一种将较大的网络将知识转移到较小的网络的技术。核心思想是,在教师模型的指导下,较小的模型可以取得比独立训练更好的性能。在 Llama 3.2 的 1B 和 3B 模型中,Meta 在预训练阶段引入了 Llama 3.1 的 8B 和 70B 模型的输出作为训练过程的 token 级目标。

在训练后阶段,Meta 采用了与 Llama 3.1 类似的方法——对预训练模型进行多轮对齐。每轮包括监督微调 (SFT)、拒绝抽样 (RS) 和直接偏好优化 (DPO)。

具体来说,Meta 将上下文窗口长度扩展到 128K 个 token,同时保持与预训练模型相同的质量。

为了增强模型的性能,Meta 还利用了合成数据生成。他们整理了高质量的混合数据,以优化模型在总结、重写、遵循指令、语义推理和工具使用方面的能力。

上述演示基于未发布的量化模型。

2、测试设备

我使用的手机是四年前发布的三星S21 Ultra,规格如下:

处理器:

  • 型号:高通骁龙888
  • 制程:5nm
  • CPU架构:1+3+4八核设计。1个Cortex-X1主核,主频2.84GHz;3个Cortex-A78性能核,主频2.4GHz; 4个Cortex-A55效率核,主频1.8GHz
  • GPU:Adreno 660
  • RAM:16GB LPDDR5
  • 存储:512G​​B UFS 3.1闪存

通过测试,这款设备运行Llama 3.2 3B型号略有延迟,但总体流畅。运行Llama 3.2 1B型号流畅无问题。

使用该模型生成答案时,我的手机 16GB 内存只有 2.8GB 可用,温度明显升高。请注意,本文介绍的方法不能确保使用 GPU 进行推理,因为此类移动设备上的 GPU 无法识别。

因此,要在 Android 设备上运行 Llama 3.2,你只需要一部 Android 手机、网络连接和一些耐心。

让我们开始吧。

3、下载并安装 Termux

Termux 是一款功能强大的 Android 终端仿真器和 Linux 环境应用程序,它提供了通常在成熟的 Linux 系统上可用的各种工具。Termux 与其他终端仿真器的不同之处在于它无需 root 访问权限即可运行,从而使更广泛的 Android 用户可以使用它。使用 Termux,你可以直接在 Android 设备上安装和运行各种编程语言、工具和软件包,将其转变为便携式开发环境。

你可以直接从 Termux 的 GitHub 页面下载最新版本。在这里,我们选择下载 termux-app_v0.119.0-beta.1+apt-android-7-github-debug_arm64-v8a.apk。

下载完成后,在你的 Android 设备上安装 APK 文件。

4、环境设置

启动 Termux 后,你将看到一个类似于常规 Linux 终端的界面。你可以在手机上打开这篇文章,轻松复制后面的很多命令。

接下来,我们需要运行以下命令:

termux-setup-storage

Termux 中的 termux-setup-storage 命令用于授予 Termux 应用访问 Android 设备上共享存储的权限。此命令在 Termux 主目录中创建一个名为 storage 的目录,其中包含指向各种标准 Android 存储目录的符号链接,例如下载、图片、音乐等。通过运行此命令,你可以允许 Termux 读取和写入设备的外部存储,从而更轻松地管理文件、访问媒体以及在 Termux 和其他应用之间保存或检索数据。

运行命令后,将出现系统权限提示。单击允许权限,然后按返回按钮继续。

接下来运行以下命令:

pkg upgrade

Termux 中的 pkg upgrade 命令用于将所有已安装的软件包更新为最新可用版本。它可确保您的系统和应用程序保持最新,从而提高性能、安全性和与其他软件的兼容性。

执行过程中,你需要输入 Y 才能继续更新程序。

这里,只需按 Enter 即可继续。

更新完成后,我们将开始安装环境必要的软件包:

pkg install git cmake golang

该命令会安装三个软件包:Git(版本控制系统)、CMake(构建系统)和 Go(Go 编程语言),让你能够管理源代码、构建软件以及使用 Go 进行开发。

完成后,将显示如下图所示:

5、编译和安装 Ollama

Ollama 是一个平台,旨在让开发人员更轻松地在自己的机器上本地运行 LLaMA 等大型语言模型 (LLM)。它提供了一个简化和优化的环境来管理、运行和与这些模型交互,专注于性能和可访问性。Ollama 简化了设置依赖项、优化硬件使用(例如 GPU 加速)和提供可供本地执行的预训练模型等任务。

我们将代码从 Ollama 的 GitHub 存储库拉到我们的本地机器:

git clone --depth 1 https://github.com/ollama/ollama.git

执行后的结果。

接下来,导航到 ollama 文件夹并执行 Go 代码生成命令:

cd ollama
go generate ./...

稍等片刻后,你就会看到:

接下来,将当前目录中的 Go 代码编译为可执行二进制文件。此命令获取目录中的所有 Go 源文件并创建可运行的编译二进制文件。

go build .

然后我们在后台启动一个 Ollama 服务器:

./ollama serve &

此命令在后台启动 Ollama 服务器(由于 &),使其能够处理请求而不会阻塞终端。服务器将继续运行,并且可以访问该服务器以与模型进行交互,同时终端可以自由执行其他命令。

此时,通过运行ls,我们可以看到ollama已经被创建为可执行文件。

6、运行 Llama 3.2

Ollama 为 Llama 3.2 提供多种原始和量化模型,包括 1b 和 3b 版本。默认为 4 位量化。你可以从这个链接中选择一个模型。

运行以下命令下载 Llama 3.2 3b 量化模型:

./ollama run llama3.2:3b --verbose

--verbose 标志用于在模型执行期间启用详细日志记录。它是可选的,如果您不需要详细日志,可以省略。

下载过程中请耐心等待。

当你看到“发送消息”提示出现时,它就可以使用了。值得注意的是,Llama 3.2 3B 仍然可能对“9.11 和 9.9 哪个更大?”等逻辑问题提供错误答案。

你可以使用 Ctrl+D 退出聊天终端。

如果你想终止响应过程,请按 Ctrl+C 停止生成响应。

如果发现响应速度太慢,你可以尝试使用 Llama 3.2 1B 型号,这将提高响应速度。

7、清理提示

你可能想要删除刚刚在主目录中创建的“go”文件夹。如果是这样,请按照以下方法操作:

chmod -R 700 ~/go
rm -r ~/go

目前,termux 的 PATH 中没有 .local/bin(但你可以根据需要添加它)。如果您想将 ollama 二进制文件移动到 bin 文件夹,可以执行以下操作:

cp ollama/ollama /data/data/com.termux/files/usr/bin/

现在,你可以直接在终端中运行 ollama!

8、结束语

总之,Llama 3.2 的发布标志着 AI 技术的一个重要里程碑,尤其是在其在移动设备上提供高性能的能力方面。凭借其多模式功能和轻量级模型,Llama 3.2 使开发人员能够创建优先考虑隐私和响应能力的设备应用程序。

本文演示了如何在 Android 设备上运行 Llama 3.2 的 1B 和 3B 版本,从安装 Termux 开始,然后设置必要的环境,编译 Ollama,最后在本地运行模型。能够直接在移动硬件上处理 AI 任务,即使是像三星 S21 Ultra 这样的老款机型,也凸显了现实世界应用程序的潜力,提供了一种安全高效的方式来利用 AI 的力量,而无需依赖云基础设施。

随着我们不断前进,在移动设备上本地运行这些复杂模型的能力可能会通过使高级 AI 更易于访问、更安全、更用户友好来彻底改变行业。


原文链接:Llama 3.2 安卓运行教程 - BimAnt

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2192074.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Centos Stream 9备份与恢复、实体小主机安装PVE系统、PVE安装Centos Stream 9

最近折腾小主机,搭建项目环境,记录相关步骤 数据无价,丢失难复 1. Centos Stream 9备份与恢复 1.1 系统备份 root权限用户执行进入根目录: cd /第一种方式备份命令: tar cvpzf backup.tgz / --exclude/proc --exclu…

参数标准+-db和-db

-db是因为比值是相近的,值越进行越好,正负db代表两个值差异不大,可以分子比分母大或者分母比分子大-db代表串扰,分子比分母小,所以负db的值越小越好

探索 GraphRAG:从存储到查询,深入解析 NebulaGraph 与传统 SQL 的对比

近年来,图数据库逐渐成为大数据和人工智能领域的热议话题。特别是随着 GraphRAG 技术的火爆,如何高效存储和查询大规模图数据成为很多开发者关心的问题。出于好奇,我最近尝试了 GraphRAG 并研究其存储结构,因此决定进一步探索图数…

(笔记)第三期书生·浦语大模型实战营(十一卷王场)–书生基础岛第3关---浦语提示词工程实践

学员闯关手册:https://aicarrier.feishu.cn/wiki/ZcgkwqteZi9s4ZkYr0Gcayg1n1g?open_in_browsertrue 课程视频:https://www.bilibili.com/video/BV1cU411S7iV/ 课程文档: https://github.com/InternLM/Tutorial/tree/camp3/docs/L1/Prompt 关…

2024年最新大模型LLM学习路径全解析!看完你就是LLM大师

ChatGPT的出现在全球掀起了AI大模型的浪潮,2023年可以被称为AI元年,AI大模型以一种野蛮的方式,闯入你我的生活之中。 从问答对话到辅助编程,从图画解析到自主创作,AI所展现出来的能力,超出了多数人的预料&…

aws(学习笔记第二课) AWS SDK(node js)

aws(学习笔记第二课) 使用AWS SDK(node js) 学习内容: 使用AWS SDK(node js) 1. AWS SDK(node js) AWS支持多种SDK开发(除了AWS CLI,还支持其他的SDK) AndroidPythonNode.js(Javas…

【梯级水电站调度优化】基于标准粒子群

课题名称: 基于标准粒子群算法的梯级水电站调度优化 代码获取方式(付费): 相关资料: 1. 粒子群算法的基本原理 2. 梯级水电站调度优化模型 3. 代码注释 4. 代码讲解视频(个人录制) 程序实…

【电路笔记】-运算放大器微分器

运算放大器微分器 文章目录 运算放大器微分器1、概述2、运算放大器微分器的表示2.1 理想微分器2.2 输出公式2.3 交流分析3、实际微分器3.1 理想配置的局限性3.2 带串联电阻的伪微分器3.3 具有并联电容器的伪微分器4、总结1、概述 在我们之前关于积分器运算放大器的文章中,我们…

数据库概述(3)

课程主页:Guoliang Li Tsinghua 继续补充DBMS概况: DBMS概况 存储管理层 缓冲区管理 为了持久保存数据库里面的数据,必定要做持久化技术,也就是会用到磁盘,然而磁盘读取数据的速度是比较慢的,一般是毫…

港股大跌敲响警钟

10月3日,港股早间突如其来的下跌一度登上热搜榜,而午后回暖的恒指则一度抹去跌幅持平。截至当日收盘,恒指跌1.47%,报22,113.51点,守住了22000点关口;恒生科技指数跌、跌3.46%,报4978…

好用耐用充电宝品牌有哪些?推荐2024年热门款充电宝

作为一位热衷于探索各种数码产品的测评博主,今天我又来给大家带来满满的干货啦!在这个智能手机不离手的年代,拥有一款好用耐用的充电宝简直就成了出行必备。那么,在众多品牌和型号中,哪些充电宝真正值得我们入手呢&…

机器学习系列篇章0 --- 人工智能机器学习相关概念梳理

说明 人工智能(Artificial Intelligence, AI)是大势所趋,我们正处于一个AI开始大爆发的时代,基于AI的各类工具在科研、生产、生活各方各面给我们带来了巨大的便利和影响(好的以及坏的),有关AI的一切我们不可不察。 我并非计算机这个行当的科…

msvcp140dll丢失是怎回事,对比哪种解决方法更简单有效

1. msvcp140.dll 简介 1.1 定义与作用 msvcp140.dll 是 Microsoft Visual C 2015 Redistributable Package 的一部分,它包含了 C 运行时库的函数和类,这些库是支持 Windows 应用程序运行的关键组件。msvcp140.dll 文件提供了对 C 程序中常用的功能的支…

Jedis多线程环境报错:redis Could not get a resource from the pool 的主要原因及解决办法。

本篇文章主要讲解,Jedis多线程环境报错:redis Could not get a resource from the pool 的主要原因及解决办法。 作者:任聪聪 日期:2024年10月6日01:29:21 报错信息: 报文: redis Could not get a resou…

影刀RPA实战:Excel密码与字典功能指令

1.实战目标 本次主要讲解下影刀RPA操作Excel密码保护和数据列生成字典,在工作中,我们经常会遇到合作公司给我们发的表格,或是电商平台下载订单Excel数据表都带有密码,这在自动化处理过程中,多少带来不变,影…

cnn突破五(公式)

三层网络反向传播公式推导: X【196】-》HI【80】/HO【80】-》YI【10】/YO【10】,期望是d【10】 X,HI之间用w1【196,80】 HO,YI之间用w2【80,10】 k10;j80;i196 (yo[k]-d[k])*ds(yo[k])*ho[j]; (yo[k]-d[k])*ds(yo[…

双十一哪些东西会打折?入手哪些东西是最明智的?这些好物闭眼入

​随着双十一购物狂欢节的脚步越来越近,我们即将迎来一年一度的购物盛宴。在这个充满折扣和优惠的季节,如何巧妙地选购心仪商品,同时避免落入消费陷阱,成为了每个购物者需要思考的问题。为了帮助大家在双十一期间做出明智的购物决…

Sora文本生成视频模型

一、引言 2024年2月16日,OpenAI发布Sora文生视频模型,犹如一石激起千层浪,迅速刷屏爆火于整个AI圈。这是ChatGPT掀起Gen AI热潮时隔一年后,OpenAI再次史诗级的更新。一方面,Sora从文本、图像迈向视频大模型&#xff0…

javaScript基础(8个案例+代码+效果图)

目录 1.js常用的输出语句 案例:js初体验 1.代码 2.效果 2.js命名规则 3.js赋值 var 关键字声明变量 案例:交换两个变量的内容 完整代码 效果 4.js数据类型 布尔类型 整数 浮点数 字符串 空型 未定义型 5. 数据检测 6.算术运算符 7.比较运算符 案例:计算圆周长和面积 1.代码 2.…

SM2无证书及隐式证书公钥机制签名和加密过程详解(五)

在能够解析隐式证书实例的基础上(SM2无证书及隐式证书公钥机制签名和加密过程详解(四)-CSDN博客),这里介绍如何通过隐式证书机制实现签名验签及加密解密。 (5)隐式证书机制签名验签过程 5.1签名过程 输入&#xff1…