Skip to content

Commit c7c6165

Browse files
committed
Merge main into 0.5.0
2 parents 0b3a5ce + 161a287 commit c7c6165

File tree

5 files changed

+568
-27
lines changed

5 files changed

+568
-27
lines changed

.github/workflows/test.yml

Lines changed: 90 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -8,35 +8,103 @@ on:
88
- main
99

1010
schedule:
11-
- cron: "0 2 * * *" # 2 AM UTC nightly
12-
11+
- cron: "0 2 * * *" # 2 AM UTC nightly
12+
1313
workflow_dispatch:
1414

1515
env:
1616
PYTHON_VERSION: "3.11"
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 HuggingFace token
37+
run: |
38+
mkdir -p ~/.huggingface
39+
echo '{"token":"${{ secrets.HF_TOKEN }}"}' > ~/.huggingface/token
40+
41+
- name: Set up Python 3.9
42+
uses: actions/setup-python@v4
43+
with:
44+
python-version: 3.9
45+
cache: pip
46+
47+
- name: Install Poetry
48+
uses: snok/install-poetry@v1
49+
with:
50+
version: ${{ env.POETRY_VERSION }}
51+
52+
- name: Install dependencies
53+
run: |
54+
poetry install --all-extras
55+
56+
- name: Authenticate to Google Cloud
57+
uses: google-github-actions/auth@v1
58+
with:
59+
credentials_json: ${{ secrets.GOOGLE_CREDENTIALS }}
60+
61+
- name: Run full test suite to prime cache
62+
env:
63+
HF_TOKEN: ${{ secrets.HF_TOKEN }}
64+
HF_HOME: ${{ github.workspace }}/hf_cache
65+
OPENAI_API_KEY: ${{ secrets.OPENAI_KEY }}
66+
GCP_LOCATION: ${{ secrets.GCP_LOCATION }}
67+
GCP_PROJECT_ID: ${{ secrets.GCP_PROJECT_ID }}
68+
COHERE_API_KEY: ${{ secrets.COHERE_API_KEY }}
69+
MISTRAL_API_KEY: ${{ secrets.MISTRAL_API_KEY }}
70+
VOYAGE_API_KEY: ${{ secrets.VOYAGE_API_KEY }}
71+
AZURE_OPENAI_API_KEY: ${{ secrets.AZURE_OPENAI_API_KEY }}
72+
AZURE_OPENAI_ENDPOINT: ${{ secrets.AZURE_OPENAI_ENDPOINT }}
73+
AZURE_OPENAI_DEPLOYMENT_NAME: ${{ secrets.AZURE_OPENAI_DEPLOYMENT_NAME }}
74+
OPENAI_API_VERSION: ${{ secrets.OPENAI_API_VERSION }}
75+
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
76+
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
77+
run: |
78+
make test-all
79+
2080
test:
2181
name: Python ${{ matrix.python-version }} - ${{ matrix.connection }} [redis ${{ matrix.redis-version }}]
2282
runs-on: ubuntu-latest
23-
83+
needs: prime-cache
84+
env:
85+
HF_HOME: ${{ github.workspace }}/hf_cache
2486
strategy:
2587
fail-fast: false
2688
matrix:
27-
python-version: [3.9, '3.10', 3.11, 3.12, 3.13]
28-
connection: ['hiredis', 'plain']
29-
redis-version: ['6.2.6-v9', 'latest', '8.0-M03']
89+
python-version: ["3.10", "3.11", 3.12, 3.13]
90+
connection: ["hiredis", "plain"]
91+
redis-version: ["6.2.6-v9", "latest", "8.0-M03"]
3092

3193
steps:
3294
- name: Check out repository
3395
uses: actions/checkout@v3
3496

