stable-diffusion-aws-extension/docs/zh/user-guide/ComfyUI/inference.md

75 lines
5.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

# 在comfyUI上推理
在成功部署解决方案后,您可以打开部署成功的堆栈所提供的**ComfyUI**原生页面,在工作流的调试、发布和推理,总结步骤如下:
* 步骤1: 连接部署了ComfyUI前端的EC2。
* 步骤2: 在本方案提供的**Designer**链接页面可进行新工作流的调试安装缺失的节点并上传所需的推理模型并能够成功在本地虚拟机EC2加载并推理成功。
* 步骤3: 在发布该工作流为模版。
* 步骤4: 创建工作流所需endpoint通过API方式创建
* 步骤5: 在ComfyUI推理页面选择已发布模版按需修改推理词、推理模型并推理图片/视频。本步骤将会使用Amazon SageMaker资源。
## 步骤1: 连接部署ComfyUI前端的虚拟机EC2
通过连接EC2的方式在本地打开EC2对应的目录结构能更方便的看到本地工作流调试时的日志文件帮助判断。
如仅需看到本地ComfyUI调试的日志也可通过以下步骤实现
1. 打开部署解决方案同region的EC2控制台选择**comfy-on-aws-dev**机器,并点击右上角**Connect**。
2. 在可选的连接方式中,选择标签页**EC2 Instance Connect**,点击**Connect**。
3. 稍作等待即可看到新弹出的、EC2链接页面。按需输入代码即可完成各类操作。常用命令如下
```
tail -f /var/log/cloud-init-output.log 用于实时查看ec2启动Comfy过程初始日志
sudo journalctl -u comfy -f 用于实时查看comfy运行日志
tail -f /root/stable-diffusion-aws-extension/container/*.log 用于查看comfy运行容器所有日志
sudo journalctl -u comfy --no-pager -n 200 用于查看comfy运行日志最后200条
docker images -q | xargs docker rmi -f
```
## 步骤2: 调试工作流
打开本方案部署后,提供的**Designer**链接,即为工作流调试员/主美视角的**ComfyUI**您可以按单机版ComfyUI的使用方法来进行新的工作流的调试。有关模型的管理、定制节点的管理等可以通过连接部署ComfyUI的虚拟机EC2来进行。
![major-designer](../../images/senior-design.png)
主美调试的ComfyUI使用步骤总结如下
1. 可选拖拽已有工作流的json文件到ComfyUI界面得到渲染出来的工作流。
2. 调整包括添加和删除工作节点custom node并调整推理参数及使用的模型。
3. 点击**添加提示词队列Queue Prompt**,开启基于当前页面工作流的推理任务。
4. 可选当步骤3遇到弹框提示报错时需要按指示处理。比如若显示某模型缺失请先将该模型下载至EC2对应的文档目录如果显示有定制节点的缺失请点击**管理器Manager****安装缺失节点Install Missing Custom Nodes**来安装缺失节点。按错误提示处理完成后重复步骤3进行测试。
![ComfyUI Management](../../images/ComfyUI-Manager.png)
5. 当工作流完成后,看到界面显示出生成结果,即表示该工作流的调试工作已经成功。
## 步骤3: 发布工作流为新模版
待工作流在本地虚拟机EC2已经可以成功推理图片/视频后,可以快速跟随以下步骤,将调试好的工作流发布成为模版,便于后续稳定、便利的调用推理。
1. 点击右侧导航栏中的**New Workflow** 或 右侧导航工作流列表模块上方加号。
2. 在弹框中,填入待发布模版的名字,点击**确定**。
!!! tip "贴士"
新模版命名长度不能超过20个字符英文与数字结合大小写敏感。同时该命名需要是同一个region内唯一如果与现有模版名字冲突会提示创建错误。
3. 工作流发布过程中ComfyUI前端不可以有更新操作。在发布完成后会在前端有弹框提示发布完成。
4. 发布时会将您页面当前调试时的workflow暂存每次切换环境时会优先加载当前环境对应暂存的workflow。
## 步骤4: 创建工作流在云上推理的推理端点
待工作流发布完成以后,还需要创建推理端点来依据工作流进行云端推理。
1. 需要通过api的方式调用创建可以参考[这里](../../deployment/deployment_comfyui.md)中的“部署新的Amazon SageMaker推理节点”子章节部分。
2. 待推理端点创建完成后且为InService的状态后已发布的工作流便处于可推理的状态。
## 步骤5: 基于已发布工作流的推理
在ComfyUI的推理页面可以简单通过以下步骤完成基于模版的推理。
1. 打开ComfyUI的推理页面在右侧导航栏选择一个已发布的模版。如果是调试环境还需要选中右侧导航栏中“Prompt on AWS”复选框。
2. ComfyUI页面即会自动渲染该模版的工作流按需调整参数并点击**添加提示词队列Queue Prompt**,提交推理任务。
3. 当推理任务完成后,生成结果会自动展示在页面。
## 模型管理
### 模型上传
新模型需要上传到EC2才能保证在模型调试阶段能够顺利调取。在EC2中上传模型可以通过进入models目录下对应的模型类别子文件夹通过直接拖拽或者wget + 模型下载地址的方式来实现。考虑到网速推荐优先使用wget模型下载方式。