BioME (Bioacoustic Modulation-aware Encoder) is a resource-efficient audio encoder designed for bioacoustic applications. BioME is trained via layer-to-layer distillation from a high-capacity teacher model (BEATs), enabling strong representational transfer while significantly reducing the parameter count. To further improve ecological generalization, the model is pretrained on multi-domain data spanning speech, environmental sounds, and animal vocalizations. A key contribution is the integration of modulation-aware acoustic features via FiLM conditioning, injecting a DSP-inspired inductive bias that enhances feature disentanglement in low-capacity regimes.
pip install -U transformers1import torch
2import torchaudio
3from transformers import AutoModel
4
5# Load pre-trained model
6model = AutoModel.from_pretrained("Hguimaraes/biome_edge_bio", trust_remote_code=True).cuda().eval()
7
8# Load audio and resample to 16kHz
9wav, sr = torchaudio.load_audio("path/to/audio") # (batch_size, wav_len)
10wav = torchaudio.functional.resample(
11 wav,
12 sr,
13 16000,
14 lowpass_filter_width=64,
15 rolloff=0.9475937167399596,
16 resampling_method="sinc_interp_kaiser",
17 beta=14.769656459379492,
18)
19
20# Extract features
21with torch.no_grad():
22 output = model(wav)
23
24# output["last_hidden_states"]: final output (batch_size, seq_len, encoder_dim)
25# output["hidden_states"]: list of 12 elements with (batch_size, seq_len, encoder_dim) tensors (features for each layer)1@article{guimaraes2026biome,
2 title={BioME: A Resource-Efficient Bioacoustic Foundational Model for IoT Applications},
3 author={Guimar{\~a}es, Heitor R and Tiwari, Abhishek and Abdollahi, Mahsa and Avila, Anderson R and Falk, Tiago H},
4 journal={arXiv preprint arXiv:2602.09970},
5 year={2026}
6}