Stable Diffusion WebUI 2025년 종합 가이드

이번 포스팅에서는 Stable Diffusion WebUI를 전반적으로 이해하고, 이미지 생성 과정을 처음부터 끝까지 따라가기 위해 꼭 알아야 할 기초 지식과 설정 방법을 정리했습니다.
이 글을 읽고 나면 Stable Diffusion의 작동 원리를 이해하고, 원하는 스타일의 이미지를 만들기 위한 기본 세팅을 마칠 수 있습니다. 이후 프롬프트 작성법이 궁금하다면 [Stable Diffusion WebUI 프롬프트 작성법 총정리 – 구도, 시점]다음 포스팅을 참고하세요.
스테이블 디퓨전 WebUI 이미지 생성 원리
스테이블 디퓨전(SD)은 이미지를 학습할 때 노이즈를 점차 추가하고, 생성할 때는 그 노이즈를 점차 제거하면서 이미지를 만들어내는 방식으로 작동합니다. 학습과정에서 “이미지 + 텍스트 캡션” 형태로 구성된 대규모 데이터셋을 활용, 텍스트 명령(프롬프트)을 반영한 이미지를 만들어냅니다.

이미지 생성 AI의 학습방식과 생성 과정을 간단히 요약하면 다음과 같습니다.
스테이블 디퓨전 WebUI 이미지 학습 과정
스테이블 디퓨전 WebUI 이미지 생성 과정
무작위 노이즈로 가득 찬 이미지에서 시작해, 주어진 프롬프트(예: “계란을 요리하는 고양이”)를 기반으로 점진적으로 노이즈를 제거하면서 이미지를 복원합니다. 그럼 실제 이미지 생성 과정을 같이 확인해 보겠습니다.
💡 이 과정에서 학습된 데이터셋 정보를 바탕으로 명령어에 부합하는 이미지를 생성합니다.

이미지 생성 과정에서 노이즈 제거 방식은 결과물의 품질에 큰 영향을 끼치는데, 이 과정을 조정하는 핵심이 바로 이어서 소개할 파라미터 설정입니다.
스테이블 디퓨전 WebUI 파라미터 기초 설명
이미지를 생성할 때 반복해서 사용하는 주요 파라미터에는 아래와 같은 것이 있습니다.

Sampling Steps(샘플링 스텝)
노이즈 제거 과정을 몇 번 반복할지 결정합니다. 해당 값이 높을수록 시간은 오래 걸리지만, 생성되는 이미지가 정교해지는 것을 확인할 수 있습니다. 하지만 지나게 높은 경우 오히려 이미지가 이상하게 생성되기 때문에 적정 값 안에서 조절하는 것을 추천합니다.
추천값: 일반적으로 20~40 사이의 값을 가장 많이 사용. 저는 40을 사용하다가 최근 생성 속도 때문에 현재는 20으로 설정하고 있습니다.

품질만 놓고 보면 Steps 20 또한 충분히 활용 가능한 수준입니다.
Sampling method, Sampler(샘플러)
스테이블 디퓨전 WebUI에서 이미지를 생성하는(노이즈 제거) 알고리즘을 선택하는 파라미터입니다. 예를 들어 Euler, Euler a, DPM++ 2M 등 다양한 방법이 있으며, 같은 프롬프트라도, 어떤 샘플러를 사용하느냐에 따라 결과물이 크게 달라집니다.
SD1.5 때는 ‘DPM++ 2M’을 많이 사용했지만, 최근에는 SDXL을 사용하기 시작하면서 ‘Euler a’ 샘플러를 가장 많이 사용하고 있습니다.
추천값: Euler a (빠르고 부드러운 결과) / DPM++ 2M (정밀한 결과)


CFG Scale (Classifier-Free Guidance Scale)
텍스트 프롬프트를 얼마나 강하게 적용할지 결정하는 파라미터입니다. 값이 높을수록 프롬프트가 더 충실하게 반영되지만, 값이 너무 높으면 이미지가 프롬프트 영향으로 부자연스러워질 수 있습니다.
추천값: 기본값은 ‘7’입니다. 일반적으로 txt2img의 경우 7~12 사이를 많이 사용하고, img2img의 경우 3~5까지 낮추기도 합니다.

Seed(시드)
앞으로 이 시드값을 가장 많이 만지게 될 건데, 랜덤으로 생성되는 노이즈 단계 이미지의 초기 값입니다. 동일한 프롬프트를 입력해도 다른 이미지가 생성되는 이유가 이 Seed값이 랜덤으로 생성되기 때문입니다.
기본적으로 Seed 값은 “-1″로 설정되어 있어 매번 무작위로 이미지를 생성합니다. 만약 Seed 값을 고정하고 싶다면, ‘♻️’ 아이콘을 클릭해 해당 값을 유지할 수 있습니다. 이렇게 하면 동일한 프롬프트와 Seed 값을 사용했을 때 동일한 이미지를 반복 생성할 수 있습니다. 다시 기본값으로 되돌리고 싶다면, ‘🎲’ 아이콘을 클릭해 Seed 값을 다시 무작위로 설정할 수 있습니다.
랜덤으로 이미지를 생성하려면 -1 사용

