BirdNET v3.0 Models (GPU-native full + regional catalog)

BirdNET+ V3.0 (developer preview 4) acoustic classifier, re-exported to a GPU-native ONNX graph, plus a catalog of region-specific slices that are much smaller while staying numerically identical to the full model on the species they keep.

Developer preview. These are developer preview 4 models for research and evaluation.

Licence and terms

Each release came with its own upstream terms, and the repo-level licence tag stays CC BY-SA 4.0 for all of them.

  • developer preview 4 (birdnet-v3.0-preview4): the upstream developer-branch model licence (Apache-2.0) and acceptable-use guidance, LICENSE-preview4.md and ACCEPTABLE_USE-preview4.md at the repo root, unchanged from upstream.
  • developer preview 3.1 (birdnet-v3.0-preview3.1): TERMS_OF_USE.txt (CC BY-SA 4.0; no poaching or military use).

Origin and attribution

Powered by BirdNET (https://birdnet.cornell.edu/). BirdNET+ V3.0 is developed by the K. Lisa Yang Center for Conservation Bioacoustics (Cornell University), Chemnitz University of Technology, and the Museum fuer Naturkunde Berlin. It builds on Kahl et al. (2021) and Lasseck (2018). Architecture of this release: EfficientNet-B0 backbone, three-head classifier, 12,295 species.

The GPU-native conversion and the regional slicing in this repo are derived work under CC BY-SA 4.0.

Releases in this repo

The current release is developer preview 4 (birdnet-v3.0-preview4). Earlier releases stay available under their original file names:

  • developer preview 3.1 (birdnet-v3.0-preview3.1): full/birdnet-v3.0-preview3.1-fp32-b1.onnx, full/birdnet-v3.0-preview3.1-fp16-b1.onnx, full/birdnet-v3.0-preview3.1-labels-b1.txt, and per tile regional/<tile>/birdnet-v3.0-preview3.1-<tile>-{fp32,fp16,labels,indices}-b1. Its files are unchanged.

What "GPU-native" means

The BirdNET team's ONNX export computes its log-mel front-end with an in-graph ONNX STFT op. ONNX Runtime has no CUDA/TensorRT kernel for STFT, and OpenVINO cannot translate it at all, so the stock export cannot run on GPU or OpenVINO. In these models the STFT is replaced with a mathematically equivalent Conv1d (framing + windowed DFT), so the graph holds no op those runtimes lack. This release was run on ONNX Runtime CPU; it was not benchmarked on OpenVINO, so OpenVINO selects the fp32 file. The CUDA and TensorRT entries carry over from preview3.1 and were not run for preview4. One model serves CPU and GPU; there is no separate CPU/GPU build.

Input: raw audio [batch, 160000] (5 s @ 32 kHz, matching Perch v2 so a host can feed both classifiers the same buffer). Outputs: predictions [batch, 12,295] (a static dimension, sigmoid already applied) and embeddings [batch, 1280].

Variants and hardware

precision best for
-fp32- run this: ONNX Runtime and OpenVINO (BirdNET-Go runs v3.0 at f32 on every OpenVINO device)
-fp16- half the download; slower on ONNX Runtime CPU. See the note above for what it was checked on

FP16 is a download-size lever, not a CPU one. ONNX Runtime upconverts FP16 weights at inference, so on CPU FP16 is equal to or slower than FP32. For low-RAM CPU devices the right choice is a regional FP32 model, not FP16.

int8-arm is not shipped for v3.0: the backbone is Conv-dominated and int8-arm only quantizes MatMul/Gemm weights, so it barely helps here.

Full model

file classes MB
full/birdnet-v3.0-preview4-fp32-b1.onnx 12,295 521
full/birdnet-v3.0-preview4-fp16-b1.onnx 12,295 269
full/birdnet-v3.0-preview4-labels-b1.txt 12,295 -

Why regional models

The three-head classifier holds a large share of the model's parameters, so restricting it to a region's species set cuts memory and download size. Each tile is numerically identical to the full model on the species it keeps (max abs difference vs the full model < 1e-6); the only change is that out-of-region species are not emitted, which at a fixed monitoring location is exactly what you want. Region species sets come from the BirdNET Geomodel v3.0.2 range filter (species by occurrence probability, up to a per-tile cap, plus a cosmopolitan core), using the same tiles as the Perch v2 regional catalog. The cap is 800 for most temperate tiles and higher for species-rich ones.

A species the geomodel names differently from the classifier (a moved genus, a changed spelling) is matched through a reviewed rename table, so the preview4 tiles keep species an exact name match would have dropped. The preview3.1 tiles predate that table and stay as published.

Regional catalog

Each tile ships fp32 and fp16 models + labels + indices + coverage.png + metadata. regional/groups.json lists the continent grouping.

Europe

region coverage classes fp32 MB fp16 MB
azores 226 63.0 40.2
baltics 439 71.1 44.2
british-isles 560 75.7 46.5
canary-islands 394 69.4 43.4
central-europe 642 78.8 48.1
eastern-europe 517 74.1 45.7
iberia 625 78.2 47.8
iceland 388 69.2 43.3
madeira 259 64.3 40.8
nordic 421 70.4 43.9
southern-europe 614 77.7 47.5
svalbard 278 65.0 41.2
western-palearctic 1401 107.6 62.5

Asia

region coverage classes fp32 MB fp16 MB
china-north-central 779 84.0 50.7
china-northeast 676 80.1 48.7
china-southeast 1176 99.0 58.2
china-southwest 1211 100.4 58.9
himalaya 1209 100.3 58.8
indo-gangetic 1199 99.9 58.6
japan 597 77.1 47.2
south-asia-peninsular 660 79.5 48.4
tibet 1209 100.3 58.8

North America

region coverage classes fp32 MB fp16 MB
canada-alaska 747 82.8 50.1
north-america-east 801 84.8 51.1
north-america-west 802 84.9 51.1

South America

region coverage classes fp32 MB fp16 MB
amazonia 3183 175.1 96.2
andes 3324 180.5 98.9
eastern-brazil 1958 128.7 73.0
galapagos 143 59.9 38.6
southern-cone 1635 116.4 66.9

Africa

region coverage classes fp32 MB fp16 MB
cape-verde 149 60.1 38.7
central-africa 1659 117.4 67.4
east-africa 1947 128.3 72.8
mauritius 74 57.3 37.3
reunion 76 57.3 37.3
sao-tome-principe 127 59.3 38.3
seychelles 123 59.1 38.2
southern-africa 803 84.9 51.1
west-africa 1093 95.9 56.6

Oceania

region coverage classes fp32 MB fp16 MB
australia-east 756 83.1 50.2
hawaii 284 65.2 41.3
new-caledonia 182 61.4 39.4
new-zealand 287 65.3 41.3

Deployment

  • Point your host at a tile's model + its labels file (matching counts) and restart. Labels are Scientific name_Common name.
  • Confidence is a per-class sigmoid; slicing does not change a kept class's score (unlike a softmax model), so thresholds transfer directly from the full model.
  • Binaries are hosted here on HuggingFace; the derivation tooling lives separately.
Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model isn't deployed by any Inference Provider. ๐Ÿ™‹ Ask for provider support