AI 이미지/Stable Diffusion

Stable Diffusion - 체크포인트 모델에 관한 모든 것

하늘이푸른오늘 2023. 6. 23. 00:30

이 글은 스테이블 디퓨전 초보자 가이드중  마지막 글입니다.

스테이블 디퓨전 모델(model), 혹은 체크포인트(checkpoint) 모델은 일반적인 이미지 혹은 특정한 장르의 이미지를 생성하기 위한 목적으로 미리 학습된 스테이블 디퓨전 가중치(weight)입니다.

어떤 모델이 생성할 수 있는 이미지는 모델 학습에 사용된 이미지에 의해 결정됩니다. 고양이를 학습하지 않은 모델을 사용해서는 고양이를 생성할 수 없고, 고양이만 학습한 모델이라면 고양이 말고는 아무것도 생성하지 못합니다.

이 글에서는 모델이 무엇이고, 널리 사용되는 모델의 특성, 설치방법, 사용방법 등을 설명합니다. 설치하는 방법만 궁금하시다면 여기를 눌러보세요.

미세 조정 모델(Fine-tuned model)

미세조정(Fine-tuned)이란?

미세조정은 머신 러닝에서 널리 사용되는 기법입니다. 여러가지가 포함된 데이터 세트에서 학습된 모델을, 좀더 특정한 분야의 데이터 세트를 사용해 조금 더 학습시키는 것을 말합니다. 이렇게 미세 조정된 모델은 원래 모델이 가진 다양성을 유지하면서도, 특정한 분야의 이미지에 대해서 좀더 편향된 이미지를 생성하게 됩니다.

미세조정 모델을 만드는 이유

스테이블 디퓨전 기본 모델이 모든 것을 잘하는 것은 아니기 때문입니다. 예를 들어, 프롬프트에 anime라고 입력해주면 애니 스타일의 이미지를 생성하긴 하지만, 특별한 장르의 애니 이미지는 생성하지 못합니다. 이럴 때 프롬프트와 씨름하는 것보다 해당 장르의 이미지로 모델을 미세조정하는 것이 나을 것입니다.

아래는 동일한 프롬프트와 동일한 설정을 사용하되, 모델만 달리해서 생성한 결과입니다. 이처럼 모델을 달리하면 완전히 다른 스타일의 이미지를 생성할 수 있습니다.

Realistic Vision Anything v3 DreamShaper

미세조정 모델을 제작하는 방법

주요 미세조정 방법은 (1) 추가 학습 (2) 드림부스(Dreambooth) 등이 있습니다. 두 가지 모두 스테이블 디퓨전  v1.4 또는 v1.5 를 기본 모델로 사용합니다. (아래 미세 조정 모델의 종류를 보시면 아시지만, v2를 기반으로 미세조정된 모델은 없거나 거의 사용되지 않습니다. 프롬프트를 사용하기 어렵기 때문이라고 합니다.)

추가 학습은 기본모델에 관심있는 추가 데이터 세트를 사용해 훈련시키는 방법입니다. 예를 들어 Stable Diffusion v1.5 모델에 빈티지 자동차 이미지 데이터를 사용하여 추가로 학습시키면, 멋진 자동차 이미지에 편항된 모델이 만들어지게 됩니다. 

드림부스(Dreambooth)는 구글에서 처음 개발한 방법으로서, text-to-image 모델에 사용자 지정 피사체를 삽입하는 기술입니다. 3-5장의 이미지만으로도 작동시킬 수 있습니다. 사진의 사진을 몇장 찍고, 이 사진들을 드림부스를 이용하여 모델에 집어 넣을 수 있습니다. 단, 드림부스를 이용해 학습된 모델은 이미지에 표출시키기위한 특별한 키워드가 필요합니다.

체크포인트 모델만이 스타일을 변경시키는 것은 아닙니다. 텍스트 인버전(textual inversion, embedding이라고도 함), LoRA, LyCORIS, 하이퍼네트워크 등을 사용해도 방식은 다르지만 스타일을 변경시킬 수 있습니다. 이 글에서는 체크포인트 모델에서만 다룹니다.

