다중 캐릭터 LoRA 생성 가이드|한 장에 두 캐릭터 그리는 3가지 방법

캐릭터 LoRA 두 개를 한 장에 넣는 순간 머리색이 바뀌고 한쪽이 사라집니다. SDXL, 리저널 프롬프트, Tsubaki.2 세 가지 방식을 같은 장면으로 돌려 비교한 기록입니다.


PixAI 다중 캐릭터 LoRA 생성으로 두 캐릭터를 각자의 특징 그대로 그려낸 애니메이션 일러스트

★ Series Part 4
Advanced

PixAI LoRA 시리즈 · Part 4

다중 캐릭터 LoRA 생성 가이드: 한 장에 두 캐릭터 그리는 3가지 방법

캐릭터 LoRA 두 개를 동시에 쓰는 순간, 난이도가 갑자기 올라갑니다. 이 글에서는 세 가지 접근법을 실제 생성 이미지로 비교하면서 어떤 상황에 무엇을 써야 하는지 정리했습니다.

결론부터

문제의 8할은 프롬프트가 아니라 베이스 모델에서 갈립니다. 다중 캐릭터 생성은 가능하면 Tsubaki.2로 가는 쪽이 훨씬 빠릅니다. DiT 아키텍처는 두 명 이상 구도에서 SDXL보다 특징 섞임이 확연히 적고, 리저널 프롬프트 같은 우회 작업도 필요하지 않습니다. 반대로 SDXL을 꼭 써야 한다면 right: / left: 영역 구문과 LoRA 가중치 0.65 조합이 현실적인 해답입니다.

이 글은 PixAI LoRA 시리즈 Part 4입니다. LoRA 자체가 처음이라면 Part 1: LoRA란 무엇인가?부터 읽고 오시는 편이 이해가 빠릅니다.

직접 두 캐릭터를 넣어보고 싶다면

이 글의 예시 이미지는 전부 Tsubaki.2, PixAI의 플래그십 모델로 생성했습니다.


▸ PixAI에서 해보기

LoRA 완전 시리즈

01

다중 캐릭터 LoRA가 유독 어려운 이유

캐릭터 한 명만 뽑는 작업은 이제 꽤 안정적인 영역에 들어왔습니다. 베이스 모델을 고르고, 마켓에서 LoRA를 찾고, 트리거 워드를 프롬프트에 넣고 돌리면 끝입니다.

두 명을 한 장에 넣는 건 성격이 다릅니다. 같은 장면에 인물을 두 명 배치하는 문제가 아니라, 서로 다른 두 개의 정체성을 섞이지 않게 유지해야 하는 문제입니다. 게다가 캐릭터 LoRA 두 개가 잠재 공간(latent space)을 동시에 잡아당깁니다. 그래서 아래 세 가지 중 하나로 무너집니다.

붕괴 01

특징 섞임

머리색이 뒤바뀝니다. 눈 색이 섞입니다. 한쪽 캐릭터가 다른 쪽 옷을 입고 나옵니다. 상징적인 액세서리는 조용히 사라집니다.

붕괴 02

한쪽 LoRA가 판을 먹음

두 명 다 같은 캐릭터로 보입니다. ‘센’ LoRA가 이기고, 다른 하나는 아예 로드되지 않은 것처럼 지워집니다.

붕괴 03

인원수가 어긋남

두 명을 지정했는데 세 명이 나옵니다. 혹은 한 명만 나옵니다. 인원수 태그가 소리 없이 덮어씌워집니다.

셋 다 대응 방법이 있습니다. 그리고 그 대응의 절반 이상은 어떤 베이스 모델에서 출발하느냐로 이미 결정됩니다. 거기서부터 보겠습니다.

02

모델 선택이 상한선을 정합니다: DiT가 SDXL을 앞서는 지점

프롬프트를 손보기 전에, 베이스 모델이 이미 천장을 정해둡니다. 다중 캐릭터에서는 이 선택이 결과 차이를 가장 크게 만듭니다.

