GPU云游戏
微信客服
领取新人福利
进官方活动群
在服务器Ubuntu22.04系统下的
stable-fast-3d的部署
欢迎使用我们公司服务器来部署和使用stable-fast-3d大模型。通过本指南,您将学会如何在Ubuntu 22.04系统下安装和配置stable-fast-3d大模型,并使用webui进行交互。如果您对我们的服务器感兴趣,可以在官网处获取服务器资源,我们还提供详细的部署帮助文档,帮助您轻松上手。
stable-fast-3d介绍

      Stable Fast 3D是一个先进的AI模型,专注于3D图像和场景的生成与处理。它利用深度学习技术,能够快速生成高质量的三维视觉效果,广泛应用于虚拟现实、游戏开发、电影制作等领域。与传统3D建模相比,Stable Fast 3D通过自动化流程大大减少了人工操作,提高了生产效率。用户只需提供基本参数或草图,该模型即可智能生成逼真的3D图像,同时支持对生成结果进行微调,以满足特定的视觉需求。它代表了AI在3D视觉创作领域的重要进展,为创意专业人士提供了强大的工具。
      项目地址:https://github.com/Stability-AI/stable-fast-3d
部署框架
在这个框架中,每个组件都有其特定的角色和功能,它们通过Web UI这个桥梁相互连接,共同为用户提供服务。用户通过浏览器与Web服务器交互,而Web服务器则负责与后端的stable-fast-3d模型进行通信,以完成图片生成的任务。
•  用户(User):
用户是最终与系统交互的人,他们使用Web UI来生成图片。
• 浏览器(Browser):
用户通过浏览器访问Web服务器。浏览器充当客户端,发送HTTP请求并接收响应。
• Web服务器(Web Server):
运行在Ubuntu服务器上的软件,通常是Web框架的一部分,比如Flask或Django。它处理来自浏览器的HTTP请求,提供Web UI,并与后端服务交互。
• stable-fast-3d模型(stable-fast-3d Model):
Stable Fast-3D是一款高效的三维模型生成AI工具,能够快速创建和渲染3D图像。
• Web UI(Web User Interface):
用户通过Web UI与系统交互。Web UI是Web服务器提供的前端界面,允许用户上传图片、设置生成参数等。
stable-fast-3d模型的优点和缺点
stable-fast-3d 模型具有以下一些优点和缺点:
• 优点:
极速3D生成:能在仅0.5秒内从单张图片生成高质量的3D模型,极大提升了3D建模的效率 。
高质量输出:确保生成的3D资产在视觉和纹理上具有高质量表现 。
UV展开网格与材质参数:自动生成UV映射和包含必要的材质属性,使得3D模型在不同光照条件下都能保持逼真效果 。
兼容性与集成:支持在多种设备和平台上生成3D模型,易于通过Stability AI API和Stable Assistant聊天机器人集成到不同应用中 。

• 缺点:
复杂对象的处理:对于非常复杂或细节丰富的对象,生成的3D模型可能无法完全捕捉到所有细节。
光照和纹理的准确性:尽管SF3D减少了光照烘焙,但在特定情况下,生成模型的光照和纹理可能仍需手动调整以达到最佳效果。
用户控制和定制:自动化的生成过程可能在某些情况下限制了用户对最终模型的控制和定制能力。
技术依赖性:作为一项基于最新AI技术的产品,它可能依赖于特定的硬件和软件环境,可能需要具备一定技术背景的用户才能充分利用 。
部署流程解释介绍
1. 购买 GPU 服务器
• 在点动云官网购买并配置服务器:
• 操作系统选择:
     选择一个适合您需求的操作系统,通常推荐使用 Ubuntu 22.04 LTS,因为它提供了长期支持和稳定性。
• 购买和部署:
    完成购买流程,启动服务器,并进行初步配置。
    FinalShell是一款服务器管理工具,支持SSH和远程桌面,使用FinalShell远程连接配置服务器。


二、Ubuntu 22.04基本环境配置
• 更换Ubuntu镜像源:
     通常为了加速下载,可以更换到国内镜像源,如清华镜像源。
• 更新包列表:
     使用sudo apt update命令来更新软件包列表。
• 使用wget下载驱动包:
     通过wget命令下载NVIDIA显卡驱动安装包。
• 更新软件列表和安装必要软件、依赖:
     使用sudo apt update和sudo apt install命令安装所需的软件和依赖。
• 卸载原有驱动:
     如果有旧版驱动,需要先卸载。
