기본 콘텐츠로 건너뛰기

Prompt 작성법 및 사용예

Prompt 란 일종의 AI에게 지시하는 명령어 이다.

    Stable Diffusion은 텍스트 기반의 이미지 생성 모델로, 사용자가 입력한 프롬프트(prompt)에 따라 다양한 스타일의 이미지를 생성할 수 한다. 프롬프트는 모델이 어떤 이미지를 생성할지 지시하는 중요한 명령어다. 따라서, 효과적인 프롬프트 작성 방법을 이해하는 것은 Stable Diffusion을 잘 활용하기 위한 필수적인 단계이다. 이 글에서는 프롬프트 작성 시 고려해야 할 요소와 몇 가지 예시를 통해 그 사용 방법을 설명한다.

1. 영어로 명확하고 구체적으로 작성(Positive prompts)

    프롬프트는 모델이 생성할 이미지를 구체적으로 묘사하는 텍스트이다. 짧고 모호한 프롬프트는 원하는 결과를 얻기 어렵다. 예를 들어, 단순히 "landscape"이라고 입력하면 매우 다양한 스타일의 풍경이미지가 나온다. 반면에 "Green fields with sunlight, blue sky, and mountains in the distance"이라는 프롬프트는 훨씬 더 구체적이고 원하는 이미지를 얻을 수있다.  그리고 아쉽게도 반드시 영어로 작성해 주어야 한다.

     프롬프트에는 다음과 같은 세부 사항을 포함하는 것이 좋다.

    • 주제(subject) : 가장 중요하며 맨 처음에 입력하기를 권한다.
      •  'a beautiful woman' , 'a body builder', 'a cute baby' 등
    • 이미지 종류: 'picture', 'drawing', 'painting' 등
    • 스타일 : 주제에 대한 스타일 
      • 'slim body' ,'red lips', 'smile' , 'wearing white t-shirt and jean' 등
    • 장소 또는 배경 : ' in room', 'cafe', 'sun set' , 'city view', 'black background' 등
    • 해상도, 조명, 색상: 'best quality', 'high detailed', '4k', 'studio light', 'pastel tone', 'backlit',  등
    • 카메라 촬영방법 : 'full body shot', 'cowboy shot', 'upper body shot', 'back shot' 등

2. 부정 프롬프트 사용하기

    부정 프롬프트(negative prompts)는 원하는 이미지에서 피하고 싶은 요소를 명시한다. 주로 많이 사용되는 네거티브 프롬프트는 "text" , "watermark", "bad quality" , "Low quality" , "bad anatomy", "nsfw" 등이 있다. 부정 프롬프트는 예상치 못한 불필요한 요소가 이미지에 포함되는 것을 방지하는 데 매우 유용하다. "nsfw"(Not safe for work) 는 야한이미지를 만들지 말라는 것이다.   프롬프트로 "a beautiful woman" 이라고 만 입력하면 물론 아름다운 의상을 입은 여성들도 만들어 주지만 예기치 않게 누드로 된 여성 이미지도 생성하기 때문이다.

    예시 :  text, watermark, bad quality, low quality, nsfw, Disfigure Body, Disfigured Torso, Disfigured Face, Disfigured Eyes, Disfigured Pupils, Disfigured Arms, Disfigured Hands, Disfigured Fingers, Disfigured Legs, Disfigured Toes

