brainstorming
brainstorming
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or planning anything new, in software or out of it (a talk, a business, a renovation).
custom-modelsBuild or debug Asteroid custom models, blocks, registries, DSP helpers, and tracing behavior.
Independent GitHub snapshot · Automated classification · Original documentation governs
Use this sub-skill when the user is building a new Asteroid architecture, extending a block, or debugging a low-level API rather than running a recipe or applying a pretrained model.
BaseModel or BaseEncoderMaskerDecoder subclassesasteroid.models.get(...) or register_model(...)asteroid.masknn, asteroid.dsp, asteroid.complex_nn, or asteroid.utilsregister_norm(...), register_optimizer(...), or prepare_parser_from_dict(...)references/api-reference.md for the model/block/registry surface.references/jit-and-tracing.md when TorchScript or torch.jit.trace is involved.references/troubleshooting.md when the issue looks like a shape, serialization, or registry mismatch.scripts/smoke_building_blocks.py to exercise representative blocks and utilities locally.The repo exposes ready-to-use model families such as:
Those are often the right starting point when the user wants to modify an existing Asteroid model rather than write a fresh stack from scratch.
get_model_args() should be able to reconstruct the model cleanly.BaseModel.from_pretrained(...) round-trips are a good shape/serialization smoke.BaseEncoderMaskerDecoder expects waveform-like tensors with time last.serialize() / from_pretrained() if a model is involved.filterbank, encoder, decoder, or masker usually point to architecture assembly.complex and beamforming usually point to DSP or complex-valued helpers.register_* almost always means a registry extension point.torch.jit or trace means the tracing-safe path should be considered explicitly.