Experiment/radboud eval - #35
Conversation
|
Caution The consumer version of Gemini Code Assist on GitHub has been sunset. All code review activity has officially ceased. |
|
Warning Review limit reached
Next review available in: 40 minutes You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. How can I continue?After more reviews become available, a review can be triggered using the To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews. How do review limits work?CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability. For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window. Please refer docs for additional details. Review details⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (1)
📝 WalkthroughWalkthroughRadboud tile artifact URIs and QC annotations were updated. New preprocessing, prediction, and test-suite configurations were added. Public checkpoint references were added or corrected. Dataset transform configuration, stain normalization, tile embedding output handling, typing, imports, and Git dependencies were changed. ChangesRadboud data and preprocessing
Model evaluation configurations
Estimated code review effort: 3 (Moderate) | ~20 minutes Possibly related PRs
Suggested reviewers: 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches 💡 1🛠️ Fix failing CI checks 💡
📝 Generate docstrings
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 3
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
configs/data/radboud/val_heuristic_normalized.yaml (1)
1-1: 🗄️ Data Integrity & Integration | 🟠 Major | ⚡ Quick winDisable or remove Radboud QC-invalid test configs that still reference the annotated data files. The URIs in
configs/data/radboud/val_heuristic_normalized.yamlandconfigs/data/radboud/val_ml_normalized.yamlare still resolvable, while active/experiment/test/*.yamlconfigs continue to load them as target data.
configs/experiment/test/images/resnet50/test_suite/radboud_val_heuristic_normalized.yaml,configs/experiment/test/images/vgg16/test_suite/radboud_val_heuristic_normalized.yaml, and similarval_ml_normalizedtest configs.🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@configs/data/radboud/val_heuristic_normalized.yaml` at line 1, Disable or remove the Radboud QC-invalid data configurations `val_heuristic_normalized.yaml` and `val_ml_normalized.yaml`, along with the active `/experiment/test` ResNet50, VGG16, and corresponding test-suite configs that reference them as target data, so these annotated-data URIs are no longer loaded by test experiments.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@configs/data/radboud/val_heuristic_normalized.yaml`:
- Around line 5-6: Remove the tiles_uri_512 and tiles_uri_224 entries from this
Radboud test configuration section, or replace their mlflow-artifacts URIs with
a placeholder URI that will fail fast with a clear error message. The trailing
"invalid QC" comments do not prevent these configurations from being loaded and
used by active experiments, so a functional change to the URIs themselves is
required instead of relying on comments to disable them.
In `@preprocessing/embeddings/tile_embeddings_v2.py`:
- Around line 89-94: Preserve the existing root-level artifact layout in the
output flow around slides_parquet_dir and the slides.to_parquet call: continue
writing slides.parquet where current Radboud consumers expect it, unless all
listed consumers are updated together. If introducing the nested slides
directory, add migration cleanup that removes the old root artifact and prevents
stale metadata when reusing output_path.
In `@prostate_cancer/typing.py`:
- Around line 44-46: Update the inline comment on UnlabeledTileSampleBatch to
describe its actual two-element shape, Tensor followed by TileMetadataBatch, and
remove the incorrect labels element.
---
Outside diff comments:
In `@configs/data/radboud/val_heuristic_normalized.yaml`:
- Line 1: Disable or remove the Radboud QC-invalid data configurations
`val_heuristic_normalized.yaml` and `val_ml_normalized.yaml`, along with the
active `/experiment/test` ResNet50, VGG16, and corresponding test-suite configs
that reference them as target data, so these annotated-data URIs are no longer
loaded by test experiments.
🪄 Autofix
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: defaults
Review profile: CHILL
Plan: Pro Plus
Run ID: 11225f79-874c-4277-88cb-a75b78db6861
⛔ Files ignored due to path filters (1)
uv.lockis excluded by!**/*.lock
📒 Files selected for processing (74)
configs/data/radboud/test.yamlconfigs/data/radboud/train.yamlconfigs/data/radboud/val.yamlconfigs/data/radboud/val_heuristic_normalized.yamlconfigs/data/radboud/val_ml_normalized.yamlconfigs/datamodule/datasets/images/labeled.yamlconfigs/datamodule/datasets/images/unlabeled.yamlconfigs/datamodule/transforms/augmentations.yamlconfigs/experiment/predict/embeddings/pgp/multi_aggregator_eval/radboud_test.yamlconfigs/experiment/predict/embeddings/pgp/multi_aggregator_eval/stain_radboud_test.yamlconfigs/experiment/predict/embeddings/virchow2/multi_aggregator_eval/radboud_test.yamlconfigs/experiment/predict/embeddings/virchow2/multi_aggregator_eval/stain_radboud_test.yamlconfigs/experiment/predict/images/google_vit/multi_aggregator_eval/radboud_test.yamlconfigs/experiment/predict/images/google_vit/multi_aggregator_eval/stain_radboud_test.yamlconfigs/experiment/predict/images/resnet50/heatmaps_and_max_aggregations/radboud_test.yamlconfigs/experiment/predict/images/resnet50/multi_aggregator_eval/radboud_test.yamlconfigs/experiment/predict/images/resnet50/multi_aggregator_eval/radboud_test_224.yamlconfigs/experiment/predict/images/resnet50/multi_aggregator_eval/stain_radboud_test.yamlconfigs/experiment/predict/images/resnet50/multi_aggregator_eval/stain_radboud_test_224.yamlconfigs/experiment/predict/images/vgg16/multi_aggregator_eval/radboud_test.yamlconfigs/experiment/predict/images/vgg16/multi_aggregator_eval/radboud_test_224.yamlconfigs/experiment/predict/images/vgg16/multi_aggregator_eval/stain_radboud_test.yamlconfigs/experiment/predict/images/vgg16/multi_aggregator_eval/stain_radboud_test_224.yamlconfigs/experiment/preprocessing/filter_tiles/radboud_test.yamlconfigs/experiment/preprocessing/filter_tiles/radboud_train.yamlconfigs/experiment/preprocessing/filter_tiles/radboud_val.yamlconfigs/experiment/preprocessing/tile_embeddings_v2/pgp/base.yamlconfigs/experiment/preprocessing/tile_embeddings_v2/pgp/radboud_test.yamlconfigs/experiment/preprocessing/tile_embeddings_v2/pgp/radboud_val.yamlconfigs/experiment/preprocessing/tile_embeddings_v2/virchow2/radboud_test.yamlconfigs/experiment/preprocessing/tile_embeddings_v2/virchow2/radboud_val.yamlconfigs/experiment/preprocessing/tile_masks/radboud_test_224.yamlconfigs/experiment/preprocessing/tile_masks/radboud_test_512.yamlconfigs/experiment/preprocessing/tile_masks/radboud_train_224.yamlconfigs/experiment/preprocessing/tile_masks/radboud_train_512.yamlconfigs/experiment/preprocessing/tile_masks/radboud_val_224.yamlconfigs/experiment/preprocessing/tile_masks/radboud_val_512.yamlconfigs/experiment/test/bag_of_embeddings/pgp/test_suite/classic_radboud_test.yamlconfigs/experiment/test/bag_of_embeddings/pgp/test_suite/hybrid_radboud_test.yamlconfigs/experiment/test/bag_of_embeddings/virchow2/test_suite/classic_radboud_test.yamlconfigs/experiment/test/bag_of_embeddings/virchow2/test_suite/hybrid_radboud_test.yamlconfigs/experiment/test/base.yamlconfigs/experiment/test/embeddings/pgp/test_suite/radboud_test.yamlconfigs/experiment/test/embeddings/pgp/test_suite/stain_radboud_test.yamlconfigs/experiment/test/embeddings/virchow2/test_suite/radboud_test.yamlconfigs/experiment/test/embeddings/virchow2/test_suite/stain_radboud_test.yamlconfigs/experiment/test/images/google_vit/test_suite/radboud_test.yamlconfigs/experiment/test/images/google_vit/test_suite/stain_radboud_test.yamlconfigs/experiment/test/images/resnet50/test_suite/radboud_test.yamlconfigs/experiment/test/images/resnet50/test_suite/radboud_test_224.yamlconfigs/experiment/test/images/resnet50/test_suite/stain_radboud_test.yamlconfigs/experiment/test/images/resnet50/test_suite/stain_radboud_test_224.yamlconfigs/experiment/test/images/vgg16/test_suite/radboud_test.yamlconfigs/experiment/test/images/vgg16/test_suite/radboud_test_224.yamlconfigs/experiment/test/images/vgg16/test_suite/stain_radboud_test.yamlconfigs/experiment/test/images/vgg16/test_suite/stain_radboud_test_224.yamlconfigs/model/checkpoints/mmci_tl/google_vit.yamlconfigs/model/checkpoints/mmci_tl/google_vit_stain.yamlconfigs/model/checkpoints/mmci_tl/pgp_classic_mil.yamlconfigs/model/checkpoints/mmci_tl/pgp_hybrid_mil.yamlconfigs/model/checkpoints/mmci_tl/pgp_stain.yamlconfigs/model/checkpoints/mmci_tl/resnet50_224.yamlconfigs/model/checkpoints/mmci_tl/resnet50_stain_224.yamlconfigs/model/checkpoints/mmci_tl/vgg16_224.yamlconfigs/model/checkpoints/mmci_tl/vgg16_stain_224.yamlconfigs/model/checkpoints/mmci_tl/virchow2_classic_mil.yamlconfigs/model/checkpoints/mmci_tl/virchow2_hybrid_mil.yamlconfigs/model/checkpoints/mmci_tl/virchow2_stain.yamlpreprocessing/embeddings/tile_embeddings_v2.pyprostate_cancer/datamodule/transforms/__init__.pyprostate_cancer/datamodule/transforms/stain_normalization.pyprostate_cancer/typing.pyprostate_cancer/vit_model.pypyproject.toml
💤 Files with no reviewable changes (1)
- configs/datamodule/transforms/augmentations.yaml
This PR adds evaluation on Radboud
Summary by CodeRabbit
New Features
Bug Fixes