vllm_omni.diffusion.models.soulx_singer.modules ¶
Modules:
| Name | Description |
|---|---|
convnext | |
decoder | |
flow_matching | |
llama | |
mel_transform | |
note_transcription | |
preprocess | Preprocess neural network modules for SoulX-Singer. |
vocoder | |
whisper_encoder | Frozen Whisper encoder wrapper (wav -> encoder embeddings). |
DiffLlama ¶
Bases: LlamaModel
cond_mlp instance-attribute ¶
cond_mlp = nn.Sequential(
nn.Linear(hidden_size, hidden_size * 4),
nn.SiLU(),
nn.Linear(hidden_size * 4, hidden_size),
)
diff_step_mlp instance-attribute ¶
diff_step_mlp = nn.Sequential(
nn.Linear(hidden_size, hidden_size * 4),
nn.SiLU(),
nn.Linear(hidden_size * 4, hidden_size),
)
layers instance-attribute ¶
layers = nn.ModuleList(
[
(LlamaNARDecoderLayer(layer_config, layer_idx=i))
for i in (range(num_layers))
]
)
mel_mlp instance-attribute ¶
mel_mlp = nn.Sequential(
nn.Linear(mel_dim, hidden_size * 4),
nn.SiLU(),
nn.Linear(hidden_size * 4, hidden_size),
)
mel_out_mlp instance-attribute ¶
mel_out_mlp = nn.Sequential(
nn.Linear(hidden_size, hidden_size * 4),
nn.SiLU(),
nn.Linear(hidden_size * 4, mel_dim),
)
forward ¶
forward(
x,
diffusion_step,
cond,
x_mask,
input_ids: LongTensor = None,
attention_mask: Tensor | None = None,
position_ids: LongTensor | None = None,
past_key_values: list[FloatTensor] | None = None,
inputs_embeds: FloatTensor | None = None,
use_cache: bool | None = None,
output_attentions: bool | None = None,
output_hidden_states: bool | None = None,
return_dict: bool | None = False,
) -> BaseModelOutputWithPast | Tensor | dict
FlowMatchingTransformer ¶
Bases: Module
ctc_mlp_layer instance-attribute ¶
ctc_mlp_layer = nn.Sequential(
nn.Linear(hidden_size, hidden_size * 4),
nn.SiLU(),
nn.Linear(hidden_size * 4, cfg.ctc.output_dim),
)
diff_estimator instance-attribute ¶
diff_estimator = DiffLlama(
mel_dim=mel_dim,
hidden_size=hidden_size,
num_heads=num_heads,
num_layers=num_layers,
config=llama_config,
)
repa_mlp_layer instance-attribute ¶
repa_mlp_layer = nn.Sequential(
nn.Linear(hidden_size, hidden_size * 4),
nn.SiLU(),
nn.Linear(hidden_size * 4, cfg.repa.output_dim),
)
forward ¶
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
x | Tensor | (B, T, mel_dim) | required |
x_mask | Tensor | (B, T) | required |
cond_code | Tensor | (B, T), Note that cond_code might be not at 50Hz! | required |
reverse_diffusion ¶
reverse_diffusion(
cond,
prompt,
x_mask=None,
prompt_mask=None,
n_timesteps=10,
cfg=1.0,
rescale_cfg=0.75,
)
reverse_diffusion_v2 ¶
reverse_diffusion_v2(
cond,
prompt,
x_mask=None,
prompt_mask=None,
n_timesteps=10,
cfg=1.0,
rescale_cfg=0.75,
)
MelSpectrogramEncoder ¶
Bases: Module
Vocoder ¶
Bases: Module