스테이블 디퓨전(StableDiffusion)

프롬프트 작성법?이제는 프롬프트 고민 끝 !(LLM모델 연동)

물범쌤 2024. 11. 5. 02:36

안녕하세요 여러분, 물범쌤입니다:)

스테이블 디퓨전도 AI의 영역이다보니

사용자가 입력하는 프롬프트에 따라서 이미지 품질의 차이가 천차만별인데요.

 

사실 초보자분들이 꾸준히 AI이미지를 제작하지 않는 이상

프롬프트를 자체적으로 창작해서 입력하시기란 상당히 어려운 일입니다.

따라서 civitai나 다른 사이트 들에서 보통 프롬프트를 복사해서

따라서 뽑으시곤 하는데, 그런 방법으로는
당장 고품질의 이미지를 얻을 수는 있어도 프롬프트를 작성하는 실력은 늘지않죠

 

하지만 굳이 그런 실력을 늘리지 않더라도

챗 gpt와 같은 LLM모델을 통해서 주제를 정해주면

 AI가 이미지 생성에 최적화된 프롬프트를 생성해주는 기능이 있습니다.

 

프롬프트 제작에 어려움을 겪으셨거나

프롬프트를 제작하는데에도 계속 고품질 프롬프트를 얻기가 힘드셨던 분들은

이번에 알려드릴 지식이 도움이 되실거라 믿습니다.^^

그럼 본론으로 들어가보시죠!


1. LLM모델 : LLAMA3

LLM은 라지 랭귀지 모델( Large Language Model)의 약자로서

사용자와의 대화 맥락을 이해하고,

학습된 지식을 바탕으로 문답이 가능한 인공지능 분야입니다.

쉽게 볼 수 있는 예시로는 Chat GPT가 있지만,
사실 GPT 말고도 Claude라든지 LLAMA같은 다른 모델들도 있습니다.

 

우리는 그 중에서 연동을 위해 LLAMA라는 언어모델을 사용할 것인데요

바로 사용하는것은 아니고, 연동을 위한 확장 프로그램을 통해서 사용할 것입니다.

확장 프로그램의 이름은 'ollama'입니다.

 

OLLAMA 받으러가기

반응형

 

사이트에 접속하셨으면 가운데에 다운로드 버튼을 눌러주시고,
(ollama 다운로드 후 바로 실행시켜주시면 별 다른 셋팅 없이 설치가 진행됩니다.)

우측 상단에 models버튼을 눌러주세요!

 

 

models메뉴에 접속하시면 llama3를 비롯한 여러 모델들이 있는데요,

우리는 여기에서
'impactframes llama3_ifai_sd_prompt_mkr_q4km'라는 모델을 찾아줄겁니다.

 

 

이 모델은 프롬프트 메이커 모델로,
comfyUI에 사용할 수 있도록 제작된 모델입니다.

우리는 이 모델창으로 들어가서 설치 구문을 미리 복사해 줄겁니다!

 

그 다음, 윈도우 검색창에서 'cmd'를 검색해주세요

PC를 제어할 수 있는 명령 프롬프트 창이 열립니다.

 

 

 

프롬프트 창에, 우리가 모델창에서 복사해둔 설치 구문을 입력해주세요

(ollama가 설치가 완료되고 나서 실행해주셔야 합니다)

 

설치가 완료되면, 이제 ComfyUI에서 실행시켜줄 일만 남았습니다.!


2.ComfyUI설정

이제 ComfyUI로 접속해 주세요!

쉬운 이해를 위해 디폴트 노드를 기준으로 설명을 드리도록 하겠습니다 :)

 

 

먼저, manager를 누르고 costom node manager메뉴로 들어가 줍니다.

그럼 커스텀 노드를 검색하고 설치할 수 있는 창이 뜨는데요.

만일 아직 comfyUI manager를 설치하지 못하셨다면

아래 링크를 참고해주세요

 

comfyUI manager설치방법 보러가기

(중.하단 부터 보시면 되겠습니다.)

 

 

만일 manager를 실행하셨다면'AI tools'만 검색해 주셔도
아래 노드를 찾으실 수 있습니다.

(다운로드 후 재시작 해야하는건 이제 다들 아시죠?ㅎㅎ)

 

디폴트 노드에서 'if'를 검색해 주시면 
아래와 같은 pormpt to prompt 노드를 생성하실 수 있습니다.

 

추가로, 생성된 프롬프트를 텍스트 형태로 저장해줄

'save text'노드도 배치해 주세요!

두개의 노드를 나란히 놓고 보시면 아시겠지만

prompt to prompt 노드의 출력과 save text 노드의 입력이

동일한 타입이라는것을 보실 수 있습니다.

그대로 연결해주면 되겠죠?

 

 

여기서 생성된 프롬프트를 직접 눈으로 확인하려면
'show text'라는 노드가 필요한데,
만일 노드가 없으신 분들은
pythongosssss/ComfyUI-Custom-Scripts 패키지를
추가로 다운로드 받으시면, 노드를 설치하실 수 있습니다.

(긍정/부정프롬프트가 입력될 예정이니까 노드를 아래처럼 2개 배치해주세요)

 

 

자, 이제 마지막으로 생성된 텍스트를 프롬프트창에 입력해줘야 겠죠?

하지만 일반적으로 사용하는 CLIP text encode노드는

텍스트를 입력으로 받지 않습니다.

따라서 텍스트를 입력으로 받을 수 있게 설정해줘야 합니다.

노드를 우클릭-Comvert Widget to Input-Convert text to input
버튼을 눌러주시면, 텍스트를 입력으로 받으실 수 있습니다.

 

 

save text(response)-showtext노드로 연결된 아웃풋은 긍정 프롬프트로 연결,

save text(negative)-showtext노드로 연결된 아웃풋은 부정 프롬프트로 연결,
이제 모든 배치가 끝났으니 모든 노드가 연결된 배치도를 보여드릴게요!

(이미지를 클릭하시면 크게 보실 수 있어요!)

 

자 그러면 이제 본격적으로 사용해봐야겠죠?

 


3.사용법

먼저 prompt to prompt 노드에 간단한 주제어들을 입력해주세요!

저는 '한국 아이돌 모델, 트렌치코드, 가을 공원 배경'을 입력해 주겠습니다.
그리고 나서 아래에 embellish,style,neg 프롬프트를 설정해주세요

 

이것만 입력하고 저는 별도의 조작 없이 바로 프롬프트 생성을 눌러주겠습니다.

show프롬프트 노드에 생성된 프롬프트들이 보이고

어려움 없이 Ksampler에서 이미지가 생성된 것을 보실 수 있습니다.


어떤가요? 기본 체크포인트로만 생성해서 그렇지,

로라를 추가한다면 더욱 아름다운 이미지가 나오겠죠?

로라까지 적용한 몇 가지 예시 이미지를 끝으로 포스팅 마무리 해보겠습니다.

 

 

실사예시1
실사예시2
일러스트 예시1
일러스트예시2


오늘은 LLM모델을 통해서 프롬프트 제작에 대한 고민을 해결해 보았습니다.

이 컨텐츠가 유익하셨다면

커피값은 기업들에게 받을테니

광고 한번씩만 눌러주시면 감사드리겠습니다 :)

 

그럼 모두 좋은 하루 되세요! ^^

반응형