어두운 배경이 싫으시다면 페이지 우측 하단에 보이는 초승달 모양의 아이콘을 클릭하면 화이트모드로 변경됩니다. 초승달 모양 버튼 : `화이트/다크 모드` 전환 |
1. Wildcard (와일드카드)란?
와일드카드는 여러 개의 프롬프트를 하나의 키워드로 묶어서 랜덤하게 하나의 프롬프트를 골라서 이미지를 생성하는 방법을 말합니다. 와일드카드에 사용할 여러 프롬프트들은 하나의 텍스트(txt)파일에 저장해놓고, WebUI에서 하나의 키워드로 불러와 랜덤하게 적용할 수 있습니다.
와일드카드 기능을 사용하기 위해서는 확장 기능을 설치해야합니다. 이번 포스팅에서 확장기능을 설치하고 와일드카드를 적용하여 이미지를 생성하는 것을 설명하겠습니다.
🟦 와일드카드 설치하기 (Dynamic prompt)
원래는 별도의 와일드카드 확장기능이 있었는데, 한정적인 사용으로인해 확장된 버전인 '다이나믹 프롬프트'를 사용합니다. 해당 확장기능을 설치하기 위해 아래 링크를 복사합니다.
`https://github.com/adieyal/sd-dynamic-prompts`
그리고 'Extensions' 카테고리 메뉴로 이동하여 'Install from URL'로 이동합니다. 여기에 복사한 주소를 첫 번째 항목에 붙여넣고 'Install' 버튼을 눌러 설치를 진행합니다.
설치한 와일드카드는 바로 적용이 안 되기 때문에 'Installed' 메뉴로 이동하여 'Apply and restart UI' 버튼을 눌러 적용 후 리스타트를 해야합니다.
2. 와일드카드 사용법
다이나믹 프롬프트를 적용하였다면 상단 메뉴에 'Wildcards Manager'가 생겨난 것을 볼 수 있습니다. 해당 메뉴를 들어가면 처음에는 아무것도 와일드카드를 설정하지 않았기 때문에 비어있는 모습입니다.
🟦 와일드카드 작성
'Wildcards Manager' 메뉴에서 좌측에 보면 'Help'와 'Collection actions'을 통해서 간단한 사용법 및 미리 만들어져 있는 와일드카드를 불러올 수 있습니다. 다만 처음 사용하면 뭐가뭔지 잘 모르실 수 있기 때문에 먼저 직접 와일드카드를 만드는 방법에 대해서 설명하겠습니다.
와일드카드 텍스트 파일을 만들어야 하는데, 'Help'에도 적혀있듯이 아래 폴더 경로로 이동하여 이 안에 텍스트파일을 만드시면 됩니다.
`WebUI 설치폴더\extensions\sd-dynamic-prompts\wildcards`
텍스트 파일은 아래 따로 파일을 올려드릴테니 받아서 텍스트파일 그대로 넣으셔도 되고, 폴더를 만들어서 넣으셔도 상관없습니다. 단, 파일 및 폴더명은 영어만 가능합니다. (한글 불가능)
받은파일 중에 'haircolor.txt' 파일을 보면 아래와 같이 머리카락 색상에 관한 프롬프트들이 나열된 것을 볼 수 있습니다. 프롬프트 각각을 구분하는 방법은 줄바꿈(Enter)입니다.
즉, 줄단위로 프롬프트를 랜덤하게 적용합니다. 그렇기 때문에 콤마로 한 줄에 여러 개의 프롬프트( `long hair, straight hair, red color` )를 적어도 하나의 키워드로 인식합니다.
이제 다시 WebUI로 가서 'Wildcards Manager' 메뉴로 이동하면 새로 넣었기 때문에 다시 실행한 것이 아니라면 Refresh 해줘야 합니다. 왼쪽에 'Collection actions'을 펼치면 아래 'Refresh wildcards' 버튼을 눌러 새로고침할 수 있습니다.
왼쪽 상단에는 방금 넣은 텍스트 파일의 이름 목록이 보이고, 우측에는 선택한 와일드카드의 키워드와 텍스트파일 안에 적힌 키워드를 편집할 수 있는 창(File editor)이 보입니다.
편집창에서 직접 프롬프트를 수정할 수 있기 때문에 텍스트파일만 wildcards 폴더 안에 넣어주고 여기서 편집해도 됩니다. 그리고 편집을 완료하면 아래 'Save wildcards'를 눌러 저장이 됩니다.
🟦 와일드카드 사용하기
이제 와일드카드를 만들었으니 사용해보겠습니다. 와일드카드 매니저 화면의 우측에 보이는 'Wildcards file'에 `__haircolor__` 이런 식으로 적혀있는 것이 와일드카드 키워드입니다. 키워드 앞 뒤에 언더바( _ ) 두개를 붙여놓은 형태입니다. 이런식으로 모든 와일드카드 키워드 앞 뒤에는 언더바 두 개씩 붙입니다.
그리고 혹시 폴더 안에 와일드카드 텍스트를 넣으셨다면, 폴더명까지 붙여야합니다. `__hair/haircolor__` 이렇게 폴더/파일명을 적고 앞 뒤에 언더바 두개를 붙이면 됩니다. 여기서 폴더를 구분할 때 역슬래쉬( \ )를 사용하면 안 되며, 명령어로 사용하기 때문에 슬래쉬( / )를 사용해야 합니다.
🔹와일드카드와 프롬프트 자동완성 확장 기능(tagcomplete) 설치하기
와일드카드를 사용해보기에 앞서 설치할 확장기능이 있습니다. 이는 꽤 유용한 확장기능이기 때문에 설치하는 것을 추천합니다.
해당 확장기능은 프롬프트를 입력하거나 와일드카드를 입력할 때 자동으로 관련된 프롬프트를 나열해서 보여주고, 탭(Tab)키 또는 선택을 통해서 단어를 자동으로 완성해주는 편리한 기능입니다. 아래 링크를 통해 확장기능을 설치합니다. (설치하고 리로드 잊지마시고 해주시길 바랍니다.)
`https://github.com/DominikDoom/a1111-sd-webui-tagcomplete`
🔸이미 프롬프트 자동완성 확장기능을 설치한 분들의 경우 주의사항
'와일드카드 확장기능(Dynamic prompt)'을 설치하기 전에 '프롬프트 자동완성(tagcomplete)' 확장기능을 먼저 설치한 분들은 와일드카드 자동완성이 정상적으로 작동하지 않습니다.
와일드카드를 자동완성으로 사용하고 싶다면 1️⃣와일드카드 설치 후 2️⃣프롬프트 자동완성을 설치해야 정상 작동합니다.
그래서 먼저 프롬프트 자동완성 확장기능을 설치한 분들은 아래와 같이 'Extensions' - 'Installed'에서 해당 확장기능을 체크해제하고 'Apply and restart UI'를 하고 나서 다시 체크하고 다시 적용해야 정상적으로 와일드카드가 자동완성 됩니다.
프롬프트 자동완성 확장기능을 설치하여 적용한 뒤 'txt2img'로 이동합니다. 그리고 아래와 같이 언더바 두개 입력하면 와일드카드 목록이 나타납니다. 아래 목록에서 마우스로 클릭해서 선택해도 되고, 키보드 화살표로 움직여 원하는 키워드에서 탭(Tab)키를 누르면 자동완성 됩니다.
이제 프롬프트를 작성해서 와일드카드가 잘 작동하는지 확인해보겠습니다. 아래 테스트용 프롬프트를 넣으셔도 되고 본인이 직접 프롬프트를 작성해서 테스트해보셔도 됩니다. 랜덤하게 나오는지를 확인해야하기 때문에 'Batch count' 값은 4를 주었습니다. 그 외 Generation 값은 취향껏 설정하시면 됩니다.
🔸프롬프트
(masterpiece, best quality, highres, highest detailed), cinematic light, 1girl, t-shirt, jeans, belt, __haircolor__, __hairlength__, __hairstyle__, standing, cowboy shot, indoors
🔸부정 프롬프트
(worst quality, low quality:1.4)
와일드카드는 위에서 설명한 것 이외에도 많은 기능들이 있는데 이 부분까지 설명하면 너무 길어지므로 참고할만한 링크를 공유해드리겠습니다. '아카라이브'라는 커뮤니티 사이트인데, 여기서 다양한 AI 채널들의 글들을 참고하여 AI 공부를 해보실 수 있습니다.
다만 가입을 해야만 글을 볼 수 있으므로 '볼 수 없는 페이지'라는 식으로 페이지 접속이 안 된다면 URL의 `arca.live` 이 부분만 적어서 접속하면 메인화면으로 이동합니다. 여기서 가입을 진행하시고 로그인하시고 다시 아래 링크로 접속하시면 됩니다.
🔸아카라이브의 와일드카드 사용법 링크
구독 및 좋아요는 컨텐츠를 생산하는데 많은 도움이 됩니다. 😊
감사합니다.