Skip to main content

System Requirements

Python Version

  • Python 3.9 or higher is required
  • Python 3.10 or 3.11 recommended for best performance
Verify your Python version:
python3 --version

Operating System

ML Experiment Autopilot works on all major platforms:
  • macOS 10.15+
  • Linux (Ubuntu 20.04+, Debian 10+, CentOS 8+, etc.)
  • Windows 10/11 (with WSL2 recommended for best experience)

Hardware

  • Minimum: 4GB RAM, 2 CPU cores
  • Recommended: 8GB+ RAM, 4+ CPU cores for larger datasets
  • Disk Space: 500MB for installation + space for your datasets and outputs

Installation Methods

This method gives you access to sample datasets and full project structure.
1

Clone the repository

git clone https://github.com/srikar161720/ml-experiment-autopilot.git
cd ml-experiment-autopilot
2

Create virtual environment

Using a virtual environment is strongly recommended to avoid dependency conflicts.
python3 -m venv venv
source venv/bin/activate
On Windows, if you get a script execution policy error, run:
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
3

Install dependencies

pip install --upgrade pip
pip install -r requirements.txt
This installs all required packages including:
  • google-generativeai>=0.8.0 - Gemini 3 API
  • pandas>=2.0.0 - Data manipulation
  • numpy>=1.24.0 - Numerical computing
  • scikit-learn>=1.3.0 - ML algorithms
  • xgboost>=2.0.0 - Gradient boosting
  • lightgbm>=4.0.0 - Gradient boosting
  • mlflow>=2.10.0 - Experiment tracking
  • typer>=0.9.0 - CLI framework
  • rich>=13.0.0 - Terminal formatting
  • pydantic>=2.0.0 - Data validation
  • matplotlib>=3.7.0 - Visualizations
  • jinja2>=3.1.0 - Code templating
  • python-dotenv>=1.0.0 - Environment management
4

Verify installation

python -m src.main --version
You should see output like:
ML Experiment Autopilot v0.1.0

Method 2: Download ZIP

If you don’t have Git installed:
1

Download

Download the ZIP file from GitHub releases
2

Extract and navigate

Extract the ZIP file and navigate to the directory:
cd ml-experiment-autopilot-main
3

Follow steps 2-4 from Method 1

Create virtual environment, install dependencies, and verify installation.

Configuration

Gemini API Key Setup

1

Get your API key

  1. Visit Google AI Studio
  2. Sign in with your Google account
  3. Click “Create API Key”
  4. Copy the generated key
The free tier provides limited requests per minute. For production use, consider upgrading to Tier 1 or higher to avoid rate limits during long experiments.
2

Create environment file

Copy the example environment file:
cp .env.example .env
3

Add your API key

Edit .env and replace the placeholder:
.env
# ML Experiment Autopilot - Environment Variables

# Gemini API Key (required)
GEMINI_API_KEY=AIzaSyD...your_actual_key_here

# MLflow Tracking URI (optional, defaults to ./outputs/mlruns)
# MLFLOW_TRACKING_URI=./outputs/mlruns

# Logging Level (optional, defaults to INFO)
# LOG_LEVEL=INFO
Never commit your .env file to version control! It’s already in .gitignore, but be careful not to share your API key publicly.
4

Verify configuration

Test that your API key works:
python -m src.main run \
  --data data/sample/california_housing.csv \
  --target MedHouseVal \
  --task regression \
  --max-iterations 1
If the API key is invalid, you’ll see:
Error: Invalid Gemini API key. Please check your .env file.

Environment Variables Reference

VariableRequiredDefaultDescription
GEMINI_API_KEYYes-Your Gemini API key from AI Studio
MLFLOW_TRACKING_URINo./outputs/mlrunsMLflow tracking database location
LOG_LEVELNoINFOLogging verbosity: DEBUG, INFO, WARNING, ERROR

Directory Structure

After installation, your directory will look like:
ml-experiment-autopilot/
├── src/                          # Source code
│   ├── main.py                   # CLI entry point
│   ├── config.py                 # Configuration management
│   ├── orchestration/            # Experiment controller
│   ├── cognitive/                # Gemini-powered components
│   ├── execution/                # Data profiling, code generation, execution
│   ├── persistence/              # MLflow tracking
│   └── utils/                    # Display utilities
├── templates/                    # Jinja2 code templates
├── tests/                        # Test suite (160 tests)
├── data/sample/                  # Sample datasets
│   ├── california_housing.csv
│   ├── bank.csv
│   └── constraints.md
├── outputs/                      # Generated outputs (auto-created)
│   ├── experiments/              # Generated Python scripts
│   ├── reports/                  # Markdown reports
│   ├── plots/                    # Visualizations
│   ├── models/                   # Saved models
│   └── mlruns/                   # MLflow tracking data
├── requirements.txt              # Python dependencies
├── .env.example                  # Environment template
├── .env                          # Your configuration (create this)
└── README.md                     # Project documentation
The outputs/ directory is automatically created when you run your first experiment. All generated files go here.

Testing Your Installation

Run the test suite to ensure everything is working:
# Run all unit tests (doesn't require API key)
pytest tests/ -v --ignore=tests/integration
You should see:
160 tests passed in 12.34s

Integration Tests

To run integration tests that call the Gemini API:
pytest tests/integration/ -v -m integration
Integration tests require a valid GEMINI_API_KEY and will consume API quota.

Upgrading

To upgrade to the latest version:
cd ml-experiment-autopilot
git pull origin main
pip install --upgrade -r requirements.txt

Uninstallation

1

Deactivate virtual environment

deactivate
2

Remove project directory

cd ..
rm -rf ml-experiment-autopilot

Troubleshooting Installation

Common Issues

Problem: Running the script incorrectly.Solution: Always run as a module:
python -m src.main run ...  # Correct
python src/main.py run ...  # Wrong
Problem: Missing build tools for packages like lightgbm or xgboost.Solution:macOS:
brew install cmake libomp
Ubuntu/Debian:
sudo apt-get update
sudo apt-get install build-essential cmake
Windows: Install Visual Studio Build Tools
Problem: Environment file not loaded or missing.Solution:
  1. Ensure .env file exists in project root
  2. Check that GEMINI_API_KEY=... is set (no spaces around =)
  3. Verify you’re running from the project root directory
Problem: Corporate firewall or proxy blocking HTTPS.Solution: Configure proxy in .env:
export HTTPS_PROXY=http://proxy.company.com:8080
export HTTP_PROXY=http://proxy.company.com:8080
Problem: System Python is < 3.9.Solution: Install a newer Python:macOS (using Homebrew):
brew install python@3.11
Ubuntu/Debian:
sudo apt-get install python3.11 python3.11-venv
Then use python3.11 instead of python3 in commands.

Docker Installation (Alternative)

For a containerized setup:
Dockerfile
FROM python:3.11-slim

WORKDIR /app

COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt

COPY . .

ENV GEMINI_API_KEY=""

CMD ["python", "-m", "src.main"]
Build and run:
docker build -t ml-autopilot .
docker run -e GEMINI_API_KEY=your_key -v $(pwd)/outputs:/app/outputs ml-autopilot run --data data/sample/california_housing.csv --target MedHouseVal --task regression

Next Steps

Quickstart Guide

Run your first experiment

CLI Reference

Complete command-line documentation

Configuration

Advanced configuration options

Architecture

Understand how the system works

Build docs developers (and LLMs) love