Skip to content

Commit d8b1c19

Browse files
committed
Try caching huggingface models with a primer
1 parent 039f259 commit d8b1c19

File tree

1 file changed

+61
-16
lines changed

1 file changed

+61
-16
lines changed

.github/workflows/test.yml

Lines changed: 61 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -17,26 +17,71 @@ env:
1717
POETRY_VERSION: "1.8.3"
1818

1919
jobs:
20+
prime-cache:
21+
name: Prime HuggingFace Model Cache
22+
runs-on: ubuntu-latest
23+
env:
24+
HF_HOME: ${{ github.workspace }}/hf_cache
25+
steps:
26+
- name: Check out repository
27+
uses: actions/checkout@v3
28+
29+
- name: Cache HuggingFace Models
30+
id: hf-cache
31+
uses: actions/cache@v3
32+
with:
33+
path: hf_cache
34+
key: ${{ runner.os }}-hf-cache
35+
36+
- name: Set up Python 3.9
37+
uses: actions/setup-python@v4
38+
with:
39+
python-version: 3.9
40+
cache: pip
41+
42+
- name: Install Poetry
43+
uses: snok/install-poetry@v1
44+
with:
45+
version: ${{ env.POETRY_VERSION }}
46+
47+
- name: Install dependencies
48+
run: |
49+
poetry install --all-extras
50+
51+
- name: Run full test suite to prime cache
52+
env:
53+
HF_HOME: ${{ github.workspace }}/hf_cache
54+
run: |
55+
make test-all
56+
2057
test:
2158
name: Python ${{ matrix.python-version }} - ${{ matrix.connection }} [redis ${{ matrix.redis-version }}]
2259
runs-on: ubuntu-latest
23-
60+
needs: prime-cache
61+
env:
62+
HF_HOME: ${{ github.workspace }}/hf_cache
2463
strategy:
2564
fail-fast: false
2665
matrix:
27-
python-version: [3.9, '3.10', 3.11, 3.12, 3.13]
66+
python-version: ['3.10', '3.11', 3.12, 3.13]
2867
connection: ['hiredis', 'plain']
2968
redis-version: ['6.2.6-v9', 'latest', '8.0-M03']
3069

3170
steps:
3271
- name: Check out repository
3372
uses: actions/checkout@v3
3473

74+
- name: Cache HuggingFace Models
75+
uses: actions/cache@v3
76+
with:
77+
path: hf_cache
78+
key: ${{ runner.os }}-hf-cache
79+
3580
- name: Set up Python ${{ matrix.python-version }}
3681
uses: actions/setup-python@v4
3782
with:
3883
python-version: ${{ matrix.python-version }}
39-
cache: 'pip'
84+
cache: pip
4085

4186
- name: Install Poetry
4287
uses: snok/install-poetry@v1
@@ -74,16 +119,16 @@ jobs:
74119
COHERE_API_KEY: ${{ secrets.COHERE_API_KEY }}
75120
MISTRAL_API_KEY: ${{ secrets.MISTRAL_API_KEY }}
76121
VOYAGE_API_KEY: ${{ secrets.VOYAGE_API_KEY }}
77-
AZURE_OPENAI_API_KEY: ${{secrets.AZURE_OPENAI_API_KEY}}
78-
AZURE_OPENAI_ENDPOINT: ${{secrets.AZURE_OPENAI_ENDPOINT}}
79-
AZURE_OPENAI_DEPLOYMENT_NAME: ${{secrets.AZURE_OPENAI_DEPLOYMENT_NAME}}
80-
OPENAI_API_VERSION: ${{secrets.OPENAI_API_VERSION}}
122+
AZURE_OPENAI_API_KEY: ${{ secrets.AZURE_OPENAI_API_KEY }}
123+
AZURE_OPENAI_ENDPOINT: ${{ secrets.AZURE_OPENAI_ENDPOINT }}
124+
AZURE_OPENAI_DEPLOYMENT_NAME: ${{ secrets.AZURE_OPENAI_DEPLOYMENT_NAME }}
125+
OPENAI_API_VERSION: ${{ secrets.OPENAI_API_VERSION }}
81126
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
82127
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
83128
run: |
84129
make test-all
85130
86-
- name: Run tests
131+
- name: Run tests (alternate)
87132
if: matrix.connection != 'plain' || matrix.redis-version != 'latest'
88133
run: |
89134
make test
@@ -97,15 +142,15 @@ jobs:
97142
COHERE_API_KEY: ${{ secrets.COHERE_API_KEY }}
98143
MISTRAL_API_KEY: ${{ secrets.MISTRAL_API_KEY }}
99144
VOYAGE_API_KEY: ${{ secrets.VOYAGE_API_KEY }}
100-
AZURE_OPENAI_API_KEY: ${{secrets.AZURE_OPENAI_API_KEY}}
101-
AZURE_OPENAI_ENDPOINT: ${{secrets.AZURE_OPENAI_ENDPOINT}}
102-
AZURE_OPENAI_DEPLOYMENT_NAME: ${{secrets.AZURE_OPENAI_DEPLOYMENT_NAME}}
103-
OPENAI_API_VERSION: ${{secrets.OPENAI_API_VERSION}}
145+
AZURE_OPENAI_API_KEY: ${{ secrets.AZURE_OPENAI_API_KEY }}
146+
AZURE_OPENAI_ENDPOINT: ${{ secrets.AZURE_OPENAI_ENDPOINT }}
147+
AZURE_OPENAI_DEPLOYMENT_NAME: ${{ secrets.AZURE_OPENAI_DEPLOYMENT_NAME }}
148+
OPENAI_API_VERSION: ${{ secrets.OPENAI_API_VERSION }}
104149
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
105150
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
106151
run: |
107152
docker run -d --name redis -p 6379:6379 redis/redis-stack-server:latest
108-
make test-notebooks
153+
make test-notebooks
109154
110155
docs:
111156
runs-on: ubuntu-latest
@@ -117,17 +162,17 @@ jobs:
117162
uses: actions/setup-python@v4
118163
with:
119164
python-version: ${{ env.PYTHON_VERSION }}
120-
cache: 'pip'
165+
cache: pip
121166

122167
- name: Install Poetry
123168
uses: snok/install-poetry@v1
124169
with:
125170
version: ${{ env.POETRY_VERSION }}
126-
171+
127172
- name: Install dependencies
128173
run: |
129174
poetry install --all-extras
130175
131176
- name: Build docs
132177
run: |
133-
make docs-build
178+
make docs-build

0 commit comments

Comments
 (0)