diff --git a/docs/404.html b/docs/404.html deleted file mode 100644 index 9f04ed5..0000000 --- a/docs/404.html +++ /dev/null @@ -1,37 +0,0 @@ - - -
- - - - - -404 Not Found
\\n"}');export{l as comp,d as data}; diff --git a/docs/assets/8047d707bb3ab08f774bc4c2f4b44484-9RPxsZVV.png b/docs/assets/8047d707bb3ab08f774bc4c2f4b44484-9RPxsZVV.png deleted file mode 100644 index 1b6ac60..0000000 Binary files a/docs/assets/8047d707bb3ab08f774bc4c2f4b44484-9RPxsZVV.png and /dev/null differ diff --git "a/docs/assets/AI\345\246\202\344\275\225\346\224\271\345\217\230\344\272\247\345\223\201\347\273\217\347\220\206\347\232\204\345\267\245\344\275\234.html-CBf7EVM6.js" "b/docs/assets/AI\345\246\202\344\275\225\346\224\271\345\217\230\344\272\247\345\223\201\347\273\217\347\220\206\347\232\204\345\267\245\344\275\234.html-CBf7EVM6.js" deleted file mode 100644 index ea40438..0000000 --- "a/docs/assets/AI\345\246\202\344\275\225\346\224\271\345\217\230\344\272\247\345\223\201\347\273\217\347\220\206\347\232\204\345\267\245\344\275\234.html-CBf7EVM6.js" +++ /dev/null @@ -1 +0,0 @@ -import{_ as e,c as t,o,a}from"./app-BFngqcKR.js";const p={},n=a('播客地址:AI如何改变产品经理的工作
熊叔是我们Mixlab的核心创始人之一,他不仅在职业生涯中积累了丰富的经验,更是在和shadow一起创造了爆火的comfyUI 节点 Mix nodes,今天,我们就来深入了解熊叔的职业生涯,以及他所参与开发的MIXLAB NODE产品,探索AI如何改变我们的工作与生活。
熊叔的职业生涯
00:29 熊叔,一名资深的产品经理,他的职业生涯始于对技术的热爱和对创新的追求。在多年的工作中,熊叔参与了多个创业项目,尤其在AI领域有着深入的研究和实践。他不仅关注技术变革如何影响商业社会,更是将这种变革融入到自己的工作和生活中。
MIXLAB NODE 的特点,与其开发故事
01:53在众多的AI平台中,熊叔选择了Comfy UI生态来设计开源项目。他看重的是Comfy UI的自由度和上限,这个平台的可能性足够高,能够给予开发者更大的创造空间。
05:47 MixNode是Comfy UI生态中的一个多功能节点,它与Stable Diffusion等工具相结合,为用户提供了一个全新的创作体验。MixNode的存在,使得用户可以通过连接不同的AI模型和工具,创造出更加丰富和多样化的作品。
09:14 熊叔分享了Mixlab node的几个核心功能,如录屏渲染、链接大语言模型等。这些功能不仅提高了创作的效率,也为用户带来了全新的应用场景。例如,通过录屏渲染功能,用户可以实时地让AI帮助渲染图像,生成更加精美的作品。而链接大语言模型,则可以为用户提供强大的文本生成能力。这些功能的结合,使得Comfy UI成为了一个优秀的AI原型工具。
13:14 Mixlab node的加密功能背后,是源于社群的需求和对创作者知识产权的保护。熊叔分享了这一功能背后的故事,强调了为更可持续的社区生态寻求可能性的重要性。通过加密功能,创作者可以保护自己的工作流程不被随意复制和盗用,从而激励更多的创新和创作。
18:36 在Mixlab node的开发过程中,最大的共识就是“Just do it”。AI技术的应用使得软件开发的成本大幅降低,原本需要一个月完成的需求,现在只需要1-2天即可完成。因此,开发者需要改变旧有的开发流程,更敏捷地尝试新的可能性。
22:34然而,在开发过程中,也存在着一些分歧。最大的分歧在于软件的复杂度与学习成本之间的冲突。随着Mixlab node功能的增加,如何保持用户的易用性和认知的清晰性成为了一个挑战。熊叔和他的团队需要在提供强大功能的同时,也要考虑如何降低用户的学习成本。
如何成为一位优秀的AI产品经理?
28.12 在开发AI产品的过程中,熊叔坦言,最好用的工具就是GPT。只需要向GPT提出需求,它就可以在几分钟内提供一个完整的代码。这让熊叔这样一个不懂Python的人,也能通过Python编程来实现想要的功能。
31.18熊叔认为,在AI时代,跨界的人有机会获得更大的加成。相反,只关注自己领域的人则获得的加成相对有限。AI技术的发展,为那些愿意跨出舒适区,学习新技能的人提供了更多的机会。
37.57 熊叔不仅在产品开发上有所建树,他还运营着自己的自媒体——“AI 产品经理”。通过自媒体,熊叔可以分享自己的知识和见解,同时也是一个消化知识和社交的好机会。通过内容的创作和分享,熊叔与更多志同道合的朋友建立了联系。
对新手AI 产品经理的建议
45.07 对于想要入行AI产品经理的新手,熊叔给出了几点建议。首先,要掌握AI提示词工程的能力,理解AI的能力,这样才能更好地利用AI技术。
50.19其次,要具备运营社群的能力,从用户实际使用过程中汇总信息,寻找需求。最后,要有跨界的思维,不断学习新的知识,以适应AI时代的变化。
结语
通过熊叔的分享,我们可以看到AI技术如何深刻地影响着我们的工作和生活。无论是在产品开发、社群运营还是个人成长上,AI都为我们提供了无限的可能性。让我们一起期待,在AI的帮助下,我们能够创造出更多令人惊叹的成果。
如果希望加入听友群,请扫描下方二维码
',22),i=[n];function r(c,m){return o(),t("div",null,i)}const d=e(p,[["render",r],["__file","AI如何改变产品经理的工作.html.vue"]]),l=JSON.parse('{"path":"/posts/discovery/AI%E5%A6%82%E4%BD%95%E6%94%B9%E5%8F%98%E4%BA%A7%E5%93%81%E7%BB%8F%E7%90%86%E7%9A%84%E5%B7%A5%E4%BD%9C.html","title":"","lang":"en-US","frontmatter":{"description":"播客地址:AI如何改变产品经理的工作 熊叔是我们Mixlab的核心创始人之一,他不仅在职业生涯中积累了丰富的经验,更是在和shadow一起创造了爆火的comfyUI 节点 Mix nodes,今天,我们就来深入了解熊叔的职业生涯,以及他所参与开发的MIXLAB NODE产品,探索AI如何改变我们的工作与生活。 熊叔的职业生涯 00:29 熊叔,一名资深...","head":[["meta",{"property":"og:url","content":"https://www.mixcomfy.com/awesome-comfyui-workflow/posts/discovery/AI%E5%A6%82%E4%BD%95%E6%94%B9%E5%8F%98%E4%BA%A7%E5%93%81%E7%BB%8F%E7%90%86%E7%9A%84%E5%B7%A5%E4%BD%9C.html"}],["meta",{"property":"og:site_name","content":"ComfyUI中文爱好者社区"}],["meta",{"property":"og:description","content":"播客地址:AI如何改变产品经理的工作 熊叔是我们Mixlab的核心创始人之一,他不仅在职业生涯中积累了丰富的经验,更是在和shadow一起创造了爆火的comfyUI 节点 Mix nodes,今天,我们就来深入了解熊叔的职业生涯,以及他所参与开发的MIXLAB NODE产品,探索AI如何改变我们的工作与生活。 熊叔的职业生涯 00:29 熊叔,一名资深..."}],["meta",{"property":"og:type","content":"article"}],["meta",{"property":"og:locale","content":"en-US"}],["meta",{"property":"og:updated_time","content":"2024-06-06T08:49:49.694Z"}],["meta",{"property":"article:author","content":"shadow"}],["meta",{"property":"article:modified_time","content":"2024-06-06T08:20:44.000Z"}],["meta",{"property":"og:modified_time","content":"2024-06-06T08:49:49.694Z"}],["meta",{"name":"twitter:description","content":"播客地址:AI如何改变产品经理的工作 熊叔是我们Mixlab的核心创始人之一,他不仅在职业生涯中积累了丰富的经验,更是在和shadow一起创造了爆火的comfyUI 节点 Mix nodes,今天,我们就来深入了解熊叔的职业生涯,以及他所参与开发的MIXLAB NODE产品,探索AI如何改变我们的工作与生活。 熊叔的职业生涯 00:29 熊叔,一名资深..."}],["meta",{"name":"twitter:card","content":"summary_large_image"}],["meta",{"name":"twitter:site","content":"mixlabPro"}],["meta",{"name":"twitter:creator","content":"mixlabPro"}],["meta",{"name":"share_config","content":"buffer,email,facebook,flipboard,hackernews,instapaper,line,linkedin,odnoklassniki,pinterest,pocket,quora,reddit,tumblr,twitter,vk,weibo,wordpress,xing,yammer"}],["script",{"type":"application/ld+json"},"{\\"@context\\":\\"https://schema.org\\",\\"@type\\":\\"Article\\",\\"headline\\":\\"\\",\\"image\\":[\\"\\"],\\"dateModified\\":\\"2024-06-06T08:20:44.000Z\\",\\"author\\":[{\\"@type\\":\\"Person\\",\\"name\\":\\"shadow\\"}]}"]]},"headers":[],"git":{"updatedTime":1717662044000,"contributors":[{"name":"shadowcz007","email":"chizhiwei007@163.com","commits":1}]},"filePathRelative":"posts/discovery/AI如何改变产品经理的工作.md","autoDesc":true,"excerpt":"\\n播客地址:AI如何改变产品经理的工作
\\n熊叔是我们Mixlab的核心创始人之一,他不仅在职业生涯中积累了丰富的经验,更是在和shadow一起创造了爆火的comfyUI 节点 Mix nodes,今天,我们就来深入了解熊叔的职业生涯,以及他所参与开发的MIXLAB NODE产品,探索AI如何改变我们的工作与生活。
"}');export{d as comp,l as data}; diff --git a/docs/assets/API-03-DW_y3-g-.png b/docs/assets/API-03-DW_y3-g-.png deleted file mode 100644 index 93e09c7..0000000 Binary files a/docs/assets/API-03-DW_y3-g-.png and /dev/null differ diff --git a/docs/assets/API-04-CItmxP6i.png b/docs/assets/API-04-CItmxP6i.png deleted file mode 100644 index d6a121f..0000000 Binary files a/docs/assets/API-04-CItmxP6i.png and /dev/null differ diff --git a/docs/assets/API-05-SRm6s36i.png b/docs/assets/API-05-SRm6s36i.png deleted file mode 100644 index 7233a80..0000000 Binary files a/docs/assets/API-05-SRm6s36i.png and /dev/null differ diff --git a/docs/assets/API01-C3VSzi19.png b/docs/assets/API01-C3VSzi19.png deleted file mode 100644 index 4faa210..0000000 Binary files a/docs/assets/API01-C3VSzi19.png and /dev/null differ diff --git a/docs/assets/API02-BDcjvxSr.png b/docs/assets/API02-BDcjvxSr.png deleted file mode 100644 index 48f2549..0000000 Binary files a/docs/assets/API02-BDcjvxSr.png and /dev/null differ diff --git a/docs/assets/ApplyControlNet-T6FeDJLs.svg b/docs/assets/ApplyControlNet-T6FeDJLs.svg deleted file mode 100644 index 047c9dd..0000000 --- a/docs/assets/ApplyControlNet-T6FeDJLs.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/assets/ApplyStyleModel-BjkUEVpq.svg b/docs/assets/ApplyStyleModel-BjkUEVpq.svg deleted file mode 100644 index c501da8..0000000 --- a/docs/assets/ApplyStyleModel-BjkUEVpq.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/assets/CLIPSetLastLayer-B9W3GWtU.svg b/docs/assets/CLIPSetLastLayer-B9W3GWtU.svg deleted file mode 100644 index 43cb962..0000000 --- a/docs/assets/CLIPSetLastLayer-B9W3GWtU.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/assets/CLIPTextEncodePrompt-hZy3NNU2.svg b/docs/assets/CLIPTextEncodePrompt-hZy3NNU2.svg deleted file mode 100644 index 1097c63..0000000 --- a/docs/assets/CLIPTextEncodePrompt-hZy3NNU2.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/assets/CLIPVisionEncode-CftDdXV-.svg b/docs/assets/CLIPVisionEncode-CftDdXV-.svg deleted file mode 100644 index 6090baa..0000000 --- a/docs/assets/CLIPVisionEncode-CftDdXV-.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/assets/Comfyui Realtime LCM with Photoshop.html-Czi8jk_g.js b/docs/assets/Comfyui Realtime LCM with Photoshop.html-Czi8jk_g.js deleted file mode 100644 index 2889ef6..0000000 --- a/docs/assets/Comfyui Realtime LCM with Photoshop.html-Czi8jk_g.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as e,c as t,o,b as i,a as r}from"./app-BFngqcKR.js";const l={},a=i("iframe",{width:"560",height:"315",src:"https://www.youtube.com/embed/RKZeBV0zSBg?si=qruHJHL2ZfpLn4Nf",title:"YouTube video player",frameborder:"0",allow:"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share",referrerpolicy:"strict-origin-when-cross-origin",allowfullscreen:""},null,-1),n=r('这段视频讲解了如何在ComfyUI中使用自定义节点实现实时的潜在一致性模型(LCM),并与Photoshop、Blender、C4D、Zbrush和Maya等软件集成以创建令人惊叹的艺术作品。视频详细介绍了工作流程,重点讲解了屏幕共享节点的使用方法,并提供了一些控制技巧。视频还提供了相关链接供观众参考。
简介
工作流程
控制技巧
总结
Workflow: drive.google.com/file/d/1RaUSzTz4pg4f3pxDDfmzH78GHzALnmyR/
comfyui-mixlab-nodes: github.com/shadowcz007/comfyui-mixlab-nodes
',6),s=[a,n];function c(m,p){return o(),t("div",null,s)}const d=e(l,[["render",c],["__file","Comfyui Realtime LCM with Photoshop.html.vue"]]),u=JSON.parse('{"path":"/posts/discovery/Comfyui%20Realtime%20LCM%20with%20Photoshop.html","title":"","lang":"en-US","frontmatter":{"description":"摘要 这段视频讲解了如何在ComfyUI中使用自定义节点实现实时的潜在一致性模型(LCM),并与Photoshop、Blender、C4D、Zbrush和Maya等软件集成以创建令人惊叹的艺术作品。视频详细介绍了工作流程,重点讲解了屏幕共享节点的使用方法,并提供了一些控制技巧。视频还提供了相关链接供观众参考。 提纲 简介 介绍视频内容:在ComfyUI...","head":[["meta",{"property":"og:url","content":"https://www.mixcomfy.com/awesome-comfyui-workflow/posts/discovery/Comfyui%20Realtime%20LCM%20with%20Photoshop.html"}],["meta",{"property":"og:site_name","content":"ComfyUI中文爱好者社区"}],["meta",{"property":"og:description","content":"摘要 这段视频讲解了如何在ComfyUI中使用自定义节点实现实时的潜在一致性模型(LCM),并与Photoshop、Blender、C4D、Zbrush和Maya等软件集成以创建令人惊叹的艺术作品。视频详细介绍了工作流程,重点讲解了屏幕共享节点的使用方法,并提供了一些控制技巧。视频还提供了相关链接供观众参考。 提纲 简介 介绍视频内容:在ComfyUI..."}],["meta",{"property":"og:type","content":"article"}],["meta",{"property":"og:locale","content":"en-US"}],["meta",{"property":"og:updated_time","content":"2024-06-06T08:49:49.694Z"}],["meta",{"property":"article:author","content":"shadow"}],["meta",{"property":"article:modified_time","content":"2024-06-06T08:07:56.000Z"}],["meta",{"property":"og:modified_time","content":"2024-06-06T08:49:49.694Z"}],["meta",{"name":"twitter:description","content":"摘要 这段视频讲解了如何在ComfyUI中使用自定义节点实现实时的潜在一致性模型(LCM),并与Photoshop、Blender、C4D、Zbrush和Maya等软件集成以创建令人惊叹的艺术作品。视频详细介绍了工作流程,重点讲解了屏幕共享节点的使用方法,并提供了一些控制技巧。视频还提供了相关链接供观众参考。 提纲 简介 介绍视频内容:在ComfyUI..."}],["meta",{"name":"twitter:card","content":"summary_large_image"}],["meta",{"name":"twitter:site","content":"mixlabPro"}],["meta",{"name":"twitter:creator","content":"mixlabPro"}],["meta",{"name":"share_config","content":"buffer,email,facebook,flipboard,hackernews,instapaper,line,linkedin,odnoklassniki,pinterest,pocket,quora,reddit,tumblr,twitter,vk,weibo,wordpress,xing,yammer"}],["script",{"type":"application/ld+json"},"{\\"@context\\":\\"https://schema.org\\",\\"@type\\":\\"Article\\",\\"headline\\":\\"\\",\\"image\\":[\\"\\"],\\"dateModified\\":\\"2024-06-06T08:07:56.000Z\\",\\"author\\":[{\\"@type\\":\\"Person\\",\\"name\\":\\"shadow\\"}]}"]]},"headers":[{"level":3,"title":"摘要","slug":"摘要","link":"#摘要","children":[]},{"level":3,"title":"提纲","slug":"提纲","link":"#提纲","children":[]}],"git":{"updatedTime":1717661276000,"contributors":[{"name":"shadowcz007","email":"chizhiwei007@163.com","commits":1}]},"filePathRelative":"posts/discovery/Comfyui Realtime LCM with Photoshop.md","autoDesc":true,"excerpt":""}');export{d as comp,u as data}; diff --git a/docs/assets/ConditioningAverage-Drh7U2UB.svg b/docs/assets/ConditioningAverage-Drh7U2UB.svg deleted file mode 100644 index 275bdcd..0000000 --- a/docs/assets/ConditioningAverage-Drh7U2UB.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/assets/ConditioningCombine-C3NkkjHK.svg b/docs/assets/ConditioningCombine-C3NkkjHK.svg deleted file mode 100644 index b3e0223..0000000 --- a/docs/assets/ConditioningCombine-C3NkkjHK.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/assets/ConditioningSetArea-dVMUIFKq.svg b/docs/assets/ConditioningSetArea-dVMUIFKq.svg deleted file mode 100644 index a8a45b7..0000000 --- a/docs/assets/ConditioningSetArea-dVMUIFKq.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/assets/ConditioningSetMask-VXvrA2C9.svg b/docs/assets/ConditioningSetMask-VXvrA2C9.svg deleted file mode 100644 index e20fafe..0000000 --- a/docs/assets/ConditioningSetMask-VXvrA2C9.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/assets/ConvertImageToMask-cXPU6ybK.svg b/docs/assets/ConvertImageToMask-cXPU6ybK.svg deleted file mode 100644 index ab17828..0000000 --- a/docs/assets/ConvertImageToMask-cXPU6ybK.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/assets/CropLatent-B_cR3_Xi.svg b/docs/assets/CropLatent-B_cR3_Xi.svg deleted file mode 100644 index 1c13da4..0000000 --- a/docs/assets/CropLatent-B_cR3_Xi.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/assets/CropMask-9iFwdALP.svg b/docs/assets/CropMask-9iFwdALP.svg deleted file mode 100644 index 45a51fd..0000000 --- a/docs/assets/CropMask-9iFwdALP.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/assets/DiffusersLoader-mzdmk8hT.svg b/docs/assets/DiffusersLoader-mzdmk8hT.svg deleted file mode 100644 index f19b31a..0000000 --- a/docs/assets/DiffusersLoader-mzdmk8hT.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/assets/EmptyLatentImage-D8EMT608.svg b/docs/assets/EmptyLatentImage-D8EMT608.svg deleted file mode 100644 index 80a0679..0000000 --- a/docs/assets/EmptyLatentImage-D8EMT608.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/assets/FeatherMask-CFIc33fP.svg b/docs/assets/FeatherMask-CFIc33fP.svg deleted file mode 100644 index 2976fae..0000000 --- a/docs/assets/FeatherMask-CFIc33fP.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/assets/FlipLatent-DBtA-SV6.svg b/docs/assets/FlipLatent-DBtA-SV6.svg deleted file mode 100644 index c1c253b..0000000 --- a/docs/assets/FlipLatent-DBtA-SV6.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/assets/GLIGENLoader-D-vTl3Sj.svg b/docs/assets/GLIGENLoader-D-vTl3Sj.svg deleted file mode 100644 index 2892998..0000000 --- a/docs/assets/GLIGENLoader-D-vTl3Sj.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/assets/GLIGENTextboxApply-D4bHz8Hm.svg b/docs/assets/GLIGENTextboxApply-D4bHz8Hm.svg deleted file mode 100644 index c5b9794..0000000 --- a/docs/assets/GLIGENTextboxApply-D4bHz8Hm.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/assets/HypernetworkLoader-C8B_JGiF.svg b/docs/assets/HypernetworkLoader-C8B_JGiF.svg deleted file mode 100644 index 869feff..0000000 --- a/docs/assets/HypernetworkLoader-C8B_JGiF.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/assets/ImageBlend-CAd_GaLc.svg b/docs/assets/ImageBlend-CAd_GaLc.svg deleted file mode 100644 index 2a35115..0000000 --- a/docs/assets/ImageBlend-CAd_GaLc.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/assets/ImageBlur-BZL9jSkN.svg b/docs/assets/ImageBlur-BZL9jSkN.svg deleted file mode 100644 index 0da2335..0000000 --- a/docs/assets/ImageBlur-BZL9jSkN.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/assets/ImageQuantize-WjbyHjQe.svg b/docs/assets/ImageQuantize-WjbyHjQe.svg deleted file mode 100644 index ca6dfad..0000000 --- a/docs/assets/ImageQuantize-WjbyHjQe.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/assets/ImageSharpen-CAocoy-2.svg b/docs/assets/ImageSharpen-CAocoy-2.svg deleted file mode 100644 index 36331d3..0000000 --- a/docs/assets/ImageSharpen-CAocoy-2.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/assets/InvertMask-CXALs9bU.svg b/docs/assets/InvertMask-CXALs9bU.svg deleted file mode 100644 index 6fd5f54..0000000 --- a/docs/assets/InvertMask-CXALs9bU.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/assets/KSampler-LOr6cHLj.svg b/docs/assets/KSampler-LOr6cHLj.svg deleted file mode 100644 index e8123bf..0000000 --- a/docs/assets/KSampler-LOr6cHLj.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/assets/KSamplerADV-0c9yINrV.svg b/docs/assets/KSamplerADV-0c9yINrV.svg deleted file mode 100644 index 7cb1f1f..0000000 --- a/docs/assets/KSamplerADV-0c9yINrV.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/assets/LatentComposite-UQ81jvlz.svg b/docs/assets/LatentComposite-UQ81jvlz.svg deleted file mode 100644 index 0084d61..0000000 --- a/docs/assets/LatentComposite-UQ81jvlz.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/assets/LatentCompositeMasked-DZJAVyUF.svg b/docs/assets/LatentCompositeMasked-DZJAVyUF.svg deleted file mode 100644 index 4be1453..0000000 --- a/docs/assets/LatentCompositeMasked-DZJAVyUF.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/assets/LatentFromBatch-YeN1b-Lj.svg b/docs/assets/LatentFromBatch-YeN1b-Lj.svg deleted file mode 100644 index 84e2a3e..0000000 --- a/docs/assets/LatentFromBatch-YeN1b-Lj.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/assets/LoadCLIP-C94A2T08.svg b/docs/assets/LoadCLIP-C94A2T08.svg deleted file mode 100644 index 7a31f73..0000000 --- a/docs/assets/LoadCLIP-C94A2T08.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/assets/LoadCLIPVision-CtFF4wbm.svg b/docs/assets/LoadCLIPVision-CtFF4wbm.svg deleted file mode 100644 index d0d7331..0000000 --- a/docs/assets/LoadCLIPVision-CtFF4wbm.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/assets/LoadCheckpoint-BQouw9PX.svg b/docs/assets/LoadCheckpoint-BQouw9PX.svg deleted file mode 100644 index 7f6c9af..0000000 --- a/docs/assets/LoadCheckpoint-BQouw9PX.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/assets/LoadCheckpointWithConfig-BN6zB4MN.svg b/docs/assets/LoadCheckpointWithConfig-BN6zB4MN.svg deleted file mode 100644 index 07754d3..0000000 --- a/docs/assets/LoadCheckpointWithConfig-BN6zB4MN.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/assets/LoadControlNet-DHg5P2Us.svg b/docs/assets/LoadControlNet-DHg5P2Us.svg deleted file mode 100644 index 7833012..0000000 --- a/docs/assets/LoadControlNet-DHg5P2Us.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/assets/LoadImage-CIzP9BtT.svg b/docs/assets/LoadImage-CIzP9BtT.svg deleted file mode 100644 index 09d1ee9..0000000 --- a/docs/assets/LoadImage-CIzP9BtT.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/assets/LoadImageAsMask-CvgYUE6N.svg b/docs/assets/LoadImageAsMask-CvgYUE6N.svg deleted file mode 100644 index 0a17f68..0000000 --- a/docs/assets/LoadImageAsMask-CvgYUE6N.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/assets/LoadLatent-C85_Mtz4.svg b/docs/assets/LoadLatent-C85_Mtz4.svg deleted file mode 100644 index f9667d6..0000000 --- a/docs/assets/LoadLatent-C85_Mtz4.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/assets/LoadLoRA-Bng2EN8f.svg b/docs/assets/LoadLoRA-Bng2EN8f.svg deleted file mode 100644 index e33042a..0000000 --- a/docs/assets/LoadLoRA-Bng2EN8f.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/assets/LoadStyleModel-cphcEIxJ.svg b/docs/assets/LoadStyleModel-cphcEIxJ.svg deleted file mode 100644 index fe6fcab..0000000 --- a/docs/assets/LoadStyleModel-cphcEIxJ.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/assets/LoadUpscaleModel-C74PIl6V.svg b/docs/assets/LoadUpscaleModel-C74PIl6V.svg deleted file mode 100644 index bb65104..0000000 --- a/docs/assets/LoadUpscaleModel-C74PIl6V.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/assets/LoadVAE-2X0vkEPY.svg b/docs/assets/LoadVAE-2X0vkEPY.svg deleted file mode 100644 index 15ca334..0000000 --- a/docs/assets/LoadVAE-2X0vkEPY.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/assets/MaskComposite-D-LgFTnL.svg b/docs/assets/MaskComposite-D-LgFTnL.svg deleted file mode 100644 index 6428b10..0000000 --- a/docs/assets/MaskComposite-D-LgFTnL.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/assets/PadImageForOutpainting-Dzr-CDCB.svg b/docs/assets/PadImageForOutpainting-Dzr-CDCB.svg deleted file mode 100644 index 0524817..0000000 --- a/docs/assets/PadImageForOutpainting-Dzr-CDCB.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/assets/PreviewImage-Br5eeeHl.svg b/docs/assets/PreviewImage-Br5eeeHl.svg deleted file mode 100644 index ca817d4..0000000 --- a/docs/assets/PreviewImage-Br5eeeHl.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/assets/RebatchLatents-YWT5gNwM.svg b/docs/assets/RebatchLatents-YWT5gNwM.svg deleted file mode 100644 index d29f961..0000000 --- a/docs/assets/RebatchLatents-YWT5gNwM.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/assets/RepeatLatentBatch-BqPx0NXv.svg b/docs/assets/RepeatLatentBatch-BqPx0NXv.svg deleted file mode 100644 index 7ca6028..0000000 --- a/docs/assets/RepeatLatentBatch-BqPx0NXv.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/assets/RotateLatent-CFLvhpt7.svg b/docs/assets/RotateLatent-CFLvhpt7.svg deleted file mode 100644 index cb65057..0000000 --- a/docs/assets/RotateLatent-CFLvhpt7.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/assets/SR-on7jf4DI.png b/docs/assets/SR-on7jf4DI.png deleted file mode 100644 index 9484e57..0000000 Binary files a/docs/assets/SR-on7jf4DI.png and /dev/null differ diff --git a/docs/assets/SaveImage-z3yAym7e.svg b/docs/assets/SaveImage-z3yAym7e.svg deleted file mode 100644 index 70f6e73..0000000 --- a/docs/assets/SaveImage-z3yAym7e.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/assets/SaveLatent-DtsgIWDD.svg b/docs/assets/SaveLatent-DtsgIWDD.svg deleted file mode 100644 index 89b04f5..0000000 --- a/docs/assets/SaveLatent-DtsgIWDD.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/assets/SearchResult-BwEG9_q-.js b/docs/assets/SearchResult-BwEG9_q-.js deleted file mode 100644 index 7e09bb9..0000000 --- a/docs/assets/SearchResult-BwEG9_q-.js +++ /dev/null @@ -1 +0,0 @@ -import{u as M,f as se,g as te,h as U,i as ae,P as le,t as re,j as ue,k as b,l as k,m as ie,n as Y,p as t,q as oe,R as O,s as ne,v as ce,x as ve,C as pe,y as de,z as he,A as ye,B as Ee,D as me,E as ge,F as Ae,G as T,H as $,I as fe,J as C,K as Be}from"./app-BFngqcKR.js";const He=["/","/posts/mission.html","/posts/discovery/AI%E5%A6%82%E4%BD%95%E6%94%B9%E5%8F%98%E4%BA%A7%E5%93%81%E7%BB%8F%E7%90%86%E7%9A%84%E5%B7%A5%E4%BD%9C.html","/posts/discovery/comfyui%20mixlab%20nodes%20%E6%8F%92%E4%BB%B6%20%E5%B7%A5%E4%BD%9C%E6%B5%81%E7%94%9F%E6%88%90APP%20%E9%80%8F%E6%98%8Epng%E5%9B%BE%E5%83%8F%20%E5%A4%9A%E7%A7%8D%E5%8A%9F%E8%83%BD.html","/posts/discovery/Comfyui%20Realtime%20LCM%20with%20Photoshop.html","/posts/discovery/prompt.html","/posts/discovery/%E8%81%8A%E8%81%8AMixlab%20Node%EF%BC%9AAI%E6%97%B6%E4%BB%A3%E5%A6%82%E4%BD%95%E9%87%8D%E5%A1%91%E5%86%85%E5%AE%B9%E5%88%9B%E4%BD%9C%E4%BA%A7%E5%93%81%E4%B8%8E%E7%A4%BE%E5%8C%BA%E7%94%9F%E6%80%81.html","/posts/insight/","/posts/mixlab_nodes/","/posts/task/","/posts/tutorial/advanced/","/posts/tutorial/core_nodes/","/posts/tutorial/custom_nodes/","/posts/tutorial/interface/","/posts/tutorial/start/","/posts/tutorial/for_testing/","/404.html"],Re="SEARCH_PRO_QUERY_HISTORY",m=M(Re,[]),ke=()=>{const{queryHistoryCount:a}=C,l=a>0;return{enabled:l,queryHistory:m,addQueryHistory:r=>{l&&(m.value=Array.from(new Set([r,...m.value.slice(0,a-1)])))},removeQueryHistory:r=>{m.value=[...m.value.slice(0,r),...m.value.slice(r+1)]}}},L=a=>He[a.id]+("anchor"in a?`#${a.anchor}`:""),Ce="SEARCH_PRO_RESULT_HISTORY",{resultHistoryCount:j}=C,g=M(Ce,[]),xe=()=>{const a=j>0;return{enabled:a,resultHistory:g,addResultHistory:l=>{if(a){const r={link:L(l),display:l.display};"header"in l&&(r.header=l.header),g.value=[r,...g.value.slice(0,j-1)]}},removeResultHistory:l=>{g.value=[...g.value.slice(0,l),...g.value.slice(l+1)]}}},De=a=>{const l=pe(),r=U(),x=de(),i=b(0),B=k(()=>i.value>0),h=he([]);return ye(()=>{const{search:y,terminate:D}=Ee(),A=fe(c=>{const f=c.join(" "),{searchFilter:w=d=>d,splitWord:Q,suggestionsFilter:P,...E}=l.value;f?(i.value+=1,y(c.join(" "),r.value,E).then(d=>w(d,f,r.value,x.value)).then(d=>{i.value-=1,h.value=d}).catch(d=>{console.warn(d),i.value-=1,i.value||(h.value=[])})):h.value=[]},C.searchDelay-C.suggestDelay);Y([a,r],([c])=>A(c),{immediate:!0}),me(()=>{D()})}),{isSearching:B,results:h}};var Qe=se({name:"SearchResult",props:{queries:{type:Array,required:!0},isFocusing:Boolean},emits:["close","updateQuery"],setup(a,{emit:l}){const r=te(),x=U(),i=ae(le),{enabled:B,addQueryHistory:h,queryHistory:y,removeQueryHistory:D}=ke(),{enabled:A,resultHistory:c,addResultHistory:f,removeResultHistory:w}=xe(),Q=B||A,P=re(a,"queries"),{results:E,isSearching:d}=De(P),u=ue({isQuery:!0,index:0}),v=b(0),p=b(0),_=k(()=>Q&&(y.value.length>0||c.value.length>0)),F=k(()=>E.value.length>0),q=k(()=>E.value[v.value]||null),z=()=>{const{isQuery:e,index:s}=u;s===0?(u.isQuery=!e,u.index=e?c.value.length-1:y.value.length-1):u.index=s-1},G=()=>{const{isQuery:e,index:s}=u;s===(e?y.value.length-1:c.value.length-1)?(u.isQuery=!e,u.index=0):u.index=s+1},J=()=>{v.value=v.value>0?v.value-1:E.value.length-1,p.value=q.value.contents.length-1},K=()=>{v.value=v.value\\n0:00 / 3:39
\\ncomfyui mixlab nodes 插件 工作流生成APP 透明png图像 多种功能
\\n"}');export{d as comp,_ as data}; diff --git a/docs/assets/default_workflow-bUpa9A5u.svg b/docs/assets/default_workflow-bUpa9A5u.svg deleted file mode 100644 index 4ee3f22..0000000 --- a/docs/assets/default_workflow-bUpa9A5u.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/assets/index.html-5qMQC16d.js b/docs/assets/index.html-5qMQC16d.js deleted file mode 100644 index 8f396cd..0000000 --- a/docs/assets/index.html-5qMQC16d.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as t,r as o,c as a,e as n,o as c}from"./app-BFngqcKR.js";const r={};function s(l,i){const e=o("Catalog");return c(),a("div",null,[n(e)])}const p=t(r,[["render",s],["__file","index.html.vue"]]),m=JSON.parse('{"path":"/posts/discovery/","title":"Discovery","lang":"en-US","frontmatter":{"title":"Discovery"},"headers":[],"git":{},"filePathRelative":null,"excerpt":""}');export{p as comp,m as data}; diff --git a/docs/assets/index.html-AGgdmCHk.js b/docs/assets/index.html-AGgdmCHk.js deleted file mode 100644 index e515ea4..0000000 --- a/docs/assets/index.html-AGgdmCHk.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as e,c as t,o}from"./app-BFngqcKR.js";const i={};function a(m,s){return o(),t("div")}const r=e(i,[["render",a],["__file","index.html.vue"]]),c=JSON.parse('{"path":"/","title":"Home","lang":"en-US","frontmatter":{"home":false,"layout":"PortfolioLayout","title":"Home","heroImage":"/logo.png","heroHeight":88,"actions":[{"text":"加入国际社区","link":"https://discord.gg/cXs9vZSqeK","type":"primary"},{"text":"Mixlab微信社群申请","link":"http://mixlab-co.mikecrm.com/wgn0LPw","type":"secondary"}],"share":true,"waterfall":[{"title":"BadCat探索者:生成APP和透明png图像多功能插件","image":"https://i.ytimg.com/vi/03uoOPu5X8Y/maxresdefault.jpg","details":"comfyui mixlab nodes 插件 工作流生成APP 透明png图像 多种功能","posts":"discovery/comfyui mixlab nodes 插件 工作流生成APP 透明png图像 多种功能"},{"title":"Comfyui Realtime LCM with Photoshop, Blender, C4D","image":"images/realtime-design.png","details":"如何在ComfyUI中使用自定义节点实现实时的潜在一致性模型(LCM),并与Photoshop、Blender、C4D、Zbrush和Maya等软件集成以创建令人惊叹的艺术作品。","posts":"discovery/Comfyui Realtime LCM with Photoshop"},{"title":"聊聊Mixlab Node","image":"https://is1-ssl.mzstatic.com/image/thumb/Podcasts221/v4/c4/0c/55/c40c557b-66f2-6078-2130-b1fe97aa339c/mza_2664138711369555086.jpeg/313x0w.webp","details":"Mixlab Node在AI时代如何通过社区驱动开发模式重塑内容创作产品和社区生态。","posts":"discovery/聊聊Mixlab Node:AI时代如何重塑内容创作产品与社区生态"},{"title":"AI如何改变产品经理的工作","image":"https://bts-image.xyzcdn.net/aHR0cHM6Ly9pbWFnZS54eXpjZG4ubmV0L0ZuRWxOVnBPTG5QT0Q5WklGSl93azkxU1JOWkEuanBn.jpg","details":"熊叔是我们Mixlab的核心创始人之一,他不仅在职业生涯中积累了丰富的经验,更是在和shadow一起创造了爆火的comfyUI 节点 Mix nodes,今天,我们就来深入了解熊叔的职业生涯,以及他所参与开发的MIXLAB NODE产品,探索AI如何改变我们的工作与生活。","posts":"discovery/AI如何改变产品经理的工作"},{"title":"推荐玩腻了A1111的朋友试一下comfyui,速度更快,内存占用更少,工作流方便分享,可以一键封装成应用,还可以把窗口来出来对屏幕上某个区域做实时转译(类似Kirta的功能,需要使用comfyui-mixlab-nodes的工作流)。","posts":"https://m.weibo.cn/status/4991913170309251","image":"images/weibo_simon.png"},{"title":"如果你一直都在纠结怎么写好提示词,那这个工作流你一定要了解一下","posts":"discovery/prompt","image":"images/prompt.png"},{"title":"实时绘画工作流","posts":"https://openart.ai/workflows/mixlab_shadow/now-you-can-enjoy-real-time-drawing/uLOTaEe06dtL0UECkdHz","image":"images/openart.png"},{"title":"comfyui-mixlab-nodes","image":"https://gyazo.com/952b1a7722b91862507df871e2da41aa/max_size/1000","posts":"https://scrapbox.io/work4ai/comfyui-mixlab-nodes"},{"title":"🚀🚗🚚🏃 ComfyUI-Workflow-to-APP @mixlab-nodes","image":"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/8336b034-8dd8-414f-8667-c5afe09ffdb6/width=525/8336b034-8dd8-414f-8667-c5afe09ffdb6.jpeg","posts":"https://civitai.com/articles/3619/comfyui-workflow-to-app-mixlab-nodes"},{"title":"Realtime Sketchup AI Generation using Comfy UI : Ai for Architecture","image":"https://i.ytimg.com/vi/eM-9ySQnFcw/hqdefault.jpg","posts":"https://www.youtube.com/watch?v=eM-9ySQnFcw"}],"footer":"MIT Licensed | Copyright © 2024-present {{$site.title}}","head":[["meta",{"property":"og:url","content":"https://www.mixcomfy.com/awesome-comfyui-workflow/"}],["meta",{"property":"og:site_name","content":"ComfyUI中文爱好者社区"}],["meta",{"property":"og:title","content":"Home"}],["meta",{"property":"og:type","content":"article"}],["meta",{"property":"og:locale","content":"en-US"}],["meta",{"property":"og:updated_time","content":"2024-06-06T08:49:49.693Z"}],["meta",{"property":"article:author","content":"shadow"}],["meta",{"property":"article:modified_time","content":"2024-06-06T08:49:44.000Z"}],["meta",{"property":"og:modified_time","content":"2024-06-06T08:49:49.693Z"}],["meta",{"name":"twitter:title","content":"Home"}],["meta",{"name":"twitter:card","content":"summary_large_image"}],["meta",{"name":"twitter:site","content":"mixlabPro"}],["meta",{"name":"twitter:creator","content":"mixlabPro"}],["meta",{"name":"share_config","content":"buffer,email,facebook,flipboard,hackernews,instapaper,line,linkedin,odnoklassniki,pinterest,pocket,quora,reddit,tumblr,twitter,vk,weibo,wordpress,xing,yammer"}],["script",{"type":"application/ld+json"},"{\\"@context\\":\\"https://schema.org\\",\\"@type\\":\\"Article\\",\\"headline\\":\\"Home\\",\\"image\\":[\\"\\"],\\"dateModified\\":\\"2024-06-06T08:49:44.000Z\\",\\"author\\":[{\\"@type\\":\\"Person\\",\\"name\\":\\"shadow\\"}]}"]]},"headers":[],"git":{"updatedTime":1717663784000,"contributors":[{"name":"shadowcz007","email":"chizhiwei007@163.com","commits":7}]},"filePathRelative":"index.md","excerpt":""}');export{r as comp,c as data}; diff --git a/docs/assets/index.html-BE0QCtrF.js b/docs/assets/index.html-BE0QCtrF.js deleted file mode 100644 index f0ddf2b..0000000 --- a/docs/assets/index.html-BE0QCtrF.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as e,c as n,o,b as t}from"./app-BFngqcKR.js";const i={},a=t("h1",{id:"实验性节点",tabindex:"-1"},[t("a",{class:"header-anchor",href:"#实验性节点"},[t("span",null,"实验性节点")])],-1),r=t("p",null,"Self-Attention Guidance",-1),c=t("p",null,"https://ku-cvlab.github.io/Self-Attention-Guidance/",-1),s=[a,r,c];function p(m,l){return o(),n("div",null,s)}const u=e(i,[["render",p],["__file","index.html.vue"]]),h=JSON.parse('{"path":"/posts/tutorial/for_testing/","title":"实验性节点","lang":"en-US","frontmatter":{"description":"实验性节点 Self-Attention Guidance https://ku-cvlab.github.io/Self-Attention-Guidance/","head":[["meta",{"property":"og:url","content":"https://www.mixcomfy.com/awesome-comfyui-workflow/posts/tutorial/for_testing/"}],["meta",{"property":"og:site_name","content":"ComfyUI中文爱好者社区"}],["meta",{"property":"og:title","content":"实验性节点"}],["meta",{"property":"og:description","content":"实验性节点 Self-Attention Guidance https://ku-cvlab.github.io/Self-Attention-Guidance/"}],["meta",{"property":"og:type","content":"article"}],["meta",{"property":"og:locale","content":"en-US"}],["meta",{"property":"og:updated_time","content":"2024-06-06T08:49:49.696Z"}],["meta",{"property":"article:author","content":"shadow"}],["meta",{"property":"article:modified_time","content":"2024-05-28T09:13:14.000Z"}],["meta",{"property":"og:modified_time","content":"2024-06-06T08:49:49.696Z"}],["meta",{"name":"twitter:title","content":"实验性节点"}],["meta",{"name":"twitter:description","content":"实验性节点 Self-Attention Guidance https://ku-cvlab.github.io/Self-Attention-Guidance/"}],["meta",{"name":"twitter:card","content":"summary_large_image"}],["meta",{"name":"twitter:site","content":"mixlabPro"}],["meta",{"name":"twitter:creator","content":"mixlabPro"}],["meta",{"name":"share_config","content":"buffer,email,facebook,flipboard,hackernews,instapaper,line,linkedin,odnoklassniki,pinterest,pocket,quora,reddit,tumblr,twitter,vk,weibo,wordpress,xing,yammer"}],["script",{"type":"application/ld+json"},"{\\"@context\\":\\"https://schema.org\\",\\"@type\\":\\"Article\\",\\"headline\\":\\"实验性节点\\",\\"image\\":[\\"\\"],\\"dateModified\\":\\"2024-05-28T09:13:14.000Z\\",\\"author\\":[{\\"@type\\":\\"Person\\",\\"name\\":\\"shadow\\"}]}"]]},"headers":[],"git":{"updatedTime":1716887594000,"contributors":[{"name":"shadowcz007","email":"chizhiwei007@163.com","commits":1}]},"filePathRelative":"posts/tutorial/_for_testing/index.md","autoDesc":true,"excerpt":"\\nSelf-Attention Guidance
\\nhttps://ku-cvlab.github.io/Self-Attention-Guidance/
\\n"}');export{u as comp,h as data}; diff --git a/docs/assets/index.html-BEvPFGQD.js b/docs/assets/index.html-BEvPFGQD.js deleted file mode 100644 index 7f181af..0000000 --- a/docs/assets/index.html-BEvPFGQD.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as e,c as t,o as a}from"./app-BFngqcKR.js";const r={};function c(n,o){return a(),t("div")}const s=e(r,[["render",c],["__file","index.html.vue"]]),i=JSON.parse('{"path":"/tag/","title":"Tags","lang":"en-US","frontmatter":{"title":"Tags","sidebar":false,"blog":{"type":"category","key":"tag"},"layout":"Tag"},"headers":[],"git":{},"filePathRelative":null,"excerpt":""}');export{s as comp,i as data}; diff --git a/docs/assets/index.html-BPixZUqn.js b/docs/assets/index.html-BPixZUqn.js deleted file mode 100644 index 9b8c9b3..0000000 --- a/docs/assets/index.html-BPixZUqn.js +++ /dev/null @@ -1,4 +0,0 @@ -import{_ as s,r as l,c as i,b as o,d as e,e as t,w as a,a as n,o as d}from"./app-BFngqcKR.js";const c="/awesome-comfyui-workflow/assets/DiffusersLoader-mzdmk8hT.svg",r="/awesome-comfyui-workflow/assets/LoadCheckpointWithConfig-BN6zB4MN.svg",h="/awesome-comfyui-workflow/assets/ApplyControlNet-T6FeDJLs.svg",m="/awesome-comfyui-workflow/assets/ApplyStyleModel-BjkUEVpq.svg",g="/awesome-comfyui-workflow/assets/CLIPSetLastLayer-B9W3GWtU.svg",u="/awesome-comfyui-workflow/assets/CLIPTextEncodePrompt-hZy3NNU2.svg",f="/awesome-comfyui-workflow/assets/CLIPVisionEncode-CftDdXV-.svg",k="/awesome-comfyui-workflow/assets/ConditioningAverage-Drh7U2UB.svg",L="/awesome-comfyui-workflow/assets/ConditioningCombine-C3NkkjHK.svg",I="/awesome-comfyui-workflow/assets/ConditioningSetArea-dVMUIFKq.svg",b="/awesome-comfyui-workflow/assets/ConditioningSetMask-VXvrA2C9.svg",v="/awesome-comfyui-workflow/assets/GLIGENTextboxApply-D4bHz8Hm.svg",w="/awesome-comfyui-workflow/assets/unCLIPConditioning-DLHXFnff.svg",C="/awesome-comfyui-workflow/assets/LoadLatent-C85_Mtz4.svg",_="/awesome-comfyui-workflow/assets/SaveLatent-DtsgIWDD.svg",x="/awesome-comfyui-workflow/assets/TomePatchModel-BBDtRE1G.svg",T="/awesome-comfyui-workflow/assets/TokenMergingforStableDiffusion-CqqHudlC.jpg",y="/awesome-comfyui-workflow/assets/VAEDecodeTiled-DY9VBdS9.svg",E="/awesome-comfyui-workflow/assets/VAEEncodeTiled-BQJoK_t9.svg",M="/awesome-comfyui-workflow/assets/LoadImage-CIzP9BtT.svg",N="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+PCFET0NUWVBFIHN2ZyBQVUJMSUMgIi0vL1czQy8vRFREIFNWRyAxLjEvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvR3JhcGhpY3MvU1ZHLzEuMS9EVEQvc3ZnMTEuZHRkIj48c3ZnIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIHZpZXdCb3g9IjAgMCAzMDAgMTAyIiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHhtbDpzcGFjZT0icHJlc2VydmUiIHhtbG5zOnNlcmlmPSJodHRwOi8vd3d3LnNlcmlmLmNvbS8iIHN0eWxlPSJmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDtzdHJva2UtbWl0ZXJsaW1pdDoxMDsiPjxnPjx1c2UgeGxpbms6aHJlZj0iI19JbWFnZTEiIHg9IjAiIHk9IjAiIHdpZHRoPSI0MTBweCIgaGVpZ2h0PSIyMjZweCIgdHJhbnNmb3JtPSJtYXRyaXgoMSwwLDAsMSwtNTUsLTQ4KSIvPjxnPjxnPjxyZWN0IHg9IjQ1IiB5PSIyMiIgd2lkdGg9IjIxMSIgaGVpZ2h0PSI1NiIgc3R5bGU9ImZpbGw6IzM1MzUzNTtmaWxsLXJ1bGU6bm9uemVybzsiLz48cmVjdCB4PSI0NSIgeT0iNTEiIHdpZHRoPSIyMTEiIGhlaWdodD0iMiIgc3R5bGU9ImZpbGwtb3BhY2l0eTowLjI7Ii8+PHJlY3QgeD0iNDUiIHk9IjIyIiB3aWR0aD0iMjExIiBoZWlnaHQ9IjMwIiBzdHlsZT0iZmlsbDojMzMzO2ZpbGwtcnVsZTpub256ZXJvOyIvPjxwYXRoIGQ9Ik02NSwzN2MtMCwyLjc0MyAtMi4yNTcsNSAtNSw1Yy0yLjc0MywtMCAtNSwtMi4yNTcgLTUsLTVjMCwtMi43NDMgMi4yNTcsLTUgNSwtNWMyLjc0MSwtMCA0Ljk5NywyLjI1NCA1LDQuOTk1IiBzdHlsZT0iZmlsbDojNjY2O2ZpbGwtcnVsZTpub256ZXJvOyIvPjx0ZXh0IHg9Ijc1cHgiIHk9IjQycHgiIHN0eWxlPSJmb250LWZhbWlseTonQXJpYWxNVCcsICdBcmlhbCcsIHNhbnMtc2VyaWY7Zm9udC1zaXplOjE0cHg7ZmlsbDojOTk5OyI+SW52ZXJ0IEltYWdlPC90ZXh0PjxwYXRoIGQ9Ik01OSw2NmMtMCwyLjE5NCAtMS44MDYsNCAtNCw0Yy0yLjE5NCwtMCAtNCwtMS44MDYgLTQsLTRjMCwtMi4xOTQgMS44MDYsLTQgNCwtNGMyLjE5MywtMCAzLjk5OCwxLjgwMyA0LDMuOTk2IiBzdHlsZT0iZmlsbDojNjRiNWY2O2ZpbGwtcnVsZTpub256ZXJvOyIvPjx0ZXh0IHg9IjY1cHgiIHk9IjcxcHgiIHN0eWxlPSJmb250LWZhbWlseTonQXJpYWxNVCcsICdBcmlhbCcsIHNhbnMtc2VyaWY7Zm9udC1zaXplOjEycHg7ZmlsbDojYWFhOyI+aW1hZ2U8L3RleHQ+PHBhdGggZD0iTTI1MCw2NmMtMCwyLjE5NCAtMS44MDYsNCAtNCw0Yy0yLjE5NCwtMCAtNCwtMS44MDYgLTQsLTRjMCwtMi4xOTQgMS44MDYsLTQgNCwtNGMyLjE5MywtMCAzLjk5OCwxLjgwMyA0LDMuOTk2IiBzdHlsZT0iZmlsbDojNjRiNWY2O2ZpbGwtcnVsZTpub256ZXJvO3N0cm9rZTojMDAwO3N0cm9rZS13aWR0aDoxcHg7Ii8+PHRleHQgeD0iMTk3LjMyOHB4IiB5PSI3MXB4IiBzdHlsZT0iZm9udC1mYW1pbHk6J0FyaWFsTVQnLCAnQXJpYWwnLCBzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxMnB4O2ZpbGw6I2FhYTsiPklNQUdFPC90ZXh0PjwvZz48L2c+PC9nPjxkZWZzPjxpbWFnZSBpZD0iX0ltYWdlMSIgd2lkdGg9IjQxMHB4IiBoZWlnaHQ9IjIyNnB4IiB4bGluazpocmVmPSJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQVpvQUFBRGlDQVlBQUFCM0FBRjdBQUFBQ1hCSVdYTUFBQTdFQUFBT3hBR1ZLdzRiQUFBR0drbEVRVlI0bk8zZFFVb2theENGMGNnMnhVVVVOWEgvR3hUUmZJUEdZWnZDeTV0R1pad3o3VUFzN3VBREcvNWFYbDlmdC9yRysvdDdQVDgvZjNmeXEzZHZiMjlWVmZYeTh0THk5NXQyWjQ5ZWQvYm9kVGQxanorN2x3RHdQd2dOQUZITC9YNy85azluM1gxK2ZsWlYxWjgvbXRtQlBYcXhSeTlUOTFqMy9zNzIyMy9iMi9QMU44OUgveHhYdWJOSHJ6dDc5THFidXNlc3JBSndPcUVCSUVwb0FJZ1NHZ0NpaEFhQUtLRUJJRXBvQUlnU0dnQ2l2QXpBb2V6Uml6MTZtYnFIbHdIYzJlUENkL2JvZFRkMWoxbFpCZUIwUWdOQWxOQUFFQ1UwQUVRSkRRQlJRZ05BbE5BQUVDVTBBRVI1R1lCRDJhTVhlL1F5ZFE4dkE3aXp4NFh2N05IcmJ1b2VzN0lLd09tRUJvQW9vUUVnU21nQWlCSWFBS0tFQm9Bb29RRWdTbWdBaUZwdXQ5dER2d3dBUUcvcjA5UFRQLzl4MjdiYXRxMldaYWxsV1U2N3EvcjdWTU5QN2o0K1BxcXFhdTl6Vk5YdXovcXR6OXY5cnNvZW5lNnE3TkhwcnNvZWUzZnJ1cTdmZnBqZmZycGd6OWR3UC9rY2V6ZUozMi9hblQxNjNkbWoxOTNVUGZ3ZkRRQlJRZ05BbE5BQUVDVTBBRVFKRFFCUlFnTkFsTkFBRUxYYzcvZUhmaGxnNm5kd2QyV1BYdXpSeTlROTFrZi83dXFwMzhIZDljNGV2ZTdzMGV0dTZoNnpzZ3JBNllRR2dDaWhBU0JLYUFDSUVob0Fvb1FHZ0NpaEFTQkthQUNJOGpJQWg3SkhML2JvWmVvZVhnWndaNDhMMzltajE5M1VQV1psRllEVENRMEFVVUlEUUpUUUFCQWxOQUJFQ1EwQVVVSURRSlRRQUJEbFpRQU9aWTllN05ITDFEMjhET0RPSGhlK3MwZXZ1Nmw3ek1vcUFLY1RHZ0NpaEFhQUtLRUJJRXBvQUlnU0dnQ2loQWFBS0tFQklNckxBQnpLSHIzWW81ZXBlM2dad0owOUxueG5qMTUzVS9lWWxWVUFUaWMwQUVRSkRRQlJRZ05BbE5BQUVDVTBBRVFKRFFCUlFnTkFsSmNCT0pROWVyRkhMMVAzOERLQU8zdGMrTTRldmU2bTdqRXJxd0NjVG1nQWlCSWFBS0tFQm9Bb29RRWdTbWdBaUJJYUFLS0VCb0FvTHdOd0tIdjBZbzllcHU3aFpRQjM5cmp3blQxNjNVM2RZMVpXQVRpZDBBQVFKVFFBUkFrTkFGRkNBMENVMEFBUUpUUUFSQWtOQUZGZUJ1QlE5dWpGSHIxTTNjUExBTzdzY2VFN2UvUzZtN3JIckt3Q2NEcWhBU0JLYUFDSUVob0Fvb1FHZ0NpaEFTQkthQUNJRWhvQW9yd013S0hzMFlzOWVwbTZoNWNCM05uanduZjI2SFUzZFk5WldRWGdkRUlEUUpUUUFCQWxOQUJFQ1EwQVVVSURRSlRRQUJBbE5BQkVlUm1BUTltakYzdjBNblVQTHdPNHM4ZUY3K3pSNjI3cUhyT3lDc0RwaEFhQUtLRUJJRXBvQUlnU0dnQ2loQWFBS0tFQklFcG9BSWhhYnJmYlE3OE1BRUJ2NjlQVDB6Ly9jZHUyMnJhdGxtV3BaVmxPdTZ2NisxVERUKzQrUGo2cXFtcnZjMVRWN3MvNnJjL2IvYTdLSHAzdXF1elI2YTdLSG50MzY3cXUzMzZZMzM2NllNL1hjRC81SEhzM2lkOXYycDA5ZXQzWm85ZmQxRDM4SHcwQVVVSURRSlRRQUJBbE5BQkVDUTBBVVVJRFFKVFFBQkMxM08vM2gzNFpZT3AzY0hkbGoxN3MwY3ZVUGRaSC8rN3FxZC9CM2ZYT0hyM3U3TkhyYnVvZXM3SUt3T21FQm9Bb29RRWdTbWdBaUJJYUFLS0VCb0Fvb1FFZ1NtZ0FpUEl5QUlleVJ5LzI2R1hxSGw0R2NHZVBDOS9abzlmZDFEMW1aUldBMHdrTkFGRkNBMENVMEFBUUpUUUFSQWtOQUZGQ0EwQ1UwQUFRNVdVQURtV1BYdXpSeTlROXZBemd6aDRYdnJOSHI3dXBlOHpLS2dDbkV4b0Fvb1FHZ0NpaEFTQkthQUNJRWhvQW9vUUdnQ2loQVNES3l3QWN5aDY5MktPWHFYdDRHY0NkUFM1OFo0OWVkMVAzbUpWVkFFNG5OQUJFQ1EwQVVVSURRSlRRQUJBbE5BQkVDUTBBVVVJRFFKU1hBVGlVUFhxeFJ5OVQ5L0F5Z0R0N1hQak9IcjN1cHU0eEs2c0FuRTVvQUlnU0dnQ2loQWFBS0tFQklFcG9BSWdTR2dDaWhBYUFLQzhEY0NoNzlHS1BYcWJ1NFdVQWQvYTQ4SjA5ZXQxTjNXTldWZ0U0bmRBQUVDVTBBRVFKRFFCUlFnTkFsTkFBRUNVMEFFUUpEUUJSWGdiZ1VQYm94UjY5VE4zRHl3RHU3SEhoTzN2MHVwdTZ4NnlzQW5BNm9RRWdTbWdBaUJJYUFLS0VCb0Fvb1FFZ1NtZ0FpQklhQUtLOERNQ2g3TkdMUFhxWnVvZVhBZHpaNDhKMzl1aDFOM1dQV1ZrRjRIUkNBMENVMEFBUUpUUUFSQWtOQUZGQ0EwQ1UwQUFRSlRRQVJIa1pnRVBab3hkNzlESjFEeThEdUxQSGhlL3MwZXR1Nmg2enNnckE2ZjREczhKS0s4a2oxZmdBQUFBQVNVVk9SSzVDWUlJPSIvPjwvZGVmcz48L3N2Zz4=",V="/awesome-comfyui-workflow/assets/PadImageForOutpainting-Dzr-CDCB.svg",U="/awesome-comfyui-workflow/assets/PreviewImage-Br5eeeHl.svg",A="/awesome-comfyui-workflow/assets/SaveImage-z3yAym7e.svg",S="/awesome-comfyui-workflow/assets/ImageBlend-CAd_GaLc.svg",P="/awesome-comfyui-workflow/assets/ImageBlur-BZL9jSkN.svg",R="/awesome-comfyui-workflow/assets/ImageQuantize-WjbyHjQe.svg",F="/awesome-comfyui-workflow/assets/ImageSharpen-CAocoy-2.svg",Z="/awesome-comfyui-workflow/assets/UpscaleImage-CCa7VY0g.svg",Q="/awesome-comfyui-workflow/assets/UpscaleImageUsingModel-DV-SF4Wg.svg",B="/awesome-comfyui-workflow/assets/EmptyLatentImage-D8EMT608.svg",D="/awesome-comfyui-workflow/assets/LatentComposite-UQ81jvlz.svg",W="/awesome-comfyui-workflow/assets/LatentCompositeMasked-DZJAVyUF.svg",G="/awesome-comfyui-workflow/assets/UpscaleLatent-I-gJiwEn.svg",z="/awesome-comfyui-workflow/assets/VAEDecode-B-picWPt.svg",O="/awesome-comfyui-workflow/assets/VAEEncode-D5EYZEJ2.svg",j="/awesome-comfyui-workflow/assets/LatentFromBatch-YeN1b-Lj.svg",H="/awesome-comfyui-workflow/assets/RebatchLatents-YWT5gNwM.svg",J="/awesome-comfyui-workflow/assets/RepeatLatentBatch-BqPx0NXv.svg",Y="/awesome-comfyui-workflow/assets/SetLatentNoiseMask-MmkLdInd.svg",X="/awesome-comfyui-workflow/assets/VAEEncodeForInpainting-DD-YX7G1.svg",q="/awesome-comfyui-workflow/assets/CropLatent-B_cR3_Xi.svg",K="/awesome-comfyui-workflow/assets/FlipLatent-DBtA-SV6.svg",$="/awesome-comfyui-workflow/assets/RotateLatent-CFLvhpt7.svg",ee="/awesome-comfyui-workflow/assets/GLIGENLoader-D-vTl3Sj.svg",oe="/awesome-comfyui-workflow/assets/HypernetworkLoader-C8B_JGiF.svg",pe="/awesome-comfyui-workflow/assets/LoadCheckpoint-BQouw9PX.svg",te="/awesome-comfyui-workflow/assets/LoadCLIP-C94A2T08.svg",ae="/awesome-comfyui-workflow/assets/LoadCLIPVision-CtFF4wbm.svg",ne="/awesome-comfyui-workflow/assets/LoadControlNet-DHg5P2Us.svg",se="/awesome-comfyui-workflow/assets/LoadLoRA-Bng2EN8f.svg",le="/awesome-comfyui-workflow/assets/LoadStyleModel-cphcEIxJ.svg",ie="/awesome-comfyui-workflow/assets/LoadUpscaleModel-C74PIl6V.svg",de="/awesome-comfyui-workflow/assets/LoadVAE-2X0vkEPY.svg",ce="/awesome-comfyui-workflow/assets/unCLIPCheckpointLoader-ii62sfkE.svg",re="/awesome-comfyui-workflow/assets/ConvertImageToMask-cXPU6ybK.svg",he="/awesome-comfyui-workflow/assets/CropMask-9iFwdALP.svg",me="/awesome-comfyui-workflow/assets/FeatherMask-CFIc33fP.svg",ge="/awesome-comfyui-workflow/assets/InvertMask-CXALs9bU.svg",ue="/awesome-comfyui-workflow/assets/LoadImageAsMask-CvgYUE6N.svg",fe="/awesome-comfyui-workflow/assets/MaskComposite-D-LgFTnL.svg",ke="/awesome-comfyui-workflow/assets/SolidMask-Ch9FCV-j.svg",Le="/awesome-comfyui-workflow/assets/KSampler-LOr6cHLj.svg",Ie="/awesome-comfyui-workflow/assets/KSamplerADV-0c9yINrV.svg",be={},ve=n('Diffusers Loader节点(扩散模型加载器),可用于加载扩散模型。
输入
model_path
:扩散器模型的路径输出
MODEL
:用于去噪潜变量的模型。
CLIP
:用于编码文本提示的CLIP模型。
VAE
:用于将图像编码和解码到潜空间的VAE模型。
Load Checkpoint (With Config) 节点,可用于根据提供的配置文件加载扩散模型。请注意,通常情况下,常规的Checkpoint能够自动检测出适当的配置。
输入
config_name
:配置文件的名称。
ckpt_name
:要加载的模型的名称。
输出
MODEL
:用于去噪潜变量的模型。
CLIP
:用于编码文本提示的CLIP模型。
VAE
:用于将图像编码和解码到潜空间的VAE模型。
在ComfyUI中,条件设定用于指导扩散模型生成特定的输出。所有的条件设定都以由CLIP使用Clip Text Encode节点嵌入的文本提示开始。
这些条件可以通过该部分其他节点的进一步增强或修改。例如,使用Conditioning (Set Area)、Conditioning (Set Mask)或GLIGEN Textbox Apply节点来引导进程朝着特定的构图方向发展。
或者通过Apply Style Model、应用ControlNet或 unCLIP Conditioning 节点来提供额外的视觉提示。相关节点的完整列表可以在侧边栏中找到。
Apply ControlNet节点,可以用于为扩散模型提供进一步的视觉指导。与unCLIP嵌入不同,controlnets 和 T2IAdaptor 适用于任何模型。
通过将多个节点链接在一起,可以使用多个 controlNet 或 T2IAdaptor 来指导扩散模型。例如,可以通过向此节点提供包含边缘检测的图像以及在边缘检测图像上训练的controlNet来提示扩散模型。
输入
conditioning
:一个条件
control_net
: control_net模型
image
:用作扩散模型的视觉指导
输出
CONDITIONING
:一个包含control_net和视觉指导的条件。提示:要使用T2IAdaptor样式模型,请改用Apply Style Model节点。
Apply Style Model节点是一个用于为扩散模型提供视觉指导的节点,特别是针对所生成图像的样式。该节点使用T2IAdaptor 模型和来自 CLIP_vision 模型的嵌入,将扩散模型引导到与 CLIP_vision 嵌入图像的样式相符的方向。
输入
conditioning
:一个条件
style_model
:一个T2I样式适配器
CLIP_vision_output
:包含所需样式的图像,由CLIP视觉模型编码
输出
CONDITIONING
:包含T2I样式适配器和指向所需样式的视觉指导的条件设置CLIP最后一层,CLIP Set Last Layer节点可以用于设置从中获取文本嵌入的CLIP输出层。将文本编码为嵌入是通过将文本通过CLIP模型中的各个层进行转换来实现的。尽管传统上扩散模型是根据CLIP的最后一层的输出进行条件化的,但某些扩散模型是根据较早的层进行条件化的,当使用最后一层的输出时可能效果不佳。
输入
clip
: 用于编码文本的CLIP模型。输出
CLIP
: 设置了新的输出层的CLIP模型。如何理解Clip set last layer的原理?CLIP模型是由OpenAI开发的强大深度学习模型,它结合了视觉和语言理解。它能够以多模态方式理解和生成文本和图像。CLIP由多个层级组成,每个层级比前一个层级更具体。
Clip set last layer 指的是在CLIP模型中在较早的层级停止信息流动,而不是一直到最后一层。通过这样做,您可以控制生成的文本描述的具体程度或准确性。例如,如果您正在寻找一张“牛”的图片,您可能对文本模型能够生成的子类别或具体类型的牛不感兴趣,比如“阿伯丁安格斯公牛”。
使用 Clip set last layer 的好处在于,它允许您根据特定需求定制生成的文本描述的详细程度。根据应用或任务的不同,您可能希望在某个层级停止,以达到所需的准确性或相关性。例如,如果您有一个关于一个年轻人站在田野上的详细提示,使用较低的CLIP skip层级可能会生成诸如“一个站着的人”,“站着的年轻人”或“站在森林中的年轻人”等描述,每个描述都具有不同的特定程度。
值得注意的是,Clip set last layer 在与特定方式结构化的模型(如Booru模型)一起使用时特别有用。这些模型通常具有可以分解为多个子标签的标签,从而可以更精细地控制生成的描述。然而,CLIP skip的效果可能因具体的模型和应用而异,可能需要一些试错才能找到最佳设置。
还值得一提的是,Clip set last layer 仅适用于使用CLIP或基于使用CLIP的模型,如1.x模型及其衍生模型。较新的模型,如2.0模型,使用OpenCLIP而不是CLIP,并且与CLIP的交互方式不同。知识库
输入Prompt(文本提示),CLIP文本编码节点将使用CLIP模型对文本提示进行编码,生成一个嵌入向量,用来指导扩散模型生成特定的图像。
有关ComfyUI中所有与文本提示相关的功能的完整指南,请参阅此页面。
输入
clip
- 用于编码文本的CLIP模型
text
- 要编码的文本。
输出
CONDITIONING
- 包含嵌入文本的条件,用于指导扩散模型。CLIP Vision Encode节点可以使用CLIP视觉模型对图像进行编码,生成可用于指导 unCLIP 扩散模型或作为样式模型输入的嵌入。
输入
clip_vision
: 用于编码图像的CLIP视觉模型
image
: 待编码的图像.
输出
CLIP_VISION_OUTPUT
: 编码后的图像。
条件化平均节点,Conditioning (Average) 节点可以根据在 conditioning_to_strength 中设置的强度因子,在两个文本嵌入之间进行插值。
输入
conditioning_to
: 在 conditioning_to_strength 为1时的文本嵌入的条件化
conditioning_from
: 在 conditioning_to_strength 为0时的文本嵌入的条件化。
conditioning_to_strength
: 混合 conditioning_to 到 conditioning_from 的因子。
输出
CONDITIONING
: 基于 conditioning_to_strength 混合的文本嵌入的新条件化。
条件化(合并),Conditioning (Combine) 节点可用于通过平均扩散模型的预测噪声来合并多个条件化。请注意,这与 Conditioning (Average) 节点不同。在这里,通过不同条件化(即构成条件化的所有部分)的扩散模型输出进行平均处理,而条件化(平均)节点则插值存储在条件化内部的文本嵌入。
!!! 提示 尽管 Conditioning Combine 没有一个因素输入来确定如何插值两个结果噪声预测,但可以使用 Conditioning (Set Area) 节点在组合它们之前对各个条件进行加权。
输入
conditioning_1
: 第一个条件。
conditioning_2
: 第二个条件。
输出
CONDITIONING
: 一个包含两个输入的新条件,稍后由采样器进行平均。
Conditioning (Set Area)节点可以用于将条件限制在图像的特定区域内。与Conditioning (Combine)节点一起使用,可以对最终图像的组合进行更多的控制。
!!! 提示 ComfyUI中坐标系统的原点位于左上角。在混合扩散模型的多个噪声预测之前,强度会被归一化。
输入
conditioning
: 将被限制在区域内的条件
width
: 区域的宽度
height
: 区域的高度
x
: 区域的x坐标
y
: 区域的y坐标
strength
: 当混合多个重叠的条件时使用的区域权重
输出
CONDITIONING
: 一个新的条件,限制在指定的区域内。
条件化(设置遮罩),Conditioning (Set Mask) 节点可用于将条件化限制在指定的遮罩中。与Conditioning (Combine) 节点一起使用,可以更好地控制最终图像的组合。
!!! 提示 强度在从扩散模型中混合多个噪声预测之前进行归一化。
输入
conditioning
: 限制到遮罩的条件化
mask
: 限制条件化的遮罩
strength
: 在混合多个重叠条件化时使用的遮罩区域的权重。
set_cond_area
: 是否对整个区域进行去噪,还是限制在遮罩的边界框内。
输出
CONDITIONING
: 一个新的条件化,限制在指定的遮罩中。
example usage text with workflow image
应用GLIGEN文本框,GLIGEN Textbox Apply节点可用于为扩散模型提供进一步的空间指导,引导其在图像的特定区域生成指定的部分。尽管文本输入可以接受任何文本,但GLIGEN最适合的输入是文本提示中的一部分对象。
!!! 提示 ComfyUI中的坐标系原点位于左上角。
输入
conditioning_to
: 一个条件.
clip
: CLIP模型.
gligen_textbox_model
: GLIGEN模型.
text
: 要与空间信息关联的文本
width
: 区域的宽度
height
: 区域的高度
x
: 区域的x坐标
y
: 区域的y坐标
输出
CONDITIONING
: 包含GLIGEN和空间指导的条件。
example usage text with workflow image
unCLIP条件化,unCLIP Conditioning 节点可以通过由CLIP视觉模型编码的图像为unCLIP模型提供额外的视觉指导。可以链接多个节点以提供多个图像作为指导。
!!! 提示 并非所有扩散模型都与unCLIP条件化兼容。此节点特别需要使用考虑到unCLIP的扩散模型。
输入
conditioning
: 条件化
clip_vision_output
: 由CLIP VISION模型编码的图像
strength
: unCLIP扩散模型应受图像指导的强度
noise_augmentation
: 用于将unCLIP扩散模型引导到原始CLIP视觉嵌入的随机位置,提供与编码图像密切相关的生成图像的额外变化
输出
CONDITIONING
: 包含unCLIP模型的额外视觉指导的条件化
实验性包含实验性节点,可能尚未完全完善。
加载潜在节点:Load Latent节点可用于加载使用保存潜在节点保存的潜在图像。
输入
latent
: 潜在图像的名称
输出
LATENT
: 加载的潜在图像
保存潜变量节点:Save Latent节点可以用于保存潜变量以备将来使用。这些潜变量可以使用Load Latent节点再次加载。
输入
samples
: 要保存的潜变量
filename_prefix
: 文件名的前缀
输出
此节点没有输出
Tome Patch Model节点可以用于对扩散模型应用Tome优化。Tome(TOken MErging)试图找到一种合并提示令牌的方法,以使对最终图像的影响最小化。生成时间更快,所需的VRAM减少,但可能会降低质量。可以通过比率设置来控制此权衡,较高的值会导致合并更多的令牌。
输入
model
: 要应用Tome优化的扩散模型
ratio
: 确定何时合并令牌的阈值
输出
MODEL
: 经Tome优化的扩散模型
VAE解码(平铺),VAE Decode (Tiled) 节点可以使用提供的VAE将潜在空间图像解码回像素空间图像。该节点以平铺方式解码潜在图像,使其能够解码比常规VAE解码节点更大的潜在图像。
!!! 提示 当因为VRAM不足而导致常规VAE解码节点失败时,comfy将自动使用平铺实现进行重试。
输入
samples
: 要解码的潜在图像
vae
: 用于解码潜在图像的VAE
输出
IMAGE
: 解码后的图像。
VAE编码(平铺),VAE Encode (Tiled) 节点可用于使用提供的VAE将像素空间图像编码为潜在空间图像。此节点使用图块对图像进行编码,使其能够编码比常规VAE编码节点更大的图像。
!!! 提示 当常规VAE编码节点由于VRAM不足而失败时,Comfy会自动使用平铺实现进行重试。
输入
pixels
: 像素要编码的像素空间图像
vae
: 用于编码像素图像的VAE
输出
LATENT
: 编码的潜在图像。
ComfyUI提供了多种节点来操作像素图像。这些节点可以用于加载图像以进行图像转换工作流,保存结果,或者用于对图像进行高分辨率处理。
加载图像,Load Image节点可用于加载图像。可以通过启动文件对话框或将图像拖放到节点上来上传图像。一旦图像上传完成,就可以在节点内部选择它们。
!!! 提示 默认情况下,图像将上传到ComfyUI的输入文件夹中。
输入
image
: 图像要使用的名称。
输出
IMAGE
: 像素图像。
MASK
: 图像的Alpha通道。
为了执行图像到图像的生成,您必须使用加载图像节点加载图像。在下面的示例中,使用加载图像节点加载了一张图像,然后使用 VAE encode 节点将其编码为潜在空间,从而使我们能够执行图像到图像的任务。
(TODO: provide different example using mask)
反转图像节点,Invert Image 节点可以用于反转图像的颜色。
输入
image
: 要反转的像素图像
输出
IMAGE
: 反转后的像素图像
Outpainting节点的Pad Image用于给图像添加填充,以进行outpainting。然后,可以通过VAE Encode for Inpainting将此图像输入到inpaint diffusion模型中。
输入
image
: 要进行填充的图像。
left
: 要在图像左侧填充的量。
top
: 要在图像上方填充的量。
right
: 要在图像右侧填充的量。
bottom
: 要在图像下方填充的量。
feathering
: 原始图像边界的羽化程度。
输出
IMAGE
: 填充后的像素图像。
MASK
: 指示采样器在哪里进行outpainting的掩码。
预览图像节点可用于在节点图中预览图像。
输入
image
: 图像像素数据
输出
该节点没有输出参数
{ align=right width=450 }
保存图像:Save Image节点可用于保存图像。要在节点图中简单预览图,请使用Preview Image节点。要更好地组织生成的所有图像,可以将特殊格式的字符串传递给带有file_prefix小部件的输出节点。有关如何格式化字符串的更多信息,请参阅此页面
输入
image
: 要预览的像素图像
filename_prefix
: 要放入文件名中的前缀
输出
此节点没有输出。
The Image Blend node can be used to blend two images together.
!!! info If the dimensions of the second image do not match those of the first it is rescaled and center-cropped to maintain its aspect ratio
输入
image1
: A pixel image.
image2
: A second pixel image.
blend_factor
: The opacity of the second image.
blend_mode
: How to blend the images.
输出
IMAGE
: The blended pixel image.
The Image Blend node can be used to apply a gaussian blur to an image.
输入
image
: The pixel image to be blurred.
blur_radius
: The radius of the gaussian.
sigma
: The sigma of the gaussian, the smaller sigma is the more the kernel in concentrated on the center pixel.
输出
IMAGE
: The blurred pixel image.
The Image Quantize node can be used to quantize an image, reducing the number of colors in the image.
输入
image
: The pixel image to be quantized.
colors
: The number of colors in the quantized image.
dither
: Wether to use dithering to make the quantized image look more smooth, or not.
输出
IMAGE
: The quantized pixel image.
The Image Sharpen node can be used to apply a Laplacian sharpening filter to an image.
输入
image
: The pixel image to be sharpened.
sharpen_radius
: The radius of the sharpening kernel.
sigma
: The sigma of the gaussian, the smaller sigma is the more the kernel in concentrated on the center pixel.
alpha
: The strength of the sharpening kernel.
输出
IMAGE
: The sharpened pixel image.
输入
image
: The pixel images to be upscaled.
upscale_method
: The method used for resizing.
Width
: The target width in pixels.
height
: The target height in pixels.
crop
: Wether or not to center-crop the image to maintain the aspect ratio of the original latent images.
输出
IMAGE
: The resized images.
The Upscale Image (using Model) node can be used to upscale pixel images using a model loaded with the [Load Upscale Model]
输入
upscale_model
: The model used for upscaling.
image
: The pixel images to be upscaled.
输出
IMAGE
: The upscaled images.
潜在扩散模型(如稳定扩散)不在像素空间中运作,而是在潜空间中进行去噪。这些节点提供了使用编码器和解码器在像素空间和潜在空间之间切换的方法,并提供了多种操纵潜在图像的方式。
空潜像图节点,Empty Latent Image节点可用于创建一组新的空潜像图。这些潜像图可以在文本转图像工作流中使用,通过采样器节点对其进行添加噪声和去噪处理。
输入
width
: 宽度(像素)
height
: 高度(像素);
batch_size
: 批次大小(潜在图像数量)。
输出
LATENT
: 空潜在图像
潜在图像合成 Latent Composite节点可用于将一个潜在图像合成到另一个潜在图像中。
!!! 提示 ComfyUI中的坐标系统原点位于左上角。
输入
samples_to
: 要复合的潜在图像。
samples_from
: 要粘贴的潜在图像。
x
: 粘贴潜在图像的x坐标(以像素为单位)。
y
: 粘贴潜在图像的y坐标(以像素为单位)。
feather
: 要粘贴的潜在图像的羽化效果。
输出
LATENT
: 包含将 samples_from 粘贴到 samples_to 中的新潜在图像组合。
潜在图像合成遮罩,Latent Composite Masked节点可用于将一个潜在图像遮罩复合体粘贴到另一个潜在图像。
输入
destination
: 目的地:要粘贴的潜在图像。
source
: 源:要粘贴的潜在图像。
mask
: 遮罩:要粘贴的源潜在图像的遮罩。
x
: 粘贴潜在图像的x坐标(以像素为单位)
y
: 粘贴潜在图像的y坐标(以像素为单位)
输出
LATENT
: 将源潜在图像粘贴到目标潜像的组合而成的新潜在图像。
放大潜在图像,Upscale Latent 节点可用于调整潜在图像的大小。
!!! 提示: 调整潜像图的大小与调整像素图像的大小不同。简单地调整潜像图而不是像素会导致更多的伪影。
输入
samples
: 要调整大小的潜像图
upscale_method
: 用于调整大小的方法。
Width
: 目标宽度(以像素为单位)。
height
: 目标高度(以像素为单位)。
crop
: 是否居中裁剪图像以保持原始潜像图的纵横比。
输出
LATENT
: 调整大小后的潜像图。
VAE解码,VAE Decode节点可用于使用提供的VAE将潜像图解码为像素图像。
输入
samples
: 要解码的潜像图。
vae
: 用于解码潜像图的VAE。
输出
IMAGE
: 解码后的像素图像。
TODO: SD 1.5 to XL example
VAE编码,VAE Encode 节点可以使用提供的VAE将像素空间图像编码为潜像图。
输入
pixels
: 像素:要编码的像素空间图像。
vae
: 用于编码像素图像的VAE。
输出
LATENT
: 编码的潜像图。
为了在图像到图像的任务中使用图像,首先需要将其编码为潜像图。在下面的示例中,使用VAE编码节点将像素图像转换为潜像图,以便我们可以将其重新噪声化和去噪,得到全新的图像。
从批次中提取潜像图,Latent From Batch 节点可以用于从批次中选择一个潜像图或图像片段。这在工作流中需要隔离特定的潜像图或图像时非常有用。
输入
samples
: 要选择一个片段的批次潜像图。
batch_index
: 要选择的第一个潜像图的索引。
length
: 要获取的潜像图数量。
输出
LATENT
: 只包含所选择片段的新批次潜像图
重新分批潜像图,Rebatch Latents节点可以用于拆分或合并批量的潜在空间图像。当这导致多个批次时,该节点将输出一个批次列表,而不是单个批次。这在批量大小过大无法全部适应VRAM内时非常有用,因为ComfyUI将对列表中的每个批次执行节点,而不是一次执行全部。它还可以将批次列表合并回一个单独的批次中。
输入
samples
: 待重新分批的潜图。
batch_size
: 新的批次大小。
输出
LATENT
: 一个潜图列表,其中每个批次的大小不超过batch_size。
重复潜在批处理,Repeat Latent Batch节点可用于重复一批潜像图。这可以用于在图像到图像工作流中创建多个图像变体。
输入
samples
: 要重复的潜像图批处理。
amount
: 重复的次数。
输出
LATENT
: 重复了指定次数的新的潜像图批处理。
设置潜在噪声掩码,Set Latent Noise Mask节点可用于为修复图像的潜像图添加掩码。当设置了噪声掩码时,采样节点将仅在掩码区域上操作。如果提供了单个掩码,批处理中的所有潜像图都将使用该掩码。
输入
samples
: 样本:要修复的潜像图。
mask
: 掩码:指示修复位置的掩码。
输出
LATENT
: 潜在:经过掩码处理的潜像图。
VAE编码(用于修复图像),VAE Encode (for Inpainting) 将像素空间图像编码为潜在空间图像,使用提供的VAE(变分自编码器)。它还接受修复图像的掩码,指示采样节点应该对图像的哪些部分去噪。可以使用grow_mask_by来增加掩码区域的大小,为修复过程提供一些额外的填充区域。
!!! 提示 该节点专门用于用于修复训练的扩散模型,并确保在编码之前,掩码下方的像素被设置为灰色(0.5,0.5,0.5)。
输入
pixels
: 像素:要编码的像素空间图像。
vae
: 用于编码像素图像的VAE。
mask
: 掩码:指示要修复的位置的掩码。
grow_mask_by
: 增加给定掩码区域的大小。
输出
LATENT
: 掩码和编码的潜像图。
裁剪潜像,Crop latent 节点可用于将潜像裁剪到新的形状。
输入
samples
: 样本要裁剪的潜像。
width
: 宽度以像素为单位的区域宽度。
height
: 高度以像素为单位的区域高度。
x
: 以像素为单位的区域x坐标。
y
: 以像素为单位的区域y坐标。
输出
LATENT
: 裁剪后的潜像图。
翻转潜像,Flip Latent 节点可用于水平或垂直翻转潜像。
输入
samples
: 要翻转的潜像。
flip_method
: 选择水平翻转或垂直翻转
输出
LATENT
: 翻转后的潜像图。
The Rotate Latent node can be used to rotate latent images clockwise in increments of 90 degrees.
输入
samples
: The latent images to be rotated.
rotation
: Clockwise rotation.
输出
LATENT
: The rotated latents.
The loaders in this segment can be used to load a variety of models used in various workflows. A full list of all of the loaders can be found in the sidebar.
The GLIGEN Loader node can be used to load a specific GLIGEN model. GLIGEN models are used to associate spatial information to parts of a text prompt, guiding the diffusion model to generate images adhering to compositions specified by GLIGEN.
输入
gligen_name
: The name of the GLIGEN model.
输出
GLIGEN
: The GLIGEN model used to encode spatial information to parts of the text prompt.
The Hypernetwork Loader node can be used to load a hypernetwork. similar to LoRAs, they are used to modify the diffusion model, to alter the way in which latents are denoised. Typical use-cases include adding to the model the ability to generate in certain styles, or better generate certain subjects or actions. One can even chain multiple hypernetworks together to further modify the model.
!!! tip
Hypernetwork strength values can be set to negative values. At times this can result in interesting effects.
-
model
: A diffusion model.
hypernetwork_name
: The name of the hypernetwork.
strength
: How strongly to modify the diffusion model. This value can be negative.
MODEL
: The modified diffusion model.
The Load Checkpoint node can be used to load a diffusion model, diffusion models are used to denoise latents. This node will also provide the appropriate VAE and CLIP model.
ckpt_name
: The name of the model.
MODEL
: The model used for denoising latents.
CLIP
: The CLIP model used for encoding text prompts.
VAE
: The VAE model used for encoding and decoding images to and from latent space.
The Load CLIP node can be used to load a specific CLIP model, CLIP models are used to encode text prompts that guide the diffusion process.
!!! warning
Conditional diffusion models are trained using a specific CLIP model, using a different model than the one which it was trained with is unlikely to result in good images. The [Load Checkpoint](LoadCheckpoint.md) node automatically loads the correct CLIP model.
-
clip_name
: The name of the CLIP model.
CLIP
: The CLIP model used for encoding text prompts.
The Load CLIP Vision node can be used to load a specific CLIP vision model, similar to how CLIP models are used to encode text prompts, CLIP vision models are used to encode images.
clip_name
: The name of the CLIP vision model.
CLIP_VISION
: The CLIP vision model used for encoding image prompts.
The Load ControlNet Model node can be used to load a ControlNet model. Similar to how the CLIP model provides a way to give textual hints to guide a diffusion model, ControlNet models are used to give visual hints to a diffusion model. This process is different from e.g. giving a diffusion model a partially noised up image to modify. Instead ControlNet models can be used to tell the diffusion model e.g. where edges in the final image should be, or how subjects should be posed. This node can also be used to load T2IAdaptors.
control_net_name
: The name of the ControlNet model.
CONTROL_NET
: The ControlNet or T2IAdaptor model used for providing visual hints to a diffusion model.
The Load LoRA node can be used to load a LoRA. LoRAs are used to modify the diffusion and CLIP models, to alter the way in which latents are denoised. Typical use-cases include adding to the model the ability to generate in certain styles, or better generate certain subjects or actions. One can even chain multiple LoRAs together to further modify the model.
!!! tip
LoRA strength values can be set to negative values. At times this can result in interesting effects.
-
model
: A diffusion model.
clip
: A CLIP model.
lora_name
: The name of the LoRA.
strength_model
: How strongly to modify the diffusion model. This value can be negative.
strength_clip
: How strongly to modify the CLIP model. This value can be negative.
MODEL
: The modified diffusion model.
CLIP
: The modified CLIP model.
The Load Style Model node can be used to load a Style model. Style models can be used to provide a diffusion model a visual hint as to what kind of style the denoised latent should be in.
!!! info Only T2IAdaptor style models are currently supported
style_model_name
: The name of the style model.
STYLE_MODEL
: The style model used for providing visual hints about the desired style to a diffusion model.
The Load Upscale Model node can be used to load a specific upscale model, upscale models are used to upscale images.
model_name
: The name of the upscale model.
UPSCALE_MODEL
: The upscale model used for upscaling images.
vae_name
: The name of the VAE.
VAE
: The VAE model used for encoding and decoding images to and from latent space.
The unCLIP Checkpoint Loader node can be used to load a diffusion model specifically made to work with unCLIP. unCLIP Diffusion models are used to denoise latents conditioned not only on the provided text prompt, but also on provided images. This node will also provide the appropriate VAE and CLIP amd CLIP vision models.
!!! warning even though this node can be used to load all diffusion models, not all diffusion models are compatible with unCLIP.
ckpt_name
: The name of the model.
MODEL
: The model used for denoising latents.
CLIP
: The CLIP model used for encoding text prompts.
VAE
: The VAE model used for encoding and decoding images to and from latent space.
CLIP_VISION
: The CLIP Vision model used for encoding image prompts.
Masks provide a way to tell the sampler what to denoise and what to leave alone. These nodes provide a variety of ways create or load masks and manipulate them.
将图像转换为遮罩节点允许用户从图像的特定通道创建遮罩。这对于想要控制图像特定区域的编辑或处理特别有用,例如只对图像的某一部分应用效果或调整。
输入
image
: 要转换为遮罩的像素图像。
channel
: 要用作遮罩的通道。
输出
MASK
: 由图像通道创建的遮罩。
将图像转换为遮罩的操作非常直接。首先,你需要准备一个图像,并确定你想要用作遮罩的特定通道。以下是一个简单的工作流程示例:
image
输入。MASK
输出中提供相应通道的遮罩。这在许多图像处理任务中都非常有用,特别是在需要精确控制应用于图像哪个部分的效果时。
这样,你就可以利用图像的不同通道来创建精确的遮罩,进一步提高你的图像编辑能力和精度。
裁剪遮罩节点用于将遮罩裁剪为新的形状。通过定义裁剪区域的尺寸和坐标,你可以精确控制保留遮罩的哪一部分。
!!! info 在ComfyUI中,坐标系的原点位于左上角。
mask
: 要裁剪的遮罩。
width
: 裁剪区域的宽度,以像素为单位。
height
: 裁剪区域的高度,以像素为单位。
x
: 裁剪区域的x坐标,以像素为单位。
y
: 裁剪区域的y坐标,以像素为单位。
MASK
: 被裁剪后的遮罩。
裁剪遮罩是图像编辑中常用的一项功能,它可以帮助你从一个大的遮罩中精确地选出你需要的部分。以下是如何使用裁剪遮罩节点的一个简单示例:
mask
输入。width
和height
来确定裁剪区域的尺寸。x
和y
输入来定位裁剪区域的左上角起始点。此裁剪遮罩可用于去除不需要的部分,或者将焦点集中在遮罩的特定区域。
羽化遮罩节点用于对遮罩进行羽化处理,使遮罩边缘更加柔和,以实现更自然的过渡。
mask
: 需要进行羽化处理的遮罩。
left
: 左侧边缘的羽化量。
top
: 顶部边缘的羽化量。
right
: 右侧边缘的羽化量。
bottom
: 底部边缘的羽化量。
MASK
: 经过羽化处理的遮罩。
羽化遮罩是在图像处理和合成中实现柔和边缘效果的重要工具,特别是当将两个图像层叠加或融合时,羽化可以使边缘之间的过渡更加自然。以下是一个简单的使用案例:
mask
输入。left
、top
、right
和bottom
,这些值确定了各个方向上羽化效果的强度。此羽化遮罩可用于平滑遮罩的硬边缘,避免图像合成时出现不自然的硬线条或过渡。
反转遮罩节点用于反转一个遮罩,将原本的掩盖区域转换为非掩盖区域,反之亦然。这在您希望改变遮罩影响区域时非常有用。
mask
: 需要被反转的遮罩。
MASK
: 被反转后的遮罩。
反转遮罩节点在各种情境下都非常有用,尤其是当您希望对图像的不同部分应用不同的效果或处理时。以下是一个简单的使用案例:
在这个工作流中,我们首先加载一个遮罩,该遮罩原本是为了保护图像的一个区域而创建的。但在某一步骤,我们决定想对原本被保护的区域应用某种效果(比如去噪或滤镜),同时保持原本未被保护的区域不变。这时,我们就可以使用反转遮罩节点。
现在,原本被保护的区域将接受处理,而其他区域则保持不变。
通过使用反转遮罩节点,您能轻松地在不同的图像编辑阶段切换受影响的区域,无需创建和加载多个遮罩文件。
加载图片(作为遮罩)节点可以用来加载图片的某个通道并将其作为遮罩使用。图片可以通过启动文件对话框上传,或者直接拖拽到节点上。一旦图片上传,就可以在节点内部选择使用。
!!! info 默认情况下,图片会被上传到ComfyUI的输入文件夹
image
: 要转换为遮罩的图片的名称。
channel
: 要用作遮罩的图片的通道。
MASK
: 从图片通道创建的遮罩。
加载图片作为遮罩的节点在您需要基于现有图像创建遮罩时非常有用,尤其是当图像的某个区域有独特的颜色或亮度时,可以通过该颜色或亮度区分进行遮罩。以下是一个简单的使用案例:
在此工作流中,我们有一个图像,其中某个区域我们想要进行特殊处理(例如应用特效、调整或变换),而不影响图像的其他部分。
现在,您的特效或处理将只应用于基于所选图片通道生成的遮罩的区域。
这种方法提供了一种简便的方式,通过现有图片快速创建遮罩,无需手动绘制复杂的遮罩形状。
遮罩合成节点可以用来将一个遮罩粘贴到另一个遮罩中。
!!! info 在ComfyUI中,坐标系统的原点位于左上角。
destination
: 将要被粘贴的遮罩。
source
: 要粘贴的遮罩。
x
: 粘贴遮罩的x坐标,单位为像素。
y
: 粘贴遮罩的y坐标,单位为像素。
operation
: 粘贴遮罩的方式。
MASK
: 包含粘贴到destination
中的source
的新遮罩合成。
遮罩合成节点非常适用于需要将一个遮罩层叠到另一个上的场景,尤其是当您想要在图像的特定部分应用不同的效果或调整时。以下是一个简单的使用案例:
在此工作流中,我们有两个遮罩 - 一个是主遮罩(destination),另一个我们希望粘贴到主遮罩上的次遮罩(source)。
destination
输入。source
输入。x
和y
输入中设置坐标,确定次遮罩在主遮罩上的位置。operation
以确定粘贴时如何合并遮罩。例如,“正常”会简单地将次遮罩放在主遮罩上,“相加”会合并遮罩的亮度值等。输出的遮罩将是次遮罩粘贴到主遮罩上的结果,根据所选择的操作方式,可能会有不同的视觉效果。
此节点非常适用于复杂的图像处理任务,其中需要精确控制应用于图像不同部分的效果。
这种方法提供了一种高度可定制的方式来合并遮罩,为图像编辑提供更多的灵活性和控制。
纯色遮罩节点可以用来创建一个填充了单一值的纯色遮罩。
value
: 填充遮罩的值。
width
: 遮罩的宽度。
height
: 遮罩的高度。
MASK
: 填充了单一值的遮罩。
纯色遮罩节点在您需要为整个图像或特定区域创建统一遮罩时非常有用,尤其是在需要遮蔽背景或仅对图像的特定部分应用效果时。以下是一个简单的使用案例:
value
中,该值范围从0(完全透明)到1(完全不透明)。width
和height
,通常这会与您工作的图像尺寸相匹配。这个纯色遮罩可以用作其他遮罩操作的基础,或者直接用来控制图像的哪些部分应该被采样器处理或保留。
采样节点提供了一种使用扩散模型对潜在图像进行去噪的方法。
KSampler 使用提供的模型以及正向和负向条件来生成给定潜像的新版本。首先,根据给定的 seed
和 denoise
强度对潜像进行加噪,部分擦除潜像。然后使用给定的 Model
以及 positive
和 negative
条件作为指导,去除这些噪声,在噪声擦除图像的地方“构想”新的细节。
Model
: 用于去噪的模型
Positive
: 正面调节。
Negative
: 负面调节。
latent_image
: 将被去噪的潜像。
seed
: 用于创建噪声的随机种子。
control_after_generate
: 提供在每个提示后更改上述种子号的能力。节点可以randomize
、increment
、decrement
或保持种子号fixed
。
steps
denoise
: 应该有多少潜像信息被噪声擦除。
LATENT
: 去噪后的潜像。
KSampler 是任何工作流的核心,可用于执行文本到图像和图像到图像的生成任务。下面的示例展示了如何在图像到图像任务中使用 KSampler,通过连接一个模型、一个正面和负面嵌入以及一个潜像。注意,我们使用的去噪值小于1.0。这样,在对原始图像进行加噪时,原始图像的部分内容得以保留,指导去噪过程生成相似的图像。
!!! 提示
假设`end_at_step >= steps`,KSampler Advanced节点将以与KSampler节点具有以下`denoise`设置的完全相同的方式去噪潜像:\n\n`denoise = (steps - start_at_step) / steps`\n
Model
: 用于去噪的模型
Positive
: 正面调节。
Negative
: 负面调节。
latent_image
: 将被去噪的潜像。
add_noise
: 是否在去噪前向潜像中添加噪声。启用时,节点将为给定的起始步骤注入适当的噪声。
seed
: 用于创建噪声的随机种子。
control_after_generate
: 提供在每个提示后更改上述种子号的能力。节点可以randomize
、increment
、decrement
或保持种子号fixed
。
steps
start_at_step
: 确定在计划的哪一步开始去噪过程。
end_at_step
: 确定在哪一步结束去噪。当此设置超过steps
时,计划将在steps
处结束
return_with_leftover_noise
: 禁用时,KSampler Advanced将尝试在最后一步完全去除潜像中的噪声。根据此操作跳过计划中的多少步骤,输出可能不准确且质量较低。
LATENT
: 去噪后的潜像。
',9);function De(We,Ge){const p=l("RouteLink");return d(),i("div",null,[ve,o("p",null,[e("The Upscale Image node can be used to resize pixel images. To upscale images using AI see the "),t(p,{to:"/posts/tutorial/core_nodes/UpscaleImageUsingModel.html"},{default:a(()=>[e("Upscale Image Using Model")]),_:1}),e(" node.")]),we,o("p",null,[e("The Load VAE node can be used to load a specific VAE model, VAE models are used to encoding and decoding images to and from latent space. Although the "),t(p,{to:"/posts/tutorial/core_nodes/LoadCheckpoint.html"},{default:a(()=>[e("Load Checkpoint")]),_:1}),e(" node provides a VAE model alongside the diffusion model, sometimes it can be useful to use a specific VAE model.")]),Ce,o("p",null,[e("At times you might wish to use a different VAE than the one that came loaded with the "),t(p,{to:"/posts/tutorial/core_nodes/LoadCheckpoint.html"},{default:a(()=>[e("Load Checkpoint")]),_:1}),e(" node. In the example below we use a different VAE to encode an image to latent space, and decode the result of the Ksampler.")]),_e,o("p",null,[e(": 去噪期间使用的步骤数。允许采样器进行的步骤越多,结果就越准确。有关如何选择适当步骤数的好的指导方针,请参见"),t(p,{to:"/posts/tutorial/core_nodes/samplers.html"},{default:a(()=>[e("samplers")]),_:1}),e("页面。")]),xe,Te,ye,o("p",null,[e(": 要使用的采样器,有关可用采样器的更多详细信息,请参见"),t(p,{to:"/posts/tutorial/core_nodes/samplers.html"},{default:a(()=>[e("samplers")]),_:1}),e("页面。")]),Ee,o("p",null,[e(": 要使用的计划类型,有关可用计划的更多详细信息,请参见"),t(p,{to:"/posts/tutorial/core_nodes/samplers.html"},{default:a(()=>[e("samplers")]),_:1}),e("页面。")]),Me,o("p",null,[e("KSampler Advanced节点是"),t(p,{to:"/posts/tutorial/core_nodes/KSampler.html"},{default:a(()=>[e("KSampler")]),_:1}),e("节点的更高级版本。尽管KSampler节点总是向潜像中添加噪声,然后完全去除加噪后的潜像,但KSampler Advanced节点提供了额外的设置来控制这种行为。可以通过"),Ne,e("设置告诉KSampler Advanced节点不向潜像中添加噪声。它还可以通过"),Ve,e("设置返回部分去噪后的图像。与KSampler节点不同,此节点没有"),Ue,e("设置,但这个过程是由"),Ae,e("和"),Se,e("设置控制的。这使得例如将部分去噪的潜在图像交给另一个KSampler Advanced节点来完成过程成为可能。")]),Pe,o("p",null,[e(": 计划中的步骤数。允许采样器进行的步骤越多,结果就越准确。有关如何选择适当步骤数的好的指导方针,请参见"),t(p,{to:"/posts/tutorial/core_nodes/samplers.html"},{default:a(()=>[e("samplers")]),_:1}),e("页面。")]),Re,Fe,Ze,o("p",null,[e(": 要使用的采样器,有关可用采样器的更多详细信息,请参见"),t(p,{to:"/posts/tutorial/core_nodes/samplers.html"},{default:a(()=>[e("samplers")]),_:1}),e("页面。")]),Qe,o("p",null,[e(": 要使用的计划类型,有关可用计划的更多详细信息,请参见"),t(p,{to:"/posts/tutorial/core_nodes/samplers.html"},{default:a(()=>[e("samplers")]),_:1}),e("页面。")]),Be])}const Oe=s(be,[["render",De],["__file","index.html.vue"]]),je=JSON.parse('{"path":"/posts/tutorial/core_nodes/","title":"核心节点","lang":"en-US","frontmatter":{"description":"核心节点 扩散模型加载器 Diffusers Loader节点(扩散模型加载器),可用于加载扩散模型。 图片 输入 model_path:扩散器模型的路径 输出 MODEL:用于去噪潜变量的模型。 CLIP:用于编码文本提示的CLIP模型。 VAE:用于将图像编码和解码到潜空间的VAE模型。 加载检查点节点 Load Checkpoint (With ...","head":[["meta",{"property":"og:url","content":"https://www.mixcomfy.com/awesome-comfyui-workflow/posts/tutorial/core_nodes/"}],["meta",{"property":"og:site_name","content":"ComfyUI中文爱好者社区"}],["meta",{"property":"og:title","content":"核心节点"}],["meta",{"property":"og:description","content":"核心节点 扩散模型加载器 Diffusers Loader节点(扩散模型加载器),可用于加载扩散模型。 图片 输入 model_path:扩散器模型的路径 输出 MODEL:用于去噪潜变量的模型。 CLIP:用于编码文本提示的CLIP模型。 VAE:用于将图像编码和解码到潜空间的VAE模型。 加载检查点节点 Load Checkpoint (With ..."}],["meta",{"property":"og:type","content":"article"}],["meta",{"property":"og:locale","content":"en-US"}],["meta",{"property":"og:updated_time","content":"2024-06-06T08:49:49.695Z"}],["meta",{"property":"article:author","content":"shadow"}],["meta",{"property":"article:modified_time","content":"2024-04-20T12:53:10.000Z"}],["meta",{"property":"og:modified_time","content":"2024-06-06T08:49:49.695Z"}],["meta",{"name":"twitter:title","content":"核心节点"}],["meta",{"name":"twitter:description","content":"核心节点 扩散模型加载器 Diffusers Loader节点(扩散模型加载器),可用于加载扩散模型。 图片 输入 model_path:扩散器模型的路径 输出 MODEL:用于去噪潜变量的模型。 CLIP:用于编码文本提示的CLIP模型。 VAE:用于将图像编码和解码到潜空间的VAE模型。 加载检查点节点 Load Checkpoint (With ..."}],["meta",{"name":"twitter:card","content":"summary_large_image"}],["meta",{"name":"twitter:site","content":"mixlabPro"}],["meta",{"name":"twitter:creator","content":"mixlabPro"}],["meta",{"name":"share_config","content":"buffer,email,facebook,flipboard,hackernews,instapaper,line,linkedin,odnoklassniki,pinterest,pocket,quora,reddit,tumblr,twitter,vk,weibo,wordpress,xing,yammer"}],["script",{"type":"application/ld+json"},"{\\"@context\\":\\"https://schema.org\\",\\"@type\\":\\"Article\\",\\"headline\\":\\"核心节点\\",\\"image\\":[\\"\\"],\\"dateModified\\":\\"2024-04-20T12:53:10.000Z\\",\\"author\\":[{\\"@type\\":\\"Person\\",\\"name\\":\\"shadow\\"}]}"]]},"headers":[{"level":2,"title":"扩散模型加载器","slug":"扩散模型加载器","link":"#扩散模型加载器","children":[]},{"level":2,"title":"加载检查点节点","slug":"加载检查点节点","link":"#加载检查点节点","children":[]},{"level":2,"title":"条件设定","slug":"条件设定","link":"#条件设定","children":[]},{"level":2,"title":"应用ControlNet模型 Apply ControlNet","slug":"应用controlnet模型-apply-controlnet","link":"#应用controlnet模型-apply-controlnet","children":[]},{"level":2,"title":"应用风格模型","slug":"应用风格模型","link":"#应用风格模型","children":[]},{"level":2,"title":"设置CLIP最后一层","slug":"设置clip最后一层","link":"#设置clip最后一层","children":[]},{"level":2,"title":"文本提示","slug":"文本提示","link":"#文本提示","children":[]},{"level":2,"title":"视觉编码","slug":"视觉编码","link":"#视觉编码","children":[]},{"level":2,"title":"平均条件化","slug":"平均条件化","link":"#平均条件化","children":[]},{"level":2,"title":"Conditioning (Combine)","slug":"conditioning-combine","link":"#conditioning-combine","children":[]},{"level":2,"title":"Conditioning (Set Area)","slug":"conditioning-set-area","link":"#conditioning-set-area","children":[{"level":3,"title":"Conditioning (Set Mask)","slug":"conditioning-set-mask","link":"#conditioning-set-mask","children":[]}]},{"level":2,"title":"example","slug":"example","link":"#example","children":[{"level":3,"title":"GLIGEN Textbox Apply","slug":"gligen-textbox-apply","link":"#gligen-textbox-apply","children":[]}]},{"level":2,"title":"example","slug":"example-1","link":"#example-1","children":[]},{"level":2,"title":"实验性 Experimental","slug":"实验性-experimental","link":"#实验性-experimental","children":[{"level":3,"title":"Load Latent","slug":"load-latent","link":"#load-latent","children":[]},{"level":3,"title":"Save Latent","slug":"save-latent","link":"#save-latent","children":[]},{"level":3,"title":"Tome Patch Model","slug":"tome-patch-model","link":"#tome-patch-model","children":[]}]},{"level":2,"title":"TokenMerging for Stable Diffusion","slug":"tokenmerging-for-stable-diffusion","link":"#tokenmerging-for-stable-diffusion","children":[{"level":3,"title":"VAE Decode (Tiled)","slug":"vae-decode-tiled","link":"#vae-decode-tiled","children":[]},{"level":3,"title":"VAE Encode (Tiled)","slug":"vae-encode-tiled","link":"#vae-encode-tiled","children":[]}]},{"level":2,"title":"图像 Image","slug":"图像-image","link":"#图像-image","children":[{"level":3,"title":"Load Image","slug":"load-image","link":"#load-image","children":[]},{"level":3,"title":"示例","slug":"示例","link":"#示例","children":[]},{"level":3,"title":"Invert Image","slug":"invert-image","link":"#invert-image","children":[]},{"level":3,"title":"Pad Image for Outpainting","slug":"pad-image-for-outpainting","link":"#pad-image-for-outpainting","children":[]},{"level":3,"title":"Preview Image","slug":"preview-image","link":"#preview-image","children":[]},{"level":3,"title":"Save Image","slug":"save-image","link":"#save-image","children":[]},{"level":3,"title":"Image Blend#postprocessing","slug":"image-blend-postprocessing","link":"#image-blend-postprocessing","children":[]},{"level":3,"title":"Image Blur","slug":"image-blur","link":"#image-blur","children":[]}]},{"level":2,"title":"Image Quantize","slug":"image-quantize","link":"#image-quantize","children":[]},{"level":2,"title":"Image Sharpen","slug":"image-sharpen","link":"#image-sharpen","children":[]},{"level":2,"title":"Upscale Image","slug":"upscale-image","link":"#upscale-image","children":[]},{"level":2,"title":"Upscale Image (using Model)","slug":"upscale-image-using-model","link":"#upscale-image-using-model","children":[]},{"level":2,"title":"Latent 潜在空间","slug":"latent-潜在空间","link":"#latent-潜在空间","children":[{"level":3,"title":"Empty Latent Image","slug":"empty-latent-image","link":"#empty-latent-image","children":[]},{"level":3,"title":"Latent Composite","slug":"latent-composite","link":"#latent-composite","children":[]},{"level":3,"title":"Latent Composite Masked","slug":"latent-composite-masked","link":"#latent-composite-masked","children":[]},{"level":3,"title":"Upscale Latent","slug":"upscale-latent","link":"#upscale-latent","children":[]},{"level":3,"title":"VAE Decode","slug":"vae-decode","link":"#vae-decode","children":[]}]},{"level":2,"title":"example","slug":"example-2","link":"#example-2","children":[{"level":3,"title":"VAE Encode","slug":"vae-encode","link":"#vae-encode","children":[]}]},{"level":2,"title":"示例","slug":"示例-1","link":"#示例-1","children":[{"level":3,"title":"Latent From Batch","slug":"latent-from-batch","link":"#latent-from-batch","children":[]},{"level":3,"title":"Rebatch Latents","slug":"rebatch-latents","link":"#rebatch-latents","children":[]},{"level":3,"title":"Repeat Latent Batch","slug":"repeat-latent-batch","link":"#repeat-latent-batch","children":[]},{"level":3,"title":"Set Latent Noise Mask","slug":"set-latent-noise-mask","link":"#set-latent-noise-mask","children":[]},{"level":3,"title":"VAE Encode (for Inpainting)","slug":"vae-encode-for-inpainting","link":"#vae-encode-for-inpainting","children":[]},{"level":3,"title":"Crop Latent","slug":"crop-latent","link":"#crop-latent","children":[]},{"level":3,"title":"Flip Latent","slug":"flip-latent","link":"#flip-latent","children":[]},{"level":3,"title":"Rotate Latent","slug":"rotate-latent","link":"#rotate-latent","children":[]}]},{"level":2,"title":"载入器 Loaders","slug":"载入器-loaders","link":"#载入器-loaders","children":[{"level":3,"title":"GLIGEN Loader","slug":"gligen-loader","link":"#gligen-loader","children":[]},{"level":3,"title":"Hypernetwork Loader","slug":"hypernetwork-loader","link":"#hypernetwork-loader","children":[]}]},{"level":2,"title":"inputs","slug":"inputs","link":"#inputs","children":[]},{"level":2,"title":"outputs","slug":"outputs","link":"#outputs","children":[{"level":3,"title":"Load Checkpoint","slug":"load-checkpoint","link":"#load-checkpoint","children":[]}]},{"level":2,"title":"inputs","slug":"inputs-1","link":"#inputs-1","children":[]},{"level":2,"title":"outputs","slug":"outputs-1","link":"#outputs-1","children":[{"level":3,"title":"Load CLIP","slug":"load-clip","link":"#load-clip","children":[]}]},{"level":2,"title":"inputs","slug":"inputs-2","link":"#inputs-2","children":[]},{"level":2,"title":"outputs","slug":"outputs-2","link":"#outputs-2","children":[{"level":3,"title":"Load CLIP Vision","slug":"load-clip-vision","link":"#load-clip-vision","children":[]}]},{"level":2,"title":"inputs","slug":"inputs-3","link":"#inputs-3","children":[]},{"level":2,"title":"outputs","slug":"outputs-3","link":"#outputs-3","children":[{"level":3,"title":"Load ControlNet Model","slug":"load-controlnet-model","link":"#load-controlnet-model","children":[]}]},{"level":2,"title":"inputs","slug":"inputs-4","link":"#inputs-4","children":[]},{"level":2,"title":"outputs","slug":"outputs-4","link":"#outputs-4","children":[{"level":3,"title":"Load LoRA","slug":"load-lora","link":"#load-lora","children":[]}]},{"level":2,"title":"inputs","slug":"inputs-5","link":"#inputs-5","children":[]},{"level":2,"title":"outputs","slug":"outputs-5","link":"#outputs-5","children":[{"level":3,"title":"Load Style Model","slug":"load-style-model","link":"#load-style-model","children":[]}]},{"level":2,"title":"inputs","slug":"inputs-6","link":"#inputs-6","children":[]},{"level":2,"title":"outputs","slug":"outputs-6","link":"#outputs-6","children":[{"level":3,"title":"Load Upscale Model","slug":"load-upscale-model","link":"#load-upscale-model","children":[]}]},{"level":2,"title":"inputs","slug":"inputs-7","link":"#inputs-7","children":[]},{"level":2,"title":"outputs","slug":"outputs-7","link":"#outputs-7","children":[{"level":3,"title":"Load VAE","slug":"load-vae","link":"#load-vae","children":[]}]},{"level":2,"title":"inputs","slug":"inputs-8","link":"#inputs-8","children":[]},{"level":2,"title":"outputs","slug":"outputs-8","link":"#outputs-8","children":[]},{"level":2,"title":"example","slug":"example-3","link":"#example-3","children":[{"level":3,"title":"unCLIP Checkpoint Loader","slug":"unclip-checkpoint-loader","link":"#unclip-checkpoint-loader","children":[]}]},{"level":2,"title":"inputs","slug":"inputs-9","link":"#inputs-9","children":[]},{"level":2,"title":"outputs","slug":"outputs-9","link":"#outputs-9","children":[]},{"level":2,"title":"遮罩 Mask","slug":"遮罩-mask","link":"#遮罩-mask","children":[{"level":3,"title":"将图像转换为遮罩","slug":"将图像转换为遮罩","link":"#将图像转换为遮罩","children":[]}]},{"level":2,"title":"示例","slug":"示例-2","link":"#示例-2","children":[{"level":3,"title":"裁剪遮罩","slug":"裁剪遮罩","link":"#裁剪遮罩","children":[]}]},{"level":2,"title":"输入","slug":"输入","link":"#输入","children":[]},{"level":2,"title":"输出","slug":"输出","link":"#输出","children":[]},{"level":2,"title":"示例","slug":"示例-3","link":"#示例-3","children":[{"level":3,"title":"羽化遮罩","slug":"羽化遮罩","link":"#羽化遮罩","children":[]}]},{"level":2,"title":"输入","slug":"输入-1","link":"#输入-1","children":[]},{"level":2,"title":"输出","slug":"输出-1","link":"#输出-1","children":[]},{"level":2,"title":"示例","slug":"示例-4","link":"#示例-4","children":[{"level":3,"title":"反转遮罩","slug":"反转遮罩","link":"#反转遮罩","children":[]}]},{"level":2,"title":"输入","slug":"输入-2","link":"#输入-2","children":[]},{"level":2,"title":"输出","slug":"输出-2","link":"#输出-2","children":[]},{"level":2,"title":"实例","slug":"实例","link":"#实例","children":[{"level":3,"title":"加载图片(作为遮罩)","slug":"加载图片-作为遮罩","link":"#加载图片-作为遮罩","children":[]}]},{"level":2,"title":"输入","slug":"输入-3","link":"#输入-3","children":[]},{"level":2,"title":"输出","slug":"输出-3","link":"#输出-3","children":[]},{"level":2,"title":"实例","slug":"实例-1","link":"#实例-1","children":[{"level":3,"title":"遮罩合成","slug":"遮罩合成","link":"#遮罩合成","children":[]}]},{"level":2,"title":"输入","slug":"输入-4","link":"#输入-4","children":[]},{"level":2,"title":"输出","slug":"输出-4","link":"#输出-4","children":[]},{"level":2,"title":"示例","slug":"示例-5","link":"#示例-5","children":[{"level":3,"title":"纯色遮罩 Solid Mask","slug":"纯色遮罩-solid-mask","link":"#纯色遮罩-solid-mask","children":[]}]},{"level":2,"title":"输入","slug":"输入-5","link":"#输入-5","children":[]},{"level":2,"title":"输出","slug":"输出-5","link":"#输出-5","children":[]},{"level":2,"title":"示例","slug":"示例-6","link":"#示例-6","children":[]},{"level":2,"title":"采样 Sampling","slug":"采样-sampling","link":"#采样-sampling","children":[{"level":3,"title":"KSampler","slug":"ksampler","link":"#ksampler","children":[]}]},{"level":2,"title":"输入","slug":"输入-6","link":"#输入-6","children":[]},{"level":2,"title":"输出","slug":"输出-6","link":"#输出-6","children":[]},{"level":2,"title":"示例","slug":"示例-7","link":"#示例-7","children":[{"level":3,"title":"KSampler 高级","slug":"ksampler-高级","link":"#ksampler-高级","children":[]}]},{"level":2,"title":"输入","slug":"输入-7","link":"#输入-7","children":[]},{"level":2,"title":"输出","slug":"输出-7","link":"#输出-7","children":[]}],"git":{"updatedTime":1713617590000,"contributors":[{"name":"shadowcz007","email":"chizhiwei007@163.com","commits":1}]},"filePathRelative":"posts/tutorial/core_nodes/index.md","autoDesc":true,"excerpt":"\\n\\n\\n\\nDiffusers Loader节点(扩散模型加载器),可用于加载扩散模型。
\\n
输入
\\nmodel_path
:扩散器模型的路径输出
\\nMODEL
:用于去噪潜变量的模型。
CLIP
:用于编码文本提示的CLIP模型。
VAE
:用于将图像编码和解码到潜空间的VAE模型。
ComfyUI 是一个强大且模块化的稳定扩散 GUI 和后端。我们基于ComfyUI 官方仓库 ,专门针对中文用户,做了优化和文档的细节补充。
本教程的目标是帮助您快速上手 ComfyUI,运行您的第一个工作流,并为探索下一步提供一些参考指南。
安装方式,推荐使用官方的 Window-Nvidia 显卡-免安装包 ,也可以从 百度网盘 下载
如果你是 Mac 或者 Linux 系统,请参考 GitHub 上的安装说明。
Stable Diffusion,中文一般称为稳定扩散,是 2022 年发布的深度学习生成模型,它可以根据文本的描述产生详细的图像。Stable Diffusion 通过一个复杂的概率扩散过程,逐步将原始图像转换为具有特定特征的图像,实现图像生成。
如果您完全不了解任何与稳定扩散相关的内容,您要做的第一件事就是获取一个模型checkpoints,您将用它来生成图像。
您可以在CivitAI 或 HuggingFace 等网站上找到多种模型。首先,获取您喜欢的模型checkpoints,并将其放置在ComfyUI/models/checkpoints
中。
双击run_nvidia_gpu.bat 启动 ComfyUI。
启动后,你将看到 ComfyUI 的提示:
请在浏览器里访问 http://127.0.0.1:8188 访问
此时,您应该已经在浏览器标签中启动并运行了 ComfyUI。第一次使用,ComfyUI 加载的是一个默认的工作流。这是一个最基础的 text-to-image 的工作流。
您可以拖动画布,或者按住空格键并移动鼠标。可以通过鼠标滚动来缩放。
如果您弄乱了什么,只需在右边的菜单中点击Load Default
将其重置为初始状态。
在我们运行工作流之前,让我们进行一个小修改,以预览生成的图像而不保存它们:
Save Image
节点,然后选择Remove
。preview
,然后单击PreviewImage
选项。VAE Decode
节点的IMAGE
输出,并将其连接到您刚添加的Preview Image
节点的images
输入。此修改将预览您的结果,而不会将结果保存到output文件夹里。
通过在菜单中点击Queue Prompt
或在键盘上按command+enter 或 control+enter来创建您的第一张图片,就是这样!
为了便于分享,ComfyUI 默认将工作流的详细信息存储在生成的 PNG 中。要加载生成图像的工作流,只需通过菜单中的Load
按钮加载图像(或者是 JSON 文件),或将其拖放到 ComfyUI 窗口中。ComfyUI 将自动解析工作流的详细信息并加载所有相关节点及其设置。
在那里可以获得更多的工作流?可以访问ComfyUI 的官方示例工作流
欢迎申请加入ComfyUI 中文社区
访问由 Mixlab Nodes 维护的discord 交流频道
\\n\\nComfyUI 是一个强大且模块化的稳定扩散 GUI 和后端。我们基于ComfyUI 官方仓库 ,专门针对中文用户,做了优化和文档的细节补充。
\\n
本教程的目标是帮助您快速上手 ComfyUI,运行您的第一个工作流,并为探索下一步提供一些参考指南。
\\n安装方式,推荐使用官方的 Window-Nvidia 显卡-免安装包 ,也可以从 百度网盘 下载
"}');export{h as comp,u as data}; diff --git a/docs/assets/index.html-Bu4VC_a9.js b/docs/assets/index.html-Bu4VC_a9.js deleted file mode 100644 index 19d2768..0000000 --- a/docs/assets/index.html-Bu4VC_a9.js +++ /dev/null @@ -1,66 +0,0 @@ -import{_ as n,c as s,o as a,a as p}from"./app-BFngqcKR.js";const e="/awesome-comfyui-workflow/assets/API01-C3VSzi19.png",t="/awesome-comfyui-workflow/assets/API02-BDcjvxSr.png",o="/awesome-comfyui-workflow/assets/API-03-DW_y3-g-.png",i="/awesome-comfyui-workflow/assets/API-04-CItmxP6i.png",c="/awesome-comfyui-workflow/assets/API-05-SRm6s36i.png",l={},u=p(`ComfyUI 的自定义节点引入了直接的 Python 代码,这可能导致安全风险。由于缺乏沙箱/安全机制,自定义节点的代码可以执行任何可能具有恶意意图的操作。
你的第一个自定义节点: https://github.com/shadowcz007/comfyui-mixlab-nodes
前端界面是由 HTML、CSS、Javascript 编写的,每个节点都有自己的一个生命周期管理,例如以下:
import { app } from '../scripts/app.js'
-const ext = {
- // 扩展的唯一名称
- name: 'Example.LoggingExtension',
- async init(app) {
- // 页面加载后立即运行的任何初始设置
- console.log('[logging]', 'extension init')
- },
- async setup(app) {
- // 应用程序创建后运行的任何设置
- console.log('[logging]', 'extension setup')
- },
- async addCustomNodeDefs(defs, app) {
- // 添加自定义节点定义
- // 这些定义将自动配置和注册
- // defs 是核心节点的查找表,将您的节点添加到其中
- console.log(
- '[logging]',
- 'add custom node definitions',
- 'current nodes:',
- Object.keys(defs)
- )
- },
- async getCustomWidgets(app) {
- // 返回自定义小部件类型
- // 请参阅 ComfyWidgets 获取小部件示例
- console.log('[logging]', 'provide custom widgets')
- },
- async beforeRegisterNodeDef(nodeType, nodeData, app) {
- // 在节点定义注册到图形之前运行自定义逻辑
- console.log('[logging]', 'before register node: ', nodeType, nodeData)
-
- // 这将对每个节点定义触发,因此只记录一次
- delete ext.beforeRegisterNodeDef
- },
- async registerCustomNodes(app) {
- //在此处注册任何自定义节点实现,以便比自定义节点定义更灵活。
- console.log('[logging]', 'register custom nodes')
- },
- loadedGraphNode(node, app) {
- // 当加载/拖动/等操作工作流程的 JSON 或 PNG 时,对每个节点触发
- // 如果在后端出现问题并且想要在前端修复工作流程
- // 这就是进行修复的地方
- console.log('[logging]', 'loaded graph node: ', node)
-
- // This fires for every node on each load so only log once
- delete ext.loadedGraphNode
- },
- nodeCreated(node, app) {
- console.log('[logging]', 'node created: ', node)
- // 每次构建节点时触发
- // 您可以在此处修改小部件、添加处理程序等
-
- // 这对每个节点触发,所以只记录一次
- delete ext.nodeCreated
- }
-}
-
-app.registerExtension(ext)
-
如何使用 ComfyUI 的 API,通过命令行和脚本控制 ComfyUI
示例工作流
我们需要启用 Dev Mode. 单击菜单面板右上角的齿轮图标。
查看 Enable Dev mode Options
Save (API Format)菜单面板中应出现一个新按钮。
单击该 Save(API Format)按钮,它将以默认名称保存一个文件 workflow_api.json。使用普通的 ComfyUI 工作流程 json 文件,可以将它们拖放到主 UI 中并加载工作流程。
将 api 格式 json 拖放到 ComfyUI 中不会加载工作流程。它仅包含用于功能目的的足够节点数据,并且不包含位置或布局信息。因此,如果您确实需要可视化并查看工作流程,最好也通过普通按钮保存常规工作流程 json Save。
现在在您选择的文本编辑器中打开此文件。您应该会看到类似于下面的内容。
您可以看到每个部分(为了清晰起见,用彩色表示)都以数字开头。这是 Node ID. 如果您查看第一个节点(黄色),您将看到它的节点 ID 为 ,并且"3"是.KSamplerclass_type
值得注意的是,它们 Node IDs 可能有所不同。如果您从头开始重新构建自己的工作流程并添加、删除节点,那么它们将与此处显示的不同。( 原始节点不会以 api 格式显示——仅显示核心节点。将来可能会改变)
让我们创建一个名为 的新 Python 脚本 basic_workflow_api.py。
将提示工作流发送到指定的 URL http://127.0.0.1:8188/prompt 并将其排队到在该地址运行的 ComfyUI 服务器上
This function sends a prompt workflow to the specified URL (http://127.0.0.1:8188/prompt) and queues it on the ComfyUI server running at that address.
def queue_prompt(prompt_workflow):
- p = {"prompt": prompt_workflow}
- data = json.dumps(p).encode('utf-8')
- req = request.Request("http://127.0.0.1:8188/prompt", data=data)
- request.urlopen(req)
-
完成代码后,运行:
python3 basic_workflow_api.py
-
ComfyUI 的自定义节点引入了直接的 Python 代码,这可能导致安全风险。由于缺乏沙箱/安全机制,自定义节点的代码可以执行任何可能具有恶意意图的操作。
\\n你的第一个自定义节点:\\nhttps://github.com/shadowcz007/comfyui-mixlab-nodes
\\n前端界面是由 HTML、CSS、Javascript 编写的,每个节点都有自己的一个生命周期管理,例如以下:
"}');export{g as comp,b as data}; diff --git a/docs/assets/index.html-CAAMWxVE.js b/docs/assets/index.html-CAAMWxVE.js deleted file mode 100644 index 04fd04d..0000000 --- a/docs/assets/index.html-CAAMWxVE.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as t,r as o,c as a,e as n,o as r}from"./app-BFngqcKR.js";const l={};function c(s,i){const e=o("Catalog");return r(),a("div",null,[n(e)])}const p=t(l,[["render",c],["__file","index.html.vue"]]),m=JSON.parse('{"path":"/posts/tutorial/","title":"Tutorial","lang":"en-US","frontmatter":{"title":"Tutorial"},"headers":[],"git":{},"filePathRelative":null,"excerpt":""}');export{p as comp,m as data}; diff --git a/docs/assets/index.html-CAP-1zms.js b/docs/assets/index.html-CAP-1zms.js deleted file mode 100644 index 7b366c1..0000000 --- a/docs/assets/index.html-CAP-1zms.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as e,c as t,o as r}from"./app-BFngqcKR.js";const a={};function c(l,i){return r(),t("div")}const o=e(a,[["render",c],["__file","index.html.vue"]]),s=JSON.parse('{"path":"/article/","title":"Articles","lang":"en-US","frontmatter":{"title":"Articles","sidebar":false,"blog":{"type":"type","key":"article"},"layout":"Article"},"headers":[],"git":{},"filePathRelative":null,"excerpt":""}');export{o as comp,s as data}; diff --git a/docs/assets/index.html-CFEdLwZ3.js b/docs/assets/index.html-CFEdLwZ3.js deleted file mode 100644 index 3f67e54..0000000 --- a/docs/assets/index.html-CFEdLwZ3.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as e,c as t,o}from"./app-BFngqcKR.js";const a={};function n(r,i){return o(),t("div")}const c=e(a,[["render",n],["__file","index.html.vue"]]),p=JSON.parse('{"path":"/posts/insight/","title":"","lang":"en-US","frontmatter":{"head":[["meta",{"property":"og:url","content":"https://www.mixcomfy.com/awesome-comfyui-workflow/posts/insight/"}],["meta",{"property":"og:site_name","content":"ComfyUI中文爱好者社区"}],["meta",{"property":"og:type","content":"article"}],["meta",{"property":"og:locale","content":"en-US"}],["meta",{"property":"og:updated_time","content":"2024-06-06T08:49:49.694Z"}],["meta",{"property":"article:author","content":"shadow"}],["meta",{"property":"article:modified_time","content":"2024-04-20T16:20:52.000Z"}],["meta",{"property":"og:modified_time","content":"2024-06-06T08:49:49.694Z"}],["meta",{"name":"twitter:card","content":"summary_large_image"}],["meta",{"name":"twitter:site","content":"mixlabPro"}],["meta",{"name":"twitter:creator","content":"mixlabPro"}],["meta",{"name":"share_config","content":"buffer,email,facebook,flipboard,hackernews,instapaper,line,linkedin,odnoklassniki,pinterest,pocket,quora,reddit,tumblr,twitter,vk,weibo,wordpress,xing,yammer"}],["script",{"type":"application/ld+json"},"{\\"@context\\":\\"https://schema.org\\",\\"@type\\":\\"Article\\",\\"headline\\":\\"\\",\\"image\\":[\\"\\"],\\"dateModified\\":\\"2024-04-20T16:20:52.000Z\\",\\"author\\":[{\\"@type\\":\\"Person\\",\\"name\\":\\"shadow\\"}]}"]]},"headers":[],"git":{"updatedTime":1713630052000,"contributors":[{"name":"shadowcz007","email":"chizhiwei007@163.com","commits":1}]},"filePathRelative":"posts/insight/index.md","excerpt":""}');export{c as comp,p as data}; diff --git a/docs/assets/index.html-CG2tx8q8.js b/docs/assets/index.html-CG2tx8q8.js deleted file mode 100644 index 774c32c..0000000 --- a/docs/assets/index.html-CG2tx8q8.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as e,c as t,o as d,a as l}from"./app-BFngqcKR.js";const o="data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='UTF-8'%20standalone='no'?%3e%3c!DOCTYPE%20svg%20PUBLIC%20'-//W3C//DTD%20SVG%201.1//EN'%20'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd'%3e%3csvg%20width='100%25'%20height='100%25'%20viewBox='0%200%20100%2060'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20xml:space='preserve'%20xmlns:serif='http://www.serif.com/'%20style='fill-rule:evenodd;clip-rule:evenodd;stroke-miterlimit:10;'%3e%3cg%3e%3cuse%20xlink:href='%23_Image1'%20x='0'%20y='0'%20width='275px'%20height='226px'%20transform='matrix(1,0,0,1,-87,-81)'/%3e%3cg%3e%3cg%3e%3crect%20x='13'%20y='19'%20width='76'%20height='26'%20style='fill:%23353535;fill-rule:nonzero;'/%3e%3cpath%20d='M27,33c-0,2.194%20-1.806,4%20-4,4c-2.194,-0%20-4,-1.806%20-4,-4c0,-2.194%201.806,-4%204,-4c2.193,-0%203.998,1.803%204,3.996'%20style='fill:%23778;fill-rule:nonzero;'/%3e%3cpath%20d='M83,33c0,2.194%20-1.806,4%20-4,4c-2.194,0%20-4,-1.806%20-4,-4c0,-2.194%201.806,-4%204,-4c2.193,0%203.998,1.803%204,3.996'%20style='fill:%23778;fill-rule:nonzero;stroke:%23000;stroke-width:1px;'/%3e%3c/g%3e%3c/g%3e%3c/g%3e%3cdefs%3e%3cimage%20id='_Image1'%20width='275px'%20height='226px'%20xlink:href='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAARMAAADiCAYAAABtECOwAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAFHUlEQVR4nO3cwUorWxQE0NMm4keE/P83isR+g0tmOTc21sG6z7XAWRljNtQgFL1dr9f99fV1PPPx8TF+U+79/X2MMcbb21vl+/ttOffoyj26x8vT3wL4AmUCRCgTIEKZABHb9Xrdf/pNNPr8/BxjjPHyom8buEeXR/c4jzGqvzX+6W+rn2Xb/4//S849unKP7qHmgQhlAkQoEyBCmQARygSIUCZAhDIBIpQJEGEBO2Fx2cU9uljAHshZXHbl3KMrZwELLKNMgAhlAkQoEyBCmQARygSIUCZAhDIBIixgJywuu7hHFwvYAzmLy66ce3TlLGCBZZQJEKFMgAhlAkQoEyBCmQARygSIUCZAhAXshMVlF/foYgF7IGdx2ZVzj66cBSywjDIBIpQJEKFMgAhlAkQoEyBCmQARygSIsICdsLjs4h5dLGAP5Cwuu3Lu0ZWzgAWWUSZAhDIBIpQJEKFMgAhlAkQoEyBCmQAR2+VysYAFvu28bdu4/8zs+z72ff/nc2P8mQF/JXe73cYYY5xOp7/+3THG09dq/1zcQ+7uO/c4b9tWPdv9qdz9wzqfz09f71lmxfv7bTn36Mo9uofvTIAIZQJEKBMgQpkAEcoEiFAmQIQyASI8A3bCM0e7uEcXz4A9kPPM0a6ce3TlPAMWWEaZABHKBIhQJkCEMgEilAkQoUyACGUCRFjATlhcdnGPLhawB3IWl1059+jKWcACyygTIEKZABHKBIhQJkCEMgEilAkQoUyACAvYCYvLLu7RxQL2QM7isivnHl05C1hgGWUCRCgTIEKZABHKBIhQJkCEMgEilAkQYQE7YXHZxT26WMAeyFlcduXcoytnAQsso0yACGUCRCgTIEKZABHKBIhQJkCEMgEiLGAnLC67uEcXC9gDOYvLrpx7dOUsYIFllAkQoUyACGUCRCgTIEKZABHKBIhQJkCEBeyExWUX9+hiAXsgZ3HZlXOPrpwFLLCMMgEilAkQoUyACGUCRCgTIEKZABHKBIiwgJ2wuOziHl0sYA/kLC67cu7RlbOABZZRJkCEMgEilAkQoUyACGUCRCgTIEKZABEWsBMWl13co4sF7IGcxWVXzj26chawwDLKBIhQJkCEMgEilAkQoUyACGUCRCgTIMICdsLisot7dLGAPZCzuOzKuUdXzgIWWEaZABHKBIhQJkCEMgEilAkQoUyACGUCRGyXy8UCFvi287Zt4/4zs+/72Pf9n8+N8WcG/JXc7XYbY4xxOp3++nfHGE9fq/1zcQ+5u+/c47xtW/Vs96dy9w/rfD4/fb1nmRXv77fl3KMr9+gevjMBIpQJEKFMgAhlAkQoEyBCmQARygSI8AzYCc8c7eIeXTwD9kDOM0e7cu7RlfMMWGAZZQJEKBMgQpkAEcoEiFAmQIQyASKUCRBhATthcdnFPbpYwB7IWVx25dyjK2cBCyyjTIAIZQJEKBMgQpkAEcoEiFAmQIQyASIsYCcsLru4RxcL2AM5i8uunHt05SxggWWUCRChTIAIZQJEKBMgQpkAEcoEiFAmQIQF7ITFZRf36GIBeyBncdmVc4+unAUssIwyASKUCRChTIAIZQJEKBMgQpkAEcoEiLCAnbC47OIeXSxgD+QsLrty7tGVs4AFllEmQIQyASKUCRChTIAIZQJEKBMgQpkAERawExaXXdyjiwXsgZzFZVfOPbpyFrDAMsoEiFAmQIQyASKUCRChTIAIZQJEKBMgwgJ2wuKyi3t0eXSP/wBjvDp3jTgqOAAAAABJRU5ErkJggg=='/%3e%3c/defs%3e%3c/svg%3e",a="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+PCFET0NUWVBFIHN2ZyBQVUJMSUMgIi0vL1czQy8vRFREIFNWRyAxLjEvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvR3JhcGhpY3MvU1ZHLzEuMS9EVEQvc3ZnMTEuZHRkIj48c3ZnIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIHZpZXdCb3g9IjAgMCAzMDAgOTYiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSIgeG1sbnM6c2VyaWY9Imh0dHA6Ly93d3cuc2VyaWYuY29tLyIgc3R5bGU9ImZpbGwtcnVsZTpldmVub2RkO2NsaXAtcnVsZTpldmVub2RkO3N0cm9rZS1taXRlcmxpbWl0OjEwOyI+PGc+PHJlY3QgeD0iLTUxIiB5PSItNTAiIHdpZHRoPSI0MDMiIGhlaWdodD0iMjI2IiBzdHlsZT0iZmlsbDojZmZmOyIvPjx1c2UgeGxpbms6aHJlZj0iI19JbWFnZTEiIHg9IjAiIHk9IjAiIHdpZHRoPSI0MDNweCIgaGVpZ2h0PSIyMjZweCIgdHJhbnNmb3JtPSJtYXRyaXgoMSwwLDAsMSwtNTEsLTUwKSIvPjxnPjxnPjxyZWN0IHg9IjQ5IiB5PSIyMCIgd2lkdGg9IjIwNC4yIiBoZWlnaHQ9IjU2IiBzdHlsZT0iZmlsbDojMzUzNTM1O2ZpbGwtcnVsZTpub256ZXJvOyIvPjxyZWN0IHg9IjQ5IiB5PSI0OSIgd2lkdGg9IjIwNC4yIiBoZWlnaHQ9IjIiIHN0eWxlPSJmaWxsLW9wYWNpdHk6MC4yOyIvPjxyZWN0IHg9IjQ5IiB5PSIyMCIgd2lkdGg9IjIwNC4yIiBoZWlnaHQ9IjMwIiBzdHlsZT0iZmlsbDojMzMzO2ZpbGwtcnVsZTpub256ZXJvOyIvPjxwYXRoIGQ9Ik02OSwzNWMtMCwyLjc0MyAtMi4yNTcsNSAtNSw1Yy0yLjc0MywtMCAtNSwtMi4yNTcgLTUsLTVjMCwtMi43NDMgMi4yNTcsLTUgNSwtNWMyLjc0MSwtMCA0Ljk5NywyLjI1NCA1LDQuOTk1IiBzdHlsZT0iZmlsbDojNjY2O2ZpbGwtcnVsZTpub256ZXJvOyIvPjx0ZXh0IHg9Ijc5cHgiIHk9IjQwcHgiIHN0eWxlPSJmb250LWZhbWlseTonQXJpYWxNVCcsICdBcmlhbCcsIHNhbnMtc2VyaWY7Zm9udC1zaXplOjE0cHg7ZmlsbDojOTk5OyI+UHJpbWl0aXZlPC90ZXh0PjxwYXRoIGQ9Ik0yNDcuMiw2NGMwLDIuMTk0IC0xLjgwNiw0IC00LDRjLTIuMTk0LC0wIC00LC0xLjgwNiAtNCwtNGMwLC0yLjE5NCAxLjgwNiwtNCA0LC00YzIuMTkzLC0wIDMuOTk4LDEuODAzIDQsMy45OTYiIHN0eWxlPSJmaWxsOiM3Nzg7ZmlsbC1ydWxlOm5vbnplcm87c3Ryb2tlOiMwMDA7c3Ryb2tlLXdpZHRoOjFweDsiLz48dGV4dCB4PSIxMTAuNDUycHgiIHk9IjY5cHgiIHN0eWxlPSJmb250LWZhbWlseTonQXJpYWxNVCcsICdBcmlhbCcsIHNhbnMtc2VyaWY7Zm9udC1zaXplOjEycHg7ZmlsbDojYWFhOyI+Y29ubmVjdCB0byB3aWRnZXQgaW5wdXQ8L3RleHQ+PC9nPjwvZz48L2c+PGRlZnM+PGltYWdlIGlkPSJfSW1hZ2UxIiB3aWR0aD0iNDAzcHgiIGhlaWdodD0iMjI2cHgiIHhsaW5rOmhyZWY9ImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBWk1BQUFEaUNBWUFBQUNMRlNxeEFBQUFDWEJJV1hNQUFBN0VBQUFPeEFHVkt3NGJBQUFHQTBsRVFWUjRuTzNkUVVvY0FSUUUwTjlPaTRjWTNIai9DNHFNblVVd3FDalRVSVNwMXZkMlNqa3hVNHNLeEc4dlQwOVAyN3p6OHZJeTkvZjNjODF2eXowL1A4L016TVBEUStYMzk5dHkrdWpLNmFNcmQ0cys3cTYrQ2dCY1lVd0FpQmtUQUdMR0JJQ1lNUUVndGp3K1BtN1hZN3krdnM3TXpOMmQvVzJnank3NjZIS0xQdGJQUCs3Vi9pTnZ0LzVSdTJ2WjlyL0hUOG5wb3l1bmo2N2NMZnJ3endnQVlzWUVnSmd4QVNCbVRBQ0lHUk1BWXNZRWdKZ3hBU0JtVEFDSXVZRGZ5WVZ2RjMxMDBVY1hGL0RGT1JlK1hUbDlkT1gwMFpWekFRL0FJUmtUQUdMR0JJQ1lNUUVnWmt3QWlCa1RBR0xHQklDWU1RRWc1Z0orSnhlK1hmVFJSUjlkWE1BWDUxejRkdVgwMFpYVFIxZk9CVHdBaDJSTUFJZ1pFd0JpeGdTQW1ERUJJR1pNQUlnWkV3Qml4Z1NBbUF2NG5WejRkdEZIRjMxMGNRRmZuSFBoMjVYVFIxZE9IMTA1Ri9BQUhKSXhBU0JtVEFDSUdSTUFZc1lFZ0pneEFTQm1UQUNJR1JNQVlpN2dkM0xoMjBVZlhmVFJ4UVY4Y2M2RmIxZE9IMTA1ZlhUbFhNQURjRWpHQklDWU1RRWdaa3dBaUJrVEFHTEdCSUNZTVFFZ1prd0FpTG1BMzhtRmJ4ZDlkTkZIRnhmd3hUa1h2bDA1ZlhUbDlOR1Zjd0VQd0NFWkV3Qml4Z1NBbURFQklHWk1BSWdaRXdCaXhnU0FtREVCSU9ZQ2ZpY1h2bDMwMFVVZlhWekFGK2RjK0hibDlOR1YwMGRYemdVOEFJZGtUQUNJR1JNQVlzWUVnSmd4QVNCbVRBQ0lHUk1BWXNZRWdKZ0wrSjFjK0hiUlJ4ZDlkSEVCWDV4ejRkdVYwMGRYVGg5ZE9SZndBQnlTTVFFZ1prd0FpQmtUQUdMR0JJQ1lNUUVnWmt3QWlCa1RBR0l1NEhkeTRkdEZIMTMwMGNVRmZISE9oVzlYVGg5ZE9YMTA1VnpBQTNCSXhnU0FtREVCSUdaTUFJZ1pFd0JpeGdTQW1ERUJJR1pNQUlndDUvUFpCVHdBa2ZWME92MzdZTnUyMmJadGxtV1paVm0rL2FLZmtwdjUrMnNIOXVRdWw4dk16THgvdjc3NmMyZm02bXUxdnkvNmtIdWpqNTdjVEhjZjY3cXVIejdSL21zQ2JwVjdLK2Z6Ky9YVjYxM0wvSS92NzdmbDlOR1YwMGRYN2haOStEOFRBR0xHQklDWU1RRWdaa3dBaUJrVEFHTEdCSUNZTVFFZzVobndPM25HZFJkOWRORkhGOCtBTDg1NXhuVlhUaDlkT1gxMDVUd0RIb0JETWlZQXhJd0pBREZqQWtETW1BQVFNeVlBeEl3SkFERmpBa0RNQmZ4T0xueTc2S09MUHJxNGdDL091ZkR0eXVtaks2ZVBycHdMZUFBT3laZ0FFRE1tQU1TTUNRQXhZd0pBekpnQUVETW1BTVNNQ1FBeEYvQTd1ZkR0b284dSt1amlBcjQ0NThLM0s2ZVBycHcrdW5JdTRBRTRKR01DUU15WUFCQXpKZ0RFakFrQU1XTUNRTXlZQUJBekpnREVYTUR2NU1LM2l6NjY2S09MQy9qaW5BdmZycHcrdW5MNjZNcTVnQWZna0l3SkFERmpBa0RNbUFBUU15WUF4SXdKQURGakFrRE1tQUFRY3dHL2t3dmZMdnJvb284dUx1Q0xjeTU4dTNMNjZNcnBveXZuQWg2QVF6SW1BTVNNQ1FBeFl3SkF6SmdBRURNbUFNU01DUUF4WXdKQXpBWDhUaTU4dStpaml6NjZ1SUF2enJudzdjcnBveXVuajY2Y0MzZ0FEc21ZQUJBekpnREVqQWtBTVdNQ1FNeVlBQkF6SmdERWpBa0FNUmZ3TzdudzdhS1BMdnJvNGdLK09PZkN0eXVuajY2Y1BycHlMdUFCT0NSakFrRE1tQUFRTXlZQXhJd0pBREZqQWtETW1BQVFNeVlBeEZ6QTcrVEN0NHMrdXVpaml3djQ0cHdMMzY2Y1BycHkrdWpLdVlBSDRKQ01DUUF4WXdKQXpKZ0FFRE1tQU1TTUNRQXhZd0pBekpnQUVITUJ2NU1MM3k3NjZLS1BMaTdnaTNNdWZMdHkrdWpLNmFNcjV3SWVnRU15SmdERWpBa0FNV01DUU15WUFCQXpKZ0RFakFrQU1XTUNRR3c1bjg4dTRBR0lyS2ZUNmQ4SDI3Yk50bTJ6TE1zc3kvTHRGLzJVM016Zlh6dXdKM2U1WEdabTV2Mzc5ZFdmT3pOWFg2djlmZEdIM0J0OTlPUm11dnRZMTNYOThJbjJYeE53cTl4Yk9aL2ZyNjllNzFybWYzeC92eTJuajY2Y1BycHl0K2pELzVrQUVETW1BTVNNQ1FBeFl3SkF6SmdBRURNbUFNU01DUUF4ejREZnlUT3V1K2lqaXo2NmVBWjhjYzR6cnJ0eSt1aks2YU1yNXhud0FCeVNNUUVnWmt3QWlCa1RBR0xHQklDWU1RRWdaa3dBaUJrVEFHSXU0SGR5NGR0RkgxMzAwY1VGZkhIT2hXOVhUaDlkT1gxMDVWekFBM0JJeGdTQW1ERUJJR1pNQUlnWkV3Qml4Z1NBbURFQklHWk1BSWo5QVJrUWNOUUJjL29qQUFBQUFFbEZUa1N1UW1DQyIvPjwvZGVmcz48L3N2Zz4=",c="/awesome-comfyui-workflow/assets/SR-on7jf4DI.png",i={},r=l('ComfyUI 提供了多种方式来微调您的提示,以更好地反映您的意图。
通过使用以下语法将提示的指定部分括在括号中,可以提高或降低提示部分的重要性:(prompt:weight)
。例如,如果我们有一个提示 flowers inside a blue vase
,并且我们希望扩散模型强调花卉,我们可以尝试将我们的提示改写为:(flowers:1.2) inside a blue vase
。嵌套循环会相乘它们内部的权重,例如在提示 ((flowers:1.2):.5) inside a blue vase
中,花朵最终获得 0.6 的权重。仅使用括号而不指定权重是 (prompt:1.1)
的简写,例如 (flower)
等于 (flower:1.1)
。要在提示中使用括号,它们必须被转义,例如 \\(1990\\)
。ComfyUI 也可以通过快捷键 ctrl+arrow-up 和 ctrl+arrow-down 为提示的选定部分添加适当的加权语法。这些快捷方式提高或降低权重的量可以在设置中调整。
文本反转是定制的 CLIP 嵌入,体现了某些概念。可以通过使用以下语法在提示中引用文本反转:embedding:name
,其中 name 是嵌入文件的名称。
可以让 ComfyUI 在排队时使用以下语法随机选择提示的某些部分:{choice1|choice2|...}
。例如,如果我们想让 ComfyUI 随机选择一组颜色中的一种,我们可以在我们的提示中添加以下内容:{red|blue|yellow|green}
。
ComfyUI 附带了一组节点,帮助管理图形。
重新路由节点可用于重新路由链接,这对于组织您的工作流程很有用。
重新路由节点上的输入和输出也可以垂直放置
原始节点可以用于...
跟踪你生成的所有图片可能会很困难。为了帮助组织您的图像,您可以向带有 file_prefix
小部件的输出节点传递特殊格式的字符串。
为了自动将某些节点小部件的值插入到文件名中,可以使用以下语法:%node_name.widget_name%
。例如,如果我们希望基于每个分辨率存储图像,我们可以向节点提供以下字符串:%Empty Latent Image.width%x%Empty Latent Image.height%/image
。这些字符串将被指定的节点值替换。
有时,节点名称可能相当大,或者多个节点可能共享相同的名称。在这些情况下,可以在节点选项菜单下的 properties>Node name for S&R
中指定一个特定的名称。
ComfyUI 也可以插入日期信息,格式为 %date:FORMAT%
,其中格式识别以下说明符:
说明符 | 描述 |
---|---|
d 或 dd | 日 |
M 或 MM | 月 |
yy 或 yyyy | 年 |
h 或 hh | 小时 |
m 或 mm | 分钟 |
s 或 ss | 秒 |
ComfyUI 提供了以下快捷键,您可以使用它们来加快工作流程:
快捷键 | 说明 |
---|---|
ctrl+enter | 将当前图形排入生成队列 |
ctrl+shift+enter | 将当前图形作为第一个排入生成队列 |
ctrl+s | 保存工作流 |
ctrl+o | 载入工作流 |
ctrl+a | 选择所有节点 |
ctrl+m | 静音/取消静音所选节点 |
delete | 删除所选节点 |
backspace | 删除所选节点 |
ctrl+delete | 删除当前图形 |
ctrl+backspace | 删除当前图形 |
space | 按住并移动光标时移动画布 |
ctrl+lbutton | 将点击的节点添加到选择 |
shift+lbutton | 将点击的节点添加到选择 |
ctrl+c | 复制所选节点 |
ctrl+v | 粘贴所选节点同时断开连接 |
ctrl+shift+v | 粘贴所选节点同时保持传入连接 |
shift+lbutton | 按住并拖动以同时移动多个所选节点 |
ctrl+d | 载入默认图形 |
q | 切换队列的可见性 |
h | 切换历史记录的可见性 |
r | 刷新图形 |
2 X lbutton | 双击打开节点快速搜索调色板 |
rbutton | 打开节点菜单 |
ComfyUI 提供了多种方式来微调您的提示,以更好地反映您的意图。
\\n通过使用以下语法将提示的指定部分括在括号中,可以提高或降低提示部分的重要性:(prompt:weight)
。例如,如果我们有一个提示 flowers inside a blue vase
,并且我们希望扩散模型强调花卉,我们可以尝试将我们的提示改写为:(flowers:1.2) inside a blue vase
。嵌套循环会相乘它们内部的权重,例如在提示 ((flowers:1.2):.5) inside a blue vase
中,花朵最终获得 0.6 的权重。仅使用括号而不指定权重是 (prompt:1.1)
的简写,例如 (flower)
等于 (flower:1.1)
。要在提示中使用括号,它们必须被转义,例如 \\\\(1990\\\\)
。ComfyUI 也可以通过快捷键 ctrl+arrow-up 和 ctrl+arrow-down 为提示的选定部分添加适当的加权语法。这些快捷方式提高或降低权重的量可以在设置中调整。
🚀🚗🚚🏃
ComfyUI Mixlab Nodes 是一个强大的工具集合,旨在通过简单的配置,将 workflow 转变为一个 Web APP,并支持实时设计、语音识别与合成、GPT 集成、图像处理等多种功能。本文档将详细介绍其功能、安装及使用方法。
使用 AppInfo 节点,可以通过简单的配置,把 workflow 转变为一个 Web APP。
',9),n=[l];function r(E,s){return i(),a("div",null,n)}const p=e(o,[["render",r],["__file","index.html.vue"]]),c=JSON.parse('{"path":"/posts/mixlab_nodes/","title":"ComfyUI Mixlab Nodes 教程","lang":"en-US","frontmatter":{"description":"ComfyUI Mixlab Nodes 教程 🚀🚗🚚🏃 目录 简介 主要功能 Workflow-to-APP Real-time Design Speech Recognition & Synthesis GPT 支持 Prompt 功能 图层处理 3D 图像处理 图像处理 风格应用 实用工具 其他节点 模型下载 安装指南 中文社区 讨论区 ...","head":[["meta",{"property":"og:url","content":"https://www.mixcomfy.com/awesome-comfyui-workflow/posts/mixlab_nodes/"}],["meta",{"property":"og:site_name","content":"ComfyUI中文爱好者社区"}],["meta",{"property":"og:title","content":"ComfyUI Mixlab Nodes 教程"}],["meta",{"property":"og:description","content":"ComfyUI Mixlab Nodes 教程 🚀🚗🚚🏃 目录 简介 主要功能 Workflow-to-APP Real-time Design Speech Recognition & Synthesis GPT 支持 Prompt 功能 图层处理 3D 图像处理 图像处理 风格应用 实用工具 其他节点 模型下载 安装指南 中文社区 讨论区 ..."}],["meta",{"property":"og:type","content":"article"}],["meta",{"property":"og:locale","content":"en-US"}],["meta",{"property":"og:updated_time","content":"2024-06-06T08:49:49.695Z"}],["meta",{"property":"article:author","content":"shadow"}],["meta",{"property":"article:modified_time","content":"2024-05-28T09:13:14.000Z"}],["meta",{"property":"og:modified_time","content":"2024-06-06T08:49:49.695Z"}],["meta",{"name":"twitter:title","content":"ComfyUI Mixlab Nodes 教程"}],["meta",{"name":"twitter:description","content":"ComfyUI Mixlab Nodes 教程 🚀🚗🚚🏃 目录 简介 主要功能 Workflow-to-APP Real-time Design Speech Recognition & Synthesis GPT 支持 Prompt 功能 图层处理 3D 图像处理 图像处理 风格应用 实用工具 其他节点 模型下载 安装指南 中文社区 讨论区 ..."}],["meta",{"name":"twitter:card","content":"summary_large_image"}],["meta",{"name":"twitter:site","content":"mixlabPro"}],["meta",{"name":"twitter:creator","content":"mixlabPro"}],["meta",{"name":"share_config","content":"buffer,email,facebook,flipboard,hackernews,instapaper,line,linkedin,odnoklassniki,pinterest,pocket,quora,reddit,tumblr,twitter,vk,weibo,wordpress,xing,yammer"}],["script",{"type":"application/ld+json"},"{\\"@context\\":\\"https://schema.org\\",\\"@type\\":\\"Article\\",\\"headline\\":\\"ComfyUI Mixlab Nodes 教程\\",\\"image\\":[\\"\\"],\\"dateModified\\":\\"2024-05-28T09:13:14.000Z\\",\\"author\\":[{\\"@type\\":\\"Person\\",\\"name\\":\\"shadow\\"}]}"]]},"headers":[{"level":2,"title":"目录","slug":"目录","link":"#目录","children":[]},{"level":2,"title":"简介","slug":"简介","link":"#简介","children":[]},{"level":2,"title":"主要功能","slug":"主要功能","link":"#主要功能","children":[{"level":3,"title":"Workflow-to-APP","slug":"workflow-to-app","link":"#workflow-to-app","children":[]}]}],"git":{"updatedTime":1716887594000,"contributors":[{"name":"shadowcz007","email":"chizhiwei007@163.com","commits":2}]},"filePathRelative":"posts/mixlab_nodes/index.md","autoDesc":true,"excerpt":"\\n🚀🚗🚚🏃
\\ncontrolnet 预处理器 comfyui_controlnet_aux 、 ComfyUI-Advanced-ControlNet、ComfyUI_IPAdapter_plus 等
模型下载:
在extra_model_paths.yaml
文件中记得配置 ipadapter
模型的地址
下载后记得重命名,存放地址:/ComfyUI/models/clip_vision
存放地址 /ComfyUI/models/ipadapter
light 版本,轻影响 ip-adapter_sd15_light_v11.bin
plus 版本,高强度 ip-adapter-plus_sd15.safetensors
plus 版本,面部增强,适用于肖像 ip-adapter-plus-face_sd15.safetensors
full 版本,更强的面部模型 ip-adapter-full-face_sd15.safetensors
vit-G 基础模型, bigG clip vision encoder ip-adapter_sd15_vit-G.safetensors
vit-h 基础版本 ip-adapter_sdxl_vit-h.safetensors
plus 版本,面部模型 ip-adapter-plus-face_sdxl_vit-h.safetensors
vit-G SDXL 模型 bigG clip vision encoder ip-adapter_sdxl.safetensors
FaceID 模型需要 insightface
, 记得此依赖安装正常,如果有问题可以查看
Most FaceID models require a LoRA. If you use the IPAdapter Unified Loader FaceID
it will be loaded automatically if you follow the naming convention. Otherwise you have to load them manually, be careful each FaceID model has to be paired with its own specific LoRA.
/ComfyUI/models/loras
All models can be found on huggingface.
',21),s=[n];function i(p,l){return r(),a("div",null,s)}const c=e(o,[["render",i],["__file","index.html.vue"]]),f=JSON.parse('{"path":"/posts/tutorial/custom_nodes/","title":"常用的自定义节点","lang":"en-US","frontmatter":{"description":"常用的自定义节点 controlnet 预处理器 comfyui_controlnet_aux 、 ComfyUI-Advanced-ControlNet、ComfyUI_IPAdapter_plus 等 ComfyUI_IPAdapter_plus 模型下载: 在extra_model_paths.yaml文件中记得配置 ipadapter 模型的地...","head":[["meta",{"property":"og:url","content":"https://www.mixcomfy.com/awesome-comfyui-workflow/posts/tutorial/custom_nodes/"}],["meta",{"property":"og:site_name","content":"ComfyUI中文爱好者社区"}],["meta",{"property":"og:title","content":"常用的自定义节点"}],["meta",{"property":"og:description","content":"常用的自定义节点 controlnet 预处理器 comfyui_controlnet_aux 、 ComfyUI-Advanced-ControlNet、ComfyUI_IPAdapter_plus 等 ComfyUI_IPAdapter_plus 模型下载: 在extra_model_paths.yaml文件中记得配置 ipadapter 模型的地..."}],["meta",{"property":"og:type","content":"article"}],["meta",{"property":"og:locale","content":"en-US"}],["meta",{"property":"og:updated_time","content":"2024-06-06T08:49:49.695Z"}],["meta",{"property":"article:author","content":"shadow"}],["meta",{"property":"article:modified_time","content":"2024-05-28T09:13:14.000Z"}],["meta",{"property":"og:modified_time","content":"2024-06-06T08:49:49.695Z"}],["meta",{"name":"twitter:title","content":"常用的自定义节点"}],["meta",{"name":"twitter:description","content":"常用的自定义节点 controlnet 预处理器 comfyui_controlnet_aux 、 ComfyUI-Advanced-ControlNet、ComfyUI_IPAdapter_plus 等 ComfyUI_IPAdapter_plus 模型下载: 在extra_model_paths.yaml文件中记得配置 ipadapter 模型的地..."}],["meta",{"name":"twitter:card","content":"summary_large_image"}],["meta",{"name":"twitter:site","content":"mixlabPro"}],["meta",{"name":"twitter:creator","content":"mixlabPro"}],["meta",{"name":"share_config","content":"buffer,email,facebook,flipboard,hackernews,instapaper,line,linkedin,odnoklassniki,pinterest,pocket,quora,reddit,tumblr,twitter,vk,weibo,wordpress,xing,yammer"}],["script",{"type":"application/ld+json"},"{\\"@context\\":\\"https://schema.org\\",\\"@type\\":\\"Article\\",\\"headline\\":\\"常用的自定义节点\\",\\"image\\":[\\"\\"],\\"dateModified\\":\\"2024-05-28T09:13:14.000Z\\",\\"author\\":[{\\"@type\\":\\"Person\\",\\"name\\":\\"shadow\\"}]}"]]},"headers":[{"level":2,"title":"ComfyUI_IPAdapter_plus","slug":"comfyui-ipadapter-plus","link":"#comfyui-ipadapter-plus","children":[{"level":3,"title":"视觉编码器","slug":"视觉编码器","link":"#视觉编码器","children":[]},{"level":3,"title":"IPA 模型","slug":"ipa-模型","link":"#ipa-模型","children":[]}]}],"git":{"updatedTime":1716887594000,"contributors":[{"name":"shadowcz007","email":"chizhiwei007@163.com","commits":3}]},"filePathRelative":"posts/tutorial/custom_nodes/index.md","autoDesc":true,"excerpt":"\\ncontrolnet 预处理器 comfyui_controlnet_aux 、 ComfyUI-Advanced-ControlNet、ComfyUI_IPAdapter_plus 等
\\n模型下载:
\\n在extra_model_paths.yaml
文件中记得配置 ipadapter
模型的地址
下载后记得重命名,存放地址:/ComfyUI/models/clip_vision
Shaping a New Era of Global Innovation and Collaboration
ComfyUI中文社区是由Mixlab孵化的创造力社区,聚集了创新者和创作者。我们的使命是提供一个开放的平台,促进创新思维和创造力的交流与发展。在这个社区中,我们鼓励创作者们展示他们的创作、分享他们的创新经验,并与其他创新者进行合作和合作。我们相信通过这种跨界的合作和交流,可以激发更多的创意和创新,推动中文创作者在设计领域的发展和影响力的提升。
作为由Mixlab孵化的社区,我们致力于打造一个具有创新和创造力的氛围。我们提供各种资源和工具,帮助创作者们实现他们的创意和创新项目。通过组织创新活动、分享创新案例和举办创新工作坊,我们鼓励创作者们不断挑战自我、突破传统思维,并推动创新的实践和应用。
同时,我们也重视跨界合作和跨文化交流。我们欢迎来自不同领域和文化背景的创作者加入我们的社区,分享他们的专业知识、经验和创新思维。通过这种跨界合作和跨文化交流,我们相信可以打破传统的界限,融合不同领域的创新思维,产生更具有影响力和可持续发展的创意和创新项目。
让我们携手努力,共同塑造一个充满创造力和创新精神的ComfyUI中文社区!
',6),i=[r];function m(p,c){return t(),o("div",null,i)}const l=e(n,[["render",m],["__file","mission.html.vue"]]),f=JSON.parse('{"path":"/posts/mission.html","title":"ComfyUI中文社区","lang":"en-US","frontmatter":{"description":"ComfyUI中文社区 Shaping a New Era of Global Innovation and Collaboration ComfyUI中文社区是由Mixlab孵化的创造力社区,聚集了创新者和创作者。我们的使命是提供一个开放的平台,促进创新思维和创造力的交流与发展。在这个社区中,我们鼓励创作者们展示他们的创作、分享他们的创新经验,并与其...","head":[["meta",{"property":"og:url","content":"https://www.mixcomfy.com/awesome-comfyui-workflow/posts/mission.html"}],["meta",{"property":"og:site_name","content":"ComfyUI中文爱好者社区"}],["meta",{"property":"og:title","content":"ComfyUI中文社区"}],["meta",{"property":"og:description","content":"ComfyUI中文社区 Shaping a New Era of Global Innovation and Collaboration ComfyUI中文社区是由Mixlab孵化的创造力社区,聚集了创新者和创作者。我们的使命是提供一个开放的平台,促进创新思维和创造力的交流与发展。在这个社区中,我们鼓励创作者们展示他们的创作、分享他们的创新经验,并与其..."}],["meta",{"property":"og:type","content":"article"}],["meta",{"property":"og:locale","content":"en-US"}],["meta",{"property":"og:updated_time","content":"2024-06-06T08:49:49.694Z"}],["meta",{"property":"article:author","content":"shadow"}],["meta",{"property":"article:modified_time","content":"2024-04-20T04:19:26.000Z"}],["meta",{"property":"og:modified_time","content":"2024-06-06T08:49:49.694Z"}],["meta",{"name":"twitter:title","content":"ComfyUI中文社区"}],["meta",{"name":"twitter:description","content":"ComfyUI中文社区 Shaping a New Era of Global Innovation and Collaboration ComfyUI中文社区是由Mixlab孵化的创造力社区,聚集了创新者和创作者。我们的使命是提供一个开放的平台,促进创新思维和创造力的交流与发展。在这个社区中,我们鼓励创作者们展示他们的创作、分享他们的创新经验,并与其..."}],["meta",{"name":"twitter:card","content":"summary_large_image"}],["meta",{"name":"twitter:site","content":"mixlabPro"}],["meta",{"name":"twitter:creator","content":"mixlabPro"}],["meta",{"name":"share_config","content":"buffer,email,facebook,flipboard,hackernews,instapaper,line,linkedin,odnoklassniki,pinterest,pocket,quora,reddit,tumblr,twitter,vk,weibo,wordpress,xing,yammer"}],["script",{"type":"application/ld+json"},"{\\"@context\\":\\"https://schema.org\\",\\"@type\\":\\"Article\\",\\"headline\\":\\"ComfyUI中文社区\\",\\"image\\":[\\"\\"],\\"dateModified\\":\\"2024-04-20T04:19:26.000Z\\",\\"author\\":[{\\"@type\\":\\"Person\\",\\"name\\":\\"shadow\\"}]}"]]},"headers":[],"git":{"updatedTime":1713586766000,"contributors":[{"name":"shadowcz007","email":"chizhiwei007@163.com","commits":1}]},"filePathRelative":"posts/mission.md","autoDesc":true,"excerpt":"\\n\\n\\nShaping a New Era of Global Innovation and Collaboration
\\n
ComfyUI中文社区是由Mixlab孵化的创造力社区,聚集了创新者和创作者。我们的使命是提供一个开放的平台,促进创新思维和创造力的交流与发展。在这个社区中,我们鼓励创作者们展示他们的创作、分享他们的创新经验,并与其他创新者进行合作和合作。我们相信通过这种跨界的合作和交流,可以激发更多的创意和创新,推动中文创作者在设计领域的发展和影响力的提升。
"}');export{l as comp,f as data}; diff --git a/docs/assets/prompt.html-9pbTPYP-.js b/docs/assets/prompt.html-9pbTPYP-.js deleted file mode 100644 index 6f441ad..0000000 --- a/docs/assets/prompt.html-9pbTPYP-.js +++ /dev/null @@ -1 +0,0 @@ -import{_ as t,c as o,o as r,b as e}from"./app-BFngqcKR.js";const n={},a=e("p",null,[e("a",{href:"https://www.douyin.com/shipin/7370377473382451237",target:"_blank",rel:"noopener noreferrer"},"视频地址")],-1),i=e("p",null,"如果你一直都在纠结怎么写好提示词,那这个工作流你一定要了解一下,它可以支持中文输入关键词,而且我们只需要写几个简单的关键词,它就会自动对关键词进行联想,扩展出很多相关的内容点,添加提示词列对,就能生成高质量图像。 比如我们在这边用中文写的是一个女孩、城市废墟、战损、科幻,右边就会根据这些关键词进行补充,增加了很多细节上的描述,还有艺术风格、灯光、色彩、质量等等, 这些都会自动翻译成英文。",-1),p=e("p",null,"这边有一个小开关需要注意默认是打开的,当切换成 off 的时候,他仍然会把中文关键词翻译成英文,但是这时候他不会进行联想补充,而是直接根据这些词生成图像。在模型的选择上,我比较建议选择这 这个扎根呢 xl 模型,这也是我测试了大量模型后发现他无论是在提示词的理解还是图像的画质上,都是比较优秀的一个模型。",-1),c=e("p",null,"这个模型和工作流,包括需要用到的节点,我都会打包好分享给大家,有什么问题也可以评论区留言,我是小同学,我们下期再见哦!",-1),m=[a,i,p,c];function s(l,d){return r(),o("div",null,m)}const _=t(n,[["render",s],["__file","prompt.html.vue"]]),f=JSON.parse('{"path":"/posts/discovery/prompt.html","title":"","lang":"en-US","frontmatter":{"description":"视频地址 如果你一直都在纠结怎么写好提示词,那这个工作流你一定要了解一下,它可以支持中文输入关键词,而且我们只需要写几个简单的关键词,它就会自动对关键词进行联想,扩展出很多相关的内容点,添加提示词列对,就能生成高质量图像。 比如我们在这边用中文写的是一个女孩、城市废墟、战损、科幻,右边就会根据这些关键词进行补充,增加了很多细节上的描述,还有艺术风格、灯...","head":[["meta",{"property":"og:url","content":"https://www.mixcomfy.com/awesome-comfyui-workflow/posts/discovery/prompt.html"}],["meta",{"property":"og:site_name","content":"ComfyUI中文爱好者社区"}],["meta",{"property":"og:description","content":"视频地址 如果你一直都在纠结怎么写好提示词,那这个工作流你一定要了解一下,它可以支持中文输入关键词,而且我们只需要写几个简单的关键词,它就会自动对关键词进行联想,扩展出很多相关的内容点,添加提示词列对,就能生成高质量图像。 比如我们在这边用中文写的是一个女孩、城市废墟、战损、科幻,右边就会根据这些关键词进行补充,增加了很多细节上的描述,还有艺术风格、灯..."}],["meta",{"property":"og:type","content":"article"}],["meta",{"property":"og:locale","content":"en-US"}],["meta",{"property":"og:updated_time","content":"2024-06-06T08:49:49.694Z"}],["meta",{"property":"article:author","content":"shadow"}],["meta",{"property":"article:modified_time","content":"2024-06-06T08:40:41.000Z"}],["meta",{"property":"og:modified_time","content":"2024-06-06T08:49:49.694Z"}],["meta",{"name":"twitter:description","content":"视频地址 如果你一直都在纠结怎么写好提示词,那这个工作流你一定要了解一下,它可以支持中文输入关键词,而且我们只需要写几个简单的关键词,它就会自动对关键词进行联想,扩展出很多相关的内容点,添加提示词列对,就能生成高质量图像。 比如我们在这边用中文写的是一个女孩、城市废墟、战损、科幻,右边就会根据这些关键词进行补充,增加了很多细节上的描述,还有艺术风格、灯..."}],["meta",{"name":"twitter:card","content":"summary_large_image"}],["meta",{"name":"twitter:site","content":"mixlabPro"}],["meta",{"name":"twitter:creator","content":"mixlabPro"}],["meta",{"name":"share_config","content":"buffer,email,facebook,flipboard,hackernews,instapaper,line,linkedin,odnoklassniki,pinterest,pocket,quora,reddit,tumblr,twitter,vk,weibo,wordpress,xing,yammer"}],["script",{"type":"application/ld+json"},"{\\"@context\\":\\"https://schema.org\\",\\"@type\\":\\"Article\\",\\"headline\\":\\"\\",\\"image\\":[\\"\\"],\\"dateModified\\":\\"2024-06-06T08:40:41.000Z\\",\\"author\\":[{\\"@type\\":\\"Person\\",\\"name\\":\\"shadow\\"}]}"]]},"headers":[],"git":{"updatedTime":1717663241000,"contributors":[{"name":"shadowcz007","email":"chizhiwei007@163.com","commits":1}]},"filePathRelative":"posts/discovery/prompt.md","autoDesc":true,"excerpt":"\\n如果你一直都在纠结怎么写好提示词,那这个工作流你一定要了解一下,它可以支持中文输入关键词,而且我们只需要写几个简单的关键词,它就会自动对关键词进行联想,扩展出很多相关的内容点,添加提示词列对,就能生成高质量图像。 比如我们在这边用中文写的是一个女孩、城市废墟、战损、科幻,右边就会根据这些关键词进行补充,增加了很多细节上的描述,还有艺术风格、灯光、色彩、质量等等, 这些都会自动翻译成英文。
"}');export{_ as comp,f as data}; diff --git a/docs/assets/style-B9yQN7kb.css b/docs/assets/style-B9yQN7kb.css deleted file mode 100644 index 3ed2cc1..0000000 --- a/docs/assets/style-B9yQN7kb.css +++ /dev/null @@ -1 +0,0 @@ -@charset "UTF-8";.vp-back-to-top-button{position:fixed!important;bottom:4rem;inset-inline-end:1rem;z-index:100;width:48px;height:48px;padding:12px;border-width:0;border-radius:50%;background:var(--back-to-top-bg-color);color:var(--back-to-top-color);box-shadow:2px 2px 10px 4px var(--back-to-top-shadow);cursor:pointer}@media (max-width: 959px){.vp-back-to-top-button{transform:scale(.8);transform-origin:100% 100%}}@media print{.vp-back-to-top-button{display:none}}.vp-back-to-top-button:hover{color:var(--back-to-top-color-hover)}.vp-back-to-top-button .back-to-top-icon{overflow:hidden;width:24px;height:24px;margin:0 auto;background:var(--back-to-top-icon-color);-webkit-mask-image:var(--back-to-top-icon);mask-image:var(--back-to-top-icon);-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:cover;mask-size:cover}.vp-scroll-progress{position:absolute;right:-2px;bottom:-2px;width:52px;height:52px}.vp-scroll-progress svg{width:100%;height:100%}.vp-scroll-progress circle{opacity:.9;transform:rotate(-90deg);transform-origin:50% 50%}.back-to-top-enter-active,.back-to-top-leave-active{transition:opacity .3s}.back-to-top-enter-from,.back-to-top-leave-to{opacity:0}:root{--back-to-top-z-index: 5;--back-to-top-icon: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2048%2048'%3e%3cpath%20fill='none'%20stroke='currentColor'%20stroke-linecap='round'%20stroke-linejoin='round'%20stroke-width='4'%20d='M24.008%2014.1V42M12%2026l12-12l12%2012M12%206h24'%20/%3e%3c/svg%3e");--back-to-top-bg-color: #fff;--back-to-top-color: #3eaf7c;--back-to-top-icon-color: currentColor;--back-to-top-color-hover: #71cda3;--back-to-top-shadow: rgb(0 0 0 / 20%)}:root{--code-copy-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' height='20' width='20' stroke='rgba(128,128,128,1)' stroke-width='2'%3e%3cpath stroke-linecap='round' stroke-linejoin='round' d='M9 5H7a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V7a2 2 0 0 0-2-2h-2M9 5a2 2 0 0 0 2 2h2a2 2 0 0 0 2-2M9 5a2 2 0 0 1 2-2h2a2 2 0 0 1 2 2' /%3e%3c/svg%3e");--code-copied-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' height='20' width='20' stroke='rgba(128,128,128,1)' stroke-width='2'%3e%3cpath stroke-linecap='round' stroke-linejoin='round' d='M9 5H7a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V7a2 2 0 0 0-2-2h-2M9 5a2 2 0 0 0 2 2h2a2 2 0 0 0 2-2M9 5a2 2 0 0 1 2-2h2a2 2 0 0 1 2 2m-6 9 2 2 4-4' /%3e%3c/svg%3e");--copy-code-color: #9e9e9e;--copy-code-hover: rgb(0 0 0 / 50%)}.vp-copy-code-button{position:absolute;top:.5em;right:.5em;z-index:5;width:2.5rem;height:2.5rem;padding:0;border-width:0;border-radius:.5rem;background:transparent;outline:none;opacity:0;cursor:pointer;transition:opacity .4s}@media print{.vp-copy-code-button{display:none}}.vp-copy-code-button:focus,.vp-copy-code-button.copied{opacity:1}.vp-copy-code-button:hover,.vp-copy-code-button.copied{background:var(--copy-code-hover)}.vp-copy-code-button.copied:before{-webkit-mask-image:var(--code-copied-icon);mask-image:var(--code-copied-icon)}.vp-copy-code-button.copied:after{content:attr(data-copied);position:absolute;top:0;right:calc(100% + .25rem);display:block;height:1.25rem;padding:.625rem;border-radius:.5rem;background:var(--copy-code-hover);color:var(--copy-code-color);font-weight:500;line-height:1.25rem;white-space:nowrap}.vp-copy-code-button:before{content:"";width:1.25rem;height:1.25rem;padding:.625rem;background:currentcolor;color:var(--copy-code-color);font-size:1.25rem;-webkit-mask-image:var(--code-copy-icon);mask-image:var(--code-copy-icon);-webkit-mask-position:50%;mask-position:50%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:1em;mask-size:1em}.copy-code-disabled .vp-copy-code-button{display:none}body:not(.copy-code-disabled) div[class*=language-]:hover:before{display:none}body:not(.copy-code-disabled) div[class*=language-]:hover .vp-copy-code-button{opacity:1}:root{--medium-zoom-z-index: 100;--medium-zoom-bg-color: #ffffff;--medium-zoom-opacity: 1}.medium-zoom-overlay{background-color:var(--medium-zoom-bg-color)!important;z-index:var(--medium-zoom-z-index)}.medium-zoom-overlay~img{z-index:calc(var(--medium-zoom-z-index) + 1)}.medium-zoom--opened .medium-zoom-overlay{opacity:var(--medium-zoom-opacity)}:root{--nprogress-color: #29d;--nprogress-z-index: 1031}#nprogress{pointer-events:none}#nprogress .bar{background:var(--nprogress-color);position:fixed;z-index:var(--nprogress-z-index);top:0;left:0;width:100%;height:2px}.vp-page-meta{max-width:var(--content-width);margin:0 auto;padding:.75rem 2.5rem;display:flex;flex-wrap:wrap;justify-content:space-between;overflow:auto}@media (max-width: 959px){.vp-page-meta{padding:2rem}}@media (max-width: 419px){.vp-page-meta{padding:1.5rem}}@media print{.vp-page-meta{margin:0!important;padding-inline:0!important}}@media (max-width: 719px){.vp-page-meta{display:block}}.vp-page-meta .vp-meta-item{flex-grow:1}.vp-page-meta .vp-meta-item .vp-meta-label{font-weight:500}.vp-page-meta .vp-meta-item .vp-meta-label:not(a){color:var(--c-text-lighter)}.vp-page-meta .vp-meta-item .vp-meta-info{color:var(--c-text-quote);font-weight:400}.vp-page-meta .git-info{text-align:end}.vp-page-meta .edit-link{margin-top:.25rem;margin-bottom:.25rem;margin-inline-end:.5rem;font-size:14px}@media print{.vp-page-meta .edit-link{display:none}}.vp-page-meta .edit-link .icon{position:relative;bottom:-.125em;width:1em;height:1em;margin-inline-end:.25em}.vp-page-meta .last-updated,.vp-page-meta .contributors{margin-top:.25rem;margin-bottom:.25rem;font-size:14px}@media (max-width: 719px){.vp-page-meta .last-updated,.vp-page-meta .contributors{font-size:13px;text-align:start}}.vp-page-nav{display:flex;flex-wrap:wrap;max-width:var(--content-width, 740px);min-height:2rem;margin-inline:auto;margin-top:0;padding-block:.5rem;padding-inline:2rem;border-top:1px solid var(--c-border);transition:border-top var(--t-color);padding-top:1rem;padding-bottom:0}@media (max-width: 959px){.vp-page-nav{padding-inline:1rem}}@media print{.vp-page-nav{display:none}}.vp-page-nav .route-link{display:inline-block;flex-grow:1;margin:.25rem;padding:.25rem .5rem;border:1px solid var(--c-border);border-radius:.25rem}.vp-page-nav .route-link:hover{background:var(--c-bg-light)}.vp-page-nav .route-link .hint{color:var(--c-text-quote);font-size:.875rem;line-height:2}.vp-page-nav .prev{text-align:start}.vp-page-nav .next{text-align:end}:root{--c-brand: #3eaf7c;--c-brand-light: #4abf8a;--c-bg: #ffffff;--c-bg-light: #f3f4f5;--c-bg-lighter: #eeeeee;--c-bg-dark: #ebebec;--c-bg-darker: #e6e6e6;--c-bg-navbar: var(--c-bg);--c-bg-sidebar: var(--c-bg);--c-bg-arrow: #cccccc;--c-text: #2c3e50;--c-text-accent: var(--c-brand);--c-text-light: #3a5169;--c-text-lighter: #4e6e8e;--c-text-lightest: #6a8bad;--c-text-quote: #999999;--c-border: #eaecef;--c-border-dark: #dfe2e5;--c-tip: #42b983;--c-tip-bg: var(--c-bg-light);--c-tip-title: var(--c-text);--c-tip-text: var(--c-text);--c-tip-text-accent: var(--c-text-accent);--c-warning: #ffc310;--c-warning-bg: #fffae3;--c-warning-bg-light: #fff3ba;--c-warning-bg-lighter: #fff0b0;--c-warning-border-dark: #f7dc91;--c-warning-details-bg: #fff5ca;--c-warning-title: #f1b300;--c-warning-text: #746000;--c-warning-text-accent: #edb100;--c-warning-text-light: #c1971c;--c-warning-text-quote: #ccab49;--c-danger: #f11e37;--c-danger-bg: #ffe0e0;--c-danger-bg-light: #ffcfde;--c-danger-bg-lighter: #ffc9c9;--c-danger-border-dark: #f1abab;--c-danger-details-bg: #ffd4d4;--c-danger-title: #ed1e2c;--c-danger-text: #660000;--c-danger-text-accent: #bd1a1a;--c-danger-text-light: #b5474d;--c-danger-text-quote: #c15b5b;--c-details-bg: #eeeeee;--c-badge-tip: var(--c-tip);--c-badge-warning: #ecc808;--c-badge-warning-text: var(--c-bg);--c-badge-danger: #dc2626;--c-badge-danger-text: var(--c-bg);--c-code-group-tab-title: rgba(255, 255, 255, .9);--c-code-group-tab-bg: var(--code-bg-color);--c-code-group-tab-outline: var(var(--c-code-group-tab-title));--c-code-group-tab-active-border: var(--c-brand);--t-color: .3s ease;--t-transform: .3s ease;--code-bg-color: #282c34;--code-hl-bg-color: rgba(0, 0, 0, .66);--code-hl-error-bg-color: rgba(244, 63, 94, .16);--code-hl-warning-bg-color: rgba(255, 193, 7, .16);--code-line-diff-remove-color: rgba(244, 63, 94, .16);--code-line-diff-remove-symbol-color: #e0575b;--code-line-diff-add-color: rgba(16, 185, 129, .16);--code-line-diff-add-symbol-color: #298459;--code-ln-color: #9e9e9e;--code-ln-wrapper-width: 3.5rem;--font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;--font-family-code: Consolas, Monaco, "Andale Mono", "Ubuntu Mono", monospace;--navbar-height: 3.6rem;--navbar-padding-v: .7rem;--navbar-padding-h: 1.5rem;--sidebar-width: 20rem;--sidebar-width-mobile: calc(var(--sidebar-width) * .82);--content-width: 740px;--homepage-width: 960px;--external-link-icon: url("data:image/svg+xml, %3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' %3E%3Cpath d='M0 0h24v24H0V0z' fill='none' /%3E%3Cpath d='M9 5v2h6.59L4 18.59 5.41 20 17 8.41V15h2V5H9z' /%3E%3C/svg%3E");--external-link-icon-color: var(--c-text-quote)}.vp-back-to-top-button{--back-to-top-color: var(--c-brand);--back-to-top-color-hover: var(--c-brand-light);--back-to-top-bg-color: var(--c-bg)}.vp-catalog-wrapper{--catalog-bg-color: var(--c-bg);--catalog-bg-secondary-color: var(--c-bg-dark);--catalog-border-color: var(--c-border);--catalog-active-color: var(--c-brand);--catalog-hover-color: var(--c-brand-light)}.waline-wrapper{--waline-bg-color: var(--c-bg);--waline-bg-color-light: var(--c-bg-light);--waline-text-color: var(--c-color);--waline-border: 1px solid var(--c-border);--waline-border-color: var(--c-border);--waline-theme-color: var(--c-brand);--waline-active-color: var(--c-brand-light)}.DocSearch{--docsearch-primary-color: var(--c-brand);--docsearch-text-color: var(--c-text);--docsearch-highlight-color: var(--c-brand);--docsearch-muted-color: var(--c-text-quote);--docsearch-container-background: rgba(9, 10, 17, .8);--docsearch-modal-background: var(--c-bg-light);--docsearch-searchbox-background: var(--c-bg-lighter);--docsearch-searchbox-focus-background: var(--c-bg);--docsearch-searchbox-shadow: inset 0 0 0 2px var(--c-brand);--docsearch-hit-color: var(--c-text-light);--docsearch-hit-active-color: var(--c-bg);--docsearch-hit-background: var(--c-bg);--docsearch-hit-shadow: 0 1px 3px 0 var(--c-border-dark);--docsearch-footer-background: var(--c-bg)}.medium-zoom-overlay{--medium-zoom-bg-color: var(--c-bg)}.vp-notice-wrapper{--notice-color: var(--c-text);--notice-bg-color: var(--c-bg);--notice-primary-color: var(--c-brand);--notice-primary-text-color: var(--c-bg);--notice-primary-hover-color: var(--c-brand-light);--notice-button-color: var(--c-bg-light);--notice-button-hover-color: var(--c-bg-lighter)}#nprogress{--nprogress-color: var(--c-brand)}body{--photo-swipe-bullet: var(--c-bg);--photo-swipe-bullet-active: var(--c-brand)}body{--pwa-text-color: var(--c-text);--pwa-bg-color: var(--c-bg);--pwa-border-color: var(--c-brand);--pwa-btn-text-color: var(--c-bg);--pwa-btn-bg-color: var(--c-brand);--pwa-btn-hover-bg-color: var(--c-brand-light)}.redirect-modal-mask{--redirect-bg-color: var(--c-bg);--redirect-bg-color-light: var(--c-bg-light);--redirect-bg-color-lighter: var(--c-bg-lighter);--redirect-text-color: var(--c-text);--redirect-primary-color: var(--c-brand);--redirect-primary-hover-color: var(--c-brand-light);--redirect-primary-text-color: var(--c-bg)}.search-box{--search-bg-color: var(--c-bg);--search-accent-color: var(--c-brand);--search-text-color: var(--c-text);--search-border-color: var(--c-border);--search-item-text-color: var(--c-text-lighter);--search-item-focus-bg-color: var(--c-bg-light)}html.dark{--c-brand: #3aa675;--c-brand-light: #349469;--c-bg: #22272e;--c-bg-light: #2b313a;--c-bg-lighter: #262c34;--c-bg-dark: #343b44;--c-bg-darker: #37404c;--c-text: #adbac7;--c-text-light: #96a7b7;--c-text-lighter: #8b9eb0;--c-text-lightest: #8094a8;--c-border: #3e4c5a;--c-border-dark: #34404c;--c-tip: #318a62;--c-warning: #e0ad15;--c-warning-bg: #2d2f2d;--c-warning-bg-light: #423e2a;--c-warning-bg-lighter: #44442f;--c-warning-border-dark: #957c35;--c-warning-details-bg: #39392d;--c-warning-title: #fdca31;--c-warning-text: #d8d96d;--c-warning-text-accent: #ffbf00;--c-warning-text-light: #ddb84b;--c-warning-text-quote: #ccab49;--c-danger: #fc1e38;--c-danger-bg: #39232c;--c-danger-bg-light: #4b2b35;--c-danger-bg-lighter: #553040;--c-danger-border-dark: #a25151;--c-danger-details-bg: #482936;--c-danger-title: #fc2d3b;--c-danger-text: #ea9ca0;--c-danger-text-accent: #fd3636;--c-danger-text-light: #d9777c;--c-danger-text-quote: #d56b6b;--c-details-bg: #323843;--c-badge-warning: var(--c-warning);--c-badge-warning-text: #3c2e05;--c-badge-danger: var(--c-danger);--c-badge-danger-text: #401416;--code-hl-bg-color: #363b46}html.dark .DocSearch{--docsearch-logo-color: var(--c-text);--docsearch-modal-shadow: inset 1px 1px 0 0 #2c2e40, 0 3px 8px 0 #000309;--docsearch-key-shadow: inset 0 -2px 0 0 #282d55, inset 0 0 1px 1px #51577d, 0 2px 2px 0 rgba(3, 4, 9, .3);--docsearch-key-gradient: linear-gradient(-225deg, #444950, #1c1e21);--docsearch-footer-shadow: inset 0 1px 0 0 rgba(73, 76, 106, .5), 0 -4px 8px 0 rgba(0, 0, 0, .2)}html.dark body{--pwa-shadow-color: rgb(0 0 0 / 30%);--pwa-content-color: #ccc;--pwa-content-light-color: #999}html,body{padding:0;margin:0;background-color:var(--c-bg);transition:background-color var(--t-color)}html.dark{color-scheme:dark}html{font-size:16px}body{font-family:var(--font-family);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:1rem;color:var(--c-text)}a{font-weight:500;color:var(--c-text-accent);text-decoration:none;overflow-wrap:break-word}p a code{font-weight:400;color:var(--c-text-accent)}kbd{font-family:var(--font-family-code);color:var(--c-text);background:var(--c-bg-lighter);border:solid .15rem var(--c-border-dark);border-bottom:solid .25rem var(--c-border-dark);border-radius:.15rem;padding:0 .15em}code{font-family:var(--font-family-code);color:var(--c-text-lighter);padding:.25rem .5rem;margin:0;font-size:.875em;background-color:var(--c-bg-light);border-radius:3px;overflow-wrap:break-word;transition:background-color var(--t-color)}blockquote{font-size:1rem;color:var(--c-text-quote);border-left:.2rem solid var(--c-border-dark);margin:1rem 0;padding:.25rem 0 .25rem 1rem;overflow-wrap:break-word}blockquote>p{margin:0}ul,ol{padding-left:1.2em}strong{font-weight:600}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.25;overflow-wrap:break-word}h1:focus-visible,h2:focus-visible,h3:focus-visible,h4:focus-visible,h5:focus-visible,h6:focus-visible{outline:none}h1 .header-anchor,h2 .header-anchor,h3 .header-anchor,h4 .header-anchor,h5 .header-anchor,h6 .header-anchor{color:inherit;text-decoration:none;position:relative}h1 .header-anchor:hover:before,h2 .header-anchor:hover:before,h3 .header-anchor:hover:before,h4 .header-anchor:hover:before,h5 .header-anchor:hover:before,h6 .header-anchor:hover:before{font-size:.8em;content:"¶";position:absolute;left:-.75em;color:var(--c-brand)}h1 .header-anchor:focus-visible,h2 .header-anchor:focus-visible,h3 .header-anchor:focus-visible,h4 .header-anchor:focus-visible,h5 .header-anchor:focus-visible,h6 .header-anchor:focus-visible{outline:none}h1 .header-anchor:focus-visible:before,h2 .header-anchor:focus-visible:before,h3 .header-anchor:focus-visible:before,h4 .header-anchor:focus-visible:before,h5 .header-anchor:focus-visible:before,h6 .header-anchor:focus-visible:before{content:"¶";position:absolute;left:-.75em;color:var(--c-brand);outline:auto}h1{font-size:2.2rem}h2{font-size:1.65rem;padding-bottom:.3rem;border-bottom:1px solid var(--c-border);transition:border-color var(--t-color)}h3{font-size:1.35rem}h4{font-size:1.15rem}h5{font-size:1.05rem}h6{font-size:1rem}@media print{a[href^="http://"]:after,a[href^="https://"]:after{content:" (" attr(href) ") "}}p,ul,ol{line-height:1.7;overflow-wrap:break-word}hr{border:0;border-top:1px solid var(--c-border)}table{border-collapse:collapse;margin:1rem 0;display:block;overflow-x:auto;transition:border-color var(--t-color)}tr{border-top:1px solid var(--c-border-dark);transition:border-color var(--t-color)}tr:nth-child(2n){background-color:var(--c-bg-light);transition:background-color var(--t-color)}tr:nth-child(2n) code{background-color:var(--c-bg-dark)}th,td{padding:.6em 1em;border:1px solid var(--c-border-dark);transition:border-color var(--t-color)}.arrow{display:inline-block;vertical-align:middle;width:1em;height:1em;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='rgba(0,0,0,0.5)' d='M7.41 15.41L12 10.83l4.59 4.58L18 14l-6-6-6 6z'/%3E%3C/svg%3E");background-position:center;background-repeat:no-repeat;line-height:normal;transition:all .3s}html.dark .arrow{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='rgba(255,255,255,0.5)' d='M7.41 15.41L12 10.83l4.59 4.58L18 14l-6-6-6 6z'/%3E%3C/svg%3E")}.arrow.down{transform:rotate(180deg)}.arrow.right{transform:rotate(90deg)}.arrow.left{transform:rotate(-90deg)}.badge{display:inline-block;font-size:14px;font-weight:600;height:18px;line-height:18px;border-radius:3px;padding:0 6px;color:var(--c-bg);vertical-align:top;transition:color var(--t-color),background-color var(--t-color)}.badge.tip{background-color:var(--c-badge-tip)}.badge.warning{background-color:var(--c-badge-warning);color:var(--c-badge-warning-text)}.badge.danger{background-color:var(--c-badge-danger);color:var(--c-badge-danger-text)}.badge+.badge{margin-left:5px}code[class*=language-],pre[class*=language-]{color:#ccc;background:none;font-family:var(--font-family-code);font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;hyphens:none}pre[class*=language-]{margin:.5em 0;overflow:auto}:not(pre)>code[class*=language-],pre[class*=language-]{background:#2d2d2d}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em;white-space:normal}.token.comment,.token.block-comment,.token.prolog,.token.doctype,.token.cdata{color:#999}.token.punctuation{color:#ccc}.token.tag,.token.attr-name,.token.namespace,.token.deleted{color:#ec5975}.token.function-name{color:#6196cc}.token.boolean,.token.number,.token.function{color:#f08d49}.token.property,.token.class-name,.token.constant,.token.symbol{color:#f8c555}.token.selector,.token.important,.token.atrule,.token.keyword,.token.builtin{color:#cc99cd}.token.string,.token.char,.token.attr-value,.token.regex,.token.variable{color:#7ec699}.token.operator,.token.entity,.token.url{color:#67cdcc}.token.important,.token.bold{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}.token.inserted{color:#3eaf7c}.theme-default-content pre,.theme-default-content pre[class*=language-]{line-height:1.7;margin:.85rem 0;border-radius:6px;overflow:auto}.theme-default-content pre code,.theme-default-content pre[class*=language-] code{box-sizing:border-box;color:#fff;padding:1.3rem 1.5rem;display:block;width:-moz-fit-content;width:fit-content;min-width:100%;background-color:transparent!important;border-radius:0;overflow-wrap:unset;-webkit-font-smoothing:auto;-moz-osx-font-smoothing:auto}.theme-default-content .line-number{font-family:var(--font-family-code)}div[class*=language-]{position:relative;background-color:var(--code-bg-color);border-radius:6px}div[class*=language-]:before{content:attr(data-title);position:absolute;z-index:3;top:.8em;right:1em;font-size:.75rem;color:var(--code-ln-color)}div[class*=language-] pre,div[class*=language-] pre[class*=language-]{background:transparent!important;position:relative;z-index:1}div[class*=language-] .highlight-lines{-webkit-user-select:none;-moz-user-select:none;user-select:none;padding-top:1.3rem;position:absolute;top:0;left:0;width:100%;font-size:.875em;line-height:1.7}div[class*=language-] .highlight-lines .highlight-line{background-color:var(--code-hl-bg-color)}div[class*=language-]:not(.line-numbers-mode) .line-numbers{display:none}div[class*=language-].line-numbers-mode .highlight-lines .highlight-line{position:relative}div[class*=language-].line-numbers-mode .highlight-lines .highlight-line:before{content:" ";position:absolute;z-index:2;left:0;top:0;display:block;width:var(--code-ln-wrapper-width);height:100%}div[class*=language-].line-numbers-mode pre{margin-left:var(--code-ln-wrapper-width);vertical-align:middle}div[class*=language-].line-numbers-mode code{padding-left:1rem}div[class*=language-].line-numbers-mode .line-numbers{position:absolute;top:0;width:var(--code-ln-wrapper-width);text-align:center;color:var(--code-ln-color);padding-top:1.3rem;font-size:.875em;line-height:1.7;counter-reset:line-number}div[class*=language-].line-numbers-mode .line-numbers .line-number{position:relative;z-index:3;-webkit-user-select:none;-moz-user-select:none;user-select:none;height:1.7em}div[class*=language-].line-numbers-mode .line-numbers .line-number:before{counter-increment:line-number;content:counter(line-number)}div[class*=language-].line-numbers-mode:after{content:"";position:absolute;top:0;left:0;width:var(--code-ln-wrapper-width);height:100%;border-radius:6px 0 0 6px;border-right:1px solid var(--code-hl-bg-color)}div[class*=language-] pre code .highlighted{background-color:var(--code-hl-bg-color);transition:background-color .5s;margin:0 -24px;padding:0 24px;width:100%;display:inline-block}div[class*=language-] pre code .highlighted.error{background-color:var(--code-hl-error-bg-color)}div[class*=language-] pre code .highlighted.warning{background-color:var(--code-hl-warning-bg-color)}div[class*=language-] pre code .diff{transition:background-color .5s;margin:0 -24px;padding:0 24px;width:100%;display:inline-block}div[class*=language-] pre code .diff:before{position:absolute;left:10px}div[class*=language-] pre code .diff.remove{background-color:var(--code-line-diff-remove-color);opacity:.7}div[class*=language-] pre code .diff.remove:before{content:"-";color:var(--code-line-diff-remove-symbol-color)}div[class*=language-] pre code .diff.add{background-color:var(--code-line-diff-add-color)}div[class*=language-] pre code .diff.add:before{content:"+";color:var(--code-line-diff-add-symbol-color)}div[class*=language-] .has-focused-lines .line:not(.has-focus){filter:blur(.095rem);opacity:.7;transition:filter .35s,opacity .35s}div[class*=language-]:hover .has-focused-lines .line:not(.has-focus){filter:blur(0);opacity:1}@media (max-width: 419px){.theme-default-content div[class*=language-]{margin:.85rem -1.5rem;border-radius:0}}.code-group__nav{margin-top:.85rem;margin-bottom:calc(-1.7rem - 6px);padding-bottom:calc(1.7rem - 6px);padding-left:10px;padding-top:10px;border-top-left-radius:6px;border-top-right-radius:6px;background-color:var(--c-code-group-tab-bg)}.code-group__nav-tab{border:0;padding:5px;cursor:pointer;background-color:transparent;font-size:.85em;line-height:1.4;color:var(--c-code-group-tab-title);font-weight:600}.code-group__nav-tab:focus{outline:none}.code-group__nav-tab:focus-visible{outline:1px solid var(--c-code-group-tab-outline)}.code-group__nav-tab-active{border-bottom:var(--c-code-group-tab-active-border) 1px solid}@media (max-width: 419px){.code-group__nav{margin-left:-1.5rem;margin-right:-1.5rem;border-radius:0}}.code-group-item{display:none}.code-group-item__active{display:block}.code-group-item>pre{background-color:orange}.custom-container{transition:color var(--t-color),border-color var(--t-color),background-color var(--t-color)}.custom-container .custom-container-title{font-weight:600}.custom-container .custom-container-title:not(:only-child){margin-bottom:-.4rem}.custom-container.tip,.custom-container.warning,.custom-container.danger{padding:.1rem 1.5rem;border-left-width:.5rem;border-left-style:solid;margin:1rem 0}.custom-container.tip{border-color:var(--c-tip);background-color:var(--c-tip-bg);color:var(--c-tip-text)}.custom-container.tip .custom-container-title{color:var(--c-tip-title)}.custom-container.tip a{color:var(--c-tip-text-accent)}.custom-container.tip code{background-color:var(--c-bg-dark)}.custom-container.warning{--external-link-icon-color: var(--c-warning-text-quote);border-color:var(--c-warning);background-color:var(--c-warning-bg);color:var(--c-warning-text)}.custom-container.warning .custom-container-title{color:var(--c-warning-title)}.custom-container.warning a{color:var(--c-warning-text-accent)}.custom-container.warning blockquote{border-left-color:var(--c-warning-border-dark);color:var(--c-warning-text-quote)}.custom-container.warning code{color:var(--c-warning-text-light);background-color:var(--c-warning-bg-light)}.custom-container.warning details{background-color:var(--c-warning-details-bg)}.custom-container.warning details code{background-color:var(--c-warning-bg-lighter)}.custom-container.danger{--external-link-icon-color: var(--c-danger-text-quote);border-color:var(--c-danger);background-color:var(--c-danger-bg);color:var(--c-danger-text)}.custom-container.danger .custom-container-title{color:var(--c-danger-title)}.custom-container.danger a{color:var(--c-danger-text-accent)}.custom-container.danger blockquote{border-left-color:var(--c-danger-border-dark);color:var(--c-danger-text-quote)}.custom-container.danger code{color:var(--c-danger-text-light);background-color:var(--c-danger-bg-light)}.custom-container.danger details{background-color:var(--c-danger-details-bg)}.custom-container.danger details code{background-color:var(--c-danger-bg-lighter)}.custom-container.details{display:block;position:relative;border-radius:2px;margin:1.6em 0;padding:1.6em;background-color:var(--c-details-bg)}.custom-container.details code{background-color:var(--c-bg-darker)}.custom-container.details h4{margin-top:0}.custom-container.details figure:last-child,.custom-container.details p:last-child{margin-bottom:0;padding-bottom:0}.custom-container.details summary{outline:none;cursor:pointer}.vp-external-link-icon:after{content:"";display:inline-block;margin-top:-1px;margin-left:4px;width:11px;height:11px;background:var(--external-link-icon-color);flex-shrink:0;-webkit-mask-image:var(--external-link-icon);mask-image:var(--external-link-icon)}.external-link-icon .external-link:after{content:"";display:inline-block;margin-top:-1px;margin-left:4px;width:11px;height:11px;background:var(--external-link-icon-color);flex-shrink:0;-webkit-mask-image:var(--external-link-icon);mask-image:var(--external-link-icon)}.external-link-icon .theme-default-content a[href*="://"]:not(.no-external-link-icon):after,.external-link-icon .theme-default-content a[target=_blank]:not(.no-external-link-icon):after{content:"";display:inline-block;margin-top:-1px;margin-left:4px;width:11px;height:11px;background:var(--external-link-icon-color);flex-shrink:0;-webkit-mask-image:var(--external-link-icon);mask-image:var(--external-link-icon)}.home{padding:var(--navbar-height) 2rem 0;max-width:var(--homepage-width);margin:0 auto;display:block}.home .hero{text-align:center}.home .hero img{max-width:100%;max-height:280px;display:block;margin:3rem auto 1.5rem}.home .hero h1{font-size:3rem}.home .hero h1,.home .hero .description,.home .hero .actions{margin:1.8rem auto}.home .hero .actions{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}.home .hero .description{max-width:35rem;font-size:1.6rem;line-height:1.3;color:var(--c-text-lightest)}.home .hero .action-button{display:inline-block;font-size:1.2rem;padding:.8rem 1.6rem;border-width:2px;border-style:solid;border-radius:4px;transition:background-color var(--t-color);box-sizing:border-box}.home .hero .action-button.primary{color:var(--c-bg);background-color:var(--c-brand);border-color:var(--c-brand)}.home .hero .action-button.primary:hover{background-color:var(--c-brand-light)}.home .hero .action-button.secondary{color:var(--c-brand);background-color:var(--c-bg);border-color:var(--c-brand)}.home .hero .action-button.secondary:hover{color:var(--c-bg);background-color:var(--c-brand-light)}.home .features{border-top:1px solid var(--c-border);transition:border-color var(--t-color);padding:1.2rem 0;margin-top:2.5rem;display:flex;flex-wrap:wrap;align-items:flex-start;align-content:stretch;justify-content:space-between}.home .feature{flex-grow:1;flex-basis:30%;max-width:30%}.home .feature h2{font-size:1.4rem;font-weight:500;border-bottom:none;padding-bottom:0;color:var(--c-text-light)}.home .feature p{color:var(--c-text-lighter)}.home .theme-default-content{padding:0;margin:0}.home .footer{padding:2.5rem;border-top:1px solid var(--c-border);text-align:center;color:var(--c-text-lighter);transition:border-color var(--t-color)}@media (max-width: 719px){.home .features{flex-direction:column}.home .feature{max-width:100%;padding:0 2.5rem}}@media (max-width: 419px){.home{padding-left:1.5rem;padding-right:1.5rem}.home .hero img{max-height:210px;margin:2rem auto 1.2rem}.home .hero h1{font-size:2rem}.home .hero h1,.home .hero .description,.home .hero .actions{margin:1.2rem auto}.home .hero .description{font-size:1.2rem}.home .hero .action-button{font-size:1rem;padding:.6rem 1.2rem}.home .feature h2{font-size:1.25rem}}.page{padding-top:var(--navbar-height);padding-left:var(--sidebar-width)}.navbar{position:fixed;z-index:20;top:0;left:0;right:0;height:var(--navbar-height);box-sizing:border-box;border-bottom:1px solid var(--c-border);background-color:var(--c-bg-navbar);transition:background-color var(--t-color),border-color var(--t-color)}.sidebar{font-size:16px;width:var(--sidebar-width);position:fixed;z-index:10;margin:0;top:var(--navbar-height);left:0;bottom:0;box-sizing:border-box;border-right:1px solid var(--c-border);overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--c-brand) var(--c-border);background-color:var(--c-bg-sidebar);transition:transform var(--t-transform),background-color var(--t-color),border-color var(--t-color)}.sidebar::-webkit-scrollbar{width:7px}.sidebar::-webkit-scrollbar-track{background-color:var(--c-border)}.sidebar::-webkit-scrollbar-thumb{background-color:var(--c-brand)}.sidebar-mask{position:fixed;z-index:9;top:0;left:0;width:100vw;height:100vh;display:none}.theme-container.sidebar-open .sidebar-mask{display:block}.theme-container.sidebar-open .navbar>.toggle-sidebar-button .icon span:nth-child(1){transform:rotate(45deg) translate3d(5.5px,5.5px,0)}.theme-container.sidebar-open .navbar>.toggle-sidebar-button .icon span:nth-child(2){transform:scale3d(0,1,1)}.theme-container.sidebar-open .navbar>.toggle-sidebar-button .icon span:nth-child(3){transform:rotate(-45deg) translate3d(6px,-6px,0)}.theme-container.sidebar-open .navbar>.toggle-sidebar-button .icon span:nth-child(1),.theme-container.sidebar-open .navbar>.toggle-sidebar-button .icon span:nth-child(3){transform-origin:center}.theme-container.no-navbar .theme-default-content h1,.theme-container.no-navbar .theme-default-content h2,.theme-container.no-navbar .theme-default-content h3,.theme-container.no-navbar .theme-default-content h4,.theme-container.no-navbar .theme-default-content h5,.theme-container.no-navbar .theme-default-content h6{margin-top:1.5rem;padding-top:0}.theme-container.no-navbar .page{padding-top:0}.theme-container.no-navbar .sidebar{top:0}.theme-container.no-sidebar .sidebar{display:none}@media (max-width: 719px){.theme-container.no-sidebar .sidebar{display:block}}.theme-container.no-sidebar .page{padding-left:0}.theme-default-content a:not(.header-anchor):hover{text-decoration:underline}.theme-default-content img{max-width:100%}.theme-default-content h1,.theme-default-content h2,.theme-default-content h3,.theme-default-content h4,.theme-default-content h5,.theme-default-content h6{margin-top:calc(.5rem - var(--navbar-height));padding-top:calc(1rem + var(--navbar-height));margin-bottom:0}.theme-default-content h1:first-child,.theme-default-content h2:first-child,.theme-default-content h3:first-child,.theme-default-content h4:first-child,.theme-default-content h5:first-child,.theme-default-content h6:first-child{margin-bottom:1rem}.theme-default-content h1:first-child+p,.theme-default-content h1:first-child+pre,.theme-default-content h1:first-child+.custom-container,.theme-default-content h2:first-child+p,.theme-default-content h2:first-child+pre,.theme-default-content h2:first-child+.custom-container,.theme-default-content h3:first-child+p,.theme-default-content h3:first-child+pre,.theme-default-content h3:first-child+.custom-container,.theme-default-content h4:first-child+p,.theme-default-content h4:first-child+pre,.theme-default-content h4:first-child+.custom-container,.theme-default-content h5:first-child+p,.theme-default-content h5:first-child+pre,.theme-default-content h5:first-child+.custom-container,.theme-default-content h6:first-child+p,.theme-default-content h6:first-child+pre,.theme-default-content h6:first-child+.custom-container{margin-top:2rem}@media (max-width: 959px){.sidebar{font-size:15px;width:var(--sidebar-width-mobile)}.page{padding-left:var(--sidebar-width-mobile)}}@media (max-width: 719px){.sidebar{top:0;padding-top:var(--navbar-height);transform:translate(-100%)}.page{padding-left:0}.theme-container.sidebar-open .sidebar{transform:translate(0)}.theme-container.no-navbar .sidebar{padding-top:0}}@media (max-width: 419px){h1{font-size:1.9rem}}#vp-comment{max-width:var(--content-width);margin:0 auto;padding:2rem 2.5rem}@media (max-width: 959px){#vp-comment{padding:2rem}}@media (max-width: 419px){#vp-comment{padding:1.5rem}}.navbar{--navbar-line-height: calc( var(--navbar-height) - 2 * var(--navbar-padding-v) );padding:var(--navbar-padding-v) var(--navbar-padding-h);line-height:var(--navbar-line-height)}.navbar .logo{height:var(--navbar-line-height);margin-right:var(--navbar-padding-v);vertical-align:top}.navbar .site-name{font-size:1.3rem;font-weight:600;color:var(--c-text);position:relative}.navbar .navbar-items-wrapper{display:flex;position:absolute;box-sizing:border-box;top:var(--navbar-padding-v);right:var(--navbar-padding-h);height:var(--navbar-line-height);padding-left:var(--navbar-padding-h);white-space:nowrap;font-size:.9rem}.navbar .navbar-items-wrapper .search-box{flex:0 0 auto;vertical-align:top}@media screen and (max-width: 719px){.navbar{padding-left:4rem}.navbar .site-name{display:block;width:calc(100vw - 11rem);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.navbar .can-hide{display:none}}.navbar-items{display:inline-block}@media print{.navbar-items{display:none}}.navbar-items a{display:inline-block;line-height:1.4rem;color:inherit}.navbar-items a:hover,.navbar-items a.route-link-active{color:var(--c-text)}.navbar-items .navbar-item{position:relative;display:inline-block;margin-left:1.5rem;line-height:var(--navbar-line-height)}.navbar-items .navbar-item:first-child{margin-left:0}.navbar-items .navbar-item>a:hover,.navbar-items .navbar-item>a.route-link-active{margin-bottom:-2px;border-bottom:2px solid var(--c-text-accent)}@media (max-width: 719px){.navbar-items .navbar-item{margin-left:0}.navbar-items .navbar-item>a:hover,.navbar-items .navbar-item>a.route-link-active{margin-bottom:0;border-bottom:none}.navbar-items a:hover,.navbar-items a.route-link-active{color:var(--c-text-accent)}}.toggle-sidebar-button{position:absolute;top:.6rem;left:1rem;display:none;padding:.6rem;cursor:pointer}.toggle-sidebar-button .icon{display:flex;flex-direction:column;justify-content:center;align-items:center;width:1.25rem;height:1.25rem;cursor:inherit}.toggle-sidebar-button .icon span{display:inline-block;width:100%;height:2px;border-radius:2px;background-color:var(--c-text);transition:transform var(--t-transform)}.toggle-sidebar-button .icon span:nth-child(2){margin:6px 0}@media screen and (max-width: 719px){.toggle-sidebar-button{display:block}}.toggle-color-mode-button{display:flex;margin:auto;margin-left:1rem;border:0;background:none;color:var(--c-text);opacity:.8;cursor:pointer}@media print{.toggle-color-mode-button{display:none}}.toggle-color-mode-button:hover{opacity:1}.toggle-color-mode-button .icon{width:1.25rem;height:1.25rem}.DocSearch{transition:background-color var(--t-color)}.navbar-dropdown-wrapper{cursor:pointer}.navbar-dropdown-wrapper .navbar-dropdown-title,.navbar-dropdown-wrapper .navbar-dropdown-title-mobile{display:block;font-size:.9rem;font-family:inherit;cursor:inherit;padding:inherit;line-height:1.4rem;background:transparent;border:none;font-weight:500;color:var(--c-text)}.navbar-dropdown-wrapper .navbar-dropdown-title:hover,.navbar-dropdown-wrapper .navbar-dropdown-title-mobile:hover{border-color:transparent}.navbar-dropdown-wrapper .navbar-dropdown-title .arrow,.navbar-dropdown-wrapper .navbar-dropdown-title-mobile .arrow{vertical-align:middle;margin-top:-1px;margin-left:.4rem}.navbar-dropdown-wrapper .navbar-dropdown-title-mobile{display:none;font-weight:600;font-size:inherit}.navbar-dropdown-wrapper .navbar-dropdown-title-mobile:hover{color:var(--c-text-accent)}.navbar-dropdown-wrapper .navbar-dropdown .navbar-dropdown-item{color:inherit;line-height:1.7rem}.navbar-dropdown-wrapper .navbar-dropdown .navbar-dropdown-item .navbar-dropdown-subtitle{margin:.45rem 0 0;border-top:1px solid var(--c-border);padding:1rem 0 .45rem;font-size:.9rem}.navbar-dropdown-wrapper .navbar-dropdown .navbar-dropdown-item .navbar-dropdown-subtitle>span{padding:0 1.5rem 0 1.25rem}.navbar-dropdown-wrapper .navbar-dropdown .navbar-dropdown-item .navbar-dropdown-subtitle>a{font-weight:inherit}.navbar-dropdown-wrapper .navbar-dropdown .navbar-dropdown-item .navbar-dropdown-subtitle>a.route-link-active:after{display:none}.navbar-dropdown-wrapper .navbar-dropdown .navbar-dropdown-item .navbar-dropdown-subitem-wrapper{padding:0;list-style:none}.navbar-dropdown-wrapper .navbar-dropdown .navbar-dropdown-item .navbar-dropdown-subitem-wrapper .navbar-dropdown-subitem{font-size:.9em}.navbar-dropdown-wrapper .navbar-dropdown .navbar-dropdown-item a{display:block;line-height:1.7rem;position:relative;border-bottom:none;font-weight:400;margin-bottom:0;padding:0 1.5rem 0 1.25rem}.navbar-dropdown-wrapper .navbar-dropdown .navbar-dropdown-item a:hover,.navbar-dropdown-wrapper .navbar-dropdown .navbar-dropdown-item a.route-link-active{color:var(--c-text-accent)}.navbar-dropdown-wrapper .navbar-dropdown .navbar-dropdown-item a.route-link-active:after{content:"";width:0;height:0;border-left:5px solid var(--c-text-accent);border-top:3px solid transparent;border-bottom:3px solid transparent;position:absolute;top:calc(50% - 2px);left:9px}.navbar-dropdown-wrapper .navbar-dropdown .navbar-dropdown-item:first-child .navbar-dropdown-subtitle{margin-top:0;padding-top:0;border-top:0}.navbar-dropdown-wrapper.mobile.open .navbar-dropdown-title,.navbar-dropdown-wrapper.mobile.open .navbar-dropdown-title-mobile{margin-bottom:.5rem}.navbar-dropdown-wrapper.mobile .navbar-dropdown-title,.navbar-dropdown-wrapper.mobile .navbar-dropdown-title-mobile{display:none}.navbar-dropdown-wrapper.mobile .navbar-dropdown-title-mobile{display:block}.navbar-dropdown-wrapper.mobile .navbar-dropdown{transition:height .1s ease-out;overflow:hidden}.navbar-dropdown-wrapper.mobile .navbar-dropdown .navbar-dropdown-item .navbar-dropdown-subtitle{border-top:0;margin-top:0;padding-top:0;padding-bottom:0}.navbar-dropdown-wrapper.mobile .navbar-dropdown .navbar-dropdown-item .navbar-dropdown-subtitle,.navbar-dropdown-wrapper.mobile .navbar-dropdown .navbar-dropdown-item>a{font-size:15px;line-height:2rem}.navbar-dropdown-wrapper.mobile .navbar-dropdown .navbar-dropdown-item .navbar-dropdown-subitem{font-size:14px;padding-left:1rem}.navbar-dropdown-wrapper:not(.mobile){height:1.8rem}.navbar-dropdown-wrapper:not(.mobile):hover .navbar-dropdown,.navbar-dropdown-wrapper:not(.mobile).open .navbar-dropdown{display:block!important}.navbar-dropdown-wrapper:not(.mobile).open:blur{display:none}.navbar-dropdown-wrapper:not(.mobile) .navbar-dropdown{display:none;height:auto!important;box-sizing:border-box;max-height:calc(100vh - 2.7rem);overflow-y:auto;position:absolute;top:100%;right:0;background-color:var(--c-bg-navbar);padding:.6rem 0;border:1px solid var(--c-border);border-bottom-color:var(--c-border-dark);text-align:left;border-radius:.25rem;white-space:nowrap;margin:0}.page{padding-bottom:2rem;display:block}.page .theme-default-content{max-width:var(--content-width);margin:0 auto;padding:2rem 2.5rem;padding-top:0}@media (max-width: 959px){.page .theme-default-content{padding:2rem}}@media (max-width: 419px){.page .theme-default-content{padding:1.5rem}}.sidebar ul{padding:0;margin:0;list-style-type:none}.sidebar a{display:inline-block}.sidebar .navbar-items{display:none;border-bottom:1px solid var(--c-border);transition:border-color var(--t-color);padding:.5rem 0 .75rem}.sidebar .navbar-items a{font-weight:600}.sidebar .navbar-items .navbar-item{display:block;line-height:1.25rem;font-size:1.1em;padding:.5rem 0 .5rem 1.5rem}.sidebar .sidebar-items{padding:1.5rem 0}@media (max-width: 719px){.sidebar .navbar-items{display:block}.sidebar .navbar-items .navbar-dropdown-wrapper .navbar-dropdown .navbar-dropdown-item a.route-link-active:after{top:calc(1rem - 2px)}.sidebar .sidebar-items{padding:1rem 0}}.sidebar-item{cursor:default;border-left:.25rem solid transparent;color:var(--c-text)}.sidebar-item:focus-visible{outline-width:1px;outline-offset:-1px}.sidebar-item.active:not(p.sidebar-heading){font-weight:600;color:var(--c-text-accent);border-left-color:var(--c-text-accent)}.sidebar-item.sidebar-heading{transition:color .15s ease;font-size:1.1em;font-weight:700;padding:.35rem 1.5rem .35rem 1.25rem;width:100%;box-sizing:border-box;margin:0}.sidebar-item.sidebar-heading+.sidebar-item-children{transition:height .1s ease-out;overflow:hidden;margin-bottom:.75rem}.sidebar-item.collapsible{cursor:pointer}.sidebar-item.collapsible .arrow{position:relative;top:-.12em;left:.5em}.sidebar-item:not(.sidebar-heading){font-size:1em;font-weight:400;display:inline-block;margin:0;padding:.35rem 1rem .35rem 2rem;line-height:1.4;width:100%;box-sizing:border-box}.sidebar-item:not(.sidebar-heading)+.sidebar-item-children{padding-left:1rem;font-size:.95em}.sidebar-item-children .sidebar-item-children .sidebar-item:not(.sidebar-heading){padding:.25rem 1rem .25rem 1.75rem}.sidebar-item-children .sidebar-item-children .sidebar-item:not(.sidebar-heading).active{font-weight:500;border-left-color:transparent}a.sidebar-heading+.sidebar-item-children .sidebar-item:not(.sidebar-heading).active{border-left-color:transparent}a.sidebar-item{cursor:pointer}a.sidebar-item:hover{color:var(--c-text-accent)}.table-of-contents .badge{vertical-align:middle}.dropdown-enter-from,.dropdown-leave-to{height:0!important}.fade-slide-y-enter-active{transition:all .2s ease}.fade-slide-y-leave-active{transition:all .2s cubic-bezier(1,.5,.8,1)}.fade-slide-y-enter-from,.fade-slide-y-leave-to{transform:translateY(10px);opacity:0}html.dark{--box-shadow: #0f0e0d;--card-shadow: rgba(0, 0, 0, .3);--black: #fff;--grey-dark: #999;--grey-light: #666;--white: #000;--grey-darker: #bbb;--grey-lighter: #333;--grey14: #111}:root{--vp-bg: var(--c-bg, #fff);--vp-bgl: var(--c-bg-light, #f3f4f5);--vp-bglt: var(--c-bg-lighter, #eeeeee);--vp-c: var(--c-text, #2c3e50);--vp-cl: var(--c-text-light, #3a5169);--vp-clt: var(--c-text-lighter, #4e6e8e);--vp-brc: var(--c-border, #eaecef);--vp-brcd: var(--c-border-dark, #dfe2e5);--vp-tc: var(--c-brand, #3eaf7c);--vp-tcl: var(--c-brand-light, #4abf8a);--vp-ct: var(--t-color, .3s ease);--vp-tt: var(--t-transform, .3s ease);--box-shadow: #f0f1f2;--card-shadow: rgba(0, 0, 0, .15);--black: #000;--grey-dark: #666;--grey-light: #999;--white: #fff;--grey-darker: #333;--grey-lighter: #bbb;--grey14: #eee}.search-pro-button{border-width:0;background:transparent;display:inline-flex;align-items:center;box-sizing:content-box;height:1.25rem;margin-inline:1rem 0;margin-top:0;margin-bottom:0;padding:.5rem;border:0;border:1px solid var(--vp-bgl);border-radius:1rem;background:var(--vp-bgl);color:var(--vp-c);font-weight:500;cursor:pointer;transition:background var(--vp-ct),color var(--vp-ct)}@media print{.search-pro-button{display:none}}@media (max-width: 959px){.search-pro-button{border-radius:50%}}.search-pro-button:hover{border:1px solid var(--vp-tc);background-color:var(--vp-bglt);color:var(--vp-clt)}.search-pro-button .search-icon{width:1.25rem;height:1.25rem}.search-pro-placeholder{margin-inline:.25rem;font-size:1rem}@media (max-width: 959px){.search-pro-placeholder{display:none}}.search-pro-key-hints{font-size:.75rem}@media (max-width: 959px){.search-pro-key-hints{display:none}}.search-pro-key{display:inline-block;min-width:1em;margin-inline:.125rem;padding:.25rem;border:1px solid var(--vp-brc);border-radius:4px;box-shadow:1px 1px 4px 0 var(--card-shadow);line-height:1;letter-spacing:-.1em;transition:background var(--vp-ct),color var(--vp-ct),border var(--vp-ct) box-shadow var(--vp-ct)}@keyframes search-pro-fade-in{0%{opacity:.2}to{opacity:1}}.search-pro-modal-wrapper{position:fixed;top:0;right:0;bottom:0;left:0;z-index:997;display:flex;align-items:center;justify-content:center;overflow:auto;cursor:default}.search-pro-mask{position:fixed;top:0;right:0;bottom:0;left:0;z-index:998;animation:.25s search-pro-fade-in;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.search-pro-modal{position:absolute;z-index:999;display:flex;flex-direction:column;width:calc(100% - 6rem);max-width:50em;border-radius:10px;background:var(--vp-bg);box-shadow:2px 2px 10px 0 var(--card-shadow);transition:background var(--vp-ct);animation:.15s pwa-opened}@media (max-width: 1280px){.search-pro-modal{animation:.25s pwa-mobile}}@media (max-width: 719px){.search-pro-modal{top:0;right:0;bottom:0;left:0;box-sizing:border-box;width:100%;max-width:unset;padding:env(--safe-area-inset-top) env(--safe-area-inset-right) env(--safe-area-inset-bottom) env(--safe-area-inset-left)}}.search-pro-box{display:flex;margin:1rem}.search-pro-box form{position:relative;display:flex;flex:1}.search-pro-box label{position:absolute;top:calc(50% - .75rem);inset-inline-start:.5rem;color:var(--vp-tc)}.search-pro-box label .search-icon{width:1.5rem;height:1.5rem}.search-pro-clear-button{border-width:0;background:transparent;cursor:pointer;position:absolute;top:calc(50% - 10px);inset-inline-end:.75rem;padding:0;color:var(--vp-tc)}.search-pro-clear-button:hover{border-radius:50%;background-color:#0000001a}.search-pro-close-button{border-width:0;background:transparent;cursor:pointer;display:none;margin-inline:.5rem -.5rem;padding:.5rem;color:var(--grey-darker);font-size:1rem}@media (max-width: 719px){.search-pro-close-button{display:block}}.search-pro-input{flex:1;width:0;margin:0;padding-block:.25rem;padding-inline:2.5rem 2rem;border:0;border:2px solid var(--vp-tc);border-radius:8px;background:var(--vp-bg);color:var(--vp-c);outline:none;font-size:1.25rem;line-height:2.5;-webkit-appearance:none;-moz-appearance:none;appearance:none}.search-pro-input::-webkit-search-cancel-button{display:none}.search-pro-suggestions{position:absolute;inset:calc(100% + 4px) 0 auto;z-index:20;overflow:visible;overflow-y:auto;max-height:50vh;margin:0;padding:0;border-radius:.5rem;background-color:var(--vp-bg);box-shadow:2px 2px 10px 0 var(--card-shadow);list-style:none;line-height:1.5}.search-pro-suggestion{padding:.25rem 1rem;border-top:1px solid var(--vp-brc);cursor:pointer}.search-pro-suggestion:first-child{border-top:none}.search-pro-suggestion.active,.search-pro-suggestion:hover{background-color:var(--vp-bglt)}.search-pro-auto-complete{display:none;float:right;margin:0 .5rem;padding:4px;border:1px solid var(--vp-brc);border-radius:4px;box-shadow:1px 1px 4px 0 var(--card-shadow);font-size:12px;line-height:1}.search-pro-suggestion.active .search-pro-auto-complete{display:block}.search-pro-result-wrapper{flex-grow:1;overflow-y:auto;min-height:40vh;max-height:calc(80vh - 10rem);padding:0 1rem}@media (max-width: 719px){.search-pro-result-wrapper{min-height:unset;max-height:unset}}.search-pro-result-wrapper.loading,.search-pro-result-wrapper.empty{display:flex;align-items:center;justify-content:center;padding:1.5rem;font-weight:600;font-size:22px;text-align:center}.search-pro-hints{margin-top:1rem;padding:.75rem .5rem;box-shadow:0 -1px 4px 0 var(--card-shadow);line-height:1}.search-pro-hint{display:inline-flex;align-items:center;margin:0 .5rem}.search-pro-hint kbd{margin:0 .5rem;padding:2px;border:1px solid var(--vp-brc);border-radius:4px;box-shadow:1px 1px 4px 0 var(--card-shadow)}.search-pro-hint kbd+kbd{margin-inline-start:-.25rem}.search-pro-hint svg{display:block;width:15px;height:15px}.vp-catalog-wrapper{margin-top:8px;margin-bottom:8px}.vp-catalog-wrapper.index ol{padding-inline-start:0}.vp-catalog-wrapper.index li{list-style-type:none}.vp-catalog-wrapper.index .vp-catalogs{padding-inline-start:0}.vp-catalog-wrapper.index .vp-catalog{list-style-type:none}.vp-catalog-wrapper.index .vp-catalog-title:before{content:"§" counter(catalog-item,upper-roman) " "}.vp-catalog-wrapper.index .vp-child-catalogs{counter-reset:child-catalog}.vp-catalog-wrapper.index .vp-child-catalog{counter-increment:child-catalog}.vp-catalog-wrapper.index .vp-child-catalog .vp-catalog-title:before{content:counter(catalog-item) "." counter(child-catalog) " "}.vp-catalog-wrapper.index .vp-sub-catalogs{padding-inline-start:.5rem}.vp-catalogs{margin:0;counter-reset:catalog-item}.vp-catalogs.deep{padding-inline-start:0}.vp-catalogs.deep .vp-catalog{list-style-type:none}.vp-catalogs .font-icon{vertical-align:baseline;margin-inline-end:.25rem}.vp-catalog{counter-increment:catalog-item}.vp-catalog-main-title{margin-top:calc(.5rem - var(--navbar-height, 3.6rem));margin-bottom:.5rem;padding-top:var(--navbar-height, 3.6rem);font-weight:500;font-size:1.75rem}.vp-catalog-main-title:first-child{margin-bottom:.5rem!important}.vp-catalog-main-title:only-child{margin-bottom:0!important}.vp-catalog-main-title .vp-link{text-decoration:none!important}.vp-catalog-child-title{margin-bottom:.5rem!important}.vp-catalog-child-title.has-children{margin-top:calc(.5rem - var(--navbar-height, 3.6rem));padding-top:var(--navbar-height, 3.6rem);border-bottom:1px solid var(--catalog-border-color);font-weight:500;font-size:1.3rem;transition:border-color .3s}.vp-catalog-child-title.has-children:only-child{margin-bottom:0!important}.vp-catalog-child-title .vp-link{text-decoration:none!important}.vp-catalog-sub-title{font-weight:500;font-size:1.1rem}.vp-catalog-sub-title:only-child{margin-bottom:0!important}.vp-catalog-title{color:inherit;text-decoration:none}.vp-catalog-title:hover{color:var(--catalog-active-color)}.vp-child-catalogs{margin:0}.vp-child-catalog{list-style-type:disc}.vp-sub-catalogs{counter-reset:sub-catalog}.vp-sub-catalog{counter-increment:sub-catalog}.vp-sub-catalog .vp-link:before{content:counter(catalog-item) "." counter(child-catalog) "." counter(sub-catalog) " "}.vp-sub-catalogs-wrapper{display:flex;flex-wrap:wrap}.vp-sub-catalog-link{display:inline-block;margin:4px 8px;padding:4px 8px;border-radius:6px;background-color:var(--catalog-bg-secondary-color);line-height:1.5;overflow-wrap:break-word;transition:background-color .3s,color .3s}.vp-sub-catalog-link:hover{background-color:var(--catalog-hover-color);color:var(--catalog-bg-color);text-decoration:none!important}.vp-catalog-header-anchor{font-size:.85em;float:left;margin-left:-1em;padding-right:0;margin-top:.125em;opacity:0;-webkit-user-select:none;-moz-user-select:none;user-select:none;text-decoration:none;content:"¶"}@media print{.vp-catalog-header-anchor{display:none}}h2:hover .vp-catalog-header-anchor,h3:hover .vp-catalog-header-anchor{opacity:1;text-decoration:none}.vp-catalog-header-anchor:focus-visible{opacity:1}.vp-empty-catalog{font-size:1.25rem;text-align:center}:root{--catalog-bg-color: #fff;--catalog-bg-secondary-color: #f8f8f8;--catalog-border-color: #e5e5e5;--catalog-active-color: #3eaf7c;--catalog-hover-color: #71cda3}.article-wrapper{max-width:var(--content-width);margin:0 auto;padding:2rem 2.5rem;text-align:center}@media (max-width: 959px){.article-wrapper{padding:2rem}}@media (max-width: 419px){.article-wrapper{padding:1.5rem}}.article{position:relative;box-sizing:border-box;width:100%;margin:0 auto 1.25rem;padding:1rem 1.25rem;border:1px solid var(--c-border);border-radius:.4rem;color:var(--c-text);text-align:start}@media (max-width: 419px){.article{border-radius:0}}.article:hover{cursor:pointer}.article .title{position:relative;display:inline-block;font-size:1.28rem;line-height:2rem}.article .title:after{content:"";position:absolute;bottom:0;inset-inline-start:0;width:100%;height:2px;background:var(--c-brand);visibility:hidden;transition:transform .3s ease-in-out;transform:scaleX(0)}.article .title:hover:after{visibility:visible;transform:scaleX(1)}.article .title a{color:inherit}.article .article-info{display:flex;flex-shrink:0}.article .article-info>span{margin-inline-end:.5em;line-height:1.8}.article .excerpt h1{display:none}.article .excerpt h2{font-size:1.2em}.article .excerpt h3{font-size:1.15em}.category-wrapper{max-width:var(--content-width);margin:0 auto;padding:2rem 2.5rem;padding-top:1rem!important;padding-bottom:0!important;font-size:14px}@media (max-width: 959px){.category-wrapper{padding:2rem}}@media (max-width: 419px){.category-wrapper{padding:1.5rem}}.category-wrapper a{color:inherit}.category-wrapper .category{display:inline-block;vertical-align:middle;overflow:hidden;margin:.3rem .6rem .8rem;padding:.4rem .8rem;border-radius:.25rem;cursor:pointer;transition:background .3s,color .3s}@media (max-width: 419px){.category-wrapper .category{font-size:.9rem}}.category-wrapper .category .category-num{display:inline-block;min-width:1rem;height:1.2rem;margin-inline-start:.2em;padding:0 .1rem;border-radius:.6rem;font-size:.7rem;line-height:1.2rem;text-align:center}.category-wrapper .category.route-link-active{background:var(--c-brand);color:var(--c-bg)}.category-wrapper .category.route-link-active .category-num{color:var(--c-bg)}.tag-wrapper{max-width:var(--content-width);margin:0 auto;padding:2rem 2.5rem;padding-top:1rem!important;padding-bottom:0!important;font-size:14px}@media (max-width: 959px){.tag-wrapper{padding:2rem}}@media (max-width: 419px){.tag-wrapper{padding:1.5rem}}.tag-wrapper a{color:inherit}.tag-wrapper .tag{display:inline-block;vertical-align:middle;overflow:hidden;margin:.3rem .6rem .8rem;padding:.4rem .8rem;border-radius:.25rem;cursor:pointer;transition:background .3s,color .3s}@media (max-width: 419px){.tag-wrapper .tag{font-size:.9rem}}.tag-wrapper .tag .tag-num{display:inline-block;min-width:1rem;height:1.2rem;margin-inline-start:.2em;padding:0 .1rem;border-radius:.6rem;font-size:.7rem;line-height:1.2rem;text-align:center}.tag-wrapper .tag.route-link-active{background:var(--c-brand);color:var(--c-bg)}.tag-wrapper .tag.route-link-active .tag-num{color:var(--c-bg)}.timeline-title{padding:0;text-align:center}.share_btns{display:flex;flex-wrap:wrap;justify-content:center;width:100%}.share_btn{margin:4px;background:#fff!important;color:#000;border-radius:4px;border:1px solid black;padding:8px;display:flex;width:-moz-fit-content;width:fit-content;justify-content:center;align-items:center}.share_btn span{line-height:0;margin-left:12px;margin-right:8px}.floating-btn{position:fixed;bottom:132px;right:18px;background-color:#007bff;color:#fff;border:none;border-radius:50%;width:48px;height:48px;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 5px #0000004d;cursor:pointer;font-size:18px}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;z-index:1000}.modal{position:fixed;bottom:100px;right:20px;background:#fff;padding:20px;box-shadow:0 2px 10px #00000080;z-index:1001;border-radius:10px;width:50%;display:flex;flex-direction:column;justify-content:flex-end;align-items:flex-end}.close-btn{width:44px;height:32px;border-radius:6px;border:1px solid gray}@media (max-width: 959px){.floating-btn{transform:scale(.75);transform-origin:100% 100%}}.my-footer{text-align:center}#translateSelectLanguage{border:none!important;text-align:center;text-decoration:none;display:inline-block;font-size:14.4px;cursor:pointer;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-weight:500;color:#2c3e50;border-radius:5px;margin-left:5px}html.dark #translateSelectLanguage{border:none!important;text-align:center;text-decoration:none;display:inline-block;font-size:14.4px;cursor:pointer;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-weight:500;color:#adbac7;border-radius:5px;margin-left:5px;background-color:#22272e}.home .hero .actions .action-button.primary{color:#fff;background-color:#2f2f2f;border-color:#cecece}.home .hero .actions .action-button.secondary{color:#414141;background-color:#fff;border-color:#222}.home .hero .actions .action-button.secondary:hover{color:#fff;background-color:#2f2f2f;border-color:#cecece}.home .hero .dark_mode .action-button.primary{color:#414141;background-color:#fff;border-color:#222}.home .hero .dark_mode .action-button.secondary,.home .hero .dark_mode .action-button.primary:hover{color:#fff;background-color:#2f2f2f;border-color:#cecece}@keyframes anim{0%{opacity:0}to{opacity:1}}.waterfall .item{max-height:560px;background:#000000e0 center center no-repeat;background-size:contain;text-align:center;display:inline-block;font-size:40px;color:#fff;width:220px!important;margin:8px;animation:anim 2s ease-in-out;cursor:pointer;border-radius:24px}.waterfall .item .title{font-size:14px;font-weight:800}.waterfall .item .details{font-size:12px;padding:0 12px}.waterfall .item .text{height:100%;background:linear-gradient(to top,#000,#80808000);display:flex;justify-content:flex-end;align-items:center;flex-direction:column;border-radius:24px}.waterfall .a:hover{filter:brightness(.5);background:#000000b8;content:"ffff"}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.waterfall .loading{width:50px;height:50px;border:5px solid #f3f3f3;border-top:5px solid #3498db;border-radius:50%;animation:spin 1s linear infinite;display:none}.vp-back-to-top-button{--back-to-top-color: #464a5f;--back-to-top-color-hover: #9E9E9E;--back-to-top-bg-color: var(--c-bg)}.search-pro-result-wrapper{scrollbar-color:var(--vp-tc) var(--vp-brc);scrollbar-width:thin}@media (max-width: 419px){.search-pro-result-wrapper{font-size:14px}}.search-pro-result-wrapper::-webkit-scrollbar{width:6px;height:6px}.search-pro-result-wrapper::-webkit-scrollbar-track-piece{border-radius:6px;background:#0000001a}.search-pro-result-wrapper::-webkit-scrollbar-thumb{border-radius:6px;background:var(--vp-tc)}.search-pro-result-wrapper::-webkit-scrollbar-thumb:active{background:var(--vp-tcl)}.search-pro-result-wrapper mark{border-radius:.25em;line-height:1}.search-pro-result-list{margin:0;padding:0}.search-pro-result-list-item{display:block;list-style:none}.search-pro-result-title{position:sticky;top:-2px;z-index:10;margin:-4px;margin-bottom:.25rem;padding:4px;background:var(--vp-bg);color:var(--vp-tc);font-weight:600;font-size:.875em;line-height:2rem;text-indent:.5em}.search-pro-result-item.active .search-pro-result-title{color:var(--vp-tc)}.search-pro-result-type{display:block;width:1rem;height:1rem;margin-inline-start:-.5rem;padding:.5rem;color:var(--vp-tc)}.search-pro-remove-icon{border-width:0;background:transparent;cursor:pointer;box-sizing:content-box;height:1.5rem;padding:0;border-radius:50%;color:var(--vp-tc);font-size:1rem}.search-pro-remove-icon svg{width:1.5rem;height:1.5rem}.search-pro-remove-icon:hover{background:#8080804d}.search-pro-result-content{display:flex;flex-grow:1;flex-direction:column;align-items:stretch;justify-content:center;line-height:1.5}.search-pro-result-content .content-header{margin-bottom:.25rem;border-bottom:1px solid var(--vp-brcd);font-size:.9em}.search-pro-result-item{display:flex;align-items:center;margin:.5rem 0;padding:.5rem .75rem;border-radius:.25rem;background:var(--vp-bgl);color:inherit;box-shadow:0 1px 3px 0 var(--card-shadow);font-weight:400;white-space:pre-wrap;word-wrap:break-word}.search-pro-result-item strong{color:var(--vp-tc)}.search-pro-result-item:hover,.search-pro-result-item.active{background-color:var(--vp-tcl);color:var(--white);cursor:pointer}.search-pro-result-item:hover .search-pro-result-type,.search-pro-result-item:hover .search-pro-remove-icon,.search-pro-result-item:hover strong,.search-pro-result-item.active .search-pro-result-type,.search-pro-result-item.active .search-pro-remove-icon,.search-pro-result-item.active strong{color:var(--white)} diff --git a/docs/assets/unCLIPCheckpointLoader-ii62sfkE.svg b/docs/assets/unCLIPCheckpointLoader-ii62sfkE.svg deleted file mode 100644 index ea8d4ca..0000000 --- a/docs/assets/unCLIPCheckpointLoader-ii62sfkE.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/docs/assets/unCLIPConditioning-DLHXFnff.svg b/docs/assets/unCLIPConditioning-DLHXFnff.svg deleted file mode 100644 index e4a820a..0000000 --- a/docs/assets/unCLIPConditioning-DLHXFnff.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git "a/docs/assets/\350\201\212\350\201\212Mixlab Node\357\274\232AI\346\227\266\344\273\243\345\246\202\344\275\225\351\207\215\345\241\221\345\206\205\345\256\271\345\210\233\344\275\234\344\272\247\345\223\201\344\270\216\347\244\276\345\214\272\347\224\237\346\200\201.html-ClwOenGg.js" "b/docs/assets/\350\201\212\350\201\212Mixlab Node\357\274\232AI\346\227\266\344\273\243\345\246\202\344\275\225\351\207\215\345\241\221\345\206\205\345\256\271\345\210\233\344\275\234\344\272\247\345\223\201\344\270\216\347\244\276\345\214\272\347\224\237\346\200\201.html-ClwOenGg.js" deleted file mode 100644 index 9d3aa93..0000000 --- "a/docs/assets/\350\201\212\350\201\212Mixlab Node\357\274\232AI\346\227\266\344\273\243\345\246\202\344\275\225\351\207\215\345\241\221\345\206\205\345\256\271\345\210\233\344\275\234\344\272\247\345\223\201\344\270\216\347\244\276\345\214\272\347\224\237\346\200\201.html-ClwOenGg.js" +++ /dev/null @@ -1 +0,0 @@ -import{_ as t,c as e,o,a as i}from"./app-BFngqcKR.js";const a={},c=i('关键词:AI时代、Mixlab Node、社区驱动、产品开发、ComfyUI
摘要:本文介绍了Mixlab Node这一由ComfyUI和Stable Diffusion构建的节点工具,强调其在AI时代如何通过社区驱动开发模式重塑内容创作产品和社区生态。作者和Shadow共同发起了“ComfyUI中文爱好者社区”,聚集了大量的AI创作爱好者和开发者,通过开放和模块化的设计,使得Mixlab Node能够迅速集成最新技术,满足用户多样化的创作需求。文章还分享了“Just do it”的开发模式,展示了如何通过快速迭代和社区反馈实现产品创新。
精华:
播客地址:聊聊Mixlab Node:AI时代如何重塑内容创作产品与社区生态
',3),l=[c];function m(n,s){return o(),e("div",null,l)}const p=t(a,[["render",m],["__file","聊聊Mixlab Node:AI时代如何重塑内容创作产品与社区生态.html.vue"]]),d=JSON.parse('{"path":"/posts/discovery/%E8%81%8A%E8%81%8AMixlab%20Node%EF%BC%9AAI%E6%97%B6%E4%BB%A3%E5%A6%82%E4%BD%95%E9%87%8D%E5%A1%91%E5%86%85%E5%AE%B9%E5%88%9B%E4%BD%9C%E4%BA%A7%E5%93%81%E4%B8%8E%E7%A4%BE%E5%8C%BA%E7%94%9F%E6%80%81.html","title":"","lang":"en-US","frontmatter":{"description":"关键词:AI时代、Mixlab Node、社区驱动、产品开发、ComfyUI 摘要:本文介绍了Mixlab Node这一由ComfyUI和Stable Diffusion构建的节点工具,强调其在AI时代如何通过社区驱动开发模式重塑内容创作产品和社区生态。作者和Shadow共同发起了“ComfyUI中文爱好者社区”,聚集了大量的AI创作爱好者和开发者,通...","head":[["meta",{"property":"og:url","content":"https://www.mixcomfy.com/awesome-comfyui-workflow/posts/discovery/%E8%81%8A%E8%81%8AMixlab%20Node%EF%BC%9AAI%E6%97%B6%E4%BB%A3%E5%A6%82%E4%BD%95%E9%87%8D%E5%A1%91%E5%86%85%E5%AE%B9%E5%88%9B%E4%BD%9C%E4%BA%A7%E5%93%81%E4%B8%8E%E7%A4%BE%E5%8C%BA%E7%94%9F%E6%80%81.html"}],["meta",{"property":"og:site_name","content":"ComfyUI中文爱好者社区"}],["meta",{"property":"og:description","content":"关键词:AI时代、Mixlab Node、社区驱动、产品开发、ComfyUI 摘要:本文介绍了Mixlab Node这一由ComfyUI和Stable Diffusion构建的节点工具,强调其在AI时代如何通过社区驱动开发模式重塑内容创作产品和社区生态。作者和Shadow共同发起了“ComfyUI中文爱好者社区”,聚集了大量的AI创作爱好者和开发者,通..."}],["meta",{"property":"og:type","content":"article"}],["meta",{"property":"og:image","content":"https://is1-ssl.mzstatic.com/image/thumb/Podcasts221/v4/c4/0c/55/c40c557b-66f2-6078-2130-b1fe97aa339c/mza_2664138711369555086.jpeg/313x0w.webp"}],["meta",{"property":"og:locale","content":"en-US"}],["meta",{"property":"og:updated_time","content":"2024-06-06T08:49:49.694Z"}],["meta",{"property":"article:author","content":"shadow"}],["meta",{"property":"article:modified_time","content":"2024-06-06T08:07:56.000Z"}],["meta",{"property":"og:modified_time","content":"2024-06-06T08:49:49.694Z"}],["meta",{"name":"twitter:description","content":"关键词:AI时代、Mixlab Node、社区驱动、产品开发、ComfyUI 摘要:本文介绍了Mixlab Node这一由ComfyUI和Stable Diffusion构建的节点工具,强调其在AI时代如何通过社区驱动开发模式重塑内容创作产品和社区生态。作者和Shadow共同发起了“ComfyUI中文爱好者社区”,聚集了大量的AI创作爱好者和开发者,通..."}],["meta",{"name":"twitter:card","content":"summary_large_image"}],["meta",{"name":"twitter:site","content":"mixlabPro"}],["meta",{"name":"twitter:creator","content":"mixlabPro"}],["meta",{"name":"share_config","content":"buffer,email,facebook,flipboard,hackernews,instapaper,line,linkedin,odnoklassniki,pinterest,pocket,quora,reddit,tumblr,twitter,vk,weibo,wordpress,xing,yammer"}],["script",{"type":"application/ld+json"},"{\\"@context\\":\\"https://schema.org\\",\\"@type\\":\\"Article\\",\\"headline\\":\\"\\",\\"image\\":[\\"https://is1-ssl.mzstatic.com/image/thumb/Podcasts221/v4/c4/0c/55/c40c557b-66f2-6078-2130-b1fe97aa339c/mza_2664138711369555086.jpeg/313x0w.webp\\"],\\"dateModified\\":\\"2024-06-06T08:07:56.000Z\\",\\"author\\":[{\\"@type\\":\\"Person\\",\\"name\\":\\"shadow\\"}]}"]]},"headers":[],"git":{"updatedTime":1717661276000,"contributors":[{"name":"shadowcz007","email":"chizhiwei007@163.com","commits":1}]},"filePathRelative":"posts/discovery/聊聊Mixlab Node:AI时代如何重塑内容创作产品与社区生态.md","autoDesc":true,"excerpt":"\\n关键词:AI时代、Mixlab Node、社区驱动、产品开发、ComfyUI
\\n摘要:本文介绍了Mixlab Node这一由ComfyUI和Stable Diffusion构建的节点工具,强调其在AI时代如何通过社区驱动开发模式重塑内容创作产品和社区生态。作者和Shadow共同发起了“ComfyUI中文爱好者社区”,聚集了大量的AI创作爱好者和开发者,通过开放和模块化的设计,使得Mixlab Node能够迅速集成最新技术,满足用户多样化的创作需求。文章还分享了“Just do it”的开发模式,展示了如何通过快速迭代和社区反馈实现产品创新。
\\n精华:
\\n