SDXL 이 공개(2023.07.28)된지 약 6개월이 지났다. 필자는 아직 SD1.5를 주로 사용하고 있지만, SDXL 도 점점 사용회수를 늘이는 중이다. SDXL 을 사용하면서 선명도 때문에 언젠간 SD1.5 에서 SDXL 으로 전환해야 한다는 생각은 하고 있지만, SD1.5 도 6개월 전에 비해 많이 발전했기 때문에 전환할 일정은 좀 나중이 될거 같다. 아직도 에니메이션 풍의 그림은 SDXL 보다 SD1.5가 더 좋다. 아니면 최종적으로 병행해 사용하거나 말이다.
SDXL 으로 그린 그림. 선명한 그림을 그릴 수 있어 좋지만, 아직 에니풍의 화면은 무리다.
- 현재 SD WebUI 에서 SDXL 을 원활히 사용하기 위해 필요한 메모리 양은 윈도11의 경우 시스템 메모리 24GB 이상, VRAM 12GB 이상이다. CPU 는 크게 상관 없다. 듀얼코어에서도 크게 문제 없다.
- VRAM 이 8GB 인 경우에도 문제 없이 실행해볼 수 있다. --medvram-sdxl 옵션을 사용해야 한다. 시스템 메모리는 조금 많아야 한다.
- VRAM 이 4GB 인 경우에도 --lowvram 옵션을 사용해 실행할 수 있다. 해보지는 않았다.
- 반드시 nVidia 드라이버 최신 버전 사용하고, 리눅스사용할 경우 tcmalloc 반드시 사용하도록 하자.
- 스토리지가 많이 필요하다. 체크포인트만 해도 최소 6GB 이고, LoRA 파일의 용량도 SD1.5 에 비해 평균적으로 3배는 크다.
- SD1.5 에 비해 생성할 이미지의 해상도를 늘여야 하기 때문에 그만큼 느리다. 필자는 SD1.5 는 512x768, SDXL 은 832x1216 을 기본 해상도로 사용하고 있다. 그만큼 메모리 많이 먹는다.
- 필자는 현재 SD WebUI 에 "--xformers --no-half-vae" 옵션만 붙여서 사용하고 있다.
재미있는 LoRA 가 올라와서 만들어보았다. 곧있으면 신년이기도 해서, 랜턴 이미지는 준비하고 있었는데, 바이올린과 같이 만들면 어떨까 해서 만들어봤다. 예전에 라푼젤이라는 에니메이션 봤을때, 남여 주인공들이 배를 저어 호수 가운데로 가서 소망을 담은 등을 띄우는 걸 매우 감명깊게 보았었던게 기억나기도 한다. 이때문에 이맘때가 되면 윈도 바탕화면에서라도 등을 걸어두곤 한다.
아래 이미지들은 바이올린 이미지 만들다가 프롬프트 잘못줘서 나온 그림이긴 한데 꽤 맘에 들어 올려본다.
이미지 생성시간을 획기적으로 줄일 수 있는 방법중 하나로 LCM 을 사용하는 방법이 있다. 쉽게 말하면 (필자가 AI에 대해 잘아는건 아니지만) 노이즈를 제거하는 패턴을 학습시켜서 적은 스텝으로도 노이즈를 제거할 수 있도록하는 CM (Constistency Model)을 Stable Diffusion 에 맞게 Latent 영역에서 수행하도록 하는게 LCM이다.
※ 사용 방법은 아래와 같다.
- 사용 준비
● 현재 SD 1.5 용 체크포인트와 LoRA 를 사용하고 있는 경우 아래 2가지를 작업한다. 1. https://huggingface.co/latent-consistency/lcm-lora-sdv1-5 에서 LCM LoRA 를 받는다. 2. 프롬프트에 LCM LoRA 를 추가한다.
● LCM 용 체크포인트를 사용하는 경우에는 사전 준비할것이 없다. 가장 유명한 SD 1.5 LCM 용 모델인 DreamShaper 8 LCM 을 사용해도 좋다.
- 생성하기
1. Sampler 를 "LCM" 으로 변경한다. 4. CFG Scale 을 "2" 으로 변경한다. 5. Sampling steps 을 4 ~ 16 사이의 값으로 변경한다. 6. 생성 버튼 클릭
AI로 그림그리는 실력을 늘이는데 필요한 것 중 하나가 바로 잘 그린 그림을 따라해보는 거라고 생각한다. CivitAI 에서 그림 감상중에 한 그림이 맘에 들어 따라해 보았다. 아래 이미지가 바로 그것.
프롬프트는 CivitAI 의 샘플 이미지와 같다. 재현은 잘 되었다. CivitAI 에 있는 그림과 거의 동일하다고 생각하기 때문이다. 사소한 디테일은 장비차이 때문이라고 치자. 내 방법대로 그리면 이런 그림은 안 나오기 때문에 조금 아쉽다. 위 그림을 생성하려면 반드시 xxmix9realistic_v40 체크포인트를 사용해야 하고, wrenchfaeflare LoRA 를 사용하면 쉽게 생성할 수 있다.
요즘의 SD 용 체크포인트는 적은 프롬프트를 사용해도 풍성하고 디테일 있는 그림을 얻을 수 있도록 튜닝되곤 한다. 이 그림도 마찬가지.
내 방법대로 그린 그림은 아래에 있다. 빛나는 이펙트가 많이 살아있지 않아서 아쉽지만 그럭저럭 봐줄만 하다.
중국 전통의상중 하나. 한푸라는 단어를 사용하긴 하지만, 오래전부터 사용하던 단어는 아닌걸로 알고 있다. 치파오는 중국 만주족의 전통복식이기 때문에 이건 확실하게 중국 전통의상 이라고 할 수 있는데, 한푸라고 올라오는 AI가 생성한 의상들은 이게 중국 의상인지 혼동될때가 많다.
보통 중극 무협 드라마에서 배우들이 입은 의상이 한푸라고 하지만, 이건 송, 명, 고려의 의상을 혼합한 형식이 많으니 말이다. 특히 동아시아 복식은 송, 명, 만주 및 고려, 조선의 영향을 주거니 받거니 해서 서로 닮아있긴 하다.
미니 드레스로 생성했다. 치파오는 원래는 옆트임이 강한 긴 드레스다. 치파오 입고 말을 타야했으니 옆트임을 강하게 할 수 밖에 없다. 단 속에는 바지를 입었기 때문에 노출이 많은 의상은 아니었다.
치파오는 여인의 매력을 잘 어필할 수 있는 매력적인 의상이다. 여태까지 AI로 잘 생성하지 못하다가 괜찮은 LoRA 가 올라와 생성해 봤다.
주로 붉은색 치파오를 많이 입었지만, 파란색도 꽤 있었다고 한다. 노란색 의상은 AI 그 그렇게 생성했고 예쁘길래 그냥 넣어봤다.