MCPcopy Create free account
hub / github.com/0xShug0/audio.cpp / compute_s3_flow_decoder_forward

Function compute_s3_flow_decoder_forward

src/models/chatterbox/s3gen_flow.cpp:1875–1894  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1873 load_decoder_conv1d(*weights->store, source, "flow.decoder.estimator.down_blocks.0.2", 256, 256, 3, 1, true, weight_storage_type);
1874
1875 weights->mid_blocks.resize(12);
1876 for (int block_index = 0; block_index < 12; ++block_index) {
1877 weights->mid_blocks[static_cast<size_t>(block_index)].resnet =
1878 load_resnet("flow.decoder.estimator.mid_blocks." + std::to_string(block_index) + ".0", 256, 256);
1879 for (int i = 0; i < 4; ++i) {
1880 weights->mid_blocks[static_cast<size_t>(block_index)].transformers.push_back(
1881 load_transformer("flow.decoder.estimator.mid_blocks." + std::to_string(block_index) + ".1." + std::to_string(i)));
1882 }
1883 }
1884
1885 weights->up_blocks.resize(1);
1886 weights->up_blocks[0].resnet = load_resnet("flow.decoder.estimator.up_blocks.0.0", 512, 256);
1887 for (int i = 0; i < 4; ++i) {
1888 weights->up_blocks[0].transformers.push_back(load_transformer("flow.decoder.estimator.up_blocks.0.1." + std::to_string(i)));
1889 }
1890 weights->up_blocks[0].upsample =
1891 load_decoder_conv1d(*weights->store, source, "flow.decoder.estimator.up_blocks.0.2", 256, 256, 3, 1, true, weight_storage_type);
1892
1893 weights->final_block = load_causal_block("flow.decoder.estimator.final_block", 256, 256);
1894 weights->final_proj = load_decoder_conv1d(*weights->store, source, "flow.decoder.estimator.final_proj", 80, 256, 1, 1, true, weight_storage_type);
1895
1896 if (source.has_tensor("flow.decoder.estimator.time_embed_mixer.weight")) {
1897 weights->meanflow = true;

Callers

nothing calls this directly

Calls 3

valid_frames_from_maskFunction · 0.85
set_conditioningMethod · 0.80
runMethod · 0.45

Tested by

no test coverage detected