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

安卓通过termux部署ChatGLM

一、安装Termux并进行相关配置

1、安装termux

Termux 是一个 Android 终端仿真应用程序,用于在 Android 手机上搭建一个完整的 Linux 环境。 不需要 root 权限 Termux 就可以正常运行。Termux 基本实现 Linux 下的许多基本操作。可以使用 Termux 安装 python,并实现 python 编程,可以用手机架设 Server,同样可以用于渗透测试等等。

安装链接: 安卓手机termux安装

2、进行配置

打开termux进行apt的更新:

apt update && apt upgrade

安装sudo软件:

pkg install tsu

设置账户密码(后续ssh要用):

passwd

查看账户名(后续ssh要用):

whoami

安装远程ssh:

pkg install ssh

将PC和手机连接在同一局域网上,建议是电脑给手机开热点,在PC端的设置-网络和Internet-移动热点可以查看手机的IP地址。(或者termux用ifconfig查看)
IP地址查看

PC通过SSH连接手机:使用Mobaterm,注意端口为8022
Mobaterm连接手机
至此,PC与手机端通过Mobaterm和termux完成远程连接。

二、通过fastllm部署ChatGLM2-6b-int4

框架地址: fastllm
fastllm是纯c++实现,无第三方依赖的高性能大模型推理库6~7B级模型在安卓端上也可以流畅运行,可以在安卓上直接编译,目前已支持ChatGLM系列模型,各种LLAMA模型(ALPACA, VICUNA等),BAICHUAN模型,QWEN模型,MOSS模型,MINICPM模型等。

1、安装编译fastllm

git clone https://github.com/ztxz16/fastllm
cd fastllm
mkdir build
cd build
cmake ..
make -j

安装完后,build文件夹应该有

~/fastllm/build $ ls
CMakeCache.txt  CMakeFiles  Makefile  apiserver  benchmark  cmake_install.cmake  main  quant  testOps  tools  web  webui

2、下载已量化好的.flm模型并导入termux

hatGLM-6B 是一个开源的、支持中英双语的对话语言模型,基于 General Language Model (GLM) 架构,具有 62 亿参数。结合模型量化技术,用户可以在消费级的显卡上进行本地部署(INT4 量化级别下最低只需 6GB 显存)。 ChatGLM-6B 使用了和 ChatGPT 相似的技术,针对中文问答和对话进行了优化。经过约 1T 标识符的中英双语训练,辅以监督微调、反馈自助、人类反馈强化学习等技术的加持,62 亿参数的 ChatGLM-6B 已经能生成相当符合人类偏好的回答。

模型链接: chatglm-6b-int4.flm

关于如何导入termux目录中,我采用的方法是将模型文件通过USB文件传输到手机文件中,找到文件选择用termux打开即可自动导入到termux系统中的download文件夹中。

模型文件位置

3、运行chatglm

关于参数可以通过./main -h查看:
-h参数说明

cd fastllm
cd build
./main -p ../../downloads/chatglm-6b-int4.flm

运行效果
手机端运行效果如下:

手机运行

4、推理速度测试

./benchmark -p ../../downloads/chatglm-6b-int4.flm -f ../example/benchmark/prompts/beijing.txt -b 1

推理速度

6B级int4模型在骁龙870(小米10s)上速度大约为1 token/s。

相关文章:

  • github(不是git啊)操作记录(踩坑)
  • Linux 自动检测进程是否存活,如果挂掉自动拉起
  • Nodejs 第五十四章(net)
  • linux常用命令2
  • C语言游戏实战(4):人生重开模拟器
  • C++特性之一:继承
  • 【Docker】Neo4j 容器化部署
  • C++:vector类
  • FX110网:1月美国零售货币资金环比上升2.61%,嘉盛环比上升1.86%
  • 微信小程序问题定位——sourcemap文件
  • 7. Linux进程环境
  • Java的动态代理如何实现?
  • react 综合题-旧版
  • OD_2024_C卷_200分_7、5G网络建设【JAVA】【最小生成树】
  • Vue3:ref和reactive实现响应式数据
  • 【LeetCode热题100】73. 矩阵置零(矩阵)
  • boost 压缩与解压缩流
  • 揭秘Apache Kafka消费者:深度理解与实战指南
  • python实现B/B+树
  • 基于左逆的三点法测距,MATLAB函数
  • 男子退机票被收90%的手续费,律师:虽然合规,但显失公平
  • 新华时评:中美经贸会谈为全球经济纾压增信
  • 中国科学院院士徐春明不再担任山东石油化工学院校长
  • 新华时评:直播间里“家人”成“韭菜”,得好好管!
  • 前4个月我国货物贸易进出口同比增长2.4%,增速较一季度加快1.1个百分点
  • 普雷沃斯特当选新一任天主教罗马教皇