LeapTalk 200FPS 의 조건: H200 한 장과 TAEHV 교체

LeapTalk 논문이 내세운 200FPS 는 H200 한 장에서 잰 값입니다. 해상도 512×512, 설정은 Lite, 같은 표의 Pro 설정은 55FPS 입니다.
참조 이미지 한 장과 음성을 넣으면 말하는 영상을 청크 단위로 이어 만듭니다. 상하이교통대 인공지능학원의 Rongxiang Zhang, Songhua Liu 가 2026년 7월 29일 arXiv 2608.00079 로 공개했습니다.
200FPS 는 H200 한 장, Lite 설정 값입니다
초록의 표현은 "1 step at up to 200 FPS" 입니다. 표 1 을 보면 그 숫자는 Lite 설정 행에 붙어 있고, 같은 카드 같은 해상도에서 Pro 설정 행은 55 입니다. 한 모델의 두 설정이 네 배 가까이 벌어집니다.
200FPS 가 얼마나 빠른지는 재생 속도로 바꿔 보면 잡힙니다. 초당 25프레임 영상이라면 만드는 속도가 재생 속도의 8배입니다. 실시간으로 흘려보내고도 7배가 남는 셈입니다.
저장소의 실행 스크립트를 보면 논문이 숫자를 낸 설정이 곧 기본값입니다. 아래 두 줄은 LeapTalk 저장소 의 inf.sh 에서 옮긴 것으로, 직접 돌려 본 출력이 아닙니다.
NUM_INFERENCE_STEPS="${NUM_INFERENCE_STEPS:-1}"
LITE="${LITE:-1}"
1스텝과 Lite 가 켜진 상태로 실행됩니다. 환경 변수를 건드리지 않고 그냥 돌리면 논문이 200FPS 를 낸 조건과 같은 경로를 타고, Pro 쪽 화질을 보려면 LITE=0 을 직접 넣어야 합니다.
FPS 와 지연은 따로 움직입니다. 초당 몇 장을 뽑느냐가 FPS 이고, 음성을 넣은 뒤 첫 청크가 나오기까지 걸리는 시간이 지연입니다. 대화형으로 쓸 때 사람이 느끼는 쪽은 후자입니다.
부록 F 의 표 9 는 카드가 다릅니다. A100 한 장에 나머지 조건은 같고, 512×512 에서 104FPS 가 나옵니다. 지연은 0.270초입니다. 본문의 200FPS 는 H200 에서 잰 값이며 개정판에서 하드웨어를 맞추겠다고, 저자들이 그 표 각주에 직접 적어 두었습니다.
본문은 200. 부록은 104. 카드가 달랐습니다. 그럼 4090 같은 소비자용 카드에서는 얼마가 나올까요? 논문에 없습니다. 실린 것은 데이터센터 카드 두 종뿐입니다.
속도의 큰 몫은 남의 오토인코더에서 옵니다
Lite 와 Pro 를 가르는 부품은 증류 기법이 아니라 오토인코더입니다. Pro 는 3D 컨볼루션 기반 WanVAE 를 쓰고, Lite 는 2D 컨볼루션 기반 TAEHV 로 갈아 끼웁니다. 표 5 가 그 교체 효과만 따로 재 놓았습니다.
표에서 볼 것은 시간 행이 아니라 메모리 행입니다. 81프레임 클립을 BF16 으로 처리했을 때 두 오토인코더가 각각 얼마를 쓰는지 잰 값이고, 오른쪽 배수는 앞의 두 값을 나눈 것입니다.
| 항목 | WanVAE (Pro) | TAEHV (Lite) | 배수 |
|---|---|---|---|
| 인코딩 시간 | 4.17초 | 0.39초 | 10.7배 |
| 디코딩 시간 | 5.26초 | 0.24초 | 21.9배 |
| 인코딩 메모리 | 8.495GB | 0.008GB | 1062배 |
| 디코딩 메모리 | 10.128GB | 0.411GB | 24.6배 |
인코딩 메모리 행의 1062배는 8.5GB 짜리 단계가 8MB 로 바뀌었다는 뜻입니다. 디코딩 쪽도 16GB 카드 기준으로 메모리의 3분의 2를 먹던 것이 40분의 1로 내려갑니다. 시간보다 메모리에서 훨씬 크게 벌었습니다.
TAEHV 는 이 논문이 만든 부품이 아닙니다. madebyollin 이 공개한 소형 비디오 오토인코더 TAEHV 이고, 논문 참고문헌에도 그 저장소가 그대로 걸려 있습니다. 제작자 쪽 비교표는 61프레임 디코딩에서 전체 VAE 2~3초 대 0.5초 남짓, 최대 메모리 6~9GB 대 0.5GB 미만을 적고 있습니다.
배포되는 가중치에도 그 파일이 들어 있습니다. z-rx/leaptalk 에 올라온 목록은 이렇습니다.
taew2_1.pth (22.7 MB)
audio_proj_step_10400.pt (174 MB)
lora/
Wan 2.1 용 TAE 파일이 첫 줄에 그대로 있고, 나머지는 LoRA 와 오디오 프로젝션입니다. 몸통 모델은 저장소 안내대로 SoulX-FlashHead-1_3B 를 따로 받아 씁니다.
논문이 이걸 숨긴 것은 아닙니다. 표 5 가 본문 안에 있고 인용도 달려 있습니다. 문제는 그 숫자가 밖으로 옮겨질 때 증류 기법의 성과로만 옮겨진다는 쪽입니다.
속도에는 값이 붙습니다. 표 1 의 HDTF 기준 FID 는 Pro 21, Lite 38 입니다. 저라면 200FPS 를 이 논문의 성과로 인용하지 않습니다. 증류가 벌어 준 몫과 부품 교체가 벌어 준 몫이 그 안에 섞여 있으니까요.
카드를 걷어내면 얼굴이 안 무너지는 쪽이 남습니다
하드웨어와 오토인코더를 걷어내고 남는 기여는 긴 영상에서 인물이 흔들리지 않게 붙잡는 부분입니다. 기존 방식은 청크마다 가우시안 노이즈에서 영상을 새로 만들고, 그렇게 이어 붙이는 동안 오차가 쌓여 얼굴이 조금씩 달라집니다.
LeapTalk 은 출발점을 바꿉니다. 노이즈에서 데이터로 가는 대신 데이터에서 데이터로 옮기고, 그 경로에 브라운 다리 를 놓았습니다. 보간식은 X_t = (1-t)·I + t·X_1 + √(t(1-t))·ε 이고, 여기서 I 가 참조 이미지입니다.
핵심은 I 항이 사라지지 않는다는 데 있습니다. t 가 경로 어디에 있든 참조 이미지가 식에 남아 있어서, 매 프레임이 원본 사진에 끈으로 묶인 채 움직입니다. 논문은 이 방식에 Bridge Forcing 이라는 이름을 붙였고, 앞 청크의 접두부가 동작 연속성을 잇습니다.
1스텝으로 줄이는 것은 별개의 문제입니다. flow-matching 으로 학습한 교사와 브라운 다리를 타는 학생은 궤적이 달라서, 같은 타임스텝이 서로 다른 노이즈 수준에 대응합니다. 이 어긋남을 SNR 을 맞춘 시간 변환 t = Φ(τ) 로 메웁니다. 그럼 스텝을 1까지 줄이면 무엇이 먼저 망가질까요? 입 모양입니다. 그래서 음성 쪽 조건을 더 세게 미는 오디오 유도 classifier-free guidance 를 따로 붙였습니다.
이 부분은 카드를 바꿔도 남습니다. 오토인코더 교체가 벌어 준 몫은 카드가 빨라질수록 의미가 줄지만, 긴 영상에서 인물이 바뀌어 버리는 문제는 카드가 한 세대 빨라진다고 사라지지 않습니다. "실시간이 됐다"는 헤드라인은 하드웨어와 기성 부품에 크게 기대고 있습니다.
개정판에서 하드웨어를 맞추겠다고 적어 두었으니, 다음 판의 200 은 A100 기준 100 언저리로 다시 적힐 겁니다. 그대로 200 이 남으면 이 예측은 틀린 겁니다. 이 논문에서 오래 갈 부분은 그 숫자가 아니라 참조 이미지를 출발점에 묶어 둔 브라운 다리입니다.