97+
- name: Cache HuggingFace Models
98+
uses: actions/cache@v3
99+
with:
100+
path: hf_cache
101+
key: ${{ runner.os }}-hf-cache
102+
35103
- name: Set up Python ${{ matrix.python-version }}
36104
uses: actions/setup-python@v4
37105
with:
38106
python-version: ${{ matrix.python-version }}
39-
cache: 'pip'
107+
cache: pip
40108

41109
- name: Install Poetry
42110
uses: snok/install-poetry@v1
@@ -68,43 +136,46 @@ jobs:
68136
- name: Run tests
69137
if: matrix.connection == 'plain' && matrix.redis-version == 'latest'
70138
env:
139+
HF_HOME: ${{ github.workspace }}/hf_cache
71140
OPENAI_API_KEY: ${{ secrets.OPENAI_KEY }}
72141
GCP_LOCATION: ${{ secrets.GCP_LOCATION }}
73142
GCP_PROJECT_ID: ${{ secrets.GCP_PROJECT_ID }}
74143
COHERE_API_KEY: ${{ secrets.COHERE_API_KEY }}
75144
MISTRAL_API_KEY: ${{ secrets.MISTRAL_API_KEY }}
76145
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}}
146+
AZURE_OPENAI_API_KEY: ${{ secrets.AZURE_OPENAI_API_KEY }}
147+
AZURE_OPENAI_ENDPOINT: ${{ secrets.AZURE_OPENAI_ENDPOINT }}
148+
AZURE_OPENAI_DEPLOYMENT_NAME: ${{ secrets.AZURE_OPENAI_DEPLOYMENT_NAME }}
149+
OPENAI_API_VERSION: ${{ secrets.OPENAI_API_VERSION }}
81150
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
82151
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
83152
run: |
84153
make test-all
85154
86-
- name: Run tests
155+
- name: Run tests (alternate)
87156
if: matrix.connection != 'plain' || matrix.redis-version != 'latest'
88157
run: |
89158
make test
90159
91160
- name: Run notebooks
92161
if: matrix.connection == 'plain' && matrix.redis-version == 'latest'
93162
env:
163+
HF_HOME: ${{ github.workspace }}/hf_cache
94164
OPENAI_API_KEY: ${{ secrets.OPENAI_KEY }}
95165
GCP_LOCATION: ${{ secrets.GCP_LOCATION }}
96166
GCP_PROJECT_ID: ${{ secrets.GCP_PROJECT_ID }}
97167
COHERE_API_KEY: ${{ secrets.COHERE_API_KEY }}
98168
MISTRAL_API_KEY: ${{ secrets.MISTRAL_API_KEY }}
99169
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}}
170+
AZURE_OPENAI_API_KEY: ${{ secrets.AZURE_OPENAI_API_KEY }}
171+
AZURE_OPENAI_ENDPOINT: ${{ secrets.AZURE_OPENAI_ENDPOINT }}
172+
AZURE_OPENAI_DEPLOYMENT_NAME: ${{ secrets.AZURE_OPENAI_DEPLOYMENT_NAME }}
173+
OPENAI_API_VERSION: ${{ secrets.OPENAI_API_VERSION }}
104174
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
105175
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
106176
run: |
107177
docker run -d --name redis -p 6379:6379 redis/redis-stack-server:latest
178+
make test-notebooks
108179
if [[ "${{ matrix.python-version }}" > "3.9" ]]; then
109180
make test-notebooks
110181
else
@@ -121,17 +192,17 @@ jobs:
121192
uses: actions/setup-python@v4
122193
with:
123194
python-version: ${{ env.PYTHON_VERSION }}
124-
cache: 'pip'
195+
cache: pip
125196

126197
- name: Install Poetry
127198
uses: snok/install-poetry@v1
128199
with:
129200
version: ${{ env.POETRY_VERSION }}
130-
201+
131202
- name: Install dependencies
132203
run: |
133204
poetry install --all-extras
134205
135206
- name: Build docs
136207
run: |
137-
make docs-build
208+
make docs-build

0 commit comments

Comments
 (0)