스테이블 디퓨전 모델은 크게 2가지 종류가 있습니다. v1과 v2입니다. 기타 v1모델과 v2 모델은 기본 모델이고, 추가 학습을 통해 새로운 특성을 넣은 미세 조정 모델도 있습니다. 미세 조정 모델은 현재 수천개 이상이 존재하며 매일 매일 새로운 것이 나오고 있습니다. 미세 조정 모델에 관한 자세한 내용은 아래를 읽어보세요.

Stable diffusion v1.4

스테이블 디퓨전 v1.4로 생성한 이미지
스테이블 디퓨전 v1.4로 생성한 이미지

모델 페이지, 다운로드 링크

v1.4는 스테이블 디퓨전을 개발한 Stablility AI에서 2022년 8월에 공개한 모델로서, 최초로 공개적으로 사용되기 시작한 스테이블 디퓨전 모델로 간주됩니다.

v1.4는 범용 모델로 생각할 수 있습니다. 특정한 스타일을 고집하지 않는 이상, 대부분의 경우 그대로 사용해도 무방합니다.

Stable Diffusion v1.5

스테이블 디퓨전 v1.5로 생성한 이미지
스테이블 디퓨전 v1.5로 생성한 이미지

모델 페이지, 다운로드 링크

Stable Diffusion v1.5는 2022년 10월, Stability AI의 파트너인 Runway ML에서 공개했습니다. 이 모델은 v1.2를 기반으로 좀 더 학습시킨 모델입니다.

모델 페이지에는 어떤 점이 향상되었는지에 대한 언급이 없습니다. v1.4와는 약간 다른 결과물을 생산하는데, 어떤 것이 더 좋은지 명확하지 않습니다.

v1.5는 v1.4와 마찬가지로 범용 모델로 취급할 수 있습니다. 경험적으로 두 가지 모두 큰 차이가 없으며, 초기 모델로 사용하기에 나쁘지 않습니다.

Stabel Diffusion v2 모델

Stability AI에서는 version 2라는 새로운 시리즈의 모델을 공개했습니다. 현재까지는 2.02.1 이 공개되어 있습니다. 주요한 변경사항은 아래와 같습니다.

  • 512x512 에 추가하여 고해상도(768x768) 버전을 사용할 수 있음
  • 학습시 포르노 관련 자료를 제거하여, 노골적인 내용은 생성할 수 없음

아마도 모든 사람들이 v2모델을 사용하기 위해 이동했으리라 생각하실 수 있습니다. 하지만, 스테이블 디퓨전 사용자들은 2.0 모델이 1.5에 비해 이미지 품질이 낮다는 것을 발견했습니다. 또한 유명인의 이름, 예술가의 이름과 같은 강력한 키워드를 사용하기 힘들게 되었습니다. 

2.1 모델은 이러한 문제를 어느정도 해소했습니다. 이미지 품질이 약간 좋아졌고, 예술적 스타일을 생성하기 편해졌습니다. 그럼에도 불구하고 많은 사람들이 2.1 모델로 이동하지 않고 있습니다. 많은 사람들이 가끔 2.1을 사용하기는 하지만 대부분 v1 모델을 사용하고 있습니다. 

v2 모델을 사용하고 싶으시다면 이 글을 참고하시기 바랍니다.

Realistic Vision v2

프롬프트: close up photo of a rabbit, forest, haze, halation, bloom, dramatic atmosphere, centred, rule of thirds, 200mm 1.4f macro shot 
프롬프트: RAW photo, a close up portrait photo of 26 y.o woman in wastelander clothes, long haircut, pale skin, slim body, background is city ruins, (high detailed skin:1.2), 8k uhd, dslr, soft lighting, high quality, film grain, Fujifilm XT3 
프롬프트: professional photo of perfect eyes, black, sharp, studio lighting, intricate, epic, 8k, photorealism, highly detailed

모델 페이지

Realistic Vison v2는 어떤 것이던 사실적으로 표현해줍니다. 사실적인 인물 사진 생성방법은 이 글을 참고하세요.

DreamShaper

