diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 31d7dd7e..5422bb65 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -62,15 +62,21 @@ jobs: - name: Install dependencies run: uv sync --all-extras - name: Cache HuggingFace models + id: hf-cache uses: actions/cache@v4 with: path: ~/.cache/huggingface - key: huggingface-${{ runner.os }}-qwen-tokenizer-v1 + key: huggingface-${{ runner.os }}-test-models-v1 - name: Pre-download tokenizer + if: steps.hf-cache.outputs.cache-hit != 'true' run: uv run python -c "from transformers import AutoTokenizer; AutoTokenizer.from_pretrained('Qwen/Qwen3-Embedding-0.6B')" - name: Pre-download cross-encoder test model + if: steps.hf-cache.outputs.cache-hit != 'true' run: uv run python -c "from sentence_transformers import CrossEncoder; CrossEncoder('cross-encoder/ms-marco-MiniLM-L-6-v2')" - name: Run tests with coverage + env: + HF_HUB_OFFLINE: ${{ steps.hf-cache.outputs.cache-hit == 'true' && '1' || '0' }} + TRANSFORMERS_OFFLINE: ${{ steps.hf-cache.outputs.cache-hit == 'true' && '1' || '0' }} run: uv run pytest -m "not integration" --cov=haiku --cov-report=xml - name: Upload coverage to Codecov uses: codecov/codecov-action@v5