확인을 위해 같은 장면을 세 가지 방식으로 돌려봤습니다. 붕괴: 스타레일의 두 캐릭터, 에버나이트(Evernight)와 Mar. 7th가 맑은 날 길거리에서 주말 약속을 상의하는 장면입니다. 교복, 밝은 분위기, 두 캐릭터의 원작 특징이 그대로 남아 있어야 하는 조건입니다. 결과는 이렇게 갈렸습니다.

PixAI SDXL 에서 다중 캐릭터 LoRA 를 그대로 사용했을 때 발생한 특징 섞임 예시. 에버나이트의 특징이 사라지고 Mar. 7th 두 명이 된 결과
✕ 방식 A

SDXL + LoRA 2개 (가중치 1.0)

영역 지정 없음. Mar. 7th가 두 명입니다. 에버나이트의 특징은 전부 날아갔습니다.

PixAI SDXL 에서 리저널 프롬프트를 쓰고 LoRA 가중치를 낮춘 생성 결과. 두 캐릭터가 구분되지만 특징 섞임이 남아 있는 상태
△ 방식 B

SDXL + 리저널 + LoRA (0.65)

분리는 좋아졌지만 섞임이 남습니다. 여기가 SDXL의 현실적인 상한선입니다.

PixAI Tsubaki.2 로 생성한 다중 캐릭터 결과. 에버나이트의 붉은 눈과 Mar. 7th 의 파란 눈이 정확히 구분되어 그려진 이미지
✓ 방식 C

Tsubaki.2 (DiT, 자연어)

깔끔하게 분리됩니다. 둘 다 자기 정체성을 지켰고, 영역 구문도 쓰지 않았습니다.

세 장을 나란히 놓고 보면

방식 A (SDXL 그대로)는 두 명을 구분할 수 없는 상태가 됐습니다. 에버나이트의 붉은 눈, 검은 장갑, 거꾸로 된 물음표 귀걸이, 흰색 코트테일이 전부 사라졌습니다. 캐릭터 LoRA 두 개가 서로 싸우다가 Mar. 7th 쪽 학습이 판을 먹었고, 결과는 ‘교복 입은 Mar. 7th 두 명’입니다. 캐릭터 LoRA를 그냥 두 개 올리고 평범하게 프롬프트를 쓰면 대체로 이렇게 나옵니다.

방식 B (SDXL + 리저널 프롬프트 + 가중치 조정)는 눈에 띄게 나아졌습니다. right: / left: 구문을 쓰고 LoRA 가중치를 0.65까지 내리자, 한쪽 캐릭터가 확실히 다른 사람으로 나오기 시작합니다. 의상도 제 몫을 찾았습니다. 다만 머리색이 아직 정확하지 않고 섞임도 남습니다. 여기가 SDXL로 갈 수 있는 끝입니다.

방식 C (Tsubaki.2 DiT)는 결과물의 급이 다릅니다. 에버나이트의 붉은 눈이 살아 있습니다. 검은 머리 장식도 남았습니다. Mar. 7th의 파란 눈도 그대로입니다. 두 명이 서로 다른 사람으로 그려졌고 자연스럽게 대화하고 있습니다. 그런데 right: / left:는 쓰지 않았습니다. 그냥 문장으로 묘사했을 뿐입니다.

“DiT 아키텍처는 다중 캐릭터 구도를 모델 레벨에서 해결합니다. SDXL에서 필요했던 우회 작업 대부분이 없어집니다.”

그래도 SDXL을 써야 하는 경우

비교를 다 보고도 SDXL에 남을 이유가 하나 있습니다. 캐릭터 LoRA의 수와 종류입니다. SDXL 생태계는 오래 굴러온 만큼, 특히 마이너한 게임이나 애니 캐릭터 LoRA는 Illustrious, NoobAI 등 SDXL 계열 베이스로 학습된 게 압도적으로 많습니다. 노리는 캐릭터의 LoRA가 SDXL 판밖에 없다면 그 스택으로 가야 합니다.

그래서 이 글은 두 경로를 다 다룹니다. 3장은 SDXL 리저널 프롬프트, 5장은 더 단순한 DiT 워크플로입니다. 쓰려는 캐릭터 LoRA가 어느 쪽에 있는지로 갈라서 보시면 됩니다.

PixAI의 모델 라인업과 용도별 선택은 Tsubaki.2 완전 가이드에서 자세히 다룹니다.