• 安装驱动:
     执行下载的驱动包进行安装。
• 安装CUDA:
     CUDA是用于通用并行计算的编程模型和API,需要根据显卡型号选择合适的版本安装。
• 环境变量配置:
     配置环境变量以确保系统能够正确使用CUDA和显卡驱动。

三、安装miniconda环境
• 下载miniconda3:
     从官网下载miniconda3的安装脚本。
• 安装miniconda3:
     执行下载的脚本进行安装。
• conda配置:
     配置conda的通道、环境等。

四、安装IOPaint
• 克隆仓库:
     使用git clone命令从GitHub克隆stable-fast-3d仓库。
• 创建虚拟环境:
     使用conda或python的venv模块创建虚拟环境。
• 安装依赖:
     安装所需的Python库和工具。
• 设置清华源、更新pip:
     更换pip的源到清华,以加速下载。
• 安装torch 12.4cuda版本:
     安装适合您CUDA版本的PyTorch。
• 安装其他依赖:
     安装IOPaint运行所需的其他Python依赖库。
• 创建模型放置文件夹:
     在适当的位置创建文件夹以存放AI模型文件。
• 下载扩散模型:
     下载stable-fast-3d需要使用的扩散模型文件。
• 改端口启动:
     修改配置文件或启动命令,以指定stable-fast-3d服务运行的端口号。

部署流程概述
   更换源和更新:优化软件包管理器使用的源,确保软件包列表是最新的。
   安装显卡驱动和CUDA:确保GPU能够被系统识别并用于高性能计算。
   配置环境变量:让系统知道如何找到并使用新安装的软件。
   安装miniconda:创建一个独立的Python环境,避免不同项目间的依赖冲突。
   安装stable-fast-3d:获取stable-fast-3d的代码,创建适合其运行的环境,并准备好所需的模型文件,最终启动stable-fast-3d服务。
部署具体流程
一、FinalShell的下载及使用:
   FinalShell是一款服务器管理工具,支持SSH和远程桌面,提供多标签管理、命令自动提示、SFTP、性能监控等功能,适用于开发运维,界面友好,在很大程度上可以免费替代XShell。
    FinalShell的下载:https://www.hostbuf.com/t/988.html
    FinalShell的基本使用:
   连接Linux服务器
   进行如下设置:
    名称:  自定义
    主机:  填写你的服务器的公网IP
    端口:  填写服务器端口
    备注:  自定义
    方法:  密码
    用户名:默认是root
    密码:  填写服务器的登录密码
新建完后双击或者右键点击连接
二、ubuntu22.04基本环境配置
1.更换清华Ubuntu镜像源
•删除原来的文件
rm /etc/apt/sources.list

•开始编辑新文件
vim /etc/apt/sources.list
先按i键,粘贴以下内容
# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-updates main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-backports main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-backports main restricted universe multiverse
# 以下安全更新软件源包含了官方源与镜像站配置,如有需要可自行修改注释切换
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-security main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-security main restricted universe multiverse
确保内容跟上述图片一致
按esc键,再输入冒号+wq保存

2. 更新包列表
•打开终端,输入以下命令
sudo apt-get update

sudo apt upgrade
更新时间较长,请耐心等待

3. 安装英伟达显卡驱动
3.1 使用wget在命令行下载驱动包

wget https://cn.download.nvidia.com/XFree86/Linux-x86_64/550.100/NVIDIA-Linux-x86_64-550.100.run


3.2更新软件列表和安装必要软件、依赖
sudo apt-get install g++
更新时间较长,请耐心等待 点击回车enter即可
sudo apt-get install gcc


sudo apt-get install make

点击回车enter即可
成功安装

3.3卸载原有驱动
sudo apt-get remove --purge nvidia*


•使用vim修改配置文件
sudo vim /etc/modprobe.d/blacklist.conf

•按i键进入编辑模式,在文件尾增加两行:
blacklist nouveau
options nouveau modeset=0

按esc键退出编辑模式,输入:wq保存并退出

•更新文件
sudo update-initramfs -u
这里等待时间较久
•重启电脑
sudo reboot
这里需要等一会才能连上


3.4 安装驱动
•授予执行权限
sudo chmod 777 NVIDIA-Linux-x86_64-550.100.run

•执行安装命令
sudo ./NVIDIA-Linux-x86_64-550.100.run


这里一直按回车就行,默认选择
一直按回车enter键,直到安装成功
•检测显卡驱动是否安装成功
nvidia-smi


