Skip to content

Conversation

@fcdl94
Copy link
Member

@fcdl94 fcdl94 commented Oct 3, 2025

No description provided.

fcdl94 added 4 commits October 3, 2025 12:36
…ry and validating train/validation splits

- Added functionality to remove the __MACOSX directory after extraction.
- Implemented checks to ensure the presence of 'train' and 'validation' directories in the extracted content, raising errors if not found.
…directory validation

- Renamed the function `list_dir` to `list_directories` for clarity.
- Updated the extraction logic to use the new function name.
- Improved validation checks for 'train' and 'validation' directories by using `Path` objects for better consistency and readability.
- Updated `get_gpus_count` to support MPS alongside CUDA.
- Modified default value of `amp_enabled` in training and validation functions to False.
- Improved model loading logic to handle MPS and CUDA availability with appropriate error handling.
@github-actions
Copy link

github-actions bot commented Oct 3, 2025

Coverage

Tests Skipped Failures Errors Time
228 0 💤 0 ❌ 0 🔥 54.253s ⏱️

fcdl94 and others added 4 commits October 3, 2025 17:32
…ailability check

- Changed default value of `amp_enabled` to True in training and validation functions.
- Added a check to ensure CUDA is available when using AMP, with a warning if not.
- Enhanced device selection to prioritize CUDA, MPS, or fallback to CPU based on availability.
- Removed redundant CUDA availability check from the training loop.
- Expanded the list of supported model families in focoos_hub.py to include IMAGE_CLASSIFIER for enhanced functionality.
- Introduced a new field `mps_available` in the `GPUInfo` class to indicate MPS support.
- Updated the `get_gpu_info` function to populate the `mps_available` field based on the availability of MPS.
- Bumped focoos version to 0.22.0 in the lock file.
Copy link

@cursor cursor bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This PR is being reviewed by Cursor Bugbot

Details

Your team is on the Bugbot Free tier. On this plan, Bugbot will review limited PRs each billing cycle for each member of your team.

To receive Bugbot reviews on all of your PRs, visit the Cursor dashboard to activate Pro and start your 14-day free trial.

try:
self.model = self.model.to(device="mps")
except Exception:
logger.warning("Unable to use MPS")
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Bug: Model Transfer Inefficiency Between CUDA and MPS

The model initialization logic attempts to move the model to CUDA, then immediately to MPS, if both are available. This sequential device placement causes inefficient double transfers and implicitly prioritizes MPS, which might not be the intended or optimal behavior.

Fix in Cursor Fix in Web

@CuriousDolphin CuriousDolphin merged commit 8def43a into main Oct 21, 2025
11 checks passed
@CuriousDolphin CuriousDolphin deleted the feat/train-on-AppleSilicon branch October 21, 2025 09:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants