From 662965c96bfbcd51c317ed090557e7a636823ce8 Mon Sep 17 00:00:00 2001 From: Felipe Cardoso Date: Wed, 22 Jan 2025 17:09:05 +0100 Subject: [PATCH] Update base files --- .dockerignore | 0 .gitignore | 2 +- README.md | 108 +++++++++++++++++++++++++++++++++++++++++++++++++- 3 files changed, 107 insertions(+), 3 deletions(-) create mode 100644 .dockerignore diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000..e69de29 diff --git a/.gitignore b/.gitignore index 1dd9dcb..1064a29 100644 --- a/.gitignore +++ b/.gitignore @@ -158,7 +158,7 @@ cython_debug/ # be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore # and can be added to the global gitignore or merged into this file. For a more nuclear # option (not recommended) you can uncomment the following to ignore the entire idea folder. -#.idea/ +.idea/ # ---> Node # Logs diff --git a/README.md b/README.md index 2cc7274..424d6bc 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,107 @@ -# ai-training-monitor +# Training Monitor -Real-time monitoring system for ML training processes, specialized for diffusion model training visualization \ No newline at end of file +Real-time monitoring system for ML training processes, specialized for diffusion model training visualization. + +## Features + +- Real-time training progress visualization +- Training metrics monitoring (loss, learning rate, ETA) +- Sample image gallery with timeline view +- Remote SFTP data source integration +- Docker-based deployment + +## Project Structure + +``` +training-monitor/ +├── frontend/ # React frontend application +│ ├── src/ +│ ├── public/ +│ ├── Dockerfile +│ └── package.json +├── backend/ # FastAPI backend application +│ ├── app/ +│ │ ├── api/ # API routes +│ │ ├── core/ # Core functionality +│ │ ├── models/ # Data models +│ │ └── services/ # Business logic +│ ├── tests/ +│ └── Dockerfile +├── docker/ +│ └── docker-compose.yml +└── scripts/ # Utility scripts +``` + +## Tech Stack + +- **Frontend**: React (v18+) + - Tailwind CSS for styling + - React Query for data fetching + - React Router for navigation + +- **Backend**: FastAPI + - Paramiko for SFTP operations + - Pydantic for data validation + - SQLAlchemy for database (if needed) + +## Setup Instructions + +1. Clone the repository: +```bash +git clone https://github.com/yourusername/training-monitor.git +cd training-monitor +``` + +2. Start the development environment: +```bash +docker-compose up --build +``` + +The application will be available at: +- Frontend: http://localhost:3000 +- Backend API: http://localhost:8000 +- API Documentation: http://localhost:8000/docs + +## Development + +### Frontend Development +```bash +cd frontend +npm install +npm run dev +``` + +### Backend Development +```bash +cd backend +python -m venv venv +source venv/bin/activate # or `venv\Scripts\activate` on Windows +pip install -r requirements.txt +uvicorn app.main:app --reload +``` + +## Configuration + +Create a `.env` file in the root directory: + +```env +# Backend +SFTP_HOST=34.34.46.100 +SFTP_USER=felipe.cardoso +SFTP_PASSWORD=your_password +SFTP_PATH=/data/datasets/ovs_bangel_001/output/ovs_bangel_001/samples + +# Frontend +REACT_APP_API_URL=http://localhost:8000 +``` + +## Contributing + +1. Create a feature branch +2. Commit your changes +3. Push to the branch +4. Create a Pull Request + +## License + +[Your chosen license] \ No newline at end of file