ComfyUI 节点式工作流实战:3 个场景快速搭建 AI 建筑设计流水线

📅 2026/8/24 11:46:44
ComfyUI 节点式工作流实战:3 个场景快速搭建 AI 建筑设计流水线
ComfyUI 节点式工作流实战3 个场景快速搭建 AI 建筑设计流水线【免费下载链接】ComfyUIThe most powerful and modular diffusion model GUI, api and backend with a graph/nodes interface.项目地址: https://gitcode.com/GitHub_Trending/co/ComfyUI上周甲方说周五前要 8 套玻璃幕墙办公楼的立面方案。如果还在一张张手画这是整整一周的活换成 ComfyUI 建筑设计工作流节奏是写一句话、放一张参考图几分钟跑完 8 张再换个种子又出 8 张评审会前刚好够挑。ComfyUI 官方的一句话定位是最强、最模块化的扩散模型 GUI、API 与后端核心交互就是图/节点graph/nodes。节点式是它最核心的功能每一种能力都是一个独立盒子你自己连线连成一条可反复运行的设计流水线。这篇文章用 3 个建筑场景概念图、风格迁移、批量评审把这条流水线搭起来再讲 5 个新手最容易踩的参数坑。把节点想成流水线上的工位 先别记节点名字先建立直觉一条建筑设计流水线 一串工位图数据沿着线在工位之间流动。备料工位加载基础模型、LoRA、参考图。比如把sdxl_v10_vae_fix.safetensors从 models/checkpoints/ 装进流水线模型由 app/model_manager.py 统一管理。看图纸工位CLIPTextEncode 把一句设计描述编码成模型能理解的向量。渲染工位KSampler 在噪声里一步步去噪30 步左右出一张图。精修工位裁剪、缩放、拼图、加噪。交付工位SaveImage 落盘到 output/参数一起写进图片元数据。每条连线上流动的数据都有类型IMAGE、MODEL、CLIP……类型对不上就连不上这天然帮你避免了草图接错工序。执行引擎在 execution.py几十个节点的大图它也是逐工位按序调度不会因为图大而乱。后面 3 个场景都是在这条流水线上换不同的工位组合。10 分钟环境就绪克隆、装依赖、放模型git clone https://gitcode.com/GitHub_Trending/co/ComfyUI cd ComfyUI pip install -r requirements.txt python main.py浏览器打开本地端口即可。建筑类素材按目录归位不用别的配置素材目录基础模型SDXL 等models/checkpoints/建筑风格 LoRAmodels/loras/设计元素 Embeddingmodels/embeddings/参考图 / 草图input/上面这张就是 input/ 目录自带的示例输入图一张卡通插画。你把它换成密斯·凡德罗的建筑照片或场地草图它就是后续风格迁移任务的参考图。任务 A一句话概念到首张概念图需求甲方只给了一句话——现代办公楼玻璃幕墙中庭采光景观一体化。目标10 分钟内看到第一张可讨论的概念图。流水线只有 6 个工位CheckpointLoaderSimple加载基础模型nodes.py 里的核心节点输出 MODEL / CLIP / VAE 三路。两个 CLIPTextEncode正负提示词各一个。正向modern office building, glass curtain wall, daylight atrium, landscape integration, detailed facade, architectural photography, 8k负向blurry, low quality, distorted proportions, cluttered, unrealistic文本编码的实现可以看 comfy/clip_model.py。KSampler参数如下采样器实现见 comfy/samplers.pysteps30cfg7.5sampler_nameeuler_ancestralschedulernormalseed先固定 42保证这张图可复现分辨率 1024×1024SDXL 原生尺寸ImageScaleToMaxDimensioncomfy_extras/nodes_images.pymax_dim2000upscale_method选 lanczos保留立面硬边。SaveImagefilename_prefix填concept_A图自动带序号存进 output/。跑完你就有了第一张概念图。注意 KSampler 里那个固定种子——评审通过之后你靠它才能原样复现这张图。任务 B参考图风格迁移与多元素融合需求风格要对标甲方喜欢的两个方向一张北欧极简、一张新古典构图要锁死给定的场地草图。风格 LoRA。用 nodes.py 的 LoraLoader从 models/loras/ 挂一个建筑风格 LoRALoRA 就是不动基础模型、只加风格调味料的小权重包strength_model0.7strength_clip0.70.7 是个折中值低于 0.5 风格几乎看不见高于 0.9 基础模型的细节会被风格糊掉。LoRA 的加载逻辑在 comfy/lora.py。多参考图融合。comfy_extras/nodes_images.py 里的 ImageStitch 可以把 24 张参考图拼成一张全景参考一次喂给模型。如果还想从参考图里主动提味用 comfy_extras/nodes_clip_sdxl.py 的 CLIPVisionEncode 提取视觉特征作为附加条件接进正提示一侧——这就是生成→评价→再生成闭环的最小版本。构图控制。拼图解决像什么ControlNet 解决摆在哪用 nodes.py 的 ControlNetApply 接一张草图边缘图canny或深度图strength设 0.60.8start_percent/end_percent分别 0 和 0.8去噪后半段放手让风格渗透。ControlNet 节点扩展在 comfy_extras/nodes_controlnet.py。微调条件。如果生成结果里可持续设计元素偏弱可以借 comfy/conds.py 的条件调节能力对特定去噪阶段给这部分语义加权而不必改整句提示词。任务 C批量出图与多方案对比评审需求一次出 8 张排好序给甲方挑。种子批处理。把任务 A 的图复制成批次comfy_extras/nodes_images.py 的 RepeatImageBatch 可以把 latent 复制 8 份8 份各配一个不同种子42、43、44……一轮跑完就是 8 个变体。提示词、模型、LoRA 全部不动只有种子在变——这是最干净的同题多解。参数变体。除了换种子再挑 2 个参数做分组对比LoRA 权重三档0.5 / 0.7 / 0.9看风格强度CFG 三档6 / 7.5 / 9看听话程度每组固定其他参数一次只动一个评审时才能说清是种子的问题还是权重的问题。带编号导出。SaveImage 默认就给每张图加 5 位序号concept_A_00001_.png评审记录直接引用文件名即可。想给甲方看风格随种子变化的过程用 comfy_extras/nodes_images.py 的 SaveAnimatedPNG 把整批存成一个动图。对比板。最后一步用 ImageStitch或同文件的 ImageMergeTileList把 8 张拼成一张 2×4 的对比图评审会上一屏看完省掉逐张切换。参数调优设计师最常踩的 5 个坑 ️CFG 和 LoRA 权重的拉扯。CFG提示词服从度放 69 是安全区如果 LoRAstrength_model同时拉到 0.9 以上画面会过饱和、纹理发糊。正确顺序LoRA 先钉在 0.7 不动只调 CFG。种子固定还是发散。复现已通过方案 → 固定种子探索新方向 → 随机种子调参数看单一影响 → 固定种子、一次只改一个值。三条规则记牢评审会上不会被问住。局部重绘的边界。Inpaint 重绘建筑立面时遮罩要比实际要改的区域向外扩 2040 像素。贴得太紧AI 会在遮罩边缘硬画留下一道接缝扩一点过渡自然。裁切工具配合 comfy_extras/nodes_images.py 的 ImageCrop 系列使用。放大方法别乱选。lanczos 最保建筑立面的硬直线玻璃缝、檐口线bilinear 快但软面积放大超过 2 倍就分两级走先 1.5 倍再 2 倍直接 4 倍会丢细节。元数据留痕。SaveImage 会把模型、提示词、种子写进图片元数据在界面里右键生成图即可加载回工作流。跳过这一步的后果是三个月后甲方翻旧账你复现不出当年的图。把一次性工作流变成团队资产单张图跑通只是开始团队的复利在模板上。工作流 JSON 化ComfyUI 界面里点保存整张图节点、连线、全部参数值就导出为一个 JSON 文件。发给同事拖进界面即跑参数一个不差。模板沉淀把本文 3 个场景存成 3 个标准模板——文生概念图、参考图风格迁移、批量对比板。团队共享目录放一份高频变动的槽位提示词、种子、LoRA 权重留空。API 交付需要程序化执行时参考 script_examples/basic_api_example.py 用 HTTP 提交工作流参考 script_examples/websockets_api_example.py 用 WebSocket 实时接收进度与预览图接口定义见根目录 openapi.yaml。成果导出成品统一落 output/PNG/JPEG质量参数给到 95细节足够进汇报文件。进阶给工作流长出手和脚自定义节点。要一个参数化立面生成器窗户比例、幕墙材质可调骨架很短class FacadeVariants: classmethod def INPUT_TYPES(s): return {required: { window_ratio: (FLOAT, {default: 1.5, min: 0.5, max: 3.0})}} RETURN_TYPES (IMAGE,) FUNCTION generate def generate(self, window_ratio): ... # 立面生成逻辑 return (image,) NODE_CLASS_MAPPINGS {FacadeVariants: FacadeVariants}丢进 custom_nodes/重启即出现在节点列表完整范例见 custom_nodes/example_node.py.example输入选项声明可查 comfy/comfy_types/node_typing.py。外部工具联动。comfy_api_nodes/apis/ 里自带 30 多个外部服务节点如 comfy_api_nodes/apis/pixverse.py可以把工作流接到外部渲染/生图服务。想接 Blender 把立面图当 3D 纹理用上面 WebSocket 示例的推送机制即可想往 3D 建筑方向走comfy/ldm/hunyuan3dv2_1/ 下有现成的 3D 生成模型实现可参考。小结与延伸资源这套 ComfyUI 建筑设计流水线把画方案变成了跑参数需求变更不再是重画而是改一个提示词、换一个种子、动一根连线。延伸入口项目说明看 README.mdAPI 示例看 script_examples/想验证新节点行为可以跑 tests/ 里的用例。最后提醒一句每次升级依赖前先把你团队积累的 JSON 工作流和自定义节点代码备份一份——好方案不能只活在某一台机器上。【免费下载链接】ComfyUIThe most powerful and modular diffusion model GUI, api and backend with a graph/nodes interface.项目地址: https://gitcode.com/GitHub_Trending/co/ComfyUI创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考