网站开发用什么,莱芜交友论坛,福州小程序开发公司,wordpress小商城由【让你拥有专属且万能的AI摄影师AI修图师——FaceChain迎来最大版本更新】这篇文章开始出发进行人脸写真的尝试#xff0c;笔者之前modelscope申请过免费额度#xff0c;这里有适配的GPU环境可以提供测试。 但是很难抢到GPU资源#xff0c;需要等待很久#xff0c;可能才…
由【让你拥有专属且万能的AI摄影师AI修图师——FaceChain迎来最大版本更新】这篇文章开始出发进行人脸写真的尝试笔者之前modelscope申请过免费额度这里有适配的GPU环境可以提供测试。 但是很难抢到GPU资源需要等待很久可能才能排到。 1 所需环境与资源要求
FaceChain是一个组合模型使用了包括PyTorch和TensorFlow在内的机器学习框架以下是已经验证过的主要环境依赖
python环境: py3.8, py3.10pytorch版本: torch2.0.0, torch2.0.1tensorflow版本: 2.8.0, tensorflow-cpuCUDA版本: 11.7CUDNN版本: 8操作系统版本: Ubuntu 20.04, CentOS 7.9GPU型号: Nvidia-A10 24G
资源要求
GPU: 显存占用约19G磁盘: 推荐预留50GB以上的存储空间
2 环境部署
2.1 环境部署
因为使用的是免费额度的环境目前暂不提供永久存储实例重启后数据会丢失 官方教程里面有
# Step1: 我的notebook - PAI-DSW - GPU环境# Step2: 进入Notebook cell执行下述命令从github clone代码
!GIT_LFS_SKIP_SMUDGE1 git clone https://github.com/modelscope/facechain.git --depth 1# Step3: 切换当前工作路径
import os
os.chdir(/mnt/workspace/facechain) # 注意替换成上述clone后的代码文件夹主路径
print(os.getcwd())!pip3 install gradio
!pip3 install controlnet_aux0.0.6
!pip3 install python-slugify
!python3 app.py# Step4: 点击生成的URL即可访问web页面上传照片开始训练和预测不过github访问看脸有时候链接不上需要手动去github下载facechain了
一些辅助依赖也是需要安装的可参考facechain_demo.ipynb
2.2 遇到的几个报错
2.2.1 frpc_linux_amd64_v0.2 报错
启动facechain并在选择风格的时候碰到了以下报错
Could not create share link.
Missing file: /xxxx/frpc_linux_amd64_v0.2. 参考基于docker快速搭建facechain环境 一种方式是手动添加这个文件因为modelspace启动的pai-dsw可能不能访问huggingface网站
wget https://cdn-media.huggingface.co/frpc-gradio-0.2/frpc_linux_amd64
mv frpc_linux_amd64 frpc_linux_amd64_v0.2
mv frpc_linux_amd64_v0.2 /home/miniconda3/envs/llm/lib/python3.11/site-packages/gradio
chmod x frpc_linux_amd64_v0.2 // 注要给该文件执行权限否则会报3.3错误但是呢笔者又发现这个问题其实可以忽略后台自己还是可以正常install属于一个很无厘头的提示报错
2.2.2 style 报错 在选择风格的时候出现的报错正常选择之后会出现上面的一个提示框【秋日胡杨风xxx】但笔者这里出现了
indexerror:list index out of range经过debug才发现app.py的51行函数出现了一个无厘头的报错首先evt.value是一个list,[风格图片,风格名称]这里需要指定风格名称需要改成evt.value[1]
# 原先的
def select_function(evt: gr.SelectData):matched list(filter(lambda item: evt.value item[name], styles))style matched[0]return gr.Text.update(valuestyle[name], visibleTrue)# 需要修改
def select_function(evt: gr.SelectData):matched list(filter(lambda item: evt.value[1] item[name], styles))style matched[0]return gr.Text.update(valuestyle[name], visibleTrue)
也是很无语的一个问题…