페이지 이동경로
  • 문서>
  • Karlo>
  • 활용 가이드

Karlo

활용 가이드

이 문서는 칼로(Karlo) API를 통해 칼로를 효율적으로 사용하는 방법을 안내합니다.

버전 업그레이드

2024년 2월 22일부터 칼로(Karlo) API에 사용되는 칼로 모델이 이미지 생성 품질이 강화된 버전 2.1로 상향되었습니다.

기본 원칙

제시어

칼로(Karlo)가 이해하기 쉬운 제시어를 구성하려면 아래 원칙을 준수하기를 권장합니다.

원칙 좋은 예 나쁜 예
객관적이고 명확한 표현을 사용해 작성 man looking up at a clock, sunset, apocalypse landscape, in the style of surrealism, dark orange and amber The day is about to arrive
구체적인 묘사와 표현을 사용해 작성 A teenage girl has dark black eyes, flowy hair A girl

부정 제시어

부정 제시어를 사용해 원치 않는 요소를 이미지 생성 시 제외할 수 있습니다. 또한, 부정 제시어로 낮은 품질의 이미지 생성을 방지할 수 있습니다. 아래는 부정 제시어를 활용해 낮은 품질 및 대조, 대상이 잘린 이미지, 엉성한 완성도를 방지해 결과물을 개선한 예시입니다.

좋은 품질의 이미지를 생성하려면 원칙을 준수한 효과적인 제시어를 사용하는 것이 중요합니다. 부정 제시어는 특정 요소의 제외 또는 방지 역할로만 사용하는 것을 권장합니다.

파라미터 문구
제시어 a majestic reindeer, standing in snow forest at night, hyperrealistic, unreal engine 5, starstation, sharp focus, 8k
부정 제시어 low quality, low contrast, draft, amateur, cut off, cropped, frame
부정 제시어 활용 예시

주의사항

제시어

일반적으로 인공지능 모델이 자연스럽게 그려내지 못하는 요소들이 있습니다. 칼로 사용 시에도 다음과 같은 제시어는 지양하기를 권장합니다.

  • 손이나 발과 같은 관절 부위에 대한 묘사를 포함한 제시어
  • 다수의 인물이 특정 표정을 짓도록 하는 제시어
  • 복잡한 구도나 배치를 요구하는 제시어

이미지 변환하기 요청 이미지

이미지 변환하기 요청 시, 이미지 파일 규격에 맞는 이미지 파일 사용을 권장합니다. 특히, 이미지 파일의 용량과 크기가 지나치게 크지 않아야 효율적으로 칼로 API를 사용할 수 있습니다.

또한 원본 이미지의 내용이 지나치게 난해하거나, 무엇이 그려져 있는지 알아보기 어렵지 않아야 합니다. 칼로가 원본 이미지에 무엇이 그려져 있는지, 어떤 분위기인지 이해할 수 있어야 합니다. 인물이나 사물 등 구성 요소를 명확하게 식별할 수 있는 이미지 사용을 권장합니다.

어휘 선택

명사

칼로에게 전달할 제시어에는 표준어 명사를 사용해야 합니다. 방언이나 속어를 사용할 경우, 칼로가 이해할 수 없어 올바른 이미지를 생성하지 못할 수 있습니다. 또한 칼로는 제시어의 의미를 구체적으로 구분하므로, 동음이의어를 피하고 의도를 잘 전달할 수 있는 명사를 선택하는 것이 중요합니다. 아래는 호랑이(A tiger), 잠자는 호랑이(A sleeping tiger), 어린 호랑이(A baby tiger)의 이미지 생성하기 결과 예시입니다.

명사 표현 예시

시간

제시어에 시간에 대한 표현을 포함할 수 있습니다. 낮, 밤, 새벽, 저녁과 같은 하루의 시간은 물론, 여름과 크리스마스와 같은 시기에 대한 표현도 가능합니다. 아래는 같은 제시어를 사용한 이미지 생성하기 요청에 낮(day), 밤(night), 가을(autumn)을 각각 추가한 결과의 예시입니다.

시간 표현 예시

색감

제시어에 색감 표현을 포함할 수 있습니다. 아래는 같은 제시어를 사용한 이미지 생성하기 요청 시 밝은(bright), 따뜻한(warm), 선명한(vivid)이라는 색감 표현을 각각 추가한 결과의 예시입니다.

색감 표현 예시

스타일

제시어에 "by"와 작가 이름을 포함하면 특정 작가의 스타일과 유사한 느낌으로 이미지를 생성할 수 있습니다. (예: by Renoir) 아래는 여러 작가의 스타일로 강아지가 있는 정원을 이미지 생성하기 요청한 결과의 예시입니다.

스타일 표현 예시

고급: 파라미터

version

version은 칼로(Karlo) API에 적용할 모델 버전을 선택하는 파라미터입니다. 적용한 모델 버전에 따라 설정 가능한 파라미터가 상이합니다. 아래 모델 버전별 설정 가능 파라미터 목록을 참고합니다.

  • 모든 버전에서 설정 가능: upscale, prior_num_inference_steps, prior_guidance_scale, num_inference_steps, guidance_scale, seed
  • 버전 2.0(v2.0)에서만 설정 가능: scheduler, face_refiner, bbox_size_threshold, bbox_filter_threshold

upscale

upscale은 이미지 확대 여부를 지정하는 파라미터입니다. upscale 값을 true로 요청하면 가로세로 최대 2048 픽셀(Pixel) 크기의 이미지를 생성할 수 있습니다.

아래는 같은 제시어와 시드(Seed)를 사용한 이미지 생성하기 요청에 upscale 값을 각각 true, false로 지정한 예시입니다.

upscale

prior_num_inference_steps

