GPUStack v0.4.1 单节点与多节点安装与部署指南 Docker PowerShell

Introduce

GPUStack 是一个开源的 GPU 集群管理器,专为运行 AI 模型而设计。它以其广泛的硬件兼容性而闻名,支持多种品牌的 GPU,并能在 Apple MacBook、Windows PC 和 Linux 服务器上运行。

GPUStack支持各种AI模型,包括大型语言模型(LLMs)、扩散模型、音频模型、嵌入模型和重新排序模型。该平台易于扩展,支持单节点多 GPU 和多节点推理及服务,并提供多种推理后端,如 llama-box、``vox-boxvLLM`。作为一个轻量级的 Python 包,GPUStack 具有最小的依赖项和操作开销,并且提供与 OpenAI 标准兼容的 API。

此外,它还简化了用户和 API 密钥的管理,提供了 GPU 性能和利用率的实时监控,以及令牌使用和速率限制的有效跟踪。GPUStack 支持Apple Metal (M系列芯片), NVIDIA CUDA(计算能力6.0及以上), Ascend CANN(华为系列),Moore Threads MUSA加速器,以及 AMD64 和 ARM64 架构,并计划未来支持更多加速器技术。它还支持来自 Hugging Face、ModelScope、Ollama Library 和本地文件路径的多种模型,包括 LLMs(Qwen, LLaMA, Mistral, Deepseek, Phi, Yi)、VLLMs(Llama3.2-Vision, Pixtral, Qwen2-VL, LLaVA, InternVL2)、扩散模型(Stable Diffusion, FLUX)、重新排序器(GTE, BCE, BGE, Jina)和音频模型(Whisper,CosyVoice)。

特性:

  • 跨平台:Windows,Mac,Linux / ARM64 & AMD64;
  • 多加速器支持:Apple Silicon,NVIDIA,Ascend,Moore;
  • 单节点 / 多节点;
  • 多种模型:LLMs、VLLMs、扩散模型、重新排序器、音频模型;

1. Docker 安装 GPUStack

近期由于源的问题,访问不畅,加之需要下载约 13GB 的资源,每个节点的安装过程可能持续 20-40 分钟,请各位朋友耐心等待。如果有好的镜像源也可以尝试。

1.1 安装指令(Linux 主节点 Worker)

docker run \-d \--gpus all \-p 8080:80 \--ipc=host \--name gpustack \-v gpustack-data:/var/lib/gpustack \gpustack/gpustack

使用 --ipc=host 参数或者 --shm-size 参数来允许容器访问宿主机的共享内存。这在vLLM和pyTorch中用于在后台进程间共享数据,特别是在进行张量并行推理时。

由于 gpustack-data 容器卷是用来储存待部署的模型,因此及其占用磁盘存储空间,各位可修改为其它的磁盘位置。

1.2 安装指令(Linux 子节点 Worker)

docker run -d \--gpus all \--ipc=host \--network=host \gpustack/gpustack \--name gpustack \--server-url http://myserver \--token mytoken

其中的 --server-url 为你的主节点的地址

其中的 --token 为你的主节点用于添加子节点的 token,使用下面的指令从主节点获取

docker exec -it gpustack cat /var/lib/gpustack/token

1.3 Windows 子节点安装指令(非Docker)

Invoke-Expression "& { $((Invoke-WebRequest -Uri 'https://get.gpustack.ai' -UseBasicParsing).Content) } -- --worker-ip '192.168.31.223' --port 9999 --server-url http://myserver --token mytoken  --tools-download-base-url 'https://gpustack-1303613262.cos.ap-guangzhou.myqcloud.com'"

鉴于 Windows 的 Docker 需要使用 GPU 还需要安装 WSL 子系统等依赖,这里给出了使用 PowerShell(管理员)的安装方法。上述的指令中 --worker-ip 需要是你的子节点的 IP 地址,--port 也需要设置,如果这两个不填写会出现如下的报错:

[WinError] 以一种访问权限不允许的方式做了一个访问套接字的尝试

笔者尝试过使用netstat -ano|findstr 10150taskkill 终止掉占用的程序,但是这个报错依然存在,重启 NAT 也无济于事。所以请务必按照上面的方式设置 worker 的 IP 和 Port。

其余的和 Docker 的安装解释一致。

2. GPUStack 使用

使用下面的指令获得 admin 用户的登录密码,第一次登录后会要求修改密码

docker exec -it gpustack cat /var/lib/gpustack/initial_admin_password

GPUStack 主界面截图

上图展示的就是 v0.4.1 版本的主界面,可以看到有一个 Workers(节点),两块 GPU。

2.1 模型部署

侧边栏 > 模型 > 模型部署 > ModelScope 中点击,可以看到下面的模型部署界面,在此可以搜索你需要部署的模型。

模型部署界面截图

2.2 试验场

在试验场,也就是熟悉的 Playground,可以评估已部署的模型的效果

Playground 对话模型评估截图

2.3 资源

在资源栏可以看到每一个 Worker(节点)的资源使用情况,或者每一个 GPU 的使用情况。

资源栏截图

2.4 添加子节点

使用第一部分给出的方法,在另外一台电脑以子节点的方式安装 GPUStack Worker。等待安装完成之后,在资源界面刷新,即可看到新的节点资源。这里需要注意,例如笔者我的这三张显卡,架构跨度太大,CUDA 版本跨度太大,在运行时会出现错误。

新添加的子节点

GPU 列表

笔者部署了一个 RerankEmbedding 模型到这个子节点上,并运行了一个重排序测试,结果如下。

Embedding 模型测试

Playground 重排序测试

此时的子节点上的 GPU 也被调用。此时查看该模型在节点上的调用日志,如下。

Reranker模型在子节点上的调用日志

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【23种设计模式·全精解析 | 行为型模式篇】11种行为型模式的结构概述、案例实现、优缺点、扩展对比、使用场景、源码解析

Hiヽ(゜▽゜ )-欢迎来到蓝染Aizen的CSDN博客~ 🔥 博客主页: 【✨蓝染 の Blog😘】 💖感谢大家点赞👍 收藏⭐ 评论✍ 文章目录 行为型模式1、模板方法模式(1)概述(2&…

【解决报错】AttributeError: ‘NoneType‘ object has no attribute ‘group‘

学习爬虫时,遇到如下报错: 报错原因: 正则表达式的 search 或 finditer 方法没有找到任何匹配项,可能是换行符处理不当等。 解决方法如下: 在正则表达式末尾加上re.S即可,re.S是一个编译标志&#xff0c…

一款5k star的 Redis 客户端!!简洁高效!

作为一名热爱编程的程序员,对于高效的工具总是格外追求。在日常的开发中,Redis 作为一款优秀的内存数据库,是我们不可或缺的利器之一。了不起之前也推荐过一些出色的 Redis 客户端,它们在提升我们的开发效率和便利性方面发挥了巨大…

关于科研中使用linux服务器的集锦

文章目录 常用的linux命令下载COCO2017数据集 常用的linux命令 一个文件移动到另一个目录下的命令是:mv -v ./old_name ./new_name 如果目标文件夹中已经有同名文件或文件夹,mv 会覆盖它们(除非使用了 -i 选项来提示确认)。 使用…

Vue开发环境搭建上篇:安装NVM和NPM(cpnm、pnpm)

文章目录 引言I 安装NVM1.1 Windows系统安装NVM,实现Node.js多版本管理1.2 配置下载镜像1.3 NVM常用操作命令II NPM永久使用淘宝源安装 cnpm安装pnpm【推荐】see also: vscode常用插件引言 淘宝镜像:http://npm.taobao.org 和 http://registry.npm.taobao.org 已在 2022.06.3…

x86_64 Ubuntu 编译安装英伟达GPU版本的OpenCV

手把手带你在Linux上安装带GPU加速的opencv库(C版本)_opencv linux-CSDN博客 cmake \-D CMAKE_BUILD_TYPERELEASE \-D OPENCV_GENERATE_PKGCONFIGON \-D CMAKE_INSTALL_PREFIX/usr/local \-D OPENCV_EXTRA_MODULES_PATH/home/hwj/opencv/opencv_contrib…

计算机毕业设计Python+卷积神经网络租房推荐系统 租房大屏可视化 租房爬虫 hadoop spark 58同城租房爬虫 房源推荐系统

温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 作者简介:Java领…

bypy上传配置

bypy upload 上传文件权限不足时 使用此方法,改变权限保存 : w ! sudo tee % 好使但是没有进度条 CMAKE 的配置方法

三维动画的常用“视觉特效”有哪些?

在当今的视觉盛宴中,三维动画技术宛如一位神奇的魔法师,为视觉特效(VFX)领域施下了变革的咒语。从大荧幕上的震撼电影,到让人沉浸其中的视频游戏,再到夺人眼球的广告以及精细的模拟场景,三维动画…

《Cocos Creator游戏实战》非固定摇杆实现原理

为什么要使用非固定摇杆 许多同学在开发摇杆功能时,会将摇杆固定在屏幕左下某一位置,不会让其随着大拇指触摸点改变,而且玩家只有按在了摇杆上才能移动人物(触摸监听事件在摇杆精灵上)。然而,不同玩家的大拇指长度不同…

Text组件的用法

文章目录 1 概念介绍2 使用方法3 示例代码我们在上一章回中介绍了页面之间传递数据相关的内容,本章回中将介绍如何使用Text Widget。闲话休提,让我们一起Talk Flutter吧。 1 概念介绍 我们在这里说的Text Widget就是显示文字内容的组件,其实我们一直在使用它,只是没有详细介…

强大且灵活的终端工具Tabby的强大功能与详细配置指南

文章目录 前言1. Tabby下载安装2. Tabby相关配置3. Tabby简单操作4. ssh连接Linux4.1 ubuntu系统安装ssh4.2 Tabby远程ssh连接ubuntu 5. 安装内网穿透工具5.1 创建公网地址5.2 使用公网地址远程ssh连接 6. 配置固定公网地址 前言 大家好!今天我要给大家安利一个超级…

基于Spring Boot的阿坝州旅游系统

一、系统背景与目的 随着旅游业的快速发展和互联网技术的不断进步,越来越多的游客开始通过网络平台来查询旅游信息、预订旅游产品。为了满足游客对阿坝州旅游信息的需求,提升阿坝州旅游业的整体服务水平,基于Spring Boot技术框架开发了一款阿…

IMX芯片启动方式

一、启动方式选择 a)概述 BOOT 的处理过程是发生在 I.MX6U 芯片上电以后,芯片会根据 BOOT_MODE[1:0]的设置 来选择 BOOT 方式。 BOOT_MODE[1:0]的值是可以改变的,有两种方式,一种是改写 eFUSE(熔 丝),一种是修改相应的 GPIO 高低电平。第一种修改 eFUSE 的方式只能修改一次…

【QT开发自制小工具】PDF/图片转excel---调用百度OCR API接口

前言 前几年WPS还可以免费处理5页以内的PDF转excel,现在必须付费了,而且百度其他在线的PDF转excel都是要收费的,刚好前几年调研过百度OCR的高精度含位置接口,依然是每天可以免费调用50次,本篇是基于此接口,…

Flink调优----反压处理

目录 概述 1.1 反压的理解 1.2 反压的危害 定位反压节点 2.1 利用 Flink Web UI 定位 通过 WebUI 看到 Map 算子处于反压:​编辑 分析瓶颈算子 2.2 利用 Metrics 定位 根据指标分析反压 可以进一步分析数据传输 反压的原因及处理 3.1 查看是否数据倾斜 …

RabbitMQ工作模式(详解 工作模式:简单队列、工作队列、公平分发以及消息应答和消息持久化)

文章目录 十.RabbitMQ10.1 简单队列实现10.2 Work 模式(工作队列)10.3 公平分发10.4 RabbitMQ 消息应答与消息持久化消息应答概念配置 消息持久化概念配置 十.RabbitMQ 10.1 简单队列实现 简单队列通常指的是一个基本的消息队列,它可以用于…

追风赶月莫停留,平芜尽处是春山—记一次备考经历(下)

追风赶月莫停留,平芜尽处是春山—记一次备考经历(上) 上篇是对政治、英语、专业的总结,这篇是对数学的总结。 数学二-高数 从之前考试得出的结论“得数学者得天下”,所以特别重视数学,70%的时间都用在了…

【设备 磁盘】重要备份存放U盘的风险 + winhex 磁盘清零(清理windows无法格式化的磁盘)

简述 清理用设备管理器和DiskGenious无法打开的磁盘 winhex安装 官网https://www.x-ways.net/winhex/下载,解压后以管理员身份运行 注意:非完全版不能像磁盘写入编辑后的数据 使用 解压后直接点击打开即可 打开磁盘 “全选”后,选择…

虚幻引擎是什么?

Unreal Engine,是一款由Epic Games开发的游戏引擎。该引擎主要是为了开发第一人称射击游戏而设计,但现在已经被成功地应用于开发模拟游戏、恐怖游戏、角色扮演游戏等多种不同类型的游戏。虚幻引擎除了被用于开发游戏,现在也用于电影的虚拟制片…