This guide will help you set up a complete development environment on Windows. We'll be using Windows Subsystem for Linux (WSL) to provide a Linux environment for development.
- Windows 10 version 2004 and higher (Build 19041 and higher) or Windows 11
- Administrator access to your computer
- At least 10 GB of free disk space (for AI models: ~1.3 GB for Ollama's llama3.2:1b, plus Docker images and dependencies)
Visual Studio Code is our recommended code editor with excellent support for Python, Jupyter notebooks, and WSL.
- Go to https://code.visualstudio.com/
- Click "Download for Windows"
- Run the downloaded installer
- During installation, make sure to check:
- "Add to PATH"
- "Register Code as an editor for supported file types"
- "Add 'Open with Code' action to Windows Explorer file context menu"
- "Add 'Open with Code' action to Windows Explorer directory context menu"
Open Command Prompt (Windows + R, type cmd, press Enter) and run:
code --versionYou should see version information displayed.
- Go to https://github.com
- Click "Sign up" and create your account
- Verify your email address
- Go to https://git-scm.com/download/win
- Download and run the installer
- Use default settings (recommended)
Open Command Prompt and run:
git --versionYou should see Git version information.
Note: This installs Git for Windows. Later in Step 5, you'll also install Git inside WSL — the two environments are separate and each needs its own Git installation.
Windows Subsystem for Linux provides a Linux environment directly on Windows.
- Open PowerShell as Administrator (
Windows + X, select "Windows PowerShell (Admin)") - Run the following command:
wsl --install- Restart your computer when prompted
After restart:
- Open Microsoft Store
- Search for "Ubuntu 22.04.3 LTS"
- Click "Install"
- Once installed, launch Ubuntu from the Start menu
- Create a username and password when prompted (remember these!)
In Ubuntu terminal, run:
lsb_release -aYou should see Ubuntu version information.
We'll install Python 3.11 alongside your existing Python installation, without replacing your system Python.
In your Ubuntu terminal:
sudo apt update# Add the deadsnakes PPA for Python 3.11
sudo apt install software-properties-common -y
sudo add-apt-repository ppa:deadsnakes/ppa -y
sudo apt update
# Install Python 3.11 and related packages
sudo apt install python3.11 python3.11-venv python3.11-dev -y
# Create a convenient alias for Python 3.11 (optional)
echo 'alias python311="python3.11"' >> ~/.bashrc
source ~/.bashrcNote: This installation keeps your existing Python versions intact. Python 3.11 will be available as python3.11, while your system Python remains as python3.
python3.11 --version # Should show Python 3.11.x
python3 --version # Shows your original system Python versionYour original Python installation remains unchanged. You can always use:
python3for your original system Pythonpython3.11for the newly installed Python 3.11
To remove Python 3.11 if needed:
sudo apt remove python3.11 python3.11-venv python3.11-devIn your Ubuntu terminal, check if Git is available:
git --versionIf you see version information, Git is already installed. If you get "command not found", install it:
sudo apt install -y gitgit config --global user.name "Your Name"
git config --global user.email "your.email@example.com"For secure authentication with GitHub, setting up SSH keys is recommended:
# Generate SSH key (press Enter for default location, optionally set a passphrase)
ssh-keygen -t ed25519 -C "your.email@example.com"
# Start SSH agent and add your key
eval "$(ssh-agent -s)"
ssh-add ~/.ssh/id_ed25519
# Display your public key to copy to GitHub
cat ~/.ssh/id_ed25519.pubCopy the output and add it to your GitHub account:
- Go to GitHub.com → Settings → SSH and GPG keys
- Click "New SSH key"
- Paste your public key
For detailed instructions, visit: https://docs.github.com/en/authentication/connecting-to-github-with-ssh
# Navigate to your home directory
cd ~
# Create an aisc workspace directory
mkdir aisc
cd aisc
# Clone the repository
git clone https://github.com/aihpi/workshop-getting-started.git
cd workshop-getting-startedFirst, install the WSL extension in VS Code:
- Open VS Code on Windows
- Click the Extensions icon in the left sidebar (or press
Ctrl+Shift+X) - Search for "WSL"
- Install the extension named "WSL" by Microsoft
Then, back in your WSL Ubuntu terminal, open the project:
code .This launches VS Code on Windows and automatically connects it to your WSL environment.
You should see the project files in VS Code, and the bottom-left corner should show "WSL: Ubuntu-22.04".
UV is a fast Python package manager that we'll use for environment management.
In your WSL terminal:
curl -LsSf https://astral.sh/uv/install.sh | shRestart your terminal.
uv --versionShould show UV version information.
We'll install Jupyter using UV to manage our notebook environment.
In your WSL terminal, navigate to the project directory and set up the environment:
cd ~/aisc/workshop-getting-started
# Create a virtual environment with Python 3.11
uv venv --python python3.11 .venv
# Activate the environment
source .venv/bin/activate
# Install Jupyter and project dependencies
uv syncjupyter --versionShould show Jupyter version information.
- In VS Code, open
03_workshop/00_overview.ipynb - VS Code might prompt to install the Python extension - click "Install"
- Select the Python interpreter from your virtual environment (should show
.venvin the path)- If VS Code does not find the interpreter automatically:
- Press
Ctrl+Shift+Pto open the command palette - Type "Python: Select Interpreter" and select it
- Click "Enter interpreter path..."
- Paste the following path and press Enter:
.venv/bin/python - Reload the VS Code window (
Ctrl+Shift+P→ "Developer: Reload Window")
- Press
- If VS Code does not find the interpreter automatically:
- Try running a cell in the notebook - if prompted, select "Python Environments" and choose the
.venvinterpreter
Docker Desktop provides containerisation capabilities for Windows with WSL integration.
- Go to https://www.docker.com/products/docker-desktop/
- Download Docker Desktop for Windows
- Run the installer
- During installation, ensure "Use WSL 2 instead of Hyper-V" is selected
- Restart your computer when prompted
- Launch Docker Desktop
- Go to Settings → General
- Ensure "Use the WSL 2 based engine" is checked (if it fails, install docker-compose)
- Go to Settings → Resources → WSL Integration
- Enable integration with Ubuntu
In your WSL terminal:
docker --version
docker compose versionBoth should show version information.
This step starts all services (frontend, backend, and Ollama) and downloads the AI model for the first time.
In your WSL terminal, make sure you're in the project root:
cd ~/aisc/workshop-getting-started
# Start all services and download the AI model (first-time setup only)
./run.shImportant: The first time you run this, the script will automatically download the AI model (llama3.2:1b, approximately 1.3GB). This is a one-time process that may take 5-15 minutes depending on your internet connection. The script will show progress as it downloads.
- Wait for the model download to complete (you'll see "All services ready!" message)
- Open your web browser (in Windows)
- Go to
http://localhost:3000- you should see the chatbot frontend - Wait for the "Backend Connected" status
- Try sending a message to test the complete setup (e.g., "What's the capital of France?")
- Go to
http://localhost:8000/docs- you should see the API documentation
Note: If you see "Backend Disconnected" or chat errors, ensure the model download completed successfully. You can check available models by running docker compose exec workshop-ollama ollama list in your WSL terminal.
To stop all services, press Ctrl+C in the terminal running ./run.sh, or open a new WSL terminal and run:
docker compose downTo start the services again later, run ./run.sh again in your WSL terminal — it will detect that the model is already downloaded and skip straight to starting the services:
cd ~/aisc/workshop-getting-started
./run.shAlternatively, you can run docker compose up -d to start services silently in the background (without readiness checks or log output).
You've successfully set up a complete development environment on Windows! You now have:
- ✅ Visual Studio Code with WSL integration
- ✅ GitHub account and Git configuration
- ✅ Ubuntu Linux environment via WSL
- ✅ Python 3.11 with UV package management
- ✅ Jupyter notebook environment
- ✅ Docker Desktop with WSL integration
- ✅ Ollama AI model server
- ✅ A working chatbot application
Continue with the learning notebooks in the 03_workshop directory:
- Start with 00_overview.ipynb
- Progress through the numbered notebooks
- Experiment with the example chatbot application
- Try cloning and working with other repositories
WSL Ubuntu won't start: Ensure virtualisation is enabled in your BIOS settings.
Docker commands fail: Make sure Docker Desktop is running and WSL integration is enabled.
Ollama model download is slow: The initial model download can take time depending on your internet connection.
VS Code can't find Python interpreter: Ensure you've activated your virtual environment and selected the correct interpreter in VS Code.
Backend shows "Disconnected" in frontend: Wait 1-2 minutes for Ollama to fully start and download the model. Check progress with docker compose logs ollama.
For more help, check the individual notebook tutorials or consult the documentation links in each section.

