尝试在手机上运行google 最新开源的gpt模型 gemma

2024-04-10 06:44

本文主要是介绍尝试在手机上运行google 最新开源的gpt模型 gemma,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Gemma介绍

Gemma简介

Gemma是谷歌于2024年2月21日发布的一系列轻量级、最先进的开放语言模型,使用了与创建Gemini模型相同的研究和技术。由Google DeepMind和Google其他团队共同开发。
Gemma提供两种尺寸的模型权重:2B和7B。每种尺寸都带有经过预训练(pre-trained)和经过指令调制(instruction-tuned)的变体。旨在为开发人员和研究者提供一个“轻量级、最先进的开源模型系列”Gemma提供了2B和7B两种不同规模的版本,每种都包含了预训练基础版本和经过指令优化的版本,并且无需数据量化处理,拥有高达8K tokens的处理能力。

  • 预训练模型可以用于各种自然语言处理任务,例如文本生成、翻译、问答和摘要。
  • 指令调制模型经过微调,可以执行特定任务,例如编写代码、撰写不同类型的创意内容、回答开放式问题等。

Gemma模型可以在您的笔记本电脑、工作站或Google Cloud上运行,并可轻松部署到Vertex AI和Google Kubernetes Engine(GKE)。

Gemma优势

Gemma具有以下优势:

  • 性能领先:Gemma在多个基准测试中都取得了最先进的成果,都优于Meta的Llama 2。
  • 易于使用:Gemma提供简单易用的API,可轻松集成到您的应用程序中。
  • 可扩展性:Gemma可以根据您的需要进行扩展,以满足各种规模的需求。
  • 开放性:Gemma是开源的,您可以自由使用和修改。
  • 模型较小:尽管其参数数量较少,但在关键基准测试中表现出色,并且超过了一些更大的模型。
  • *适用范围广:拥有独特的运行环境,可以在各种类型的设备上工作,包括笔记本电脑、台式机、物联网设备、移动设备以及云端平台等。
  • 与Hugging Face平台无缝集成:可以让AIGC爱好者更好的去使用。

Gemma应用

Gemma可以应用于各种自然语言处理任务,包括:

  • 文本生成
  • 翻译
  • 问答
  • 摘要
  • 代码生成
  • 撰写创意内容
  • 回答开放式问题

总结

Gemma是谷歌发布的一系列轻量级、最先进的开放语言模型,具有性能领先、易于使用、可扩展性和开放性等优势。Gemma可以应用于各种自然语言处理任务,具有广阔的应用前景。

以下是一些Gemma的应用案例:

  • 新闻写作:Gemma可以用于自动生成新闻报道,例如体育比赛的赛况报道、公司财报的分析报道等。
  • 产品描述生成:Gemma可以用于自动生成产品描述,例如电商网站上的商品详情页。
  • 聊天机器人:Gemma可以用于构建聊天机器人,为用户提供个性化的服务。
  • 教育:Gemma可以用于开发教育应用程序,例如帮助学生学习语言或编写代码。

测试环境

  • 硬件环境
    • 小米 11 ultra
    • rk3588 测试板
  • 软件环境
    • 小米11 android 13
    • rk3588 android 13

环境准备

  • 安装最新版 android studio,下载android sdk 需要包含ndk-bundle
    *下载gemma.cpp
  • 设置ANDROID_NDK 路径

模型下载准备

available on kaggle
我下载的是2b-it-sfp模型,选择gemma.cpp可运行版本模型

编译

    git clone --recursive https://github.com/google/gemma.cppcd gemma.cppcmake -G Ninja -Bbuild_ninja_arm64 -DCMAKE_BUILD_TYPE=Release -DCMAKE_TOOLCHAIN_FILE=$ANDROID_NDK/build/cmake/android.toolchain.cmake \
-DANDROID_ABI=arm64-v8a -DANDROID_PLATFORM=android-21 -DANDROID_ARM_NEON=ON -DCMAKE_INSTALL_PREFIX=`pwd`/build_ninja_arm64/android_install -DHWY_ENABLE_TESTS=OFF .cmake --build build_ninja_arm64

拷贝到设备运行

  • 用usb链接计算机,或者使用无线链接到手机
  • 列出设备
adb devicesList of devices attached
172.16.0.89:5555        device
  • 拷贝执行程序和模型
    # 拷贝执行程序adb push ./build_ninja_arm64/gemma /data/local/tmp # 拷贝库adb push build_ninja_arm64/3rdparty/sentencepiece/src/libsentencepiece.so /data/local/tmp# 先解压再拷贝模型tar -xvf gemma_model_2b_cxx_sfp.tar.gzadb push gemma_model_2b_cxx_sfp/2b-it-sfp.sbs /data/local/tmpadb push gemma_model_2b_cxx_sfp/tokenizer.spm /data/local/tmp
  • 运行
    export LD_LIBRARY_PATH=/data/local/tmp/./gemma --tokenizer tokenizer.spm --compressed_weights ./2b-it-sfp.sbs --model 2b-it

 