03

리저널 프롬프트 + LoRA 구성식 (SDXL 경로)

SDXL을 쓴다면 리저널 프롬프트가 가장 믿을 만한 방법입니다. 원리는 단순합니다. 캔버스를 이름 붙인 영역으로 나누고, 캐릭터 묘사를 각 영역 안에서만 합니다. 그러면 모델이 각 캐릭터의 묘사를 해당 영역에만 적용하게 되고, 특징 섞임이 크게 줄어듭니다.

이 기본 구문은 원래 PixAI 커뮤니티 크리에이터 ATone 님이 BL, 야오이 작업용으로 정리한 것입니다. 전체 버전은 BL / 야오이 일러스트 프롬프트 가이드에서 보실 수 있습니다. 아래는 그걸 다중 캐릭터 LoRA용으로 손본 형태입니다.

기본 구조

다중 캐릭터 LoRA 프롬프트 템플릿

# 글로벌 블록: 이미지 전체에 적용

2girls, [장면 묘사], [캐릭터 A] at right, [캐릭터 B] at left,

<lora:character_A_lora:0.65>, <lora:character_B_lora:0.65>

# 오른쪽 영역: 캐릭터 A 전용

right: [캐릭터 A 트리거 워드], [A의 특징], [A의 동작]

# 왼쪽 영역: 캐릭터 B 전용

left: [캐릭터 B 트리거 워드], [B의 특징], [B의 동작]

단일 LoRA 운용과 다른 세 가지

1

LoRA 가중치를 1.0에서 0.6~0.7로 내립니다

캐릭터 LoRA 두 개가 동시에 풀 강도면 잠재 공간에서 충돌해 한쪽이 지워집니다. 둘 다 내려서 공존할 여지를 만드는 게 기본입니다. 0.65로 먼저 돌려보고 ±0.05씩 조정하세요. 가중치가 어떻게 작동하는지는 Part 2: LoRA 가중치 설정에서 자세히 다룹니다.

2

트리거 워드는 해당 영역 블록 안에 넣습니다

두 캐릭터의 트리거를 글로벌 프롬프트에 몰아넣지 마세요. 그러면 두 LoRA가 전 영역에 걸립니다. 트리거는 각각 한쪽에만 묶어둡니다. 트리거 워드를 어디에 두어야 하는지는 Part 3: 트리거 워드 가이드를 참고하세요.

3

글로벌 블록에서 위치를 먼저 선언합니다

영역 블록보다 앞에서 누가 어느 쪽인지 모델에게 알려줍니다. Acheron at right, Bronya at left처럼요. 공간 구도가 먼저 잡히면 뒤의 영역 지정이 안정적으로 먹습니다. 이 단계를 건너뛰면 영역 지정의 효과가 눈에 띄게 약해집니다.

!

실전 팁: 네거티브 프롬프트의 비중이 커집니다

네거티브 프롬프트에 feature mixing, features bleeding between characters, mixed hair colors, swapped outfits를 추가하세요. 자주 나오는 섞임 패턴을 피하라고 모델에 명시적으로 지시하는 역할을 합니다.

04

실전 예시: 캐릭터 LoRA 두 개를 한 장에 공존시키기

2장의 방식 B를 뽑은 실제 프롬프트를 블록별로 쪼개서 보겠습니다. 에버나이트와 Mar. 7th가 길거리에서 스마트폰을 같이 보며 이야기하는 장면입니다.

글로벌 블록

2girls, school uniform, after school, discussing weekend trip,
holding smartphone together, urban street, red postbox, yellow phone booth,
city buildings, sunny afternoon, warm sunlight,
Evernight at right, March 7th at left,

<lora:evernight_lora:0.65>, <lora:march7th_lora:0.65>

오른쪽 영역 → 에버나이트

right: Evernight (Honkai: Star Rail), deadpan red eyes with black pupils,
long pink hair, black school skirt, white coattail blazer, white collar,
black gloves, silver nail polish, upside down question mark earring,
thigh strap, calm deadpan expression, holding phone

왼쪽 영역 → Mar. 7th