프롬프트: portrait of beautiful cyborg with brown hair, intricate, elegant, highly detailed, majestic, digital photography, surreal painting gold butterfly filigree, broken glass, side lighting, finely detailed beautiful eyes, hdr, <lora:more_details:0.2> 
프롬프트: portrait of a woman in light armor, burst shot, detailed eyes, a detailed painting, fantasy art <lora:more_details:0.3> 
프롬프트: underwater world, colorful fish, bright corals, bubbles, rays of light, intricately detailed, natural bright sunlight, masterpiece, high contrast, hard shadows,<lora:add_detail:0.5>
부정적 프롬프트: disfigured, ugly, bad, 3d, painting, b&w, EasyNegative

모델 페이지 다운로드 링크

DreamShaper 는 사실적 사진과 컴퓨터 그래픽 중간쯤에 있는 초상화 형태의 일러스트레이션 스타일에 맞춰 세부 조정된 모델입니다. 사용하기 쉽고 성과도 매우 좋은 편입니다. 대충 웬만한 프롬프트만 넣으면 멋진 이미지가 만들어집니다.

모델 페이지에 따르면 Restore Face 는 사용하지 않는 게 좋다고 하네요.

SDXL 모델

SDXL 모델은 SD v1.5 와 SD v2 모델의 업그레이드 버전입니다. SDXL 모델은 아래와 같은 장점이 있습니다.

  • 높은 해상도 - v1.5는 512x512가 기본이지만, SDXL은 1024x1024가 기본 지원 해상도입니다.
  • 고품질 이미지 - SD 1.5 모델에 비하면 훨씬 나은 이미지를 생성할 수 있습니다. 
  • 문자 생성 가능 - 위 이미지처럼 문자를 생성할 수 있습니다(단, 긴 문장은 거의 불가능합니다)
  • 어두운 이미지 생성가능 - SD 1.5 모델에 비해 어두운 이미지가 생성됩니다.

Anything v5

프롬프트: anime picture of a girl, in a white shirt, beautiful garden, trees with autumn leaves, official art, a detailed painting, vivid color, 8K
프롬프트: a young girl standing on a rooftop, looking at a city at night, turned away, buildings and lights in the background, a rain falling down, Hongkong, cyberpunk art, highly detailed, UHD
프롬프트: scenery, whale in the starry sky, swimming fishes, galaxy, cosmos, fantasy, floating object, backlight, shadow, masterpiece, best quality
부정적 프롬프트: disfigured, ugly, bad, 3d, painting, b&w, EasyNegative

모델 페이지

Anything 시리지는 고품질 애니 스타일 이미지를 생성하도록 학습된 모델입니다. v1 부터 v5까지 여러가지 버전이 있는데, 주인장은 v5를 추천하고 있습니다. 이 모델을 사용할 때 danbooru 태그(1girl, white hair 등)을 사용할 수 있습니다.

v3 모델의 경우 유명인들을 애니 스타일로 바꾸는데 매우 유용하며, 일러스트레이션 요소와 매끄럽게 섞인다고 합니다(그런데 v5에서 엠마 왓슨을 넣어 실험해 봤더니 얼굴이 확실히 달라지기는 한데 그 얼굴이 글쎄... 싶네요). 

그리고 특별히 선호되는 설정은 없다고 하고, 다만, 자신은 Euler A, 20 스텝, CFG: 7, (Clip Skip:2 ??) 정도로 설정하고 사용한다고 하고, 다만, EasyNegative는 사용하지 말라고 했습니다(그런데 위 이미지는 DPM++ 2M Karras 샘플링을 사용했고, EasyNegative도 사용했네요. ㅎㅎ)

모델 페이지에는 아주 다양한 애니 캐릭터가 올려져 있는데, 프롬프트를 살펴보면 대부분 LoRA를 사용하여 생성한 것 같습니다. 어쨌든... 이 모델은 예쁜 애니 캐릭터를 만드는 데는 꽤 쓸만한 것 같습니다.

최고의 스테이블 디퓨전 모델

Deliberate v2