这篇关于尝试在手机上运行google 最新开源的gpt模型 gemma的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/890325

相关文章

Java的IO模型、Netty原理解析

《Java的IO模型、Netty原理解析》Java的I/O是以流的方式进行数据输入输出的,Java的类库涉及很多领域的IO内容:标准的输入输出,文件的操作、网络上的数据传输流、字符串流、对象流等,这篇... 目录1.什么是IO2.同步与异步、阻塞与非阻塞3.三种IO模型BIO(blocking I/O)NI

基于Flask框架添加多个AI模型的API并进行交互

《基于Flask框架添加多个AI模型的API并进行交互》:本文主要介绍如何基于Flask框架开发AI模型API管理系统,允许用户添加、删除不同AI模型的API密钥,感兴趣的可以了解下... 目录1. 概述2. 后端代码说明2.1 依赖库导入2.2 应用初始化2.3 API 存储字典2.4 路由函数2.5 应

Python实现自动化接收与处理手机验证码

《Python实现自动化接收与处理手机验证码》在移动互联网时代,短信验证码已成为身份验证、账号注册等环节的重要安全手段,本文将介绍如何利用Python实现验证码的自动接收,识别与转发,需要的可以参考下... 目录引言一、准备工作1.1 硬件与软件需求1.2 环境配置二、核心功能实现2.1 短信监听与获取2.

Java终止正在运行的线程的三种方法

《Java终止正在运行的线程的三种方法》停止一个线程意味着在任务处理完任务之前停掉正在做的操作,也就是放弃当前的操作,停止一个线程可以用Thread.stop()方法,但最好不要用它,本文给大家介绍了... 目录前言1. 停止不了的线程2. 判断线程是否停止状态3. 能停止的线程–异常法4. 在沉睡中停止5

查看Oracle数据库中UNDO表空间的使用情况(最新推荐)

《查看Oracle数据库中UNDO表空间的使用情况(最新推荐)》Oracle数据库中查看UNDO表空间使用情况的4种方法:DBA_TABLESPACES和DBA_DATA_FILES提供基本信息,V$... 目录1. 通过 DBjavascriptA_TABLESPACES 和 DBA_DATA_FILES

最新Spring Security实战教程之Spring Security安全框架指南

《最新SpringSecurity实战教程之SpringSecurity安全框架指南》SpringSecurity是Spring生态系统中的核心组件,提供认证、授权和防护机制,以保护应用免受各种安... 目录前言什么是Spring Security?同类框架对比Spring Security典型应用场景传统

最新Spring Security实战教程之表单登录定制到处理逻辑的深度改造(最新推荐)

《最新SpringSecurity实战教程之表单登录定制到处理逻辑的深度改造(最新推荐)》本章节介绍了如何通过SpringSecurity实现从配置自定义登录页面、表单登录处理逻辑的配置,并简单模拟... 目录前言改造准备开始登录页改造自定义用户名密码登陆成功失败跳转问题自定义登出前后端分离适配方案结语前言

OpenManus本地部署实战亲测有效完全免费(最新推荐)

《OpenManus本地部署实战亲测有效完全免费(最新推荐)》文章介绍了如何在本地部署OpenManus大语言模型,包括环境搭建、LLM编程接口配置和测试步骤,本文给大家讲解的非常详细,感兴趣的朋友一... 目录1.概况2.环境搭建2.1安装miniconda或者anaconda2.2 LLM编程接口配置2

在VSCode中本地运行DeepSeek的流程步骤

《在VSCode中本地运行DeepSeek的流程步骤》本文详细介绍了如何在本地VSCode中安装和配置Ollama和CodeGPT,以使用DeepSeek进行AI编码辅助,无需依赖云服务,需要的朋友可... 目录步骤 1:在 VSCode 中安装 Ollama 和 CodeGPT安装Ollama下载Olla

无需邀请码!Manus复刻开源版OpenManus下载安装与体验

《无需邀请码!Manus复刻开源版OpenManus下载安装与体验》Manus的完美复刻开源版OpenManus安装与体验,无需邀请码,手把手教你如何在本地安装与配置Manus的开源版OpenManu... Manus是什么?Manus 是 Monica 团队推出的全球首款通用型 AI Agent。Man