left: march 7th (Honkai: Star Rail), pink hair, bright blue eyes,
young 19 year old woman, thin slim body, school uniform, school bag,
energetic smiling expression, leaning over to look at phone

네거티브 프롬프트

bad anatomy, deformed, blurry, watermark, low quality, worst quality,
missing fingers, extra fingers, feature mixing, features bleeding between characters,
mixed hair colors, swapped outfits

이 구성이 먹히는 이유, 줄 단위로

a

글로벌 블록에서 장면, 위치, LoRA를 한 번에 세팅

인원수(2girls), 공유하는 동작, 배경, 조명. 그리고 특히 중요한 위치 선언(Evernight at right, March 7th at left). 이게 뒤따르는 영역 지정을 살리는 토대가 됩니다.

b

LoRA 두 개를 0.65로. 1.0이 아니라

각각 1.0이면 잠재 공간 주도권 싸움이 됩니다. 0.65라면 둘 다 자기 학습을 발휘할 여지가 남습니다. 몇 번 돌려도 한쪽이 약하다 싶으면 그 LoRA만 0.7로 올리고 반대쪽을 0.6으로 내려 균형을 잡습니다.

c

오른쪽 영역에서 에버나이트의 정체성을 고정

트리거 워드(Evernight (Honkai: Star Rail))는 이 블록 안에만 둡니다. 상징적인 특징(붉은 눈, 검은 장갑, 물음표 귀걸이)을 시각적 앵커로 붙여주면 LoRA가 학습한 대로 뽑아내기 쉬워집니다.

d

왼쪽 영역에서 Mar. 7th를 반대편에 묶어둡니다

같은 논리를 반대쪽에 적용합니다. 그녀의 트리거는 왼쪽 블록 안에만. 시각적 서술(파란 눈, 마른 체형, 밝은 표정)도 이 영역에 가둡니다. 에버나이트 쪽으로 침범할 여지가 사라집니다.

05

DiT 경로: 자연어가 영역 구문을 대체합니다

Tsubaki.2를 쓰면 워크플로가 크게 바뀝니다. 그리고 상당히 단순해집니다. right: / left: 구문이 필요 없습니다. 가중치 균형 잡기도 없습니다. 캐릭터 LoRA 자체가 필요 없는 경우도 잦습니다. Tsubaki.2는 인기 캐릭터 상당수를 자연어만으로 인식합니다.

2장의 방식 C를 만든 프롬프트를 보겠습니다. 같은 장면, 같은 캐릭터, 전혀 다른 작성법입니다.

Tsubaki.2 자연어 프롬프트

A cinematic anime illustration of two schoolgirls from Honkai: Star Rail discussing weekend plans on a sunny urban street.

On the right stands Evernight, a girl with deadpan red eyes featuring distinctive black pupils, long flowing pink hair, wearing a black pleated school skirt paired with a white-collared blazer that has a white coattail. She wears black gloves with silver nail polish, an upside-down question mark earring, and a visible thigh strap. Her expression is calm and detached as she shows something on her phone.

On the left stands March 7th, a cheerful 19-year-old woman with pink hair and bright sky-blue eyes, slim build, in a matching school uniform. She’s leaning over with an excited expression to look at the phone screen.

SDXL과 다른 세 가지 작성법

차이 01

태그 나열이 아니라 설명문을 씁니다

Tsubaki.2는 자연어로 학습됐습니다. ‘붉은 눈에 검은 스커트를 입은 소녀’가 1girl, red eyes, black skirt보다 좋은 결과를 냅니다.

차이 02

‘On the right / On the left’를 본문 안에서

공간 배치를 문장의 일부로 씁니다. right: / left: 구문은 필요 없습니다. DiT는 문장 속 위치 표현을 이해합니다.

차이 03

캐릭터 LoRA를 생략할 수 있는 경우가 많습니다

Tsubaki.2는 인기 게임과 애니 캐릭터를 자연어에서 알아봅니다. 먼저 LoRA 없이 돌려보고 정확도가 부족할 때만 추가하는 쪽이 효율적입니다.

!

실전 팁: 프롬프트 도우미를 켜두세요