프롬프트: a closeup portrait of a playful maid, undercut hair, apron, amazing body, pronounced feminine feature, busty, kitchen, [ash blonde | ginger | pink hair], freckles, flirting with camera 
프롬프트: portrait of a man with a beard, wearing headphones, jacket, looking away from the camera, realistic shaded perfect face, a computer rendering, aestheticism 
프롬프트: pixel sorting, pretty girl emerged into eternal tera, stream everlasting data flowing, infinite light, dispersion loop, chaotic undulation, optical illusions, celestial outerworld, lut, hdr, dramatic light, digital art, redshift render, raytraced image, behance had <lora:Pixel Sorting v1:0.5>

모델 페이지

deliberate v2 도 사실적인 일러스트레이션을 생성해주는 아주 좋은 모델입니다. 프롬프트만 적당하다면, 결과물은 매우 놀라울 정도입니다. 

F222

프롬프트: a photo of a woman, sitting in front of cafe, burst shot, detailed face, looking at me, 8K, UHD
프롬프트: portrait of a beautiful young woman, cat ears, dress, burst shot, detailed face, looking at me, 8K, UHD
프롬프트: portrait of a woman, thick coats with fur, scarves, skirt, burst shot, detailed face, looking at me, 8K, UHD
부정적 프롬프트: disfigured, ugly, bad, 3d, painting, b&w, EasyNegative

모델 페이지

F222은 원래 누드 이미지를 생성하기 위해 학습된 모델이지만, 사람들은 신체 부위 관계가 정확한 아름다운 여성 초상화를 생성하는 데 도움이 된다는 걸 알게되었습니다. 흥미롭게도 미학적으로 예쁜 의상도 꽤 잘 생성합니다.

F222 는 초상화 스타일의 이미지 생성에 좋습니다. 노골적인 이미지가 생성되는 경우가 많은데 옷 관련 키워드(dress, skirt, jeans 등)를 프롬프트에 넣어주면 생성 비율이 낮아집니다. 하지만 저는 개인적으로 이 모델을 추천하지는 않습니다. 더 좋은 모델이 많은데 지금은 관리도 안되는 듯한 모델을 사용할 필요는 없겠죠.

좀더 사실적인 인물 이미지를 원하시면 이 글을 읽어보세요.

ChilloutMix

프롬프트: complex 3d render ultra detailed of a beautiful woman cyborg, full body, sitting, elegant, robotic parts,  small breast, lace,  cable electric wires, microchip, 150 mm, vibrant details, hyperrealistic, beautiful studio soft light, rim light, 8k, best quality, masterpiece, CG , photo-realistic,  incredibly absurdres,  <lora:JapaneseDollLikeness_v15:0.2> <lora:koreandolllikenessV20_v20:0.4> ulzzang-6500-v1.1 
프롬프트: RAW portrait photo of beautiful detailed girl, light smile, extremely detailed eyes and face, short bang, pink hair, floating hair, long eyelashes, looking at viewer, 1girl, cute, young, mature face, small breasts, business suit, collared shirt, in office, open cardigan, black thighhighs, miniskirt, unbuttoned shirt, best quality, photo-realistic, masterpiece, CG, unity, 8k wallpaper, highres, absurdres, soft light, lim lighting, ulzzang-6500-v1.1 <lora:koreanDollLikeness:0.3> <lora:japanesedolllikenessV1_v15:0.2>  

모델 페이지

ChilloutMix는 제가 가장 많이 사용하는 모델로, 원래 아시아계 여성을 생성하기 위한 특별한 모델입니다. 그냥 a girl 과 같이 입력하면 조금 매력이 없는 얼굴이 만들어지는데,  ulzzang-6500-v1 이라는 embedding(텍스트 인버전) 을 함께 사용하면 좋습니다. 또한 LoRA 를 함께 사용해주는 게 좋습니다. LoRA  에 관한 자세한 내용은 이 글을 읽어보세요(맨 오른쪽은 임베딩과 LoRA없이 생성한 건데 나름 괜찮네요~) 모델 제작자도 ulzzang-6500 임베딩과 LoRA 를 함께 사용하도록 적극 추천하고 있네요.

또한 노골적인 이미지가 상당히 많이 생성되는 편인데, 프롬프트에 "dress", "jeans", "skirt" 와 같은 단어를 넣어주고, 부정적 프롬프트에는 "nude", "nsfw"와 같은 단어를 넣어주는 게 좋습니다.

Protogen v2.2

