72 lines
2.2 KiB
YAML
72 lines
2.2 KiB
YAML
# Fish Speech S2 Pro 2-GPU deploy: Stage0 AR on GPU 0, Stage1 DAC on GPU 1.
|
|
#
|
|
# Opt-in profile validated on H100x2. Compared with the single-GPU default
|
|
# (``fish_qwen3_omni.yaml``), it splits AR and DAC across devices to remove
|
|
# AR/DAC contention, enlarges Stage0 AR batching, and lets Stage1 consume
|
|
# multiple DAC chunks in parallel.
|
|
#
|
|
# Select via:
|
|
# CUDA_VISIBLE_DEVICES=0,1 vllm serve fishaudio/s2-pro --omni \
|
|
# --deploy-config vllm_omni/deploy/fish_qwen3_omni_2gpu.yaml
|
|
#
|
|
# Or programmatically:
|
|
# Omni(model="fishaudio/s2-pro",
|
|
# deploy_config="vllm_omni/deploy/fish_qwen3_omni_2gpu.yaml")
|
|
|
|
async_chunk: true
|
|
enable_chunked_prefill: false
|
|
|
|
connectors:
|
|
connector_of_shared_memory:
|
|
name: SharedMemoryConnector
|
|
extra:
|
|
codec_streaming: true
|
|
# Tightened from 10ms to 1ms: chunks become available sooner under
|
|
# cross-GPU pipelining, so connector idle waiting dominates if left high.
|
|
connector_get_sleep_s: 0.001
|
|
connector_get_max_wait_first_chunk: 3000
|
|
connector_get_max_wait: 300
|
|
# ~21 Hz codec; 25 frames ≈ 1.16s of audio.
|
|
codec_chunk_frames: 25
|
|
codec_left_context_frames: 25
|
|
initial_codec_chunk_frames: 4
|
|
|
|
stages:
|
|
- stage_id: 0
|
|
max_num_seqs: 64
|
|
gpu_memory_utilization: 0.75
|
|
enforce_eager: false
|
|
async_scheduling: false
|
|
# vLLM scheduler requires max_num_batched_tokens >= max_model_len when
|
|
# chunked prefill is off (SlowAR decode loop isn't chunked-prefill-safe).
|
|
max_num_batched_tokens: 16384
|
|
max_model_len: 16384
|
|
devices: "0"
|
|
output_connectors:
|
|
to_stage_1: connector_of_shared_memory
|
|
default_sampling_params:
|
|
temperature: 0.8
|
|
top_k: 30
|
|
top_p: 0.9
|
|
max_tokens: 2048
|
|
seed: 42
|
|
repetition_penalty: 1.0
|
|
|
|
- stage_id: 1
|
|
max_num_seqs: 64
|
|
gpu_memory_utilization: 0.2
|
|
enforce_eager: true
|
|
async_scheduling: false
|
|
max_num_batched_tokens: 16384
|
|
max_model_len: 16384
|
|
devices: "1"
|
|
input_connectors:
|
|
from_stage_0: connector_of_shared_memory
|
|
default_sampling_params:
|
|
temperature: 0.0
|
|
top_p: 1.0
|
|
top_k: -1
|
|
max_tokens: 65536
|
|
seed: 42
|
|
repetition_penalty: 1.0
|