3.5 安装CUDA
wget https://developer.download.nvidia.com/compute/cuda/12.4.0/local_installers/cuda_12.4.0_550.54.14_linux.run

执行安装命令
sudo sh ./cuda_12.4.0_550.54.14_linux.run

•输出accept开始安装
•然后注意这里要按enter取消勾选第一个选项,因为之前已经安装了驱动
•接着选择Install开始安装
•安装完成
3.6 环境变量配置
•以vim方式打开配置文件
sudo vim ~/.bashrc

•按i键进入编辑模式,在文件尾增加下面内容
export PATH="/usr/local/cuda-12.4/bin:$PATH"
export LD_LIBRARY_PATH="/usr/local/cuda-12.4/lib64:$LD_LIBRARY_PATH"

按esc键退出编辑模式,输入:wq保存并退出

•更新环境变量
source ~/.bashrc

•检测CUDA是否安装成功
nvcc -V


三、安装miniconda环境
1.下载miniconda3
wget https://mirrors.cqupt.edu.cn/anaconda/miniconda/Miniconda3-py310_23.10.0-1-Linux-x86_64.sh


2. 安装miniconda3
bash Miniconda3-py310_23.10.0-1-Linux-x86_64.sh -u

直接一直enter键,到输入路径和yes
这边建议路径为:miniconda3 直接回车enter即可,再次输入yes 成功安装

•  切换到bin文件夹
cd miniconda3/bin/

•  输入pwd获取路径
pwd
复制这里的路径


•  打开用户环境编辑页面
vim ~/.bashrc 
点击键盘I键进入编辑模式,在最下方输入以下代码
export PATH="/root/miniconda3/bin:$PATH"

按esc键退出编辑模式,输入:wq保存并退出


• 重新加载用户环境变量
source ~/.bashrc


• 初始化conda
conda init bash


• 验证是否安装成功
conda -V


3.conda配置
• 配置清华镜像源
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/ 
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/ 
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/


• 设置搜索时显示通道地址
conda config --set show_channel_urls yes


• 配置pip 镜像源
pip config set globalThis.index-url https://pypi.tuna.tsinghua.edu.cn/simple


四、安装stable-fast-3d
1.克隆仓库
github克隆stable-fast-3d仓库
git clone git clone https://github.com/Stability-AI/stable-fast-3d.git
如果下载速度较慢可添加 https://mirror.ghproxy.com/ 镜像源
git clone https://mirror.ghproxy.com/https://github.com/Stability-AI/stable-fast-3d.git
进入到stable-fast-3d文件夹内
cd stable-fast-3d
修改 requirement.txt 文件 中的 git+https://github.com/vork/PyNanoInstantMeshes.git 改为
git+https://mirror.ghproxy.com/https://github.com/vork/PyNanoInstantMeshes.git

2.创建stable-fast-3d需要的环境
conda create -n 3d python=3.9
输入y回车即可

• 进入虚拟环境
conda activate 3d

3. 安装依赖
pip install -r requirements.txt
pip install -r requirements-dev.txt
pip install -r requirements-demo.txt

• 设置镜像地址
export HF_ENDPOINT=https://hf-mirror.com

• 启动服务
python gradio_app.py

• 此时下载模型一般会报错或失败,可以先手动下载所需模型
wget https://mirror.ghproxy.com/https://github.com/danielgatis/rembg/releases/download/v0.0.0/u2net.onnx /root/.u2net/u2net.onnx

•下载stable-fast-3d模型
mkdir model
cd models
npip install modelscope
modelscope download --model maple77/stable-fast-3d --local_dir './'

•修改gradio_app.py
model = SF3D.from_pretrained(
'stabilityai/stable-fast-3d', 
config_name='config.yaml', 
weight_name='model.safetensors'
)
改为
model = SF3D.from_pretrained(
'/root/project/stable-fast-3d/models/', {
  config_name: 'config.yaml',
  weight_name: 'model.safetensors'
});


•模型文件路径指定到刚才下载的路径
model = SF3D.from_pretrained(
'/root/project/stable-fast-3d/models/',
config_name='config.yaml',
weight_name='model.safetensors',
)
此外还要修改最后一行启动命令
demo.queue().launch(share=False)
改为
demo.queue().launch(server_name='0.0.0.0', server_port=15119)

server_port变量为设置服务器监听的端口为业务端口,此处改为业务端口。

•3.10启动服务
python gradio_app.py


启动成功后,访问http://主机IP:端口