improve setup

This commit is contained in:
rasbt
2025-02-19 19:19:18 -06:00
parent 67c226bf67
commit 8cb412eb18
4 changed files with 63 additions and 6 deletions

View File

@@ -39,8 +39,7 @@ jobs:
shell: bash shell: bash
run: | run: |
curl -LsSf https://astral.sh/uv/install.sh | sh curl -LsSf https://astral.sh/uv/install.sh | sh
uv python install 3.10 uv sync --dev --python 3.11
uv add . --dev
uv pip install -r ch05/07_gpt_to_llama/tests/test-requirements-extra.txt uv pip install -r ch05/07_gpt_to_llama/tests/test-requirements-extra.txt
uv add pytest-ruff nbval uv add pytest-ruff nbval

View File

@@ -39,8 +39,7 @@ jobs:
shell: bash shell: bash
run: | run: |
curl -LsSf https://astral.sh/uv/install.sh | sh curl -LsSf https://astral.sh/uv/install.sh | sh
uv python install 3.10 uv sync --dev --python 3.11
uv add . --dev
uv pip install -r ch05/07_gpt_to_llama/tests/test-requirements-extra.txt uv pip install -r ch05/07_gpt_to_llama/tests/test-requirements-extra.txt
uv add pytest-ruff nbval uv add pytest-ruff nbval

View File

@@ -0,0 +1,60 @@
name: Code tests Windows (uv)
on:
push:
branches: [ main ]
paths:
- '**/*.py'
- '**/*.ipynb'
- '**/*.yaml'
- '**/*.yml'
- '**/*.sh'
pull_request:
branches: [ main ]
paths:
- '**/*.py'
- '**/*.ipynb'
- '**/*.yaml'
- '**/*.yml'
- '**/*.sh'
jobs:
test:
runs-on: windows-latest
steps:
- name: Checkout Code
uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: '3.11'
- name: Install dependencies
shell: pwsh
run: |
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
uv python install 3.11
$env:UV_PIP_OPTS="--no-binary tensorflow-io-gcs-filesystem"
uv sync --dev
uv pip install -r ch05/07_gpt_to_llama/tests/test-requirements-extra.txt
uv pip install pytest-ruff nbval
- name: Run Python Tests
shell: pwsh
run: |
.\.venv\Scripts\Activate.ps1
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: Run Jupyter Notebook Tests
shell: pwsh
run: |
.\.venv\Scripts\Activate.ps1
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

View File

@@ -2,8 +2,7 @@ torch >= 2.3.0 # all
jupyterlab >= 4.0 # all jupyterlab >= 4.0 # all
tiktoken >= 0.5.1 # ch02; ch04; ch05 tiktoken >= 0.5.1 # ch02; ch04; ch05
matplotlib >= 3.7.1 # ch04; ch05 matplotlib >= 3.7.1 # ch04; ch05
tensorflow>=2.18.0; sys_platform != "win32" # ch05 (non-Windows) tensorflow>=2.18.0 # ch05; ch06; ch07
tensorflow-cpu>=2.18.0; sys_platform == "win32" # ch05 (Windows)
tqdm >= 4.66.1 # ch05; ch07 tqdm >= 4.66.1 # ch05; ch07
numpy >= 1.26, < 2.1 # dependency of several other libraries like torch and pandas numpy >= 1.26, < 2.1 # dependency of several other libraries like torch and pandas
pandas >= 2.2.1 # ch06 pandas >= 2.2.1 # ch06