prior_num_inference_steps는 이미지 생성 과정의 다양성을 조정하는 파라미터입니다. 해당 값에 따른 동작의 차이는 아래와 같습니다.

장점 단점
높음 같은 제시어에 대해 더 다양한 이미지들을 생성
창의적인 이미지를 생성할 가능성이 높음
다양성으로 인해 원하는 내용이 포함되지 않을 수 있음
추상적이거나 품질이 낮은 이미지가 생성될 수 있음
낮음 다양성이 줄어들어 서로 비슷한 이미지들을 생성할 수 있음 창의적인 이미지가 생성될 가능성이 낮음

아래는 같은 제시어와 시드를 사용한 이미지 생성하기 요청에 prior_num_inference_steps 값을 각각 10(최소), 25(기본값), 100(최대)으로 지정한 예시입니다.

prior_num_inference_steps

prior_guidance_scale

prior_guidance_scaleprior_num_inference_steps에서 지정된 다양성을 얼마나 반영할지 결정하는 파라미터입니다. 해당 값이 지나치게 낮을 경우, 제시어와 다른 내용의 이미지가 생성될 수 있습니다.

prior_guidance_scaleprior_num_inference_steps 중 하나의 값은 고정하고, 다른 하나의 값을 조정하며 원하는 이미지가 생성되도록 조정하는 방법을 사용할 수 있습니다.

아래는 같은 제시어와 시드를 사용한 이미지 생성하기 요청에 prior_guidance_scale 값을 각각 1.0(최소), 5.0(기본값), 20.0(최대)으로 지정한 예시입니다.

prior_guidance_scale

num_inference_steps

num_inference_stepsprior_num_inference_steps에서 지정된 다양성을 바탕으로 이미지를 완성하는 과정에서 얼마나 세밀하게 그려낼지 결정하는 파라미터입니다. 해당 값에 따른 동작의 차이는 아래와 같습니다.

장점 단점
높음 이미지 내용이 더 세밀해짐
제시어에 맞지 않는 불필요한 요소를 정리함
요청 처리 시간 대비 개선 효과 미미
낮음 이미지의 용도에 맞게 묘사 수준을 낮출 수 있음 제시어를 올바르게 반영하지 않거나 이미지 품질이 저하될 수 있음

아래는 같은 제시어와 시드를 사용한 이미지 생성하기 요청에 num_inference_steps 값을 각각 10(최소), 50(기본값), 100(최대)으로 지정한 예시입니다.

num_inference_steps

guidance_scale

guidance_scale는 세부적인 완성도를 결정하는 파라미터입니다. 해당 값이 높으면 제시어를 더 많이 반영하지만, 품질이 낮은 이미지가 생성될 수 있습니다.

아래는 같은 제시어와 시드를 사용한 이미지 생성하기 요청에 guidance_scale 값을 각각 5.0(기본값), 20.0(최대)으로 지정한 예시입니다.

guidance_scale

scheduler

scheduler는 디코더를 통한 노이즈 제거 단계에서 사용할 스케줄러(Scheduler)를 지정하는 파라미터입니다. decoder_ddim_v_prediction 또는 decoder_ddpm_v_prediction 중 선택할 수 있습니다. 같은 제시어와 seed로 요청했더라도 scheduler에 따라 생성된 이미지가 달라질 수 있습니다.

  • decoder_ddim_v_prediction: 보다 세밀한 표현의 이미지를 생성
  • decoder_ddpm_v_prediction: 보다 흐릿한 표현의 이미지를 생성

아래는 같은 제시어와 시드를 사용한 이미지 생성하기 요청에 scheduler 값을 각각 decoder_ddim_v_prediction, decoder_ddpm_v_prediction로 지정한 예시입니다.

scheduler

seed

seed는 각 이미지 생성 작업에 사용할 시드 값을 지정하는 파라미터입니다. 같은 제시어와 seed 값을 사용하면 동일한 이미지를 생성할 수 있습니다. 제시어와 이미지 주요 내용은 유지하면서 다른 파라미터 값을 조정해 이미지 품질을 개선하고 싶을 때 사용합니다.

아래는 같은 제시어를 사용한 이미지 생성하기 요청에 seed 값을 각각 630, 2020으로 지정한 예시입니다.

seed

face_refiner

face_refiner는 이미지 내 얼굴 형태의 조정 관련 설정 파라미터입니다. 얼굴 형태 조정하기로 별도 요청하거나, 이미지 생성하기, 이미지 변환하기, 이미지 편집하기 요청 시 파라미터로 함께 요청할 수 있습니다. 세부 파라미터별 자세한 내용은 아래를 참고합니다.

bbox_size_threshold

bbox_size_thresholdface_refiner 기능을 적용할 얼굴 영역의 최대 크기를 전체 이미지에 대한 비율로 설정하는 파라미터입니다. 설정 크기 이하의 영역만 얼굴로 인식합니다.

아래는 같은 원본 이미지를 사용한 얼굴 형태 조정하기 요청에 bbox_size_threshold 값을 각각 0.5(얼굴 형태 조정 안됨), 0.9(얼굴 형태 조정됨)로 지정한 예시입니다.

bbox_size_threshold
bbox_filter_threshold

bbox_filter_threshold는 이미지가 사람의 얼굴인지 판단하는 임계값을 설정하는 파라미터입니다. 값이 높을수록 더 엄격한 기준을 적용해 사람의 얼굴이 아니라고 판단할 확률이 높아집니다.

아래는 같은 제시어를 사용한 얼굴 형태 조정하기 요청에 bbox_filter_threshold 값을 각각 0.95(얼굴 형태 조정 안됨), 0.8(얼굴 형태 조정됨)로 지정한 예시입니다.

bbox_size_threshold