Resolution(해상도)
생성할 이미지의 크기를 결정합니다. 가로와 세로 값을 입력해 이미지의 사이즈를 정하는데, 해상도가 높을수록 디테일이 좋아지지만, 필요한 VRAM과 이미지 생성 시 소요되는 시간이 크게 늘어나기 때문에 적정값을 유지하는 것이 중요합니다.
게다가 어떤 비율로 이미지를 생성하느냐에 따라 결과물도 크게 달라지기 때문에 이 점도 유의해야 합니다.

SD1.5의 경우 ‘512×512’ 사이즈로 학습시켜서 512×768 사이즈를 많이 사용했지만, 현재 SDXL의 경우 ‘1024×1024’ 사이즈로 학습시켜 추천하는 이미지 사이즈가 다음과 같이 변경되었습니다. PC 바탕화면 메모장등에 복사해 놓으면 편합니다.
1024 x 1024 | Square (1:1) |
1152 x 896 | Balanced Landscape (9:7) |
896 x 1152 | Balanced Portrait (7:9) |
1216 x 832 | Wide Landscape (19:13) |
832 x 1216 | Tall Portrait (13:19) |
1344 x 768 | Widescreen Landscape (7:4) |
768 x 1344 | Widescreen Vertical (4:7) |
1536 x 640 | Panoramic Landscape (12:5) |
640 x 1536 | Panoramic Vertical (5:12) |
1182 x 886 | Photo (4:3) |
1254 x 836 | Landscape (3:2) |
1365 x 768 | Widescreen (16:9) |
1564 x 670 | Cinematic (21:9) |
Batch Count, Size
Batch Count는 이미지를 몇 번을 생성할지 결정하는 값입니다. 예를 들어 24를 입력해 generate를 클릭하면 24장까지 자동으로 이미지를 생성합니다.
Batch Size는 한 번에 동시 생성하는 이미지 개수를 설정하는 옵션입니다. 예를 들어 5를 입력하면 한 번에 5장의 이미지를 동시 생성하는데, 그만큼 GPU사용량이 증가하기 때문에 기본값인 1을 사용하는 것을 추천합니다.
스테이블 디퓨전 WebUI 주요 메뉴 설명
체크포인트(Checkpoint)
앞서 소개한 학습 과정을 통해 생성된 모델 파일이 바로 ‘체크포인트(Checkpoint)’입니다. 이 모델 파일은 SD WebUI를 사용하는 데 가장 중요한 요소입니다. 학습된 체크포인트를 이미지 생성 프로그램에 불러와 프롬프트를 입력하면, 노이즈 상태의 이미지가 점차 개선되어 최종적으로 완성된 이미지가 만들어집니다.
체크포인트 학습에 사용된 데이터셋에 따라 생성되는 이미지의 스타일이 크게 달라집니다. 예를 들어, 실사 이미지를 중심으로 학습된 모델과 애니메이션 스타일로 학습된 모델이 있다고 할 때, 동일한 프롬프트를 입력해도 전혀 다른 화풍의 이미지가 생성됩니다. 그렇기 때문에 이미지를 생성하기 전에 중요한 것 중 하나는 사용하고자 하는 용도와 스타일에 맞는 모델을 찾는 것입니다.

