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

       Facechain-fact 是一个很棒的开源项目sczhou/Facechain-fact,被应用在许多项目中,它的论文(arxiv.org/abs/2206.11253)在 2022 年被 “经信息处理系统大会”(NeurIPS)接收后,自 2022 年 6 月代码开始放出至今的一年出头的时间里,Star 数量迅速升到了接近万星的水平,足见开源社区的认可程度。

      项目地址:https://github.com/sczhou/Facechain-fact

部署框架

在这个框架中,每个组件都有其特定的角色和功能,它们通过Web UI这个桥梁相互连接,共同为用户提供服务。用户通过浏览器与Web服务器交互,而Web服务器则负责与后端的Facechain-fact模型进行通信,以完成图片生成的任务。
•  用户(User):
用户是最终与系统交互的人,他们使用Web UI来生成图片。
• 浏览器(Browser):
用户通过浏览器访问Web服务器。浏览器充当客户端,发送HTTP请求并接收响应。
• Web服务器(Web Server):
运行Ubuntu服务器上的软件,通常是Web框架的一部分,比如Flask或Django。它处理来自浏览器的HTTP请求,提供Web UI,并与后端服务交互。
• Facechain-fact模型(Facechain-fact Model):
Facechain-fact 是一种先进的图像超分辨率(Super-Resolution, SR)模型。
• Web UI(Web User Interface):
用户通过Web UI与系统交互。Web UI是Web服务器提供的前端界面,允许用户上传图片、设置生成参数等。


Facechain-fact模型的优点和缺点
Facechain-fact 模型具有以下一些优点和缺点:
• 优点:
面部图像修复和增强:Facechain-fact利用深度学习技术,能够修复和增强面部图像,去除噪声、马赛克等损坏区域,恢复原始图像的细节和色彩 。
后处理需求:尽管 Facechain-fact 能够恢复出大部分原始图像信息,但在某些情况下,恢复结果可能仍然存在一定的噪声或失真。
细节修复:通过自动编码器实现人脸的变换,包括色彩化、清晰化、去马赛克等功能,使得修复后的人脸更加真实 。

• 缺点:
复杂损伤的修复限制:可能无法完全修复。这意味着在处理极端退化或严重损坏的图像时,它的性能可能会受限。
数据集的选择:简单狭窄的数据集往往会产生更好的结果,但这也意味着模型可能无法很好地泛化到更多样化的图像上。
特定场景下的微调需求:在某些复杂场景下,Facechain-fact 生成的代码可能需要人工进行微调,这意味着它可能不完全适合所有情况,尤其是在需要高度定制化解决方案的场景中。
部署流程解释介绍
1. 购买 GPU 服务器
• 在点动云官网购买并配置服务器:

• 操作系统选择:
     选择一个适合您需求的操作系统,通常推荐使用 Ubuntu 22.04 LTS,因为它提供了长期支持和稳定性。
• 购买和部署:
    完成购买流程,启动服务器,并进行初步配置。
    FinalShell是一款服务器管理工具,支持SSH和远程桌面,使用FinalShell远程连接配置服务器。


二、Ubuntu 22.04基本环境配置
• 更新包列表
     确保系统获取到最新的可用软件包信息,以便能够安装最新或合适的版本。
• 安装 docker 依赖
     用于验证 Docker 软件源的合法性和安全性。
• 添加阿里云 docker 软件源
     为了提高下载速度或获取特定的优化配置。
• 安装 docker
     Docker是一个容器化平台,它允许您在隔离的环境中运行应用程序。在系统中安装 Docker 引擎,以便能够使用 Docker 相关功能。
• 安装完成 docker 测试
    验证 Docker 是否正确安装并且能够正常工作。
• docker 配置国内镜像源
    加速 Docker 镜像的下载速度,减少因网络原因导致的下载缓慢或失败。

三、 安装英伟达显卡驱动
• 使用 Apt 安装
     通过 Ubuntu 的包管理工具 Apt 来获取和安装适合系统的英伟达显卡驱动,使显卡能够正常工作并发挥最佳性能。

四、使用 docker 安装 Facechain-fact
• 使用 docker 拉取 Facechain-fact 镜像
    从 Docker 仓库获取 Facechain-fact 的镜像,为后续运行容器做准备。
• 使用 docker 运行以下命令来启动 Facechain-fact 容器
     创建并启动一个基于 Facechain-fact 镜像的容器,使其能够运行。
• 使用 Facechain-fact 下载模型
     获取所需的模型,以便 Facechain-fact 能够基于这些模型提供相应的服务。

