Problem
esp_data introduced a Polars backend and Birdset was updated. Two things broke:
-
TrainValSplitTransform called sklearn.train_test_split directly on the dataset object, which assumes a pandas DataFrame. Polars datasets are not DataFrames, so the call fails.
-
BirdSet removed train splits changed in the esp_data
Fix
PR #186 — addressed in the context of the audioprotopnet integration (#184).
- Replace
sklearn.train_test_split with esp_data PandasBackend API in TrainValSplitTransform so splits work across both pandas and Polars backends
- Add
birdset_train_splits module that registers the birdset_train dataset name; update all benchmark configs accordingly
- Split
ebird_taxonomy.json into versioned v2021/v2025 files so models can resolve labels against the taxonomy version they were trained with
- Add
fill_labels_from_answer repair transform to beans configs for rows where labels_as_list is empty but answer has the label
- Exclude
avex/data/ from large-file, ruff, and codespell hooks (taxonomy JSON files contain Latin species names flagged as spelling errors)
Problem
esp_dataintroduced a Polars backend and Birdset was updated. Two things broke:TrainValSplitTransformcalledsklearn.train_test_splitdirectly on the dataset object, which assumes a pandas DataFrame. Polars datasets are not DataFrames, so the call fails.BirdSet removed train splits changed in the esp_data
Fix
PR #186 — addressed in the context of the audioprotopnet integration (#184).
sklearn.train_test_splitwith esp_dataPandasBackendAPI inTrainValSplitTransformso splits work across both pandas and Polars backendsbirdset_train_splitsmodule that registers thebirdset_traindataset name; update all benchmark configs accordinglyebird_taxonomy.jsoninto versionedv2021/v2025files so models can resolve labels against the taxonomy version they were trained withfill_labels_from_answerrepair transform to beans configs for rows wherelabels_as_listis empty butanswerhas the labelavex/data/from large-file, ruff, and codespell hooks (taxonomy JSON files contain Latin species names flagged as spelling errors)