PixAI의 프롬프트 도우미(Prompt Helper)는 입력한 프롬프트를 Tsubaki.2에 맞는 형태로 다시 구성해 줍니다. 생성 후 ‘생성 작업’ 패널에서 어떻게 바뀌었는지 확인할 수 있습니다. DiT가 좋아하는 문장 구조를 익히는 가장 빠른 길입니다. 더 깊게 보려면 DiT 모델 프롬프트 작성 가이드를 참고하세요.

06

캐릭터 LoRA 겹치기에서 자주 걸리는 4가지

모델과 구조를 제대로 잡아도, 단일 캐릭터에서는 나오지 않던 문제가 따로 생깁니다. 자주 만나는 넷을 대응책과 묶어 정리했습니다.

증상 01

‘두 번째 캐릭터가 사라졌어요’

주도권을 잡은 캐릭터가 두 명이 되고 다른 LoRA는 무시됩니다.

대응: 두 가중치를 0.6까지 내리고 약한 쪽만 0.7로 올립니다. 사라진 캐릭터의 영역 블록에 더 강한 시각적 앵커(상징 의상, 특징적인 액세서리)를 추가하세요.

증상 02

‘두 명 지정했는데 세 명이 나와요’

인원수 태그가 덮어씌워집니다. ‘여분의 몸’ 현상이라고도 부릅니다.

대응: 프롬프트에서 2girls를 강화하고 네거티브에 3girls, multiple girls, crowd를 넣습니다. SDXL에서 계속 반복된다면 LoRA 자체가 다중 캐릭터 데이터로 과학습됐을 수 있습니다. 다른 LoRA로 바꾸면 나아지기도 합니다.

증상 03

‘둘 다 여성으로, 혹은 어리게 나와요’

SDXL의 학습 편향이 한쪽 프롬프트를 밀어냅니다.

대응: 강한 지시(2boys, male focus, tall male)와 적극적인 네거티브(1girl, feminine, female)를 함께 씁니다. 성인 캐릭터를 원한다면 mature, adult를 넣고 child, young을 네거티브로 뺍니다.

증상 04

‘둘이 그냥 서 있기만 해요’

캐릭터 분리는 깔끔한데 상호작용이 없는 ‘나란히 선’ 구도가 됩니다.

대응: 글로벌 블록에 명시적인 인터랙션 태그를 넣습니다. looking at each other, eye contact, holding hands, sharing a phone. DiT에서는 자연어로 동작을 묘사합니다. ‘팔짱을 끼고 걷는다’, ‘친구에게 스마트폰 화면을 보여준다’ 같은 식입니다.

캐릭터 LoRA 외의 겹치기(스타일 LoRA와의 조합 등)는 LoRA 스태킹 가이드에서 다룹니다.

07

세 명 이상을 그리고 싶을 때

현시점에서 믿을 만한 상한선은 두 명입니다. 세 명부터는 Tsubaki.2에서도 눈에 띄는 섞임이 나오기 시작하고, SDXL 리저널 지정은 꽤 이른 단계에서 무너집니다.

그래도 세 명 장면이 필요하다면, 효과 순으로 현실적인 선택지는 이렇습니다.

1

일단 Tsubaki.2로 돌리고 어느 정도 섞임은 감수합니다

세 명 구도에서도 현시점 가장 나은 선택입니다. 한 명 정도 특징이 옅어지는 섞임은 나올 수 있지만, 가볍게 손보면 공개할 수준까지 가는 경우가 대부분입니다.

2

캐릭터별로 따로 생성하고 나중에 합성합니다

각 캐릭터를 투명 배경이나 단순한 배경으로 따로 뽑아 공통 장면에 합칩니다. PixAI Edit Pro나 외부 툴을 씁니다. 손은 더 가지만 일관성은 확실히 올라갑니다.

3

Reference Pro로 세 번째를 추가합니다

먼저 두 명을 함께 생성한 다음, Reference Pro로 자연어를 써서 기존 장면에 세 번째 캐릭터를 넣습니다. 앞의 두 명 특징을 유지하면서 새 캐릭터를 더하는 방식으로 쓸 수 있습니다.

“합성을 쓰는 건 타협이 아닙니다. 커뮤니티에서 완성도 높은 다중 캐릭터 작품 상당수는 AI로 큰 틀을 잡고 AI가 약한 부분을 손으로 메우는 방식입니다.”

