{"record":{"id":"b03091bcb77aaf82","repo":"mudler/LocalAI","slug":"acestep-cpp-fatal-silence-latent-not-found-in","errorCode":null,"errorMessage":"[acestep-cpp] FATAL: silence_latent not found in %s\\n","messagePattern":"\\[acestep-cpp\\] FATAL: silence_latent not found in (.+?)\\\\n","errorType":"console","errorClass":null,"httpStatus":null,"severity":"critical","filePath":"backend/go/acestep-cpp/cpp/goacestepcpp.cpp","lineNumber":93,"sourceCode":"    fprintf(stderr, \"[acestep-cpp] Loading DiT from %s\\n\", dit_model_path);\n    if (!dit_ggml_load(&g_dit, dit_model_path)) {\n        fprintf(stderr, \"[acestep-cpp] FATAL: failed to load DiT from %s\\n\", dit_model_path);\n        return 1;\n    }\n    g_dit_loaded = true;\n\n    // Read DiT GGUF metadata + silence_latent\n    {\n        GGUFModel gf = {};\n        if (gf_load(&gf, dit_model_path)) {\n            g_is_turbo           = gf_get_bool(gf, \"acestep.is_turbo\");\n            const void * sl_data = gf_get_data(gf, \"silence_latent\");\n            if (sl_data) {\n                g_silence_full.resize(15000 * 64);\n                memcpy(g_silence_full.data(), sl_data, 15000 * 64 * sizeof(float));\n                fprintf(stderr, \"[acestep-cpp] silence_latent: [15000, 64] loaded\\n\");\n            } else {\n                fprintf(stderr, \"[acestep-cpp] FATAL: silence_latent not found in %s\\n\", dit_model_path);\n                gf_close(&gf);\n                return 2;\n            }\n            gf_close(&gf);\n        } else {\n            fprintf(stderr, \"[acestep-cpp] FATAL: cannot read GGUF metadata from %s\\n\", dit_model_path);\n            return 2;\n        }\n    }\n\n    // Load VAE model\n    fprintf(stderr, \"[acestep-cpp] Loading VAE from %s\\n\", vae_model_path);\n    vae_ggml_load(&g_vae, vae_model_path);\n    g_vae_loaded = true;\n\n    fprintf(stderr, \"[acestep-cpp] All models loaded successfully (turbo=%d)\\n\", g_is_turbo);\n    return 0;\n}","sourceCodeStart":75,"sourceCodeEnd":111,"githubUrl":"https://github.com/mudler/LocalAI/blob/44413a9d06bf5bc52ce088ba8ca74e5a2e8bee26/backend/go/acestep-cpp/cpp/goacestepcpp.cpp#L75-L111","documentation":"acestep-cpp fatal: the DiT GGUF opened and parsed (gf_load succeeded) but contains no 'silence_latent' tensor — a [15000, 64] float blob the generator needs for masking silence. Its absence means the GGUF was produced by a converter that did not export the latent, so load_model closes the GGUF and returns 2. This is a model-artifact defect, not a runtime condition.","triggerScenarios":"Using a DiT GGUF converted with an older/modified acestep converter that skips silence_latent, or hand-merged GGUFs where the metadata tensor was dropped; gf_get_data(gf, \"silence_latent\") returns NULL.","commonSituations":"Community-converted GGUFs missing aux tensors; quantization pipelines that only keep compute tensors; version mismatch between converter and this backend revision.","solutions":["Re-obtain the DiT GGUF from the source/gallery entry this backend documents — official artifacts include silence_latent.","If self-converting, use the converter version the backend README pins and verify 'silence_latent' is present (gguf-dump / gguf-py inspect) before deploying.","Do not attempt generation with the bad file: the check is load-time for exactly this reason."],"exampleFix":"# verify the tensor exists before deploying\ngguf-dump dit.gguf | grep silence_latent\n# before: (no output) -> FATAL at load\n# after: silence_latent f32 [15000, 64] -> loads ok","handlingStrategy":"validation","validationCode":"# reject GGUFs lacking the latent before deploying\ngguf-dump dit.gguf | grep -q 'silence_latent' || { echo 'dit.gguf missing silence_latent' >&2; exit 1; }","typeGuard":"bool has_silence_latent(const GGUFModel& gf) {\n    return gf_get_data(gf, \"silence_latent\") != nullptr;  // [15000, 64] f32\n}","tryCatchPattern":null,"preventionTips":["Only use converter builds the acestep-cpp backend documents; they export aux tensors like silence_latent.","Add a CI artifact check that gguf-dump lists silence_latent with shape [15000, 64].","Treat this fatal as a hard artifact rejection — no runtime workaround exists."],"tags":["cpp","acestep","gguf","model-loading","metadata"],"backgroundTag":null,"analyzedSha":"44413a9d06bf5bc52ce088ba8ca74e5a2e8bee26","analyzedAt":"2026-08-15T10:13:50.291Z","schemaVersion":2},"datasetVersion":"2026-08-15T17:31:12.345Z"}