체크포인트 파일 종류
모델 파일은 다양한 형식으로 공유되고 있습니다. 그중 ‘ckpt’ 파일 형식은 보안에 취약하다는 이야기가 있어, 이 문제를 해결한 safetensors 파일 형식을 사용하는 것이 좋습니다. 만약 제작자가 여러 가지 파일 형식을 공유하고 있다면, safetensors 파일을 사용하시면 됩니다.
최근 대부분의 모델이 safetensors 형식으로 공유되고 있기 때문에, 굳이 ckpt나 pt 형식의 모델을 사용할 필요는 없습니다. 비슷한 퀄리티의 모델이 충분히 많이 제공되기 때문에, 이런 파일 형식은 우선적으로 피하는 것이 좋습니다. 체크포인트 파일 경로는 아래를 참고하세요.
Chekpoint: \stable-diffusion-webui\models\Stable-diffusion
로라(LoRA)
이미지 생성관련해서 정보를 찾다 보면 로라(LoRA)라는 용어를 자주 접하게 됩니다. 로라는 체크포인트와 다르게 특정 포인트만 따로 학습시켜 만든 모델이라 생각하면 됩니다. 예를 들어 특정 복장이나 스타일에 대한 데이터셋을 따로 학습시켜 LoRA로 만들면, 사용하던 체크포인트에 학습시킨 복장이나 스타일을 그대로 적용시킬 수 있습니다.
그리고 이 둘의 파일 확장자는 동일하게 safetensors를 사용하는 경우가 많습니다. 로라 파일은 아래 경로로 저장합니다.
LoRA: \stable-diffusion-webui\models\lora
💡 만약 모델 파일과 LoRA 파일이 섞였다면, 파일 용량으로 쉽게 구분할 수 있습니다. 체크포인트는 보통 6gb 정도의 용량을 가지고, LoRA는 종류마다 다르지만 10~500mb 정도로 대부분 1gb를 넘기지 않습니다.
프롬프트(Prompt)
프롬프트는 쉽게 말해 AI에게 요청하는 발주서와 같습니다. 내가 원하는 요구사항을 구체적으로 작성하는 겁니다. 예를 들어, 특정 캐릭터를 묘사하고 싶다면 이렇게 작성할 수 있습니다.
“검은 머리, 앞머리는 눈썹을 가리면 좋겠고, 눈은 붉은색이면 좋겠어, 케이프를 걸치고, 붉은 톤에 목까지 올라오는 셔츠를 입고 있어.” 이제 이 요구사항을 스테이블 디퓨전용 프롬프트로 변환하면 다음과 같이 작성할 수 있습니다.
black hair, red eyes, bob cut, bangs, eyebrows visible through hair, cape, red shirt
프롬프트는 캐릭터 묘사뿐만 아니라 다양한 요소를 적용할 수 있습니다. 대표적으로 퀄리티 관련 키워드, 그림 스타일(화풍), 조명, 이펙트, 구도, 주요 오브젝트, 배경 등의 요소를 입력할 수 있습니다. 입력하지 않은 요소들은 AI가 랜덤으로 생성하기 때문에, 원하는 결과를 얻기 위해 필요한 요소를 구체적으로 작성하는 것이 좋습니다. 더 다양한 프롬프트 예시가 필요하다면 아래 링크에서 확인할 수 있습니다.
- Ctrl + ↑/↓: 선택한 프롬프트의 가중치를 조정할 수 있습니다.
- Alt + ←/→: 선택한 프롬프트를 좌우로 이동
Negative Prompt
네거티브 프롬프트는 앞서 소개한 프롬프트와 반대로, 이미지에 포함되지 않았으면 하는 요소를 작성합니다. 일반적으로 “low quality”와 같은 퀄리티 관련 키워드를 네거티브 프롬프트에 입력해서 낮은 품질의 이미지가 생성되지 않도록 합니다. 예를 들어, “from above”를 네거티브 프롬프트에 입력하면, 위에서 아래로 바라보는 하이앵글 이미지를 생성하지 않도록 설정할 수 있습니다.
💡 프롬프트와 네거티브 프롬프트는 어느 정도 확률에 의존하기 때문에, 가끔 설정된 프롬프트를 벗어나는 이미지가 생성되기도 합니다.
Generate 버튼 기능 및 사용 방법
Generate버튼을 클릭하면, 입력한 프롬프트, 네거티브 프롬프트, 그리고 설정한 파라미터에 맞춰 이미지를 생성합니다. 설정 값에 따라 이미지 생성에 걸리는 시간이 달라지는데, 생성하려는 이미지 크기가 사용환경에 비해 지나치게 클 경우 PC가 멈추거나 오류가 발생할 수 있습니다.

이미지 생성 중에는 Generate 버튼 위치에 Interrupt, Skip 두 개의 버튼이 표시됩니다. 이 두 버튼은 이미지를 생성 중에만 표시되고, 생성이 완료되면 다시 Generate 버튼으로 돌아갑니다.
- Interrupt: 현재 진행 중인 이미지 생성을 중단
- Skip: 현재 생성 중인 이미지 건너뛰기
프롬프트 작성에 유용한 4가지 아이콘

VAE

VAE(Variational Auto Encoder)는 쉽게 이야기하면 필터라고 생각하셔도 됩니다. 이미지를 생성할 때 색감을 조정하는 역할을 합니다. VAE 종류는 다양하지만, 최근 업데이트된 스테이블 디퓨전 WebUI에서는 Automatic 기능이 지원되기 때문에 크게 신경 쓰지 않아도 됩니다.
공유되는 모델에 따라 VAE가 포함되는 경우도 있기 때문에 이럴 때에는 추천 VAE를 사용해 보는 것도 괜찮습니다. VAE를 다운로드한다면, 아래 경로에 저장하면 됩니다.
VAE: stable-diffusion-webui/models/VAE
VAE를 변경하려면 드롭다운 메뉴를 클릭하고 원하는 VAE를 선택하면 됩니다. 만약 다운로드한 파일 리스트에 표시되지 않는다면, 오른쪽에 있는 🔄️ 새로고침 아이콘을 클릭하면 리스트가 업데이트됩니다.