이 글의 요약

다중 캐릭터 생성 치트 시트

 다중 캐릭터는 Tsubaki.2(DiT)가 가장 매끄럽습니다

 SDXL은 right:/left: 영역 블록 + 가중치 0.65

 트리거 워드는 각자의 영역 블록 안에만

 섞임 관련 키워드를 네거티브 프롬프트에 명시

 세 명 이상은 섞임을 감수하거나 직접 합성

?

자주 묻는 질문

캐릭터 LoRA를 세 개 이상 동시에 쓸 수 있나요?

기술적으로는 가능합니다. PixAI는 여러 LoRA 슬롯을 허용합니다. 다만 실용적으로는 두 개를 넘어가면 품질이 급격히 떨어집니다. 캐릭터 LoRA 세 개를 한 장에 겹치면 Tsubaki.2에서도 눈에 보이는 섞임이 거의 반드시 생깁니다. 세 명 이상이라면 7장의 수동 합성 쪽이 안정적입니다.

단일 캐릭터에서는 안 내리는 가중치를 왜 다중에서는 내리나요?

캐릭터 LoRA를 가중치 1.0으로 쓰면 이미지 전체에 그 캐릭터의 특징을 강제하는 수준으로 잠재 공간을 장악합니다. 두 LoRA가 둘 다 1.0이면 이 강제가 충돌하고 센 쪽이 이깁니다. 양쪽을 0.65 근처로 내리면 각자 국소적으로만 작동하면서 전체를 장악하지는 않는 상태가 됩니다. 이론적인 부분은 Part 2: LoRA 가중치 설정에서 확인하실 수 있습니다.

SDXL용으로 학습된 캐릭터 LoRA를 Tsubaki.2에서 쓸 수 있나요?

쓸 수 없습니다. LoRA는 베이스 모델에 종속됩니다. Illustrious로 학습한 LoRA는 Tsubaki.2에서 제대로 작동하지 않고, 반대도 마찬가지입니다. 원하는 캐릭터가 SDXL 판뿐이라면 선택지는 셋입니다. (a) SDXL과 리저널 프롬프트로 운용하기, (b) Tsubaki.2가 자연어 서술만으로 그려내는지 먼저 시험해 보기(인기 캐릭터라면 될 확률이 높습니다), (c) DiT 판 LoRA를 직접 학습하기. 자세한 내용은 DiT LoRA 학습 가이드를 참고하세요.

두 캐릭터가 서로 닮은 설정(자매, 클론)이면 어떻게 하나요?

직관과 반대로 난이도가 올라갑니다. 캐릭터 간 시각적 대비가 적을수록 모델이 둘을 섞기 쉬워지기 때문입니다. 머리색이나 의상이 공통이라면 그 외의 차별화 요소를 강조합니다. 표정, 액세서리, 포즈, 헤어스타일의 차이를 프롬프트에 명시하는 게 효과적입니다. ‘머리를 길게 기른 언니, 트윈테일인 동생’ 같은 식으로요.

다중 캐릭터는 몇 번쯤 돌려봐야 하나요?

단일 캐릭터보다 확실히 많습니다. 장면 하나당 4~8회 정도를 잡아두는 게 현실적입니다. Seed와 프롬프트를 조금씩 바꿔가며 돌립니다. 첫 판에 나오는 경우는 거의 없습니다. 첫 출력은 ‘어디를 고쳐야 하는지’ 보는 디버그 재료라고 생각하고 결과를 보면서 조정해 나가시길 권합니다. Tsubaki.2를 먼저 써본 분들의 기록은 Tsubaki.2 사용 후기에 모여 있습니다.

직접 두 캐릭터를 한 장에 넣어보세요

PixAI에서 Tsubaki.2를 열고 이 글의 두 캐릭터 프롬프트를 그대로 넣어보면 차이를 눈으로 확인할 수 있습니다. 여러 Seed로 다중 캐릭터를 시험해 볼 무료 크레딧도 매일 지급됩니다.


▸ PixAI에서 시작하기

카드 등록 없이 시작 · 매일 무료 크레딧 · 상업적 이용 가능

인덱스