실시간 및 인과적 비디오 모델
실시간 및 인과적 비디오 모델 (Realtime and Causal Video Models)
이 페이지는 실시간(realtime) 및 인과적(causal) 비디오 파이프라인을 설명해요. 이 파이프라인들은 비디오를 증분 방식으로 생성하고 청크 간에 상태를 재사용해요. 이는 하나의 경계가 있는 잠재 시퀀스를 디노이징하고 생성이 끝나면 모든 요청 상태를 해제하는 오프라인 확산 파이프라인과 다릅니다.
출처: 문서
본문
실시간 및 인과적 비디오 파이프라인은 비디오를 증분 방식으로 생성하고 청크(chunk) 간에 상태를 재사용해요. 이는 하나의 경계가 있는 잠재 시퀀스를 디노이징하고 생성이 끝나면 모든 요청 상태를 해제하는 오프라인 확산 파이프라인과 달라요.
실행 모드 (Execution Modes)
SGLang Diffusion은 서로 관련되지만 구별되는 두 가지 모드를 제공해요:
| Mode | Lifetime | Interface | Examples |
|---|---|---|---|
| Realtime session | 클라이언트가 연결을 끊거나 세션이 끝날 때까지 상태 유지 | /v1/realtime_video/generate WebSocket |
LingBot World, SANA-WM realtime |
| Request-based causal generation | 하나의 요청 내에서 청크 간 상태 재사용, 그 후 해제 | 표준 비디오 생성 API | LongLive 2.0, batch-streaming SANA-WM |
실시간 서버는 인과적 자기 어텐션(causal self-attention) KV 캐시, 크로스 어텐션 캐시, 디코더 히스토리, 보류 중인 제어 이벤트 등 모델별 상태를 유지해요. 상태는 세션별로 격리되며 관련 없는 요청에 의해 재사용되지 않아요.
Note 인과적 DiT가 자동으로 실시간 세션 모델이 되는 것은 아니에요. 파이프라인은 실시간 어댑터(realtime adapter)를 등록하고 WebSocket 세션 수명 주기를 구현해야 해요.
지원되는 실시간 파이프라인 (Supported Realtime Pipelines)
| Model family | Pipeline | Live controls | QVG KV-cache quantization |
|---|---|---|---|
| LingBot World | LingBotWorldCausalDMDPipeline |
카메라 액션 및 프롬프트 업데이트 | 지원 |
| SANA-WM | SanaWMRealtimePipeline |
카메라 액션 | 미지원 |
실행 명령, 요청 스키마, 컨트롤 토큰 세부 사항은 모델 쿡북(cookbook)을 사용해요:
전체 모델 목록은 Supported Models를 참고해 주세요.
인과적 캐시 컨트롤 (Causal Cache Controls)
실시간 요청은 두 가지 모델 기본값을 재정의할 수 있어요:
realtime_causal_sink_size: 어텐션 싱크(attention sink)로 유지되는 안정적인 프리픽스 히스토리 양realtime_causal_kv_cache_num_frames: 롤링 KV-캐시 창에 유지되는 최근 인과적 히스토리
더 큰 창은 더 많은 히스토리를 보존하지만 상주 메모리와 어텐션 작업을 증가시켜요. 이 필드들은 요청/세션 컨트롤이며, 지원 범위와 기본값은 모델별로 다를 수 있어요.
지원되는 LingBot World 배포의 경우 서버 레벨 --kv-cache-quant {off,int4,int2} 옵션이 완성된 캐시 청크를 압축해요. 기본적으로 비활성화되어 있고 활성화 시 손실(lossy) 기반이에요. int4로 시작하고, 추가 메모리 절감이 더 큰 품질 위험을 감수할 만할 때만 int2를 사용해요.
설치, 스토리지 정책, 튜닝 옵션, 메모리/지연 시간 트레이드오프, 현재 제한 사항은 Causal KV-Cache Quantization을 참고해 주세요.
Warning QVG KV-cache 양자화는 현재 LingBot 실시간 슬라이딩-윈도우-및-싱크 경로만 지원해요. SANA-WM realtime, LongLive 2.0 고정 싱크(pinned sinks), 글로벌 싱크, 동적 성장 캐시에는 적용되지 않아요.
배포 고려 사항 (Deployment Considerations)
- 비트 정확한 BF16 캐시 동작이 필요하면
--kv-cache-quant off를 유지해요. - 대표적인 세션 길이를 벤치마크해요. 짧은 클립은 콜드-캐시 패킹을 테스트하지 못해 메모리 이점과 패킹 오버헤드를 모두 숨길 수 있어요.
- 시퀀스 병렬 처리는 모델별로 취급해요. 모든 실시간 파이프라인에 하나의 메시가 최적이라고 가정하지 말고 모델 쿡북과 Sequence Parallelism 가이드를 따라요.
- 실시간 WebSocket 클라이언트는 제어 이벤트 전에 초기화 메시지를 보내야 해요. 정확한 MessagePack 스키마와 출력 인코딩은 각 모델 쿡북에 문서화되어 있어요.