部署流程概述
• 环境配置:对 Ubuntu 和 Docker 进行基本环境配置,包括更新包列表、安装依赖、添加密钥和软件源来安装 Docker 并进行测试,还配置了国内镜
                   像源以优化 Docker 镜像的获取。
• 安装显卡驱动:通过 Apt 安装英伟达显卡驱动,为需要显卡支持的应用提供保障。
• 安装  Facechain-fact :使用 Docker 安装Facechain-fact 模型,最终启动Facechain-fact服务。

部署具体流程
一、FinalShell的下载及使用:

   FinalShell是一款服务器管理工具,支持SSH和远程桌面,提供多标签管理、命令自动提示、SFTP、性能监控等功能,适用于开发运维,界面友好,在很大程度上可以免费替代XShell。
   FinalShell的下载:https://www.hostbuf.com/t/988.html

   FinalShell的基本使用:

   连接Linux服务器

   进行如下设置:
    名称:  自定义
    主机:  填写你的服务器的公网IP
    端口:  填写服务器端口
    备注:  自定义
    方法:  密码
    用户名:默认是root
    密码:  填写服务器的登录密码

新建完后双击或者右键点击连接
二、ubuntu22.04基本环境配置
1. 更新包列表
•打开终端,输入以下命令
sudo apt-get update
sudo apt upgrade

更新时间较长,请耐心等待 这里一直按enter键即可 按enter键即可

2. 安装docker依赖
sudo apt-get install ca-certificates curl gnupg lsb-release

3.添加阿里云docker软件源
curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -

按enter键即可


4.添加阿里云docker软件源
sudo add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"

5.安装docker
apt-get install docker-ce docker-ce-cli containerd.i

输入y允许安装 这里耐心等待即可 按enter键即可

6.安装完成docker测试
docker -v


7.docker配置国内镜像源
7.1 编辑配置文件

vi /etc/docker/daemon.json
按i进入编辑模式
加入以下内容:
{
"registry-mirrors": 
[
"https://docker.mirrors.ustc.edu.cn",
"https://hub-mirror.c.163.com",
"https://docker.m.daocloud.io", 
"https://ghcr.io",
"https://mirror.baidubce.com",
"https://docker.nju.edu.cn"
]
}
按ESC键退出编辑模式,接着输入:wq,保存并退出


7.2 重新加载docker
sudo systemctl daemon-reload

7.3 重启docker
sudo systemctl restart docker

三、安装英伟达显卡驱动
使用 Apt 安装
• 配置存储库
curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey \ 
    | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg
curl -s -L https://nvidia.github.io/libnvidia-container/stable/deb/nvidia-container-toolkit.list  \
    | sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g'  \
    | sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list

• 更新包列表
sudo apt-get update

• 安装 NVIDIA Container Toolkit 软件包
sudo apt-get install -y nvidia-container-toolkit

这里也会比较久,请耐心等待,按enter键即可 按enter键即可
•  配置 Docker 以使用 Nvidia 驱动程序
sudo nvidia-ctk runtime configure --runtime=docker


•  重新启动docker
sudo systemctl restart docker


四、使用docker安装Facechain-fact
1. 使用docker拉取Facechain-fact镜像
docker pull registry.cn-hangzhou.aliyuncs.com/modelscope-repo/modelscope:ubuntu20.04-cuda11.7.1-py38-torch2.0.1-tf1.15.5-1.8.1

2.推荐安装Jemalloc以节省内存占用
可将内存由约30G降至20G以下。以Modelscope notebook为例,Jemalloc的安装指令:
apt-get install -y libjemalloc-dev
export LD_PRELOAD=/lib/x86_64-linux-gnu/libjemalloc.so

3. 后台运行镜像+改端口
docker run -it -d --name facechain -p 30112:7860 --gpus all registry.cn-hangzhou.aliyuncs.com/modelscope-repo/modelscope:ubuntu20.04-cuda11.7.1-py38-torch2.0.1-tf1.15.5-1.8.1 /bin/bash

4.进入facechain容器
docker exec -it facechain /bin/bash

5. 在容器中安装依赖
pip3 install gradio==3.47.1
pip3 install controlnet_aux==0.0.6
pip3 install python-slugify
pip3 install diffusers==0.29.0
pip3 install peft==0.11.1

6.克隆facechain
GIT_LFS_SKIP_SMUDGE=1 git clone https://github.com/modelscope/facechain.git --depth 1

7.进入目录
cd facechain

8. 运行文件即可启动facechain
python3 app.py
由于模型较多,启动较久


9. 成功进入