프롬프트: artwork of beautiful girl, in ramen shop, anime style, burst shot, professional majestic impressionism oil painting by Studio Ghibli, trending on ArtStation, trending on CGSociety, Intricate, high detailed, dramatic, by makoto shinkai, modelshoot style, extremely detailed CG unity 8k wallpaper 
프롬프트: RAW portrait photo of beautiful detailed girl, light smile, extremely detailed eyes and face, short bang, pink hair, floating hair, long eyelashes, looking at viewer, 1girl, cute, young, mature face, small breasts, business suit, collared shirt, in office, open cardigan, black thighhighs, miniskirt, unbuttoned shirt, best quality, photo-realistic, masterpiece, CG, unity, 8k wallpaper, highres, absurdres, soft light, lim lighting (ChilloutMix 예제와 동일)
프롬프트: modelshoot style, award winning photo of a beautiful cyborg woman, wearing titanium futuristic armor, destroyed futuristic city in background, high contrast, soft lighting, backlighting, bloom, light sparkles, chromatic aberration, sharp focus 

모델 페이지

Protogen v2.2 는 고급스러운 일러스트와 애니메이션 스타일 이미지를 생성합니다. 애니 스타일도 일러스트 스타일도 괜찮게 나오는데, 모델 페이지에도 선호하는 설정에 대해서는 별 언급이 없네요.

GhostMix

프롬프트: (masterpiece, top quality, best quality, official art, beautiful and aesthetic:1.2), (1girl), extreme detailed,(fractal art:1.3), colorful, highest detailed
프롬프트: complex 3d render ultra detailed of a beautiful woman cyborg, full body, sitting, elegant, robotic parts,  small breast, lace,  cable electric wires, microchip, 150 mm, vibrant details, hyperrealistic, beautiful studio soft light, rim light, 8k, best quality, masterpiece, CG , photo-realistic,  incredibly absurdres, (참고: ChilloutMix와 동일)
프롬프트: 1girl,solo,floating colorful water,  looking at viewer, (flat color:1.1),(colorful:1.3),(masterpiece:1.2), best quality, original, extremely detailed wallpaper

모델 페이지

원글에 따르면 GhostMix는 이름에서 알수 있는 것처럼 1990년대 애니의 클래식이라 할 수 있는 공각기공대(Ghost in the Shell)을 사용하여 학습하였다고 하며, 사이보그와 로봇을 생성하는 데 유용하다고 합니다.

하지만 모델 페이지에 들어가보시면 아시겠지만, 모든 종류의 애니스타일에 만능이며 특히 추천 프롬프트인 "fractal art", "flat color/colorful"를 사용해보면 멋진 이미지를 얻을 수 있습니다.

Inkpunk Diffusion

프롬프트: nvinkpunk, portrait of young woman with blonde long hair and blue eyes, full body, open shirt, unbuttoned, standing, midriff, toned abs, detailed artgerm, smooth, pltn style, vector, softbox, trending on artstation, lightwave, organic tracery, sharp focus, ultra detail, 8K resolution 
프롬프트: nvinkpunk,JDM car drifting smokes, high speed, neon lights, headlights on, speed trails, highly detailed, UHD, 8K 
프롬프트: nvinkpunk, city

모델 페이지

Inkpunk Diffusion 모델은 Dreambooth로 학습한 모델로, 보시는 것처럼 매우 독특한 일러스트레이션 스타일을 가진 모델입니다. 특히 맨 마지막 이미지처럼 아주 간단한 프롬프트에도 그 분위기를 충분히 살리는 이미지를 생성해주네요. 멋집니다.

다만, 모델 페이지에 들어가도 별로 도움되는 정보는 없어서 아쉽습니다. 주의할 점: 이 모델을 사용할 때는 반드시 키워드 nvinkpunk를 사용해야 합니다. 

모델을 다운로드 받을 수 있는 곳

트랜스포머 모델 등 다양한 인공지능 모델을 공유하는 서비스로서 인공지능의 모델을 위한 깃허브라고 할 수 있는 Huggingface에 다양한 Stable Diffusion 모델이 올려져 있습니다. 특히 일부 모델의 경우 직접 사용해 볼 수 있는 서비스도 제공합니다. 다만, 정말 기술적이다보니, 저같은 일반 사용자는 접근이 쉽지 않습니다.