3. 프롬프트를 강조하는 법

    어떤 프롬프트는 강조 할 필요가 있다. 이럴 때 특정 단어나 문장을 좀 더 강조하는 방법이다. 

  • 숫자로 강조하는 법
        "red dress : 1.3"  , "a cat :1.1", "full body shot:1.5"  등

  • 괄호( )를 사용하는 법
        (red dress) : "red dress:1.1" 과 같다.
        ((a cat)     : "a cat:1.2" 와 비슷하다.
        (((full body shot))) : "full body shot :1.33" 과 비슷하다.
  • 숫자와 괄호를 혼용 - 보통 가장 많이 사용한다.
        (red dress:1.3) , ((a cat:1.3)), (((full body shot:1.3))) 이렇게 사용하면 된다. 물론 숫자가  클수록 괄호가 많을수록 강조하는 비중이 크다. 

4. 프롬프트 작성 예시 : positive prompts

    예시1 :  a beautiful korean woman, portrait , make-up, white shirt , blue skirt, slim body, red lips, smile, in cafe , best quality, high detailed, 4k,studio lights, (upper body shot:1.3)

     네거티브 : text, watermark, bad quality, low quality, nsfw  이렇게 입력하고 생성해 본다.

흰셔츠 블루스커트 입은 여성

    예시2 : A forest at midnight, with a bright moon and stars shining in the sky, and mist covering the ground. Oil painting style, high resolution, detailed scene

별빛의 숲속

5. 다양한 연습을 통한 숙달

    프롬프트 작성에 정해진 규칙은 없으며, 다양한 시도를 통해 최적의 결과를 찾는 것이 좋다.  처음에는 원하는 이미지를 정확하게 표현하기 어렵지만, 여러 가지 변형을 시도하고 그 결과를 확인하면서 프롬프트에 대한 이해도가 높아진다.  다양한 프롬프트를 실험해보고, 스타일, 배경, 인물, 기술적 세부사항 등을 변경하면서 어떤 요소가 원하는 결과에 가장 큰 영향을 미치는지 파악해보는 것이 중요하다.

    그리고 CIVITAI 와 같은 커뮤니티나 다양한 온라인 리소스를 참고하여 다른 사용자가 작성한 프롬프트를 가져와 사용해보고 수정하면서 결과를 비교하는 것도 큰 도움이 된다.

6. 결론

    개인적으로 Stable Diffusion에서 프롬프트가 가장 중요한 역할을 한다고 생각한다.  구체적이고 명확한 프롬프트를 작성하는 것이 원하는 결과를 얻는 데 가장 중요하며, 스타일, 부정 프롬프트, 기술적 요구 사항 등을 적절히 조합하면 더욱 만족스러운 이미지를 만들 수 있다.  그리고 Stable Diffusion 에서는 완성된 문장을 사용해도 되지만 주어나 서술어를 생략하고 단어만 작성하여도 잘 만들어 준다.  영어를 못 하여도 계속해서 많이 만들다 보면 어느 정도 자신감도 생기고 나만의 프롬프트 리스트를 만들 수 있고 나만의 독특한 스타일의 이미지를 만들어 낼 수 있다.






 

댓글

이 블로그의 인기 게시물

Comfyui Wildcard 사용법 - Stable Diffusion , Flux 에서 쉽게 Random Prompt 로 이미지 만들기

 Comfyui Wildcard 사용법에 대하여 알아본다. Comfyui 로 Stable Diffusion 또는 Flux 로 이미지를 만들 때 Prompt 가 이미지를 결정하는데 매우 중요한 역할을 한다.  영어가 모국어가 아닌 이상 영어로 prompt 를 만드는 것이 참 어려운 일이다. 물론 처음에는 많은 다른 사람들이 사용한 prompt 들을 모방하여 수정하고 사용하는데 이런 일을 하나하나 해 보기가 시간이 많이 걸리고 어렵다.   그래서 Random 으로 prompt 가 만들어 져서 이미지가 생성되고 그 이미지 중에서 마음에 드는 이미지들을 골라 그 이미지의 Prompt들 만을 가지고 보완하고 개선하면 더 편리하고 좋지 않을까 생각이 든다.  그런 식의 Random Prompt 생성이 가능하게 해주는 것이 wildcard 사용이다. Joker는 card game에서 wildcard 이다. 1. Wildcard 의 의미      와일드 카드(Wildcard)란 카드 게임에서 유래되었다.  이런 카드 게임에서 모든 카드의 대용으로 쓸 수 있는 비장의 카드를 와일드 카드라고 한다. 포커나 훌라를 할 때 조커가 이런 역할을 하는데 ,  이 의미가 컴퓨터와 스포츠로 확장되어 사용되는 것이다. 컴퓨터 용어로 쓰일 때는 한 디렉터리 내에 여러 파일이 존재하거나, 파일 이름의 뒷부분을 정확히 알지 못하는 경우에도 사용할 수 있는 명령어를 말합니다. '*'을 넣으면 빠진 것에 어떤 문자열이 있든지 대신할 수 있고,  '?'는 임의의 한 문자에만  대응한다. Comfyui 에서 wildcard 사용은 "--문자열--"  이런 식으로 wildcard 사용 가능한 노드에 prompt 를 입력해 주면 그 노드는 "문자열" 에  해당되는 파일을 찾아 그 파일 내용 중에서 임의의 일부분을 prompt 로 대체해 준다. 2. Wildcard 사...

Flux Controlnet 적용 방법 - Comfyui 에서 사용

Flux에서도 이제 Controlnet 기능을 사용할 수있다. Comfyui 에서 Stable Diffusion 과 같은 방식으로 사용 할 수 있는  controlnet 모델들이 출시 되었다. 1. Controlnet 이란 ?      ControlNet은 Stable Diffusion 과 같은 이미지 생성 모델에서 조건부 입력 을 추가하여 결과 이미지를 더 세밀하게 제어할 수 있게 한다. 예를 들어, 포즈 , 스케치 , 엣지 지도(edge map) 등을 입력으로 받아 생성된 이미지를 밑그림으로 이미지에 반영할 수 있다.  2. Flux용 Controlnet 모델     Stable Diffusion 용 Controlnet 모델들은 Canny, Depth, Hed, Scribble, Open Pose, Sketch 등 여러가지 모델들이 있는데 Flux 용 모델들은 그 중에서 Canny, Depth, Hed 3가지 종류의 모델들만 출시되었다. 각각의 적용하는 대상은 어떤 이미지를 생성 하는가에 따라 적합한 것을 사용하면 되는데 3가지 모델들이 서로 다른 듯 비슷한 기능들이 섞여 있어서 많은 시행을 해 본 후 더 적합한 모델들을 사용하기를 권한다. 3. Controlnet 적용 기본     Controlnet 의 적용은 먼저 원본 이미지가 필요하고 그것을 Controlnet 모델들이 인식할 수 있도록 바꾸어 주는 전처리기를 통과한 후 Controlnet 모델들을 선택하여 이  이미지를 적용하여 Sampler에 입력한다. 이를 간단하게 workflow 를 구성하면 다음과 같다. 기본 Controlnet Workflow 전처리기는 Controlnet 모델별로 각각 다른 전처리기를 사용하기 때문에 항상 모델에 맞는 전처리기를 사용하여야 올바른 이미지를 얻을 수 있다. 4. Controlnet 모델 과 필수Nod 다운로드 및 설치     다운로드는 huggingf...

Pinokio 앱 설치 - 오픈 소스 AI 플랫폼

  Pinokio 는 오픈 소스 AI 플랫폼이다. 로컬에서 AI 애플리케이션을 쉽게 설치하고 실행할 수 있게 도와주는 오픈 소스 AI 플랫폼이다. 이 플랫폼은 사용자가 복잡한 설치 과정 없이 클릭 한 번으로 AI 도구들을 설치할 수 있도록 설계되어 있다. 이를 통해 기술적인 배경 지식이 없는 초보자나 비전문가들도 쉽게 AI 애플리케이션을 사용할 수 있다.   이미 설치되어 있는 애플리케이션이 있어도 별도의 독립된 공간에서 문제없이 사용할 수 있게 해준다.   우리가 stable diffusion 을 comfyui 에서 사용하기 위해서는 "Python", "git ....", "conda"  뭔지 모르지만 설치해야 하는데 pinokio 브라우저에서 원 클릭으로 알아서 설치를 해주기 때문에  컴맹인 일반인도 쉽게 설치하고 사용 할 수 있다. pinokio.computer 1. Pinokio 주요 기능 원클릭 설치 : 복잡한 환경 설정이나 명령어 입력 없이도 다양한 AI 모델을 한 번의 클릭으로 설치할 수 있다. 예를 들어, Comfyui 나 Flux 같은 AI 도구들을 손쉽게 설치할 수 있다. 다양한 AI 애플리케이션 제공 : Pinokio는 다양한 오픈 소스 AI 애플리케이션을 제공하는 허브 역할을 하며, Pinokio 브라우저 나 홈페이지에서 쉽게 찾아 설치할 수 있다. 브라우저 기반 인터페이스 : 모든 설치된 애플리케이션은 Pinokio 웹 브라우저에서 관리할 수 있어, 친숙한 인터페이스로 쉽게 사용이 가능하다. 독립적인 가상 컴퓨터 : Pinokio는 백엔드 작업을 자동으로 처리하여, 애플리케이션이 로컬에서 실행되는 동안 인터넷에 연결되어 있지 않아도 된다. 2. Pinokio 설치 구글에서 pinokio 를 검색하여 " pinokio.computer " 를 클릭 Download 클릭 다운로드 된 pinokio 압축 파일을  푼다. pinokio 설치파일을 실행하여 설치 설치과정은 복...