Fooocus그림AI

Fooocus 프롬프트 기능 익히기

Fooocus 사용법, AI 이미지 생성하기

Fooocus에는 단순히 텍스트를 입력하는 것 외에도 많은 프롬프트 기능을 제공하고 있습니다. 이번 글에서는 와일드카드, 프롬프트 가중치 등 Fooocus에서 사용할 수 있는 프롬프트 기능을 익혀보겠습니다.

목차

프롬프트 가중치

프롬프트에 가중치를 줘 특정 프롬프트를 강하게 반영하거나 약하게 반영할 수 있습니다. (가중치를 줄 프롬프트 내용:가중치)의 형식으로 사용합니다.

프롬프트 가중치
(가중치를 줄 프롬프트 내용:가중치)

기본 가중치는 1이고 값이 클수록 강하게 반영됩니다. 원하는 게 잘 반영되지 않을 때 해당 내용의 가중치를 높여주면 되고 너무 과하게 반영되면 가중치를 낮춰주면 됩니다.

사용 예시

프롬프트 가중치 사용예시
프롬프트 가중치 사용예시

가중치에 따른 이미지 생성 결과 비교

(cats:1.2) and (dogs:0.8) are in the house
(cats:1.2) and (dogs:0.8) are in the house
(cats:1) and (dogs:1) are in the house
(cats:1) and (dogs:1) are in the house
(cats:0.8) and (dogs:1:2) are in the house
(cats:0.8) and (dogs:1:2) are in the house

시드를 고정시키고 가중치만 다르게 생성해 비교해봤습니다.

와일드카드

와일드카드는 랜덤으로 프롬프트를 고를 때 사용하는 기능입니다. 와일드카드는 텍스트파일로 Fooocus/wildcards 디렉토리를 보면 여러 가지 .txt 파일이 있는데 내용을 보면 프롬프트들이 엔터로 구분되어있습니다. 파일이름으로 와일드카드를 불러와 사용하면 해당 파일에서 랜덤으로 프롬프트를 선택합니다. __와일드카드 파일명__ 의 형식으로 사용합니다.

와일드카드
__와일드카드 파일명__

사용 예시

첫번째의 내용을 landscape.txt로 저장하고 두번째 내용을 time.txt로 저장해서 Fooocus/wildcards 경로에 넣겠습니다.

__landscape__, __time__, UFO 로 프롬프트를 입력해 4장의 이미지를 생성했습니다.

와일드카드예시
와일드카드예시

프롬프트가 랜덤으로 선택되어 이미지가 생성되었고 이 경우에 sea는 선택되지 않았습니다. 시드에 따라 선택이 정해지기 때문에 시드가 고정되면 선택도 고정됩니다.

와일드카드 중첩

와일드카드 파일을 중첩시켜서 새로운 와일드카드 파일을 만들 수도 있습니다.

이 내용으로 새로운 와일드카드 파일을 만들어 background.txt로 저장한다면 __background__, UFO 로 프롬프트를 입력한 것이 __landscape__, __time__, UFO와 같은 역할을 합니다.

위에서부터 프롬프트 선택하기 , 시드 고정

랜덤으로 선택하는 것이 아니라 파일 위에서부터 프롬프트를 선택하게 하려면 Advanced를 활성화하고 Advanced탭에서 Developer Debug Mode를 활성화 해 Debug Tools의 맨 아래에서Read wildcards in order를 활성화해줍니다.

이미지 갯수가 여러 개일때 이미지를 생성할 때마다 시드가 1씩 커집니다. 그래서 와일드카드로 여러 개의 이미지를 생성하면 각 이미지의 시드가 다릅니다. 시드를 고정시키려면 Read wildcards in order 위의 Disable seed increment를 활성화하면 1씩 커지지 않습니다.

Array Processing

Array Processing은 와일드카드와 비슷한데 따로 파일이 없으며 입력순서대로 이미지를 생성합니다. [[프롬프트1, 프롬프트2,프롬프트3, …]]의 형식으로 사용합니다.

Array Processing
[[프롬프트1, 프롬프트2,프롬프트3,프롬프트4,…]]

사용 예시

[[black, white, gray]] fish 로 프롬프트를 입력하고 이미지 생성 수 역시 3개로 해줍니다.

array processing 예시
array processing 예시

여러 개의 Array Processing을 사용할 수도 있습니다.

array processing 여러 개
array processing 여러 개

black fish, white fish, black crab, white crab 순서로 이미지가 생성되었습니다.

이미지 갯수가 여러 개일때 이미지를 생성할 때마다 시드가 1씩 커집니다. 그래서 array processing으로 여러 개의 이미지를 생성하면 각 이미지의 시드가 다릅니다. 시드를 고정시키려면 Advanced를 활성화하고 Advanced탭에서 Developer Debug Mode를 활성화 해 Debug Tools의 맨 아래에서Disable seed increment를 활성화해줍니다.

임베딩

임베딩은 체크포인트에 변화를 주지 않고 이미지 생성에 약간의 영향을 주는 것으로 용량은 적지만 Lora 처럼 성능이 뛰어나지 않습니다. civitai에 적은 수의 SDXL 임베딩이 있습니다. (embedding:파일명:가중치) 의 형식으로 사용합니다.

임베딩
(embedding:파일명:가중치)

사용 예시

https://civitai.com/models/1070211/sdxl-positive-embedding?modelVersionId=1201277의 임베딩을 사용했고 masterpice, best quality 등의 프롬프트와 비슷한 역할을 합니다.

임베딩x
임베딩x
임베딩 예시
임베딩 예시

Inline Lora

프롬프트에 입력해서 Lora를 사용할 수 있습니다. <lora:파일명:가중치> 의 형식으로 사용합니다.

Lora
<lora:파일명:가중치>

사용 예시

프롬프트로 Lora 적용
프롬프트로 Lora 적용

Lora와 관련된 자세한 내용은 Fooocus – Lora (low-rank adaptation) 적용해서 이미지 생성하기 에 나와 있습니다.

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

error: Content is protected !!