다음으로 제가 요즘 제일 자주 방문하는 사이트 중 하나인 Civitai.com입니다. 스테이블 디퓨전 모델이 정말 많이 올라와 있고, 그외에도 LoRA, 하이퍼네트워크, 텍스트 인버전 등 관련 모델이 제일 많이 올려진 곳입니다. 또한 이러한 모델을 사용해서 생성한 이미지들도 매우 많으므로, 올려진 이미지를 보고 자신이 구상하는 이미지를 구상하거나 프롬프트를 참조하는 데 유용합니다. 참고로 요즘은 Huggingface에 있는 모델은 대부분 Civitai.com에도 공유가 되는 것 같습니다.

모델 설치 및 사용방법

AUTOMATIC1111을 사용할 경우, 다운로드 받은 모델을 아래의 폴더를 찾아 넣어주면 됩니다. 

stable-diffusion-webui/models/Stable-diffusion/

다운로드를 받은 후, checkpoint 드롭박스 옆에 있는 새로 불러오기(reload) 버튼을 눌러주면 이 모델이 나타나게 됩니다.

이때 대표 이미지(반드시 .png)를 동일한 이름으로 저장해 두면, 쉽게 확인할 수 있습니다. 아래와 같이 [Generate] 버튼 아래에 있는 화투? 이미지를 누르고 checkpoint 탭을 누르면 아래에 체크포인트 파일(모델)이 그림과 함께 표시됩니다.

사용방법

체크포인트 파일을 AUTOMATIC1111에서 사용하려면 아래 그림처럼 왼쪽 위에 있는 드롭다운 메뉴에서 선택해 주어야 합니다. 방금 올린 파일은 목록에 안나타나는 데, 이때는 오른쪽에 있는 리프레시 버튼을 누른 후 드롭다운 메뉴를 사용하시면 됩니다. 

아래와 같이 txt2img 혹은 img2img 페이지에서 Checkpoints 탭을 누르고 모델을 선택해도 됩니다.

모델 합치기(Merge)

특성이 다른 모델은 합쳐서 사용할 수 있습니다. 다만 저는 이쪽에는 관심이 없어서 그냥 간략하게만 정리하겠습니다. 자세한 내용을 원하시면 원본 글을 참조하세요.

AUTOMATIC1111 GUI에서 두개의 모델을 합치려면 Ckeckpoint Merger 탭으로 가서 두개의 모델을 선택하고 아래와 같이 설정해주면 됩니다. 이때 Multiplier는 두 모델을 어느 정도 참조할 것인지에 대한 가중치로서, 0으로 두면 A와 동일한 모델이, 0.4로 두면 A:B=6:4 로 A를 더 많이 참조해서 새로운 모델을 생성한다는 뜻입니다.

Checkpoint Merger

모델 합치기 결과 예제

아래는 Anything v3와 F222을 동일한 가중치(0.5)로 합친 결과입니다. F222는 실사, Anything v3는 애니 스타일이라서 생성된 모델은 그 중간임을 아실 수 있습니다.

모델 합치기(Merge) 결과
모델 합치기(Merge) 결과

클립 건너뛰기(CLIP skip)

일부 모델의 경우 CLIP Skip 설정을 다른 값으로 설정할 것을 권하는 경우가 있습니다. 이런 경우, 해당 모델에서 의도한 효과가 나타나도록 하려면 이 설정을 따르는 것이 좋습니다. 

CLIP 건너뛰기란?

CLIP Skip이란 스테이블 디퓨전에서 이미지를 생성할 때, CLIP text embedding 네트워크의 마지막 레이어 몇개를 건너 뛸 수 있는 기능입니다. CLIP은 스테이블 디퓨전 v1.5 모델에서 사용되는 언어모델로서, 프롬프트로 입력한 텍스트 토큰을 임베딩으로 변환하는 역할을 합니다. CLIP은 사실 많은 레이어로 구성된 딮 신경망 모델입니다. 

