暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

ARM 64 Windows 如何部署私有化大模型?

alitrack 2024-03-14
2610

Ollama

前言

今天的主角,Ollama

Ollama Windows预览版出来一段时间了,官方的介绍是要求Windows 10 及以上版本。另外我的多篇文章都是基于Ollama测试的,

Ollama简介

Ollama 是一个开源框架,专门设计用于在本地运行大型语言模型(Large Language Models,简称LLMs)。它通过将模型权重、配置和数据捆绑到一个包中,优化了设置和配置细节,包括GPU使用情况,从而简化了在本地运行大型模型的过程。Ollama 支持多种模型,例如 Llama 2、Code Llama、Mistral、Gemma 等,并允许用户根据特定需求定制和创建自己的模型。

Ollama 的主要特点包括:

  1. 1. 多平台支持:Ollama 支持 macOS 和 Linux 平台,Windows 平台的预览版也已发布。安装过程简单,用户只需访问 Ollama 的官方网站下载相应平台的安装包即可。

  2. 2. 易于使用:通过简单的命令行操作,用户可以启动和运行大型语言模型。例如,要运行 Gemma 2B 模型,只需执行命令 ollama run gemma:2b

  3. 3. Docker 容器部署:Ollama 设计用于在 Docker 容器中部署 LLM,使得部署和管理 LLM 的过程变得简单。

  4. 4. 基于 Go 语言开发:Ollama 是用 Go 语言编写的,它提供了类似于 Docker 的命令行交互方式,如 list、pull、push、run 等命令,使得模型的应用标准类似于 Docker。

  5. 5. 模型管理:Ollama 提供了一系列命令来管理模型,如列出模型列表、显示模型信息、拉取模型、推送模型、拷贝模型、删除模型等。

  6. 6. API 接口:基于 Go 语言中的 Web 框架 gin,Ollama 提供了一些 API 接口,允许用户像与 OpenAI 提供的接口那样进行交互。

  7. 7. 模型仓库:Ollama 提供了一个模型仓库,类似于 GitHub 或 DockerHub,用于存放和分享大模型。用户可以自定义模型并上传到仓库供他人使用。

  8. 8. 兼容性:Ollama 集成了 OpenAI 接口的兼容,允许用户利用与 OpenAI 集成的任何包来与 Ollama 进行交互。

  9. 9. 社区支持:Ollama 拥有活跃的社区,开发者可以通过提交 PR(Pull Request)来改进和扩展框架的功能。

ARM64 Windows下安装Ollama

本次测试在UTM 安装的Windows 11虚拟机(ARM64位)中完成。

安装Ollama

直接双击 OllamaSetup.exe, 报错,

ARM 64 下安装报错

查代码,得知OllamaSetup.exe[1] 是使用Inno Setup[2] 打包,第一时间想到 Inno Setup Unpacker[3] (一个可以解压缩由 Inno Setup 打包的 .exe
 文件的工具)。

使用很简单

innounp.exe -x OllamaSetup.exe

程序会解压缩到当前目录下的{app}
目录(没错,目录名带了花括号),

解压缩目录

体验Ollama

解压缩就等于安装好了,经测试可以正常使用 其中 ollama app.exe
 为运行server的应用,常驻系统托盘,

ollama app.exe

ollama.exe
 为核心程序,用法如下,

Usage:
  ollama [flags]
  ollama [command]

Available Commands:
  serve       Start ollama 运行ollama服务
  create      Create a model from a Modelfile 从Modelfile创建模型
  show        Show information for a model 显示模型信息
  run         Run a model 运行模型(模型不存在,则自动下载)
  pull        Pull a model from a registry 从注册表下载模型
  push        Push a model to a registry 将本地模型推送到注册表
  list        List models 显示本地安装了哪些模型
  cp          Copy a model 拷贝模型
  rm          Remove a model 删除模型
  help        Help about any command 帮助

Flags:
  -h, --help      help for ollama
  -v, --version   Show version information

Use "ollama [command] --help" for more information about a command.

做个测试

ollama run gemma:2b

体验ollama

从截屏可以看出,我是在虚拟机下完成的测试:

  • • CPU:1.00 GHz ARM 64

  • • 内存:4.00 GB

  • • 系统:Windows 11 Pro,

  • • 模型:是Google 的Gemma 2

这个效果还满意吧。

模型推荐

  • • 阿里千文:qwen:2b, qwen:7b, qwen:14b 或者别版本, 自己测试哪个可以跑起来。

  • • Google :gemma:2b 和gemma:7b

客户端

官方推荐open-webui[4]

这个一般建议在Docker里运行,如果本地运行,需要准备的环境比较复杂,因为它同时依赖Python和Node.js

open-webui 客户端

 

我推荐chatbox[5]

选择ollama

ollama 客户端

后记

打算写这篇文章的时候,还在想,这有意义吗?虚拟机里跑那么慢,写完了才想起来,其实微软的Surface 就是ARM 64的,顺便搜了下,发现还是有不少品牌使用ARM 64 CPU的,比如华为, 小米,联想,华硕,Dell等。

引用链接

[1]
 OllamaSetup.exe: https://ollama.com/download/OllamaSetup.exe
[2]
 Inno Setup: https://jrsoftware.org/isinfo.php
[3]
 Inno Setup Unpacker: https://innounp.sourceforge.net/
[4]
 open-webui: https://github.com/open-webui/open-webui
[5]
 https://chatboxai.app/zh/install?download=win64#: https://chatboxai.app/zh/install?download=win64


文章转载自alitrack,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论