diff --git a/.github/workflows/basic-tests-uv.yml b/.github/workflows/basic-tests-uv.yml
index b67161d..290ebcc 100644
--- a/.github/workflows/basic-tests-uv.yml
+++ b/.github/workflows/basic-tests-uv.yml
@@ -24,12 +24,47 @@ concurrency:
cancel-in-progress: true
jobs:
- uv-tests:
- name: UV Tests (Matrix OS)
- strategy:
- matrix:
- os: [ ubuntu-latest, macos-latest]
- runs-on: ${{ matrix.os }}
+ uv-tests-linux:
+ name: Code tests (Linux)
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v4
+
+ - name: Set up Python (uv)
+ uses: actions/setup-python@v5
+ with:
+ python-version: "3.10"
+
+ - name: Install uv and dependencies
+ shell: bash
+ run: |
+ curl -LsSf https://astral.sh/uv/install.sh | sh
+ uv python install 3.10
+ uv add . --dev
+ uv pip install -r ch05/07_gpt_to_llama/tests/test-requirements-extra.txt
+ uv add pytest-ruff nbval
+
+ - name: Test Selected Python Scripts (uv)
+ shell: bash
+ run: |
+ source .venv/bin/activate
+ pytest --ruff setup/02_installing-python-libraries/tests.py
+ pytest --ruff ch04/01_main-chapter-code/tests.py
+ pytest --ruff ch05/01_main-chapter-code/tests.py
+ pytest --ruff ch05/07_gpt_to_llama/tests/tests.py
+ pytest --ruff ch06/01_main-chapter-code/tests.py
+
+ - name: Validate Selected Jupyter Notebooks (uv)
+ shell: bash
+ run: |
+ source .venv/bin/activate
+ pytest --ruff --nbval ch02/01_main-chapter-code/dataloader.ipynb
+ pytest --ruff --nbval ch03/01_main-chapter-code/multihead-attention.ipynb
+ pytest --ruff --nbval ch02/04_bonus_dataloader-intuition/dataloader-intuition.ipynb
+
+ uv-tests-macos:
+ name: Code tests (macOS)
+ runs-on: macos-latest
steps:
- uses: actions/checkout@v4
diff --git a/README.md b/README.md
index 5763311..5c64779 100644
--- a/README.md
+++ b/README.md
@@ -54,9 +54,9 @@ You can alternatively view this and other files on GitHub at [https://github.com
-[](https://github.com/rasbt/LLMs-from-scratch/actions/workflows/basic-tests-linux.yml)
-[](https://github.com/rasbt/LLMs-from-scratch/actions/workflows/basic-tests-windows-pip.yml)
-[](https://github.com/rasbt/LLMs-from-scratch/actions/workflows/basic-tests-macos.yml)
+[](https://github.com/rasbt/LLMs-from-scratch/actions/workflows/basic-tests-uv.yml)
+[](https://github.com/rasbt/LLMs-from-scratch/actions/workflows/basic-tests-windows-uv-pip.yml)
+[](https://github.com/rasbt/LLMs-from-scratch/actions/workflows/basic-tests-uv.yml)