AUOTMATIC1111 등의 테이블 디퓨전 소프트웨어엣  CLIP Skip을 1로 설정하면 레이어를 건너뛰지 않고 모든 레이어를 사용하는 것을 말합니다. CLIP Skip = 2로 설정하면 한개의 레이어를 건너 뛰고요.

CLIP 레이어를 건너 뛰는 이유는 뭘까요? 신경망은 레이어를 통과할 때마다 정보를 요약하는데, 즉, 이전의 레이어일수록 더많은 정보가 포함되어 있습니다. 

모델에 따라 CLIP 레이어를 건너뛰면 이미지에 극적인 변화를 가져오기도 합니다. 특히 애니 모델의 경우 CLIP Skip을 2로 하여 학습하는 경우가 많습니다. 아래는 동일한 설정으로 CLIP Skip을 달리하여 생성한 이미지를 비교한 것입니다.

CLIP Skip 1 CLIP Skip 2 CLIP Skip 3

AUTOMATIC1111에서 CLIP Skip 설정 방법

먼저 Settings 페이지에 들어가서 Stable Diffusion 내의 Clip Skip 항목을 찾아 원하는 값을 설정하면 됩니다.

하지만 CLIP Skip을 자주 변경해야 한다면, 더 좋은 방법이 있습니다. Settings 페이지에 들어가 User Interface -> Quicksettings list로 들어가서 CLIP_stop_at_last_layer를 추가한 휘, [Apply Settings]를 누르고 [Reload UI]를 눌러 새로 불러들이면 됩니다. 그러면 아래와 같이 AUTOMATIC1111 화면 맨위에 clip skip 슬라이더가 나타나게 됩니다.

스테이블 디퓨전 모델 포맷

모델 다운로드 페이지에 들어가면 아래와 같이 여러가지 모델 파일 포맷이 존재하는 경우가 있습니다.

  • Prunde
  • Full
  • EMA-only
  • FP16
  • FP32
  • .pt
  • .safetensors

어떤 것을 다운로드 받아야 할까요?

Pruned vs Full vs EMA-only

일부 스테이블 디퓨전 체크포인트 모델에는 두 가지 종류의 가중치를 포함하고 있습니다. (1) 마지막 학습 단계 후의 가중치 (2) 마지막 몇개의 학습 단계에 걸친 평균 가중치(exponetial moving average)

EMA-only 는 모델을 사용하는데에만 관심이 있을 경우, EMA-only 모델을 다운로드 받을 수 있습니다. 이들은 모델을 사용할 때 우리가 사용하는 가중치입니다. 때로는 pruned model이라고 부르기도 합니다.

추가로 학습된 미세 조정 모델을 원할 경우에는, 두 종류의 가중치로 구성된 체크포인트 파일인 full model만 필요합니다.

따라서, 이미지를 생성하는 데 사용하고자 할 경우에는 pruned 혹은 EMA-only 모델을 다운로드 받으면 좋습니다. 저장공간을 절약할 수 있기 때문입니다.

Fp16 과 Fp32 모델

Fp란 floating point(부동소숫점)을 의미합니다. 컴퓨터가 숫자를 저장하는 방식을 말합니다. Fp16은 각 숫자별로 16 비트를 사용한다는 것으로 half precision이라고 하며, FP32는 각 숫자를 32비트로 저장하며 full precision이라고 합니다.

딮 러닝 모델을 위한 학습 데이터는 상당히 잡음이 많은 편입니다. 따라서 full-precision  모델이 필요한 경우는 극히 드뭅니다. 나머지는 거의 잡음에 가깝기 때문입니다. 따라서 가능한한 FP16 모델을 사용하시기 바랍니다. 저장공간을 절반은 절약할 수 있습니다.

Safetensor 모델

원래의 pytorch 모델 포맷은 .pt입니다. 하지만  이 포맷은 보안이 약하다는 단점이 있습니다. 누군가 사용자 컴퓨터에서 실행될 수 있는 악성코드를 심을 수 있기 때문입니다.

Safetensor 포맷은 .pt 모델 포맷의 업그레이드 버전입니다. 동일한 가중치를 저장하지만, 어떠한 코드도 실행시키지 않습니다. 따라서 가능하다면 safetensors 포맷을 다운로드 받으시기 바랍니다.

민, 푸른하늘