Buckets:
| import{s as zt,o as Pt,n as qe}from"../chunks/scheduler.94020406.js";import{S as Ot,i as Kt,g as M,s as a,r as f,E as es,h as r,f as t,c as n,j as qt,u as c,x as m,k as E,y as ls,a as s,v as d,d as J,t as h,w as T,m as ts,n as ss}from"../chunks/index.a08c8d92.js";import{T as Ye}from"../chunks/Tip.3b0aeee8.js";import{C as w}from"../chunks/CodeBlock.b23cf525.js";import{D as as}from"../chunks/DocNotebookDropdown.d8a25975.js";import{H as F,E as ns}from"../chunks/EditOnGithub.b1bceb47.js";import{H as is,a as Dt}from"../chunks/HfOption.df48b824.js";function ps(V){let i,C='사용할 체크포인트와 임베딩은 <a href="https://huggingface.co/spaces/sd-concepts-library/stable-diffusion-conceptualizer" rel="nofollow">Stable Diffusion Conceptualizer</a>, <a href="https://huggingface.co/spaces/multimodalart/LoraTheExplorer" rel="nofollow">LoRA the Explorer</a>, <a href="https://huggingface.co/spaces/huggingface-projects/diffusers-gallery" rel="nofollow">Diffusers Models Gallery</a>에서 찾아보시기 바랍니다.';return{c(){i=M("p"),i.innerHTML=C},l(p){i=r(p,"P",{"data-svelte-h":!0}),m(i)!=="svelte-1nuqq3"&&(i.innerHTML=C)},m(p,U){s(p,i,U)},p:qe,d(p){p&&t(i)}}}function os(V){let i,C='LoRA는 다른 학습 방법과 함께 사용할 수 있는 매우 일반적인 학습 기법입니다. 예를 들어, DreamBooth와 LoRA로 모델을 학습하는 것이 일반적입니다. 또한 새롭고 고유한 이미지를 생성하기 위해 여러 개의 LoRA를 불러오고 병합하는 것이 점점 더 일반화되고 있습니다. 병합은 이 불러오기 가이드의 범위를 벗어나므로 자세한 내용은 심층적인 <a href="merge_loras">LoRA 병합</a> 가이드에서 확인할 수 있습니다.';return{c(){i=M("p"),i.innerHTML=C},l(p){i=r(p,"P",{"data-svelte-h":!0}),m(i)!=="svelte-wtg3ww"&&(i.innerHTML=C)},m(p,U){s(p,i,U)},p:qe,d(p){p&&t(i)}}}function Ms(V){let i,C="현재 <code>set_adapters()</code>는 어텐션 가중치의 스케일링만 지원합니다. LoRA에 다른 부분(예: resnets or down-/upsamplers)이 있는 경우 1.0의 스케일을 유지합니다.";return{c(){i=M("p"),i.innerHTML=C},l(p){i=r(p,"P",{"data-svelte-h":!0}),m(i)!=="svelte-124qd55"&&(i.innerHTML=C)},m(p,U){s(p,i,U)},p:qe,d(p){p&&t(i)}}}function rs(V){let i,C="Kohya LoRA를 🤗 Diffusers와 함께 사용할 때 몇 가지 제한 사항이 있습니다:",p,U,u='<li><a href="https://github.com/huggingface/diffusers/pull/4287/#issuecomment-1655110736" rel="nofollow">여기</a>에 설명된 여러 가지 이유로 인해 이미지가 ComfyUI와 같은 UI에서 생성된 이미지와 다르게 보일 수 있습니다.</li> <li><a href="https://github.com/KohakuBlueleaf/LyCORIS" rel="nofollow">LyCORIS 체크포인트</a>가 완전히 지원되지 않습니다. <code>load_lora_weights()</code> 메서드는 LoRA 및 LoCon 모듈로 LyCORIS 체크포인트를 불러올 수 있지만, Hada 및 LoKR은 지원되지 않습니다.</li>';return{c(){i=M("p"),i.textContent=C,p=a(),U=M("ul"),U.innerHTML=u},l(y){i=r(y,"P",{"data-svelte-h":!0}),m(i)!=="svelte-dgiwss"&&(i.textContent=C),p=n(y),U=r(y,"UL",{"data-svelte-h":!0}),m(U)!=="svelte-ztryq"&&(U.innerHTML=u)},m(y,b){s(y,i,b),s(y,p,b),s(y,U,b)},p:qe,d(y){y&&(t(i),t(p),t(U))}}}function ms(V){let i,C='Kohya LoRA를 불러오기 위해, 예시로 <a href="https://civitai.com/" rel="nofollow">Civitai</a>에서 <a href="https://civitai.com/models/150986/blueprintify-sd-xl-10" rel="nofollow">Blueprintify SD XL 1.0</a> 체크포인트를 다운로드합니다:',p,U,u,y,b="LoRA 체크포인트를 <code>load_lora_weights()</code> 메서드로 불러오고 <code>weight_name</code> 파라미터에 파일명을 지정합니다:",Z,j,Y,I,W="이미지를 생성합니다:",q,B,Q,$,R;return U=new w({props:{code:"IXdnZXQlMjBodHRwcyUzQSUyRiUyRmNpdml0YWkuY29tJTJGYXBpJTJGZG93bmxvYWQlMkZtb2RlbHMlMkYxNjg3NzYlMjAtTyUyMGJsdWVwcmludGlmeS1zZC14bC0xMC5zYWZldGVuc29ycw==",highlighted:"!wget https://civitai.com/api/download/models/168776 -O blueprintify-sd-xl-10.safetensors",wrap:!1}}),j=new w({props:{code:"ZnJvbSUyMGRpZmZ1c2VycyUyMGltcG9ydCUyMEF1dG9QaXBlbGluZUZvclRleHQySW1hZ2UlMEFpbXBvcnQlMjB0b3JjaCUwQSUwQXBpcGVsaW5lJTIwJTNEJTIwQXV0b1BpcGVsaW5lRm9yVGV4dDJJbWFnZS5mcm9tX3ByZXRyYWluZWQoJTIyc3RhYmlsaXR5YWklMkZzdGFibGUtZGlmZnVzaW9uLXhsLWJhc2UtMS4wJTIyJTJDJTIwdG9yY2hfZHR5cGUlM0R0b3JjaC5mbG9hdDE2KS50byglMjJjdWRhJTIyKSUwQXBpcGVsaW5lLmxvYWRfbG9yYV93ZWlnaHRzKCUyMnBhdGglMkZ0byUyRndlaWdodHMlMjIlMkMlMjB3ZWlnaHRfbmFtZSUzRCUyMmJsdWVwcmludGlmeS1zZC14bC0xMC5zYWZldGVuc29ycyUyMik=",highlighted:`<span class="hljs-keyword">from</span> diffusers <span class="hljs-keyword">import</span> AutoPipelineForText2Image | |
| <span class="hljs-keyword">import</span> torch | |
| pipeline = AutoPipelineForText2Image.from_pretrained(<span class="hljs-string">"stabilityai/stable-diffusion-xl-base-1.0"</span>, torch_dtype=torch.float16).to(<span class="hljs-string">"cuda"</span>) | |
| pipeline.load_lora_weights(<span class="hljs-string">"path/to/weights"</span>, weight_name=<span class="hljs-string">"blueprintify-sd-xl-10.safetensors"</span>)`,wrap:!1}}),B=new w({props:{code:"JTIzJTIwTG9SQSVFQiVBNSVCQyUyMCVFRCU4QSVCOCVFQiVBNiVBQyVFQSVCMSVCMCVFRCU5NSU5OCVFQSVCOCVCMCUyMCVFQyU5QyU4NCVFRCU5NSVCNCUyMGJsM3VwcmludCVFQiVBNSVCQyUyMCVFRCU5NCU4NCVFQiVBMSVBQyVFRCU5NCU4NCVFRCU4QSVCOCVFQyU5NyU5MCUyMCVFQyU4MiVBQyVFQyU5QSVBOSUwQXByb21wdCUyMCUzRCUyMCUyMmJsM3VwcmludCUyQyUyMGElMjBoaWdobHklMjBkZXRhaWxlZCUyMGJsdWVwcmludCUyMG9mJTIwdGhlJTIwZWlmZmVsJTIwdG93ZXIlMkMlMjBleHBsYWluaW5nJTIwaG93JTIwdG8lMjBidWlsZCUyMGFsbCUyMHBhcnRzJTJDJTIwbWFueSUyMHR4dCUyQyUyMGJsdWVwcmludCUyMGdyaWQlMjBiYWNrZHJvcCUyMiUwQWltYWdlJTIwJTNEJTIwcGlwZWxpbmUocHJvbXB0KS5pbWFnZXMlNUIwJTVEJTBBaW1hZ2U=",highlighted:`<span class="hljs-comment"># LoRA를 트리거하기 위해 bl3uprint를 프롬프트에 사용</span> | |
| prompt = <span class="hljs-string">"bl3uprint, a highly detailed blueprint of the eiffel tower, explaining how to build all parts, many txt, blueprint grid backdrop"</span> | |
| image = pipeline(prompt).images[<span class="hljs-number">0</span>] | |
| image`,wrap:!1}}),$=new Ye({props:{warning:!0,$$slots:{default:[rs]},$$scope:{ctx:V}}}),{c(){i=M("p"),i.innerHTML=C,p=a(),f(U.$$.fragment),u=a(),y=M("p"),y.innerHTML=b,Z=a(),f(j.$$.fragment),Y=a(),I=M("p"),I.textContent=W,q=a(),f(B.$$.fragment),Q=a(),f($.$$.fragment)},l(o){i=r(o,"P",{"data-svelte-h":!0}),m(i)!=="svelte-impx4k"&&(i.innerHTML=C),p=n(o),c(U.$$.fragment,o),u=n(o),y=r(o,"P",{"data-svelte-h":!0}),m(y)!=="svelte-zii06v"&&(y.innerHTML=b),Z=n(o),c(j.$$.fragment,o),Y=n(o),I=r(o,"P",{"data-svelte-h":!0}),m(I)!=="svelte-1ouwme5"&&(I.textContent=W),q=n(o),c(B.$$.fragment,o),Q=n(o),c($.$$.fragment,o)},m(o,g){s(o,i,g),s(o,p,g),d(U,o,g),s(o,u,g),s(o,y,g),s(o,Z,g),d(j,o,g),s(o,Y,g),s(o,I,g),s(o,q,g),d(B,o,g),s(o,Q,g),d($,o,g),R=!0},p(o,g){const De={};g&2&&(De.$$scope={dirty:g,ctx:o}),$.$set(De)},i(o){R||(J(U.$$.fragment,o),J(j.$$.fragment,o),J(B.$$.fragment,o),J($.$$.fragment,o),R=!0)},o(o){h(U.$$.fragment,o),h(j.$$.fragment,o),h(B.$$.fragment,o),h($.$$.fragment,o),R=!1},d(o){o&&(t(i),t(p),t(u),t(y),t(Z),t(Y),t(I),t(q),t(Q)),T(U,o),T(j,o),T(B,o),T($,o)}}}function ys(V){let i,C='TheLastBen에서 체크포인트를 불러오는 방법은 매우 유사합니다. 예를 들어, <a href="https://huggingface.co/TheLastBen/William_Eggleston_Style_SDXL" rel="nofollow">TheLastBen/William_Eggleston_Style_SDXL</a> 체크포인트를 불러오려면:',p,U,u;return U=new w({props:{code:"ZnJvbSUyMGRpZmZ1c2VycyUyMGltcG9ydCUyMEF1dG9QaXBlbGluZUZvclRleHQySW1hZ2UlMEFpbXBvcnQlMjB0b3JjaCUwQSUwQXBpcGVsaW5lJTIwJTNEJTIwQXV0b1BpcGVsaW5lRm9yVGV4dDJJbWFnZS5mcm9tX3ByZXRyYWluZWQoJTIyc3RhYmlsaXR5YWklMkZzdGFibGUtZGlmZnVzaW9uLXhsLWJhc2UtMS4wJTIyJTJDJTIwdG9yY2hfZHR5cGUlM0R0b3JjaC5mbG9hdDE2KS50byglMjJjdWRhJTIyKSUwQXBpcGVsaW5lLmxvYWRfbG9yYV93ZWlnaHRzKCUyMlRoZUxhc3RCZW4lMkZXaWxsaWFtX0VnZ2xlc3Rvbl9TdHlsZV9TRFhMJTIyJTJDJTIwd2VpZ2h0X25hbWUlM0QlMjJ3ZWdnLnNhZmV0ZW5zb3JzJTIyKSUwQSUwQSUyMyUyMExvUkElRUIlQTUlQkMlMjAlRUQlOEElQjglRUIlQTYlQUMlRUElQjElQjAlRUQlOTUlOTglRUElQjglQjAlMjAlRUMlOUMlODQlRUQlOTUlQjQlMjB3aWxsaWFtJTIwZWdnbGVzdG9uJUVCJUE1JUJDJTIwJUVEJTk0JTg0JUVCJUExJUFDJUVEJTk0JTg0JUVEJThBJUI4JUVDJTk3JTkwJTIwJUVDJTgyJUFDJUVDJTlBJUE5JTBBcHJvbXB0JTIwJTNEJTIwJTIyYSUyMGhvdXNlJTIwYnklMjB3aWxsaWFtJTIwZWdnbGVzdG9uJTJDJTIwc3VucmF5cyUyQyUyMGJlYXV0aWZ1bCUyQyUyMHN1bmxpZ2h0JTJDJTIwc3VucmF5cyUyQyUyMGJlYXV0aWZ1bCUyMiUwQWltYWdlJTIwJTNEJTIwcGlwZWxpbmUocHJvbXB0JTNEcHJvbXB0KS5pbWFnZXMlNUIwJTVEJTBBaW1hZ2U=",highlighted:`<span class="hljs-keyword">from</span> diffusers <span class="hljs-keyword">import</span> AutoPipelineForText2Image | |
| <span class="hljs-keyword">import</span> torch | |
| pipeline = AutoPipelineForText2Image.from_pretrained(<span class="hljs-string">"stabilityai/stable-diffusion-xl-base-1.0"</span>, torch_dtype=torch.float16).to(<span class="hljs-string">"cuda"</span>) | |
| pipeline.load_lora_weights(<span class="hljs-string">"TheLastBen/William_Eggleston_Style_SDXL"</span>, weight_name=<span class="hljs-string">"wegg.safetensors"</span>) | |
| <span class="hljs-comment"># LoRA를 트리거하기 위해 william eggleston를 프롬프트에 사용</span> | |
| prompt = <span class="hljs-string">"a house by william eggleston, sunrays, beautiful, sunlight, sunrays, beautiful"</span> | |
| image = pipeline(prompt=prompt).images[<span class="hljs-number">0</span>] | |
| image`,wrap:!1}}),{c(){i=M("p"),i.innerHTML=C,p=a(),f(U.$$.fragment)},l(y){i=r(y,"P",{"data-svelte-h":!0}),m(i)!=="svelte-fle9ti"&&(i.innerHTML=C),p=n(y),c(U.$$.fragment,y)},m(y,b){s(y,i,b),s(y,p,b),d(U,y,b),u=!0},p:qe,i(y){u||(J(U.$$.fragment,y),u=!0)},o(y){h(U.$$.fragment,y),u=!1},d(y){y&&(t(i),t(p)),T(U,y)}}}function Us(V){let i,C,p,U;return i=new Dt({props:{id:"other-trainers",option:"Kohya",$$slots:{default:[ms]},$$scope:{ctx:V}}}),p=new Dt({props:{id:"other-trainers",option:"TheLastBen",$$slots:{default:[ys]},$$scope:{ctx:V}}}),{c(){f(i.$$.fragment),C=a(),f(p.$$.fragment)},l(u){c(i.$$.fragment,u),C=n(u),c(p.$$.fragment,u)},m(u,y){d(i,u,y),s(u,C,y),d(p,u,y),U=!0},p(u,y){const b={};y&2&&(b.$$scope={dirty:y,ctx:u}),i.$set(b);const Z={};y&2&&(Z.$$scope={dirty:y,ctx:u}),p.$set(Z)},i(u){U||(J(i.$$.fragment,u),J(p.$$.fragment,u),U=!0)},o(u){h(i.$$.fragment,u),h(p.$$.fragment,u),U=!1},d(u){u&&t(C),T(i,u),T(p,u)}}}function us(V){let i,C=`Diffusers는 현재 가장 많이 사용되는 일부 파이프라인에 대해서만 IP-Adapter를 지원합니다. 멋진 사용 사례가 있는 지원되지 않는 파이프라인에 IP-Adapter를 통합하고 싶다면 언제든지 기능 요청을 여세요! | |
| 공식 IP-Adapter 체크포인트는 <a href="https://huggingface.co/h94/IP-Adapter" rel="nofollow">h94/IP-Adapter</a>에서 확인할 수 있습니다.`;return{c(){i=M("p"),i.innerHTML=C},l(p){i=r(p,"P",{"data-svelte-h":!0}),m(i)!=="svelte-1184gpv"&&(i.innerHTML=C)},m(p,U){s(p,i,U)},p:qe,d(p){p&&t(i)}}}function fs(V){let i;return{c(){i=ts("InsightFace 사전학습된 모델은 비상업적 연구 목적으로만 사용할 수 있으므로, IP-Adapter-FaceID 모델은 연구 목적으로만 릴리즈되었으며 상업적 용도로는 사용할 수 없습니다.")},l(C){i=ss(C,"InsightFace 사전학습된 모델은 비상업적 연구 목적으로만 사용할 수 있으므로, IP-Adapter-FaceID 모델은 연구 목적으로만 릴리즈되었으며 상업적 용도로는 사용할 수 없습니다.")},m(C,p){s(C,i,p)},d(C){C&&t(i)}}}function cs(V){let i,C,p,U,u,y,b,Z,j,Y='특정 물체의 이미지 또는 특정 스타일의 이미지를 생성하도록 diffusion 모델을 개인화하기 위한 몇 가지 <a href="../training/overview">학습</a> 기법이 있습니다. 이러한 학습 방법은 각각 다른 유형의 어댑터를 생성합니다. 일부 어댑터는 완전히 새로운 모델을 생성하는 반면, 다른 어댑터는 임베딩 또는 가중치의 작은 부분만 수정합니다. 이는 각 어댑터의 로딩 프로세스도 다르다는 것을 의미합니다.',I,W,q="이 가이드에서는 DreamBooth, textual inversion 및 LoRA 가중치를 불러오는 방법을 설명합니다.",B,Q,$,R,o,g,De='<a href="https://dreambooth.github.io/" rel="nofollow">DreamBooth</a>는 물체의 여러 이미지에 대한 <em>diffusion 모델 전체</em>를 미세 조정하여 새로운 스타일과 설정으로 해당 물체의 이미지를 생성합니다. 이 방법은 모델이 물체 이미지와 연관시키는 방법을 학습하는 프롬프트에 특수 단어를 사용하는 방식으로 작동합니다. 모든 학습 방법 중에서 드림부스는 전체 체크포인트 모델이기 때문에 파일 크기가 가장 큽니다(보통 몇 GB).',Pe,D,ot='Hergé가 그린 단 10개의 이미지로 학습된 <a href="https://huggingface.co/sd-dreambooth-library/herge-style" rel="nofollow">herge_style</a> 체크포인트를 불러와 해당 스타일의 이미지를 생성해 보겠습니다. 이 모델이 작동하려면 체크포인트를 트리거하는 프롬프트에 특수 단어 <code>herge_style</code>을 포함시켜야 합니다:',Oe,z,Ke,G,Mt='<img src="https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/diffusers/load_dreambooth.png"/>',el,P,ll,O,rt='<a href="https://textual-inversion.github.io/" rel="nofollow">Textual inversion</a>은 DreamBooth와 매우 유사하며 몇 개의 이미지만으로 특정 개념(스타일, 개체)을 생성하는 diffusion 모델을 개인화할 수도 있습니다. 이 방법은 프롬프트에 특정 단어를 입력하면 해당 이미지를 나타내는 새로운 임베딩을 학습하고 찾아내는 방식으로 작동합니다. 결과적으로 diffusion 모델 가중치는 동일하게 유지되고 훈련 프로세스는 비교적 작은(수 KB) 파일을 생성합니다.',tl,K,mt="Textual inversion은 임베딩을 생성하기 때문에 DreamBooth처럼 단독으로 사용할 수 없으며 또 다른 모델이 필요합니다.",sl,ee,al,le,yt='이제 <code>load_textual_inversion()</code> 메서드를 사용하여 textual inversion 임베딩을 불러와 이미지를 생성할 수 있습니다. <a href="https://huggingface.co/sd-concepts-library/gta5-artwork" rel="nofollow">sd-concepts-library/gta5-artwork</a> 임베딩을 불러와 보겠습니다. 이를 트리거하려면 프롬프트에 특수 단어 <code><gta5-artwork></code>를 포함시켜야 합니다:',nl,te,il,_,Ut='<img src="https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/diffusers/load_txt_embed.png"/>',pl,se,ut="Textual inversion은 또한 바람직하지 않은 사물에 대해 <em>네거티브 임베딩</em>을 생성하여 모델이 흐릿한 이미지나 손의 추가 손가락과 같은 바람직하지 않은 사물이 포함된 이미지를 생성하지 못하도록 학습할 수도 있습니다. 이는 프롬프트를 빠르게 개선하는 것이 쉬운 방법이 될 수 있습니다. 이는 이전과 같이 임베딩을 <code>load_textual_inversion()</code>으로 불러오지만 이번에는 두 개의 매개변수가 더 필요합니다:",ol,ae,ft="<li><code>weight_name</code>: 파일이 특정 이름의 🤗 Diffusers 형식으로 저장된 경우이거나 파일이 A1111 형식으로 저장된 경우, 불러올 가중치 파일을 지정합니다.</li> <li><code>token</code>: 임베딩을 트리거하기 위해 프롬프트에서 사용할 특수 단어를 지정합니다.</li>",Ml,ne,ct='<a href="https://huggingface.co/sayakpaul/EasyNegative-test" rel="nofollow">sayakpaul/EasyNegative-test</a> 임베딩을 불러와 보겠습니다:',rl,ie,ml,pe,dt="이제 <code>token</code>을 사용해 네거티브 임베딩이 있는 이미지를 생성할 수 있습니다:",yl,oe,Ul,v,Jt='<img src="https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/diffusers/load_neg_embed.png"/>',ul,Me,fl,re,ht='<a href="https://huggingface.co/papers/2106.09685" rel="nofollow">Low-Rank Adaptation (LoRA)</a>은 속도가 빠르고 파일 크기가 (수백 MB로) 작기 때문에 널리 사용되는 학습 기법입니다. 이 가이드의 다른 방법과 마찬가지로, LoRA는 몇 장의 이미지만으로 새로운 스타일을 학습하도록 모델을 학습시킬 수 있습니다. 이는 diffusion 모델에 새로운 가중치를 삽입한 다음 전체 모델 대신 새로운 가중치만 학습시키는 방식으로 작동합니다. 따라서 LoRA를 더 빠르게 학습시키고 더 쉽게 저장할 수 있습니다.',cl,X,dl,me,Tt="LoRA는 다른 모델과 함께 사용해야 합니다:",Jl,ye,hl,Ue,Ct='그리고 <code>load_lora_weights()</code> 메서드를 사용하여 <a href="https://huggingface.co/ostris/super-cereal-sdxl-lora" rel="nofollow">ostris/super-cereal-sdxl-lora</a> 가중치를 불러오고 리포지토리에서 가중치 파일명을 지정합니다:',Tl,ue,Cl,k,gt='<img src="https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/diffusers/load_lora.png"/>',gl,fe,bt="<code>load_lora_weights()</code> 메서드는 LoRA 가중치를 UNet과 텍스트 인코더에 모두 불러옵니다. 이 메서드는 해당 케이스에서 LoRA를 불러오는 데 선호되는 방식입니다:",bl,ce,Vt="<li>LoRA 가중치에 UNet 및 텍스트 인코더에 대한 별도의 식별자가 없는 경우</li> <li>LoRA 가중치에 UNet과 텍스트 인코더에 대한 별도의 식별자가 있는 경우</li>",Vl,de,wt='하지만 LoRA 가중치만 UNet에 로드해야 하는 경우에는 <code>load_attn_procs()</code> 메서드를 사용할 수 있습니다. <a href="https://huggingface.co/jbilcke-hf/sdxl-cinematic-1" rel="nofollow">jbilcke-hf/sdxl-cinematic-1</a> LoRA를 불러와 보겠습니다:',wl,Je,jl,L,jt='<img src="https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/diffusers/load_attn_proc.png"/>',Ql,he,Qt="LoRA 가중치를 언로드하려면 <code>unload_lora_weights()</code> 메서드를 사용하여 LoRA 가중치를 삭제하고 모델을 원래 가중치로 복원합니다:",$l,Te,Zl,Ce,Il,ge,$t="<code>load_lora_weights()</code> 및 <code>load_attn_procs()</code> 모두 <code>cross_attention_kwargs={"scale": 0.5}</code> 파라미터를 전달하여 얼마나 LoRA 가중치를 사용할지 조정할 수 있습니다. 값이 <code>0</code>이면 기본 모델 가중치만 사용하는 것과 같고, 값이 <code>1</code>이면 완전히 미세 조정된 LoRA를 사용하는 것과 같습니다.",Bl,be,Zt="레이어당 사용되는 LoRA 가중치의 양을 보다 세밀하게 제어하려면 <code>set_adapters()</code>를 사용하여 각 레이어의 가중치를 얼마만큼 조정할지 지정하는 딕셔너리를 전달할 수 있습니다.",Rl,Ve,Wl,we,It='이는 여러 어댑터에서도 작동합니다. 방법은 <a href="https://huggingface.co/docs/diffusers/tutorials/using_peft_for_inference#customize-adapters-strength" rel="nofollow">이 가이드</a>를 참조하세요.',Fl,S,Gl,je,_l,Qe,Bt='커뮤니티에서 인기 있는 다른 LoRA trainer로는 <a href="https://github.com/kohya-ss/sd-scripts/" rel="nofollow">Kohya</a>와 <a href="https://github.com/TheLastBen/fast-stable-diffusion" rel="nofollow">TheLastBen</a>의 trainer가 있습니다. 이 trainer들은 🤗 Diffusers가 훈련한 것과는 다른 LoRA 체크포인트를 생성하지만, 같은 방식으로 불러올 수 있습니다.',vl,x,Xl,$e,kl,Ze,Rt='<a href="https://ip-adapter.github.io/" rel="nofollow">IP-Adapter</a>는 모든 diffusion 모델에 이미지 프롬프트를 사용할 수 있는 경량 어댑터입니다. 이 어댑터는 이미지와 텍스트 feature의 cross-attention 레이어를 분리하여 작동합니다. 다른 모든 모델 컴포넌트튼 freeze되고 UNet의 embedded 이미지 features만 학습됩니다. 따라서 IP-Adapter 파일은 일반적으로 최대 100MB에 불과합니다.',Ll,Ie,Wt='다양한 작업과 구체적인 사용 사례에 IP-Adapter를 사용하는 방법에 대한 자세한 내용은 <a href="../using-diffusers/ip_adapter">IP-Adapter</a> 가이드에서 확인할 수 있습니다.',Sl,N,xl,Be,Ft="시작하려면 Stable Diffusion 체크포인트를 불러오세요.",Nl,Re,Hl,We,Gt="그런 다음 IP-Adapter 가중치를 불러와 <code>load_ip_adapter()</code> 메서드를 사용하여 파이프라인에 추가합니다.",Al,Fe,El,Ge,_t="불러온 뒤, 이미지 및 텍스트 프롬프트가 있는 파이프라인을 사용하여 이미지 생성 프로세스를 가이드할 수 있습니다.",Yl,_e,ql,H,vt=' <img src="https://huggingface.co/datasets/YiYiXu/testing-images/resolve/main/ip-bear.png"/>',Dl,ve,zl,Xe,Xt="IP-Adapter는 이미지 인코더를 사용하여 이미지 feature를 생성합니다. IP-Adapter 리포지토리에 <code>image_encoder</code> 하위 폴더가 있는 경우, 이미지 인코더가 자동으로 불러와 파이프라인에 등록됩니다. 그렇지 않은 경우, <code>CLIPVisionModelWithProjection</code> 모델을 사용하여 이미지 인코더를 명시적으로 불러와 파이프라인에 전달해야 합니다.",Pl,ke,kt="이는 ViT-H 이미지 인코더를 사용하는 <em>IP-Adapter Plus</em> 체크포인트에 해당하는 케이스입니다.",Ol,Le,Kl,Se,et,xe,Lt=`IP-Adapter FaceID 모델은 CLIP 이미지 임베딩 대신 <code>insightface</code>에서 생성한 이미지 임베딩을 사용하는 실험적인 IP Adapter입니다. 이러한 모델 중 일부는 LoRA를 사용하여 ID 일관성을 개선하기도 합니다. | |
| 이러한 모델을 사용하려면 <code>insightface</code>와 해당 요구 사항을 모두 설치해야 합니다.`,lt,A,tt,Ne,st,He,St="두 가지 IP 어댑터 FaceID Plus 모델 중 하나를 사용하려는 경우, 이 모델들은 더 나은 사실감을 얻기 위해 <code>insightface</code>와 CLIP 이미지 임베딩을 모두 사용하므로, CLIP 이미지 인코더도 불러와야 합니다.",at,Ae,nt,Ee,it,ze,pt;return u=new F({props:{title:"어댑터 불러오기",local:"어댑터-불러오기",headingTag:"h1"}}),b=new as({props:{classNames:"absolute z-10 right-0 top-0",options:[{label:"Mixed",value:"https://colab.research.google.com/github/huggingface/notebooks/blob/main/diffusers_doc/ko/loading_adapters.ipynb"},{label:"PyTorch",value:"https://colab.research.google.com/github/huggingface/notebooks/blob/main/diffusers_doc/ko/pytorch/loading_adapters.ipynb"},{label:"TensorFlow",value:"https://colab.research.google.com/github/huggingface/notebooks/blob/main/diffusers_doc/ko/tensorflow/loading_adapters.ipynb"},{label:"Mixed",value:"https://studiolab.sagemaker.aws/import/github/huggingface/notebooks/blob/main/diffusers_doc/ko/loading_adapters.ipynb"},{label:"PyTorch",value:"https://studiolab.sagemaker.aws/import/github/huggingface/notebooks/blob/main/diffusers_doc/ko/pytorch/loading_adapters.ipynb"},{label:"TensorFlow",value:"https://studiolab.sagemaker.aws/import/github/huggingface/notebooks/blob/main/diffusers_doc/ko/tensorflow/loading_adapters.ipynb"}]}}),Q=new Ye({props:{$$slots:{default:[ps]},$$scope:{ctx:V}}}),R=new F({props:{title:"DreamBooth",local:"dreambooth",headingTag:"h2"}}),z=new w({props:{code:"ZnJvbSUyMGRpZmZ1c2VycyUyMGltcG9ydCUyMEF1dG9QaXBlbGluZUZvclRleHQySW1hZ2UlMEFpbXBvcnQlMjB0b3JjaCUwQSUwQXBpcGVsaW5lJTIwJTNEJTIwQXV0b1BpcGVsaW5lRm9yVGV4dDJJbWFnZS5mcm9tX3ByZXRyYWluZWQoJTIyc2QtZHJlYW1ib290aC1saWJyYXJ5JTJGaGVyZ2Utc3R5bGUlMjIlMkMlMjB0b3JjaF9kdHlwZSUzRHRvcmNoLmZsb2F0MTYpLnRvKCUyMmN1ZGElMjIpJTBBcHJvbXB0JTIwJTNEJTIwJTIyQSUyMGN1dGUlMjBoZXJnZV9zdHlsZSUyMGJyb3duJTIwYmVhciUyMGVhdGluZyUyMGElMjBzbGljZSUyMG9mJTIwcGl6emElMkMlMjBzdHVubmluZyUyMGNvbG9yJTIwc2NoZW1lJTJDJTIwbWFzdGVycGllY2UlMkMlMjBpbGx1c3RyYXRpb24lMjIlMEFpbWFnZSUyMCUzRCUyMHBpcGVsaW5lKHByb21wdCkuaW1hZ2VzJTVCMCU1RCUwQWltYWdl",highlighted:`<span class="hljs-keyword">from</span> diffusers <span class="hljs-keyword">import</span> AutoPipelineForText2Image | |
| <span class="hljs-keyword">import</span> torch | |
| pipeline = AutoPipelineForText2Image.from_pretrained(<span class="hljs-string">"sd-dreambooth-library/herge-style"</span>, torch_dtype=torch.float16).to(<span class="hljs-string">"cuda"</span>) | |
| prompt = <span class="hljs-string">"A cute herge_style brown bear eating a slice of pizza, stunning color scheme, masterpiece, illustration"</span> | |
| image = pipeline(prompt).images[<span class="hljs-number">0</span>] | |
| image`,wrap:!1}}),P=new F({props:{title:"Textual inversion",local:"textual-inversion",headingTag:"h2"}}),ee=new w({props:{code:"ZnJvbSUyMGRpZmZ1c2VycyUyMGltcG9ydCUyMEF1dG9QaXBlbGluZUZvclRleHQySW1hZ2UlMEFpbXBvcnQlMjB0b3JjaCUwQSUwQXBpcGVsaW5lJTIwJTNEJTIwQXV0b1BpcGVsaW5lRm9yVGV4dDJJbWFnZS5mcm9tX3ByZXRyYWluZWQoJTIyc3RhYmxlLWRpZmZ1c2lvbi12MS01JTJGc3RhYmxlLWRpZmZ1c2lvbi12MS01JTIyJTJDJTIwdG9yY2hfZHR5cGUlM0R0b3JjaC5mbG9hdDE2KS50byglMjJjdWRhJTIyKQ==",highlighted:`<span class="hljs-keyword">from</span> diffusers <span class="hljs-keyword">import</span> AutoPipelineForText2Image | |
| <span class="hljs-keyword">import</span> torch | |
| pipeline = AutoPipelineForText2Image.from_pretrained(<span class="hljs-string">"stable-diffusion-v1-5/stable-diffusion-v1-5"</span>, torch_dtype=torch.float16).to(<span class="hljs-string">"cuda"</span>)`,wrap:!1}}),te=new w({props:{code:"cGlwZWxpbmUubG9hZF90ZXh0dWFsX2ludmVyc2lvbiglMjJzZC1jb25jZXB0cy1saWJyYXJ5JTJGZ3RhNS1hcnR3b3JrJTIyKSUwQXByb21wdCUyMCUzRCUyMCUyMkElMjBjdXRlJTIwYnJvd24lMjBiZWFyJTIwZWF0aW5nJTIwYSUyMHNsaWNlJTIwb2YlMjBwaXp6YSUyQyUyMHN0dW5uaW5nJTIwY29sb3IlMjBzY2hlbWUlMkMlMjBtYXN0ZXJwaWVjZSUyQyUyMGlsbHVzdHJhdGlvbiUyQyUyMCUzQ2d0YTUtYXJ0d29yayUzRSUyMHN0eWxlJTIyJTBBaW1hZ2UlMjAlM0QlMjBwaXBlbGluZShwcm9tcHQpLmltYWdlcyU1QjAlNUQlMEFpbWFnZQ==",highlighted:`pipeline.load_textual_inversion(<span class="hljs-string">"sd-concepts-library/gta5-artwork"</span>) | |
| prompt = <span class="hljs-string">"A cute brown bear eating a slice of pizza, stunning color scheme, masterpiece, illustration, <gta5-artwork> style"</span> | |
| image = pipeline(prompt).images[<span class="hljs-number">0</span>] | |
| image`,wrap:!1}}),ie=new w({props:{code:"cGlwZWxpbmUubG9hZF90ZXh0dWFsX2ludmVyc2lvbiglMEElMjAlMjAlMjAlMjAlMjJzYXlha3BhdWwlMkZFYXN5TmVnYXRpdmUtdGVzdCUyMiUyQyUyMHdlaWdodF9uYW1lJTNEJTIyRWFzeU5lZ2F0aXZlLnNhZmV0ZW5zb3JzJTIyJTJDJTIwdG9rZW4lM0QlMjJFYXN5TmVnYXRpdmUlMjIlMEEp",highlighted:`pipeline.load_textual_inversion( | |
| <span class="hljs-string">"sayakpaul/EasyNegative-test"</span>, weight_name=<span class="hljs-string">"EasyNegative.safetensors"</span>, token=<span class="hljs-string">"EasyNegative"</span> | |
| )`,wrap:!1}}),oe=new w({props:{code:"cHJvbXB0JTIwJTNEJTIwJTIyQSUyMGN1dGUlMjBicm93biUyMGJlYXIlMjBlYXRpbmclMjBhJTIwc2xpY2UlMjBvZiUyMHBpenphJTJDJTIwc3R1bm5pbmclMjBjb2xvciUyMHNjaGVtZSUyQyUyMG1hc3RlcnBpZWNlJTJDJTIwaWxsdXN0cmF0aW9uJTJDJTIwRWFzeU5lZ2F0aXZlJTIyJTBBbmVnYXRpdmVfcHJvbXB0JTIwJTNEJTIwJTIyRWFzeU5lZ2F0aXZlJTIyJTBBJTBBaW1hZ2UlMjAlM0QlMjBwaXBlbGluZShwcm9tcHQlMkMlMjBuZWdhdGl2ZV9wcm9tcHQlM0RuZWdhdGl2ZV9wcm9tcHQlMkMlMjBudW1faW5mZXJlbmNlX3N0ZXBzJTNENTApLmltYWdlcyU1QjAlNUQlMEFpbWFnZQ==",highlighted:`prompt = <span class="hljs-string">"A cute brown bear eating a slice of pizza, stunning color scheme, masterpiece, illustration, EasyNegative"</span> | |
| negative_prompt = <span class="hljs-string">"EasyNegative"</span> | |
| image = pipeline(prompt, negative_prompt=negative_prompt, num_inference_steps=<span class="hljs-number">50</span>).images[<span class="hljs-number">0</span>] | |
| image`,wrap:!1}}),Me=new F({props:{title:"LoRA",local:"lora",headingTag:"h2"}}),X=new Ye({props:{$$slots:{default:[os]},$$scope:{ctx:V}}}),ye=new w({props:{code:"ZnJvbSUyMGRpZmZ1c2VycyUyMGltcG9ydCUyMEF1dG9QaXBlbGluZUZvclRleHQySW1hZ2UlMEFpbXBvcnQlMjB0b3JjaCUwQSUwQXBpcGVsaW5lJTIwJTNEJTIwQXV0b1BpcGVsaW5lRm9yVGV4dDJJbWFnZS5mcm9tX3ByZXRyYWluZWQoJTIyc3RhYmlsaXR5YWklMkZzdGFibGUtZGlmZnVzaW9uLXhsLWJhc2UtMS4wJTIyJTJDJTIwdG9yY2hfZHR5cGUlM0R0b3JjaC5mbG9hdDE2KS50byglMjJjdWRhJTIyKQ==",highlighted:`<span class="hljs-keyword">from</span> diffusers <span class="hljs-keyword">import</span> AutoPipelineForText2Image | |
| <span class="hljs-keyword">import</span> torch | |
| pipeline = AutoPipelineForText2Image.from_pretrained(<span class="hljs-string">"stabilityai/stable-diffusion-xl-base-1.0"</span>, torch_dtype=torch.float16).to(<span class="hljs-string">"cuda"</span>)`,wrap:!1}}),ue=new w({props:{code:"cGlwZWxpbmUubG9hZF9sb3JhX3dlaWdodHMoJTIyb3N0cmlzJTJGc3VwZXItY2VyZWFsLXNkeGwtbG9yYSUyMiUyQyUyMHdlaWdodF9uYW1lJTNEJTIyY2VyZWFsX2JveF9zZHhsX3YxLnNhZmV0ZW5zb3JzJTIyKSUwQXByb21wdCUyMCUzRCUyMCUyMmJlYXJzJTJDJTIwcGl6emElMjBiaXRlcyUyMiUwQWltYWdlJTIwJTNEJTIwcGlwZWxpbmUocHJvbXB0KS5pbWFnZXMlNUIwJTVEJTBBaW1hZ2U=",highlighted:`pipeline.load_lora_weights(<span class="hljs-string">"ostris/super-cereal-sdxl-lora"</span>, weight_name=<span class="hljs-string">"cereal_box_sdxl_v1.safetensors"</span>) | |
| prompt = <span class="hljs-string">"bears, pizza bites"</span> | |
| image = pipeline(prompt).images[<span class="hljs-number">0</span>] | |
| image`,wrap:!1}}),Je=new w({props:{code:"ZnJvbSUyMGRpZmZ1c2VycyUyMGltcG9ydCUyMEF1dG9QaXBlbGluZUZvclRleHQySW1hZ2UlMEFpbXBvcnQlMjB0b3JjaCUwQSUwQXBpcGVsaW5lJTIwJTNEJTIwQXV0b1BpcGVsaW5lRm9yVGV4dDJJbWFnZS5mcm9tX3ByZXRyYWluZWQoJTIyc3RhYmlsaXR5YWklMkZzdGFibGUtZGlmZnVzaW9uLXhsLWJhc2UtMS4wJTIyJTJDJTIwdG9yY2hfZHR5cGUlM0R0b3JjaC5mbG9hdDE2KS50byglMjJjdWRhJTIyKSUwQXBpcGVsaW5lLnVuZXQubG9hZF9hdHRuX3Byb2NzKCUyMmpiaWxja2UtaGYlMkZzZHhsLWNpbmVtYXRpYy0xJTIyJTJDJTIwd2VpZ2h0X25hbWUlM0QlMjJweXRvcmNoX2xvcmFfd2VpZ2h0cy5zYWZldGVuc29ycyUyMiklMEElMEElMjMlMjAlRUQlOTQlODQlRUIlQTElQUMlRUQlOTQlODQlRUQlOEElQjglRUMlOTclOTAlRUMlODQlOUMlMjBjbm10JUVCJUE1JUJDJTIwJUVDJTgyJUFDJUVDJTlBJUE5JUVEJTk1JTk4JUVDJTk3JUFDJTIwTG9SQSVFQiVBNSVCQyUyMCVFRCU4QSVCOCVFQiVBNiVBQyVFQSVCMSVCMCVFRCU5NSVBOSVFQiU4QiU4OCVFQiU4QiVBNC4lMEFwcm9tcHQlMjAlM0QlMjAlMjJBJTIwY3V0ZSUyMGNubXQlMjBlYXRpbmclMjBhJTIwc2xpY2UlMjBvZiUyMHBpenphJTJDJTIwc3R1bm5pbmclMjBjb2xvciUyMHNjaGVtZSUyQyUyMG1hc3RlcnBpZWNlJTJDJTIwaWxsdXN0cmF0aW9uJTIyJTBBaW1hZ2UlMjAlM0QlMjBwaXBlbGluZShwcm9tcHQpLmltYWdlcyU1QjAlNUQlMEFpbWFnZQ==",highlighted:`<span class="hljs-keyword">from</span> diffusers <span class="hljs-keyword">import</span> AutoPipelineForText2Image | |
| <span class="hljs-keyword">import</span> torch | |
| pipeline = AutoPipelineForText2Image.from_pretrained(<span class="hljs-string">"stabilityai/stable-diffusion-xl-base-1.0"</span>, torch_dtype=torch.float16).to(<span class="hljs-string">"cuda"</span>) | |
| pipeline.unet.load_attn_procs(<span class="hljs-string">"jbilcke-hf/sdxl-cinematic-1"</span>, weight_name=<span class="hljs-string">"pytorch_lora_weights.safetensors"</span>) | |
| <span class="hljs-comment"># 프롬프트에서 cnmt를 사용하여 LoRA를 트리거합니다.</span> | |
| prompt = <span class="hljs-string">"A cute cnmt eating a slice of pizza, stunning color scheme, masterpiece, illustration"</span> | |
| image = pipeline(prompt).images[<span class="hljs-number">0</span>] | |
| image`,wrap:!1}}),Te=new w({props:{code:"cGlwZWxpbmUudW5sb2FkX2xvcmFfd2VpZ2h0cygp",highlighted:"pipeline.unload_lora_weights()",wrap:!1}}),Ce=new F({props:{title:"LoRA 가중치 스케일 조정하기",local:"lora-가중치-스케일-조정하기",headingTag:"h3"}}),Ve=new w({props:{code:"cGlwZSUyMCUzRCUyMC4uLiUyMCUyMyUyMCVFRCU4QyU4QyVFQyU5RCVCNCVFRCU5NCU4NCVFQiU5RCVCQyVFQyU5RCVCOCUyMCVFQyU4MyU5RCVFQyU4NCVCMSUwQXBpcGUubG9hZF9sb3JhX3dlaWdodHMoLi4uJTJDJTIwYWRhcHRlcl9uYW1lJTNEJTIybXlfYWRhcHRlciUyMiklMEFzY2FsZXMlMjAlM0QlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjJ0ZXh0X2VuY29kZXIlMjIlM0ElMjAwLjUlMkMlMEElMjAlMjAlMjAlMjAlMjJ0ZXh0X2VuY29kZXJfMiUyMiUzQSUyMDAuNSUyQyUyMCUyMCUyMyUyMCVFRCU4QyU4QyVFQyU5RCVCNCVFRCU5NCU4NCVFQyU5NyU5MCUyMCVFQiU5MSU5MCUyMCVFQiVCMiU4OCVFQyVBNyVCOCUyMCVFRCU4NSU4RCVFQyU4QSVBNCVFRCU4QSVCOCUyMCVFQyU5RCVCOCVFQyVCRCU5NCVFQiU4RCU5NCVFQSVCMCU4MCUyMCVFQyU5RSU4OCVFQiU4QSU5NCUyMCVFQSVCMiVCRCVFQyU5QSVCMCVFQyU5NyU5MCVFQiVBNyU4QyUyMCVFQyU4MiVBQyVFQyU5QSVBOSUyMCVFQSVCMCU4MCVFQiU4QSVBNSUwQSUyMCUyMCUyMCUyMCUyMnVuZXQlMjIlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjJkb3duJTIyJTNBJTIwMC45JTJDJTIwJTIwJTIzJTIwZG93biUyMCVFQiVCNiU4MCVFQiVCNiU4NCVFQyU5RCU5OCUyMCVFQiVBQSVBOCVFQiU5MyVBMCUyMCVFRCU4QSVCOCVFQiU5RSU5QyVFQyU4QSVBNCVFRCU4RiVBQyVFQiVBOCVCOCVFQiU4QSU5NCUyMCVFQyU4QSVBNCVFQyVCQyU4MCVFQyU5RCVCQyUyMDAuOSVFQiVBNSVCQyUyMCVFQyU4MiVBQyVFQyU5QSVBOSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMyUyMCUyMm1pZCUyMiUyMCUyMCUyMyUyMCVFQyU5RCVCNCUyMCVFQyU5OCU4OCVFQyVBMCU5QyVFQyU5NyU5MCVFQyU4NCU5QyVFQiU4QSU5NCUyMCUyMm1pZCUyMiVFQSVCMCU4MCUyMCVFQyVBNyU4MCVFQyVBMCU5NSVFQiU5MCU5OCVFQyVBNyU4MCUyMCVFQyU5NSU4QSVFQyU5NSU5OCVFQyU5QyVCQyVFQiVBRiU4MCVFQiVBMSU5QyUyMCVFQyVBNCU5MSVFQSVCMCU4NCUyMCVFQiVCNiU4MCVFQiVCNiU4NCVFQyU5RCU5OCUyMCVFQiVBQSVBOCVFQiU5MyVBMCUyMCVFRCU4QSVCOCVFQiU5RSU5QyVFQyU4QSVBNCVFRCU4RiVBQyVFQiVBOCVCOCVFQiU4QSU5NCUyMCVFQSVCOCVCMCVFQiVCMyVCOCUyMCVFQyU4QSVBNCVFQyVCQyU4MCVFQyU5RCVCQyUyMDEuMCVFQyU5RCU4NCUyMCVFQyU4MiVBQyVFQyU5QSVBOSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMnVwJTIyJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIyYmxvY2tfMCUyMiUzQSUyMDAuNiUyQyUyMCUyMCUyMyUyMCUyMyUyMHVwJUVDJTlEJTk4JTIwMCVFQiVCMiU4OCVFQyVBNyVCOCUyMCVFQiVCOCU5NCVFQiVBMSU5RCVFQyU5NyU5MCUyMCVFQyU5RSU4OCVFQiU4QSU5NCUyMDMlRUElQjAlOUMlRUMlOUQlOTglMjAlRUQlOEElQjglRUIlOUUlOUMlRUMlOEElQTQlRUQlOEYlQUMlRUIlQTglQjglRUIlOEElOTQlMjAlRUIlQUElQTglRUIlOTElOTAlMjAlRUMlOEElQTQlRUMlQkMlODAlRUMlOUQlQkMlMjAwLjYlRUMlOUQlODQlMjAlRUMlODIlQUMlRUMlOUElQTklMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjJibG9ja18xJTIyJTNBJTIwJTVCMC40JTJDJTIwMC44JTJDJTIwMS4wJTVEJTJDJTIwJTIwJTIzJTIwdXAlRUMlOUQlOTglMjAlRUMlQjIlQUIlMjAlRUIlQjIlODglRUMlQTclQjglMjAlRUIlQjglOTQlRUIlQTElOUQlRUMlOTclOTAlMjAlRUMlOUUlODglRUIlOEElOTQlMjAzJUVBJUIwJTlDJUVDJTlEJTk4JTIwJUVEJThBJUI4JUVCJTlFJTlDJUVDJThBJUE0JUVEJThGJUFDJUVCJUE4JUI4JUVCJThBJTk0JTIwJUVBJUIwJTgxJUVBJUIwJTgxJTIwJUVDJThBJUE0JUVDJUJDJTgwJUVDJTlEJUJDJTIwMC40JTJDJTIwMC44JTJDJTIwMS4wJUVDJTlEJTg0JTIwJUVDJTgyJUFDJUVDJTlBJUE5JTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTBBJTIwJTIwJTIwJTIwJTdEJTBBJTdEJTBBcGlwZS5zZXRfYWRhcHRlcnMoJTIybXlfYWRhcHRlciUyMiUyQyUyMHNjYWxlcyk=",highlighted:`pipe = ... <span class="hljs-comment"># 파이프라인 생성</span> | |
| pipe.load_lora_weights(..., adapter_name=<span class="hljs-string">"my_adapter"</span>) | |
| scales = { | |
| <span class="hljs-string">"text_encoder"</span>: <span class="hljs-number">0.5</span>, | |
| <span class="hljs-string">"text_encoder_2"</span>: <span class="hljs-number">0.5</span>, <span class="hljs-comment"># 파이프에 두 번째 텍스트 인코더가 있는 경우에만 사용 가능</span> | |
| <span class="hljs-string">"unet"</span>: { | |
| <span class="hljs-string">"down"</span>: <span class="hljs-number">0.9</span>, <span class="hljs-comment"># down 부분의 모든 트랜스포머는 스케일 0.9를 사용</span> | |
| <span class="hljs-comment"># "mid" # 이 예제에서는 "mid"가 지정되지 않았으므로 중간 부분의 모든 트랜스포머는 기본 스케일 1.0을 사용</span> | |
| <span class="hljs-string">"up"</span>: { | |
| <span class="hljs-string">"block_0"</span>: <span class="hljs-number">0.6</span>, <span class="hljs-comment"># # up의 0번째 블록에 있는 3개의 트랜스포머는 모두 스케일 0.6을 사용</span> | |
| <span class="hljs-string">"block_1"</span>: [<span class="hljs-number">0.4</span>, <span class="hljs-number">0.8</span>, <span class="hljs-number">1.0</span>], <span class="hljs-comment"># up의 첫 번째 블록에 있는 3개의 트랜스포머는 각각 스케일 0.4, 0.8, 1.0을 사용</span> | |
| } | |
| } | |
| } | |
| pipe.set_adapters(<span class="hljs-string">"my_adapter"</span>, scales)`,wrap:!1}}),S=new Ye({props:{warning:!0,$$slots:{default:[Ms]},$$scope:{ctx:V}}}),je=new F({props:{title:"Kohya와 TheLastBen",local:"kohya와-thelastben",headingTag:"h3"}}),x=new is({props:{id:"other-trainers",options:["Kohya","TheLastBen"],$$slots:{default:[Us]},$$scope:{ctx:V}}}),$e=new F({props:{title:"IP-Adapter",local:"ip-adapter",headingTag:"h2"}}),N=new Ye({props:{warning:!1,$$slots:{default:[us]},$$scope:{ctx:V}}}),Re=new w({props:{code:"ZnJvbSUyMGRpZmZ1c2VycyUyMGltcG9ydCUyMEF1dG9QaXBlbGluZUZvclRleHQySW1hZ2UlMEFpbXBvcnQlMjB0b3JjaCUwQWZyb20lMjBkaWZmdXNlcnMudXRpbHMlMjBpbXBvcnQlMjBsb2FkX2ltYWdlJTBBJTBBcGlwZWxpbmUlMjAlM0QlMjBBdXRvUGlwZWxpbmVGb3JUZXh0MkltYWdlLmZyb21fcHJldHJhaW5lZCglMjJzdGFibGUtZGlmZnVzaW9uLXYxLTUlMkZzdGFibGUtZGlmZnVzaW9uLXYxLTUlMjIlMkMlMjB0b3JjaF9kdHlwZSUzRHRvcmNoLmZsb2F0MTYpLnRvKCUyMmN1ZGElMjIp",highlighted:`<span class="hljs-keyword">from</span> diffusers <span class="hljs-keyword">import</span> AutoPipelineForText2Image | |
| <span class="hljs-keyword">import</span> torch | |
| <span class="hljs-keyword">from</span> diffusers.utils <span class="hljs-keyword">import</span> load_image | |
| pipeline = AutoPipelineForText2Image.from_pretrained(<span class="hljs-string">"stable-diffusion-v1-5/stable-diffusion-v1-5"</span>, torch_dtype=torch.float16).to(<span class="hljs-string">"cuda"</span>)`,wrap:!1}}),Fe=new w({props:{code:"cGlwZWxpbmUubG9hZF9pcF9hZGFwdGVyKCUyMmg5NCUyRklQLUFkYXB0ZXIlMjIlMkMlMjBzdWJmb2xkZXIlM0QlMjJtb2RlbHMlMjIlMkMlMjB3ZWlnaHRfbmFtZSUzRCUyMmlwLWFkYXB0ZXJfc2QxNS5iaW4lMjIp",highlighted:'pipeline.load_ip_adapter(<span class="hljs-string">"h94/IP-Adapter"</span>, subfolder=<span class="hljs-string">"models"</span>, weight_name=<span class="hljs-string">"ip-adapter_sd15.bin"</span>)',wrap:!1}}),_e=new w({props:{code:"aW1hZ2UlMjAlM0QlMjBsb2FkX2ltYWdlKCUyMmh0dHBzJTNBJTJGJTJGaHVnZ2luZ2ZhY2UuY28lMkZkYXRhc2V0cyUyRmh1Z2dpbmdmYWNlJTJGZG9jdW1lbnRhdGlvbi1pbWFnZXMlMkZyZXNvbHZlJTJGbWFpbiUyRmRpZmZ1c2VycyUyRmxvYWRfbmVnX2VtYmVkLnBuZyUyMiklMEFnZW5lcmF0b3IlMjAlM0QlMjB0b3JjaC5HZW5lcmF0b3IoZGV2aWNlJTNEJTIyY3B1JTIyKS5tYW51YWxfc2VlZCgzMyklMEFpbWFnZXMlMjAlM0QlMjBwaXBlbGluZSglMEElQzIlQTAlMjAlQzIlQTAlMjBwcm9tcHQlM0QnYmVzdCUyMHF1YWxpdHklMkMlMjBoaWdoJTIwcXVhbGl0eSUyQyUyMHdlYXJpbmclMjBzdW5nbGFzc2VzJyUyQyUwQSVDMiVBMCUyMCVDMiVBMCUyMGlwX2FkYXB0ZXJfaW1hZ2UlM0RpbWFnZSUyQyUwQSVDMiVBMCUyMCVDMiVBMCUyMG5lZ2F0aXZlX3Byb21wdCUzRCUyMm1vbm9jaHJvbWUlMkMlMjBsb3dyZXMlMkMlMjBiYWQlMjBhbmF0b215JTJDJTIwd29yc3QlMjBxdWFsaXR5JTJDJTIwbG93JTIwcXVhbGl0eSUyMiUyQyUwQSVDMiVBMCUyMCVDMiVBMCUyMG51bV9pbmZlcmVuY2Vfc3RlcHMlM0Q1MCUyQyUwQSVDMiVBMCUyMCVDMiVBMCUyMGdlbmVyYXRvciUzRGdlbmVyYXRvciUyQyUwQSkuaW1hZ2VzJTVCMCU1RCUwQWltYWdlcw==",highlighted:`image = load_image(<span class="hljs-string">"https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/diffusers/load_neg_embed.png"</span>) | |
| generator = torch.Generator(device=<span class="hljs-string">"cpu"</span>).manual_seed(<span class="hljs-number">33</span>) | |
| images = pipeline( | |
| prompt=<span class="hljs-string">'best quality, high quality, wearing sunglasses'</span>, | |
| ip_adapter_image=image, | |
| negative_prompt=<span class="hljs-string">"monochrome, lowres, bad anatomy, worst quality, low quality"</span>, | |
| num_inference_steps=<span class="hljs-number">50</span>, | |
| generator=generator, | |
| ).images[<span class="hljs-number">0</span>] | |
| images`,wrap:!1}}),ve=new F({props:{title:"IP-Adapter Plus",local:"ip-adapter-plus",headingTag:"h3"}}),Le=new w({props:{code:"ZnJvbSUyMHRyYW5zZm9ybWVycyUyMGltcG9ydCUyMENMSVBWaXNpb25Nb2RlbFdpdGhQcm9qZWN0aW9uJTBBJTBBaW1hZ2VfZW5jb2RlciUyMCUzRCUyMENMSVBWaXNpb25Nb2RlbFdpdGhQcm9qZWN0aW9uLmZyb21fcHJldHJhaW5lZCglMEElMjAlMjAlMjAlMjAlMjJoOTQlMkZJUC1BZGFwdGVyJTIyJTJDJTBBJTIwJTIwJTIwJTIwc3ViZm9sZGVyJTNEJTIybW9kZWxzJTJGaW1hZ2VfZW5jb2RlciUyMiUyQyUwQSUyMCUyMCUyMCUyMHRvcmNoX2R0eXBlJTNEdG9yY2guZmxvYXQxNiUwQSklMEElMEFwaXBlbGluZSUyMCUzRCUyMEF1dG9QaXBlbGluZUZvclRleHQySW1hZ2UuZnJvbV9wcmV0cmFpbmVkKCUwQSUyMCUyMCUyMCUyMCUyMnN0YWJpbGl0eWFpJTJGc3RhYmxlLWRpZmZ1c2lvbi14bC1iYXNlLTEuMCUyMiUyQyUwQSUyMCUyMCUyMCUyMGltYWdlX2VuY29kZXIlM0RpbWFnZV9lbmNvZGVyJTJDJTBBJTIwJTIwJTIwJTIwdG9yY2hfZHR5cGUlM0R0b3JjaC5mbG9hdDE2JTBBKS50byglMjJjdWRhJTIyKSUwQSUwQXBpcGVsaW5lLmxvYWRfaXBfYWRhcHRlciglMjJoOTQlMkZJUC1BZGFwdGVyJTIyJTJDJTIwc3ViZm9sZGVyJTNEJTIyc2R4bF9tb2RlbHMlMjIlMkMlMjB3ZWlnaHRfbmFtZSUzRCUyMmlwLWFkYXB0ZXItcGx1c19zZHhsX3ZpdC1oLnNhZmV0ZW5zb3JzJTIyKQ==",highlighted:`<span class="hljs-keyword">from</span> transformers <span class="hljs-keyword">import</span> CLIPVisionModelWithProjection | |
| image_encoder = CLIPVisionModelWithProjection.from_pretrained( | |
| <span class="hljs-string">"h94/IP-Adapter"</span>, | |
| subfolder=<span class="hljs-string">"models/image_encoder"</span>, | |
| torch_dtype=torch.float16 | |
| ) | |
| pipeline = AutoPipelineForText2Image.from_pretrained( | |
| <span class="hljs-string">"stabilityai/stable-diffusion-xl-base-1.0"</span>, | |
| image_encoder=image_encoder, | |
| torch_dtype=torch.float16 | |
| ).to(<span class="hljs-string">"cuda"</span>) | |
| pipeline.load_ip_adapter(<span class="hljs-string">"h94/IP-Adapter"</span>, subfolder=<span class="hljs-string">"sdxl_models"</span>, weight_name=<span class="hljs-string">"ip-adapter-plus_sdxl_vit-h.safetensors"</span>)`,wrap:!1}}),Se=new F({props:{title:"IP-Adapter Face ID 모델",local:"ip-adapter-face-id-모델",headingTag:"h3"}}),A=new Ye({props:{warning:!0,$$slots:{default:[fs]},$$scope:{ctx:V}}}),Ne=new w({props:{code:"cGlwZWxpbmUlMjAlM0QlMjBBdXRvUGlwZWxpbmVGb3JUZXh0MkltYWdlLmZyb21fcHJldHJhaW5lZCglMEElMjAlMjAlMjAlMjAlMjJzdGFiaWxpdHlhaSUyRnN0YWJsZS1kaWZmdXNpb24teGwtYmFzZS0xLjAlMjIlMkMlMEElMjAlMjAlMjAlMjB0b3JjaF9kdHlwZSUzRHRvcmNoLmZsb2F0MTYlMEEpLnRvKCUyMmN1ZGElMjIpJTBBJTBBcGlwZWxpbmUubG9hZF9pcF9hZGFwdGVyKCUyMmg5NCUyRklQLUFkYXB0ZXItRmFjZUlEJTIyJTJDJTIwc3ViZm9sZGVyJTNETm9uZSUyQyUyMHdlaWdodF9uYW1lJTNEJTIyaXAtYWRhcHRlci1mYWNlaWRfc2R4bC5iaW4lMjIlMkMlMjBpbWFnZV9lbmNvZGVyX2ZvbGRlciUzRE5vbmUp",highlighted:`pipeline = AutoPipelineForText2Image.from_pretrained( | |
| <span class="hljs-string">"stabilityai/stable-diffusion-xl-base-1.0"</span>, | |
| torch_dtype=torch.float16 | |
| ).to(<span class="hljs-string">"cuda"</span>) | |
| pipeline.load_ip_adapter(<span class="hljs-string">"h94/IP-Adapter-FaceID"</span>, subfolder=<span class="hljs-literal">None</span>, weight_name=<span class="hljs-string">"ip-adapter-faceid_sdxl.bin"</span>, image_encoder_folder=<span class="hljs-literal">None</span>)`,wrap:!1}}),Ae=new w({props:{code:"ZnJvbSUyMHRyYW5zZm9ybWVycyUyMGltcG9ydCUyMENMSVBWaXNpb25Nb2RlbFdpdGhQcm9qZWN0aW9uJTBBJTBBaW1hZ2VfZW5jb2RlciUyMCUzRCUyMENMSVBWaXNpb25Nb2RlbFdpdGhQcm9qZWN0aW9uLmZyb21fcHJldHJhaW5lZCglMEElMjAlMjAlMjAlMjAlMjJsYWlvbiUyRkNMSVAtVmlULUgtMTQtbGFpb24yQi1zMzJCLWI3OUslMjIlMkMlMEElMjAlMjAlMjAlMjB0b3JjaF9kdHlwZSUzRHRvcmNoLmZsb2F0MTYlMkMlMEEpJTBBJTBBcGlwZWxpbmUlMjAlM0QlMjBBdXRvUGlwZWxpbmVGb3JUZXh0MkltYWdlLmZyb21fcHJldHJhaW5lZCglMEElMjAlMjAlMjAlMjAlMjJzdGFibGUtZGlmZnVzaW9uLXYxLTUlMkZzdGFibGUtZGlmZnVzaW9uLXYxLTUlMjIlMkMlMEElMjAlMjAlMjAlMjBpbWFnZV9lbmNvZGVyJTNEaW1hZ2VfZW5jb2RlciUyQyUwQSUyMCUyMCUyMCUyMHRvcmNoX2R0eXBlJTNEdG9yY2guZmxvYXQxNiUwQSkudG8oJTIyY3VkYSUyMiklMEElMEFwaXBlbGluZS5sb2FkX2lwX2FkYXB0ZXIoJTIyaDk0JTJGSVAtQWRhcHRlci1GYWNlSUQlMjIlMkMlMjBzdWJmb2xkZXIlM0ROb25lJTJDJTIwd2VpZ2h0X25hbWUlM0QlMjJpcC1hZGFwdGVyLWZhY2VpZC1wbHVzX3NkMTUuYmluJTIyKQ==",highlighted:`<span class="hljs-keyword">from</span> transformers <span class="hljs-keyword">import</span> CLIPVisionModelWithProjection | |
| image_encoder = CLIPVisionModelWithProjection.from_pretrained( | |
| <span class="hljs-string">"laion/CLIP-ViT-H-14-laion2B-s32B-b79K"</span>, | |
| torch_dtype=torch.float16, | |
| ) | |
| pipeline = AutoPipelineForText2Image.from_pretrained( | |
| <span class="hljs-string">"stable-diffusion-v1-5/stable-diffusion-v1-5"</span>, | |
| image_encoder=image_encoder, | |
| torch_dtype=torch.float16 | |
| ).to(<span class="hljs-string">"cuda"</span>) | |
| pipeline.load_ip_adapter(<span class="hljs-string">"h94/IP-Adapter-FaceID"</span>, subfolder=<span class="hljs-literal">None</span>, weight_name=<span class="hljs-string">"ip-adapter-faceid-plus_sd15.bin"</span>)`,wrap:!1}}),Ee=new ns({props:{source:"https://github.com/huggingface/diffusers/blob/main/docs/source/ko/using-diffusers/loading_adapters.md"}}),{c(){i=M("meta"),C=a(),p=M("p"),U=a(),f(u.$$.fragment),y=a(),f(b.$$.fragment),Z=a(),j=M("p"),j.innerHTML=Y,I=a(),W=M("p"),W.textContent=q,B=a(),f(Q.$$.fragment),$=a(),f(R.$$.fragment),o=a(),g=M("p"),g.innerHTML=De,Pe=a(),D=M("p"),D.innerHTML=ot,Oe=a(),f(z.$$.fragment),Ke=a(),G=M("div"),G.innerHTML=Mt,el=a(),f(P.$$.fragment),ll=a(),O=M("p"),O.innerHTML=rt,tl=a(),K=M("p"),K.textContent=mt,sl=a(),f(ee.$$.fragment),al=a(),le=M("p"),le.innerHTML=yt,nl=a(),f(te.$$.fragment),il=a(),_=M("div"),_.innerHTML=Ut,pl=a(),se=M("p"),se.innerHTML=ut,ol=a(),ae=M("ul"),ae.innerHTML=ft,Ml=a(),ne=M("p"),ne.innerHTML=ct,rl=a(),f(ie.$$.fragment),ml=a(),pe=M("p"),pe.innerHTML=dt,yl=a(),f(oe.$$.fragment),Ul=a(),v=M("div"),v.innerHTML=Jt,ul=a(),f(Me.$$.fragment),fl=a(),re=M("p"),re.innerHTML=ht,cl=a(),f(X.$$.fragment),dl=a(),me=M("p"),me.textContent=Tt,Jl=a(),f(ye.$$.fragment),hl=a(),Ue=M("p"),Ue.innerHTML=Ct,Tl=a(),f(ue.$$.fragment),Cl=a(),k=M("div"),k.innerHTML=gt,gl=a(),fe=M("p"),fe.innerHTML=bt,bl=a(),ce=M("ul"),ce.innerHTML=Vt,Vl=a(),de=M("p"),de.innerHTML=wt,wl=a(),f(Je.$$.fragment),jl=a(),L=M("div"),L.innerHTML=jt,Ql=a(),he=M("p"),he.innerHTML=Qt,$l=a(),f(Te.$$.fragment),Zl=a(),f(Ce.$$.fragment),Il=a(),ge=M("p"),ge.innerHTML=$t,Bl=a(),be=M("p"),be.innerHTML=Zt,Rl=a(),f(Ve.$$.fragment),Wl=a(),we=M("p"),we.innerHTML=It,Fl=a(),f(S.$$.fragment),Gl=a(),f(je.$$.fragment),_l=a(),Qe=M("p"),Qe.innerHTML=Bt,vl=a(),f(x.$$.fragment),Xl=a(),f($e.$$.fragment),kl=a(),Ze=M("p"),Ze.innerHTML=Rt,Ll=a(),Ie=M("p"),Ie.innerHTML=Wt,Sl=a(),f(N.$$.fragment),xl=a(),Be=M("p"),Be.textContent=Ft,Nl=a(),f(Re.$$.fragment),Hl=a(),We=M("p"),We.innerHTML=Gt,Al=a(),f(Fe.$$.fragment),El=a(),Ge=M("p"),Ge.textContent=_t,Yl=a(),f(_e.$$.fragment),ql=a(),H=M("div"),H.innerHTML=vt,Dl=a(),f(ve.$$.fragment),zl=a(),Xe=M("p"),Xe.innerHTML=Xt,Pl=a(),ke=M("p"),ke.innerHTML=kt,Ol=a(),f(Le.$$.fragment),Kl=a(),f(Se.$$.fragment),et=a(),xe=M("p"),xe.innerHTML=Lt,lt=a(),f(A.$$.fragment),tt=a(),f(Ne.$$.fragment),st=a(),He=M("p"),He.innerHTML=St,at=a(),f(Ae.$$.fragment),nt=a(),f(Ee.$$.fragment),it=a(),ze=M("p"),this.h()},l(e){const l=es("svelte-u9bgzb",document.head);i=r(l,"META",{name:!0,content:!0}),l.forEach(t),C=n(e),p=r(e,"P",{}),qt(p).forEach(t),U=n(e),c(u.$$.fragment,e),y=n(e),c(b.$$.fragment,e),Z=n(e),j=r(e,"P",{"data-svelte-h":!0}),m(j)!=="svelte-16bf5k2"&&(j.innerHTML=Y),I=n(e),W=r(e,"P",{"data-svelte-h":!0}),m(W)!=="svelte-1vi87ff"&&(W.textContent=q),B=n(e),c(Q.$$.fragment,e),$=n(e),c(R.$$.fragment,e),o=n(e),g=r(e,"P",{"data-svelte-h":!0}),m(g)!=="svelte-or9czk"&&(g.innerHTML=De),Pe=n(e),D=r(e,"P",{"data-svelte-h":!0}),m(D)!=="svelte-emmkw5"&&(D.innerHTML=ot),Oe=n(e),c(z.$$.fragment,e),Ke=n(e),G=r(e,"DIV",{class:!0,"data-svelte-h":!0}),m(G)!=="svelte-1qqjocv"&&(G.innerHTML=Mt),el=n(e),c(P.$$.fragment,e),ll=n(e),O=r(e,"P",{"data-svelte-h":!0}),m(O)!=="svelte-117ykpw"&&(O.innerHTML=rt),tl=n(e),K=r(e,"P",{"data-svelte-h":!0}),m(K)!=="svelte-6w30tt"&&(K.textContent=mt),sl=n(e),c(ee.$$.fragment,e),al=n(e),le=r(e,"P",{"data-svelte-h":!0}),m(le)!=="svelte-8n0ka2"&&(le.innerHTML=yt),nl=n(e),c(te.$$.fragment,e),il=n(e),_=r(e,"DIV",{class:!0,"data-svelte-h":!0}),m(_)!=="svelte-vwb4li"&&(_.innerHTML=Ut),pl=n(e),se=r(e,"P",{"data-svelte-h":!0}),m(se)!=="svelte-xhnj7d"&&(se.innerHTML=ut),ol=n(e),ae=r(e,"UL",{"data-svelte-h":!0}),m(ae)!=="svelte-hrjisu"&&(ae.innerHTML=ft),Ml=n(e),ne=r(e,"P",{"data-svelte-h":!0}),m(ne)!=="svelte-1l1rgk1"&&(ne.innerHTML=ct),rl=n(e),c(ie.$$.fragment,e),ml=n(e),pe=r(e,"P",{"data-svelte-h":!0}),m(pe)!=="svelte-crnf53"&&(pe.innerHTML=dt),yl=n(e),c(oe.$$.fragment,e),Ul=n(e),v=r(e,"DIV",{class:!0,"data-svelte-h":!0}),m(v)!=="svelte-j6euo"&&(v.innerHTML=Jt),ul=n(e),c(Me.$$.fragment,e),fl=n(e),re=r(e,"P",{"data-svelte-h":!0}),m(re)!=="svelte-ujyh26"&&(re.innerHTML=ht),cl=n(e),c(X.$$.fragment,e),dl=n(e),me=r(e,"P",{"data-svelte-h":!0}),m(me)!=="svelte-1dvocne"&&(me.textContent=Tt),Jl=n(e),c(ye.$$.fragment,e),hl=n(e),Ue=r(e,"P",{"data-svelte-h":!0}),m(Ue)!=="svelte-18gn0k8"&&(Ue.innerHTML=Ct),Tl=n(e),c(ue.$$.fragment,e),Cl=n(e),k=r(e,"DIV",{class:!0,"data-svelte-h":!0}),m(k)!=="svelte-848z5s"&&(k.innerHTML=gt),gl=n(e),fe=r(e,"P",{"data-svelte-h":!0}),m(fe)!=="svelte-1qz3wem"&&(fe.innerHTML=bt),bl=n(e),ce=r(e,"UL",{"data-svelte-h":!0}),m(ce)!=="svelte-dlnea7"&&(ce.innerHTML=Vt),Vl=n(e),de=r(e,"P",{"data-svelte-h":!0}),m(de)!=="svelte-1fsp6a2"&&(de.innerHTML=wt),wl=n(e),c(Je.$$.fragment,e),jl=n(e),L=r(e,"DIV",{class:!0,"data-svelte-h":!0}),m(L)!=="svelte-1etahws"&&(L.innerHTML=jt),Ql=n(e),he=r(e,"P",{"data-svelte-h":!0}),m(he)!=="svelte-1e49s07"&&(he.innerHTML=Qt),$l=n(e),c(Te.$$.fragment,e),Zl=n(e),c(Ce.$$.fragment,e),Il=n(e),ge=r(e,"P",{"data-svelte-h":!0}),m(ge)!=="svelte-6nr24m"&&(ge.innerHTML=$t),Bl=n(e),be=r(e,"P",{"data-svelte-h":!0}),m(be)!=="svelte-ytof64"&&(be.innerHTML=Zt),Rl=n(e),c(Ve.$$.fragment,e),Wl=n(e),we=r(e,"P",{"data-svelte-h":!0}),m(we)!=="svelte-1disx0g"&&(we.innerHTML=It),Fl=n(e),c(S.$$.fragment,e),Gl=n(e),c(je.$$.fragment,e),_l=n(e),Qe=r(e,"P",{"data-svelte-h":!0}),m(Qe)!=="svelte-l3jlx7"&&(Qe.innerHTML=Bt),vl=n(e),c(x.$$.fragment,e),Xl=n(e),c($e.$$.fragment,e),kl=n(e),Ze=r(e,"P",{"data-svelte-h":!0}),m(Ze)!=="svelte-jqqmto"&&(Ze.innerHTML=Rt),Ll=n(e),Ie=r(e,"P",{"data-svelte-h":!0}),m(Ie)!=="svelte-1aw44ax"&&(Ie.innerHTML=Wt),Sl=n(e),c(N.$$.fragment,e),xl=n(e),Be=r(e,"P",{"data-svelte-h":!0}),m(Be)!=="svelte-13chlgn"&&(Be.textContent=Ft),Nl=n(e),c(Re.$$.fragment,e),Hl=n(e),We=r(e,"P",{"data-svelte-h":!0}),m(We)!=="svelte-63lykc"&&(We.innerHTML=Gt),Al=n(e),c(Fe.$$.fragment,e),El=n(e),Ge=r(e,"P",{"data-svelte-h":!0}),m(Ge)!=="svelte-1hljpgw"&&(Ge.textContent=_t),Yl=n(e),c(_e.$$.fragment,e),ql=n(e),H=r(e,"DIV",{class:!0,"data-svelte-h":!0}),m(H)!=="svelte-1vum0wo"&&(H.innerHTML=vt),Dl=n(e),c(ve.$$.fragment,e),zl=n(e),Xe=r(e,"P",{"data-svelte-h":!0}),m(Xe)!=="svelte-9vlttf"&&(Xe.innerHTML=Xt),Pl=n(e),ke=r(e,"P",{"data-svelte-h":!0}),m(ke)!=="svelte-gjj407"&&(ke.innerHTML=kt),Ol=n(e),c(Le.$$.fragment,e),Kl=n(e),c(Se.$$.fragment,e),et=n(e),xe=r(e,"P",{"data-svelte-h":!0}),m(xe)!=="svelte-1dpf8s3"&&(xe.innerHTML=Lt),lt=n(e),c(A.$$.fragment,e),tt=n(e),c(Ne.$$.fragment,e),st=n(e),He=r(e,"P",{"data-svelte-h":!0}),m(He)!=="svelte-1b45tv3"&&(He.innerHTML=St),at=n(e),c(Ae.$$.fragment,e),nt=n(e),c(Ee.$$.fragment,e),it=n(e),ze=r(e,"P",{}),qt(ze).forEach(t),this.h()},h(){E(i,"name","hf:doc:metadata"),E(i,"content",ds),E(G,"class","flex justify-center"),E(_,"class","flex justify-center"),E(v,"class","flex justify-center"),E(k,"class","flex justify-center"),E(L,"class","flex justify-center"),E(H,"class","flex justify-center")},m(e,l){ls(document.head,i),s(e,C,l),s(e,p,l),s(e,U,l),d(u,e,l),s(e,y,l),d(b,e,l),s(e,Z,l),s(e,j,l),s(e,I,l),s(e,W,l),s(e,B,l),d(Q,e,l),s(e,$,l),d(R,e,l),s(e,o,l),s(e,g,l),s(e,Pe,l),s(e,D,l),s(e,Oe,l),d(z,e,l),s(e,Ke,l),s(e,G,l),s(e,el,l),d(P,e,l),s(e,ll,l),s(e,O,l),s(e,tl,l),s(e,K,l),s(e,sl,l),d(ee,e,l),s(e,al,l),s(e,le,l),s(e,nl,l),d(te,e,l),s(e,il,l),s(e,_,l),s(e,pl,l),s(e,se,l),s(e,ol,l),s(e,ae,l),s(e,Ml,l),s(e,ne,l),s(e,rl,l),d(ie,e,l),s(e,ml,l),s(e,pe,l),s(e,yl,l),d(oe,e,l),s(e,Ul,l),s(e,v,l),s(e,ul,l),d(Me,e,l),s(e,fl,l),s(e,re,l),s(e,cl,l),d(X,e,l),s(e,dl,l),s(e,me,l),s(e,Jl,l),d(ye,e,l),s(e,hl,l),s(e,Ue,l),s(e,Tl,l),d(ue,e,l),s(e,Cl,l),s(e,k,l),s(e,gl,l),s(e,fe,l),s(e,bl,l),s(e,ce,l),s(e,Vl,l),s(e,de,l),s(e,wl,l),d(Je,e,l),s(e,jl,l),s(e,L,l),s(e,Ql,l),s(e,he,l),s(e,$l,l),d(Te,e,l),s(e,Zl,l),d(Ce,e,l),s(e,Il,l),s(e,ge,l),s(e,Bl,l),s(e,be,l),s(e,Rl,l),d(Ve,e,l),s(e,Wl,l),s(e,we,l),s(e,Fl,l),d(S,e,l),s(e,Gl,l),d(je,e,l),s(e,_l,l),s(e,Qe,l),s(e,vl,l),d(x,e,l),s(e,Xl,l),d($e,e,l),s(e,kl,l),s(e,Ze,l),s(e,Ll,l),s(e,Ie,l),s(e,Sl,l),d(N,e,l),s(e,xl,l),s(e,Be,l),s(e,Nl,l),d(Re,e,l),s(e,Hl,l),s(e,We,l),s(e,Al,l),d(Fe,e,l),s(e,El,l),s(e,Ge,l),s(e,Yl,l),d(_e,e,l),s(e,ql,l),s(e,H,l),s(e,Dl,l),d(ve,e,l),s(e,zl,l),s(e,Xe,l),s(e,Pl,l),s(e,ke,l),s(e,Ol,l),d(Le,e,l),s(e,Kl,l),d(Se,e,l),s(e,et,l),s(e,xe,l),s(e,lt,l),d(A,e,l),s(e,tt,l),d(Ne,e,l),s(e,st,l),s(e,He,l),s(e,at,l),d(Ae,e,l),s(e,nt,l),d(Ee,e,l),s(e,it,l),s(e,ze,l),pt=!0},p(e,[l]){const xt={};l&2&&(xt.$$scope={dirty:l,ctx:e}),Q.$set(xt);const Nt={};l&2&&(Nt.$$scope={dirty:l,ctx:e}),X.$set(Nt);const Ht={};l&2&&(Ht.$$scope={dirty:l,ctx:e}),S.$set(Ht);const At={};l&2&&(At.$$scope={dirty:l,ctx:e}),x.$set(At);const Et={};l&2&&(Et.$$scope={dirty:l,ctx:e}),N.$set(Et);const Yt={};l&2&&(Yt.$$scope={dirty:l,ctx:e}),A.$set(Yt)},i(e){pt||(J(u.$$.fragment,e),J(b.$$.fragment,e),J(Q.$$.fragment,e),J(R.$$.fragment,e),J(z.$$.fragment,e),J(P.$$.fragment,e),J(ee.$$.fragment,e),J(te.$$.fragment,e),J(ie.$$.fragment,e),J(oe.$$.fragment,e),J(Me.$$.fragment,e),J(X.$$.fragment,e),J(ye.$$.fragment,e),J(ue.$$.fragment,e),J(Je.$$.fragment,e),J(Te.$$.fragment,e),J(Ce.$$.fragment,e),J(Ve.$$.fragment,e),J(S.$$.fragment,e),J(je.$$.fragment,e),J(x.$$.fragment,e),J($e.$$.fragment,e),J(N.$$.fragment,e),J(Re.$$.fragment,e),J(Fe.$$.fragment,e),J(_e.$$.fragment,e),J(ve.$$.fragment,e),J(Le.$$.fragment,e),J(Se.$$.fragment,e),J(A.$$.fragment,e),J(Ne.$$.fragment,e),J(Ae.$$.fragment,e),J(Ee.$$.fragment,e),pt=!0)},o(e){h(u.$$.fragment,e),h(b.$$.fragment,e),h(Q.$$.fragment,e),h(R.$$.fragment,e),h(z.$$.fragment,e),h(P.$$.fragment,e),h(ee.$$.fragment,e),h(te.$$.fragment,e),h(ie.$$.fragment,e),h(oe.$$.fragment,e),h(Me.$$.fragment,e),h(X.$$.fragment,e),h(ye.$$.fragment,e),h(ue.$$.fragment,e),h(Je.$$.fragment,e),h(Te.$$.fragment,e),h(Ce.$$.fragment,e),h(Ve.$$.fragment,e),h(S.$$.fragment,e),h(je.$$.fragment,e),h(x.$$.fragment,e),h($e.$$.fragment,e),h(N.$$.fragment,e),h(Re.$$.fragment,e),h(Fe.$$.fragment,e),h(_e.$$.fragment,e),h(ve.$$.fragment,e),h(Le.$$.fragment,e),h(Se.$$.fragment,e),h(A.$$.fragment,e),h(Ne.$$.fragment,e),h(Ae.$$.fragment,e),h(Ee.$$.fragment,e),pt=!1},d(e){e&&(t(C),t(p),t(U),t(y),t(Z),t(j),t(I),t(W),t(B),t($),t(o),t(g),t(Pe),t(D),t(Oe),t(Ke),t(G),t(el),t(ll),t(O),t(tl),t(K),t(sl),t(al),t(le),t(nl),t(il),t(_),t(pl),t(se),t(ol),t(ae),t(Ml),t(ne),t(rl),t(ml),t(pe),t(yl),t(Ul),t(v),t(ul),t(fl),t(re),t(cl),t(dl),t(me),t(Jl),t(hl),t(Ue),t(Tl),t(Cl),t(k),t(gl),t(fe),t(bl),t(ce),t(Vl),t(de),t(wl),t(jl),t(L),t(Ql),t(he),t($l),t(Zl),t(Il),t(ge),t(Bl),t(be),t(Rl),t(Wl),t(we),t(Fl),t(Gl),t(_l),t(Qe),t(vl),t(Xl),t(kl),t(Ze),t(Ll),t(Ie),t(Sl),t(xl),t(Be),t(Nl),t(Hl),t(We),t(Al),t(El),t(Ge),t(Yl),t(ql),t(H),t(Dl),t(zl),t(Xe),t(Pl),t(ke),t(Ol),t(Kl),t(et),t(xe),t(lt),t(tt),t(st),t(He),t(at),t(nt),t(it),t(ze)),t(i),T(u,e),T(b,e),T(Q,e),T(R,e),T(z,e),T(P,e),T(ee,e),T(te,e),T(ie,e),T(oe,e),T(Me,e),T(X,e),T(ye,e),T(ue,e),T(Je,e),T(Te,e),T(Ce,e),T(Ve,e),T(S,e),T(je,e),T(x,e),T($e,e),T(N,e),T(Re,e),T(Fe,e),T(_e,e),T(ve,e),T(Le,e),T(Se,e),T(A,e),T(Ne,e),T(Ae,e),T(Ee,e)}}}const ds='{"title":"어댑터 불러오기","local":"어댑터-불러오기","sections":[{"title":"DreamBooth","local":"dreambooth","sections":[],"depth":2},{"title":"Textual inversion","local":"textual-inversion","sections":[],"depth":2},{"title":"LoRA","local":"lora","sections":[{"title":"LoRA 가중치 스케일 조정하기","local":"lora-가중치-스케일-조정하기","sections":[],"depth":3},{"title":"Kohya와 TheLastBen","local":"kohya와-thelastben","sections":[],"depth":3}],"depth":2},{"title":"IP-Adapter","local":"ip-adapter","sections":[{"title":"IP-Adapter Plus","local":"ip-adapter-plus","sections":[],"depth":3},{"title":"IP-Adapter Face ID 모델","local":"ip-adapter-face-id-모델","sections":[],"depth":3}],"depth":2}],"depth":1}';function Js(V){return Pt(()=>{new URLSearchParams(window.location.search).get("fw")}),[]}class js extends Ot{constructor(i){super(),Kt(this,i,Js,cs,zt,{})}}export{js as component}; | |
Xet Storage Details
- Size:
- 55.8 kB
- Xet hash:
- ac985496173c4a851f223dffa9860120ec449a52d0012802f6ba3f892571096e
·
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.