Stay focused!
Project description
eyefocus
Stay focused!
Built with:
- uv for project management.
- PyTorch for model training.
- Modal for model infra.
- FastHTML for the frontend.
- Ruff for linting and formatting.
Set Up
Set up the environment:
uv sync --all-extras --dev
uv run pre-commit install
Optionally, set up Modal:
modal setup
Repository Structure
.
├── frontend # landing page.
├── ft # classifier training.
├── src # pypi package.
Development
PyPI
Run locally:
uv run eyefocus -vv
Build the package:
uvx --from build pyproject-build --installer uv
Upload the package:
uvx twine upload dist/*
Test the uploaded package:
uv run --with eyefocus --no-project -- eyefocus -vv
Frontend
Run the app:
modal serve frontend/app.py
Deploy on Modal:
modal deploy frontend/app.py
Training
Optionally, manually collect screenshots:
uv run ft/collect.py
Run ETL on HF dataset (or collected screenshots if available):
uv run ft/etl.py
or
uv run modal run ft/etl.py
Train the model:
uv run torchrun --standalone --nproc_per_node=<n-gpus> ft/train.py
or
uv run modal run ft/train_modal.py
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
eyefocus-0.3.0.tar.gz
(185.2 kB
view details)
Built Distribution
eyefocus-0.3.0-py3-none-any.whl
(97.4 kB
view details)
File details
Details for the file eyefocus-0.3.0.tar.gz
.
File metadata
- Download URL: eyefocus-0.3.0.tar.gz
- Upload date:
- Size: 185.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3e01568fd8e0ebe122a72ace1c942b443770c86c7cdd3891da204bbe67673d94 |
|
MD5 | 71d89d523d9c74bb6f65a6d1290d9980 |
|
BLAKE2b-256 | d530652370a1769771984b75566abb021a64eb294179ebdccb8b99a0f507af96 |
File details
Details for the file eyefocus-0.3.0-py3-none-any.whl
.
File metadata
- Download URL: eyefocus-0.3.0-py3-none-any.whl
- Upload date:
- Size: 97.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | fcf1bb0aba025c182732126fc80a4a903120c234701cc637ca60b8cc31f35fa7 |
|
MD5 | a0be2847e9415d4441348e75c6d2646f |
|
BLAKE2b-256 | dab56071b4f19d0060b192cd16941e1c64d7f99317a8cc0aafc370e788038d06 |