diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml
index 769de61670febc3d673e5b4b8c1f59a87da0dfe2..8f38f0409b8641454a645f0bc6a0e090b67d76d7 100644
--- a/.github/workflows/docs.yml
+++ b/.github/workflows/docs.yml
@@ -23,7 +23,7 @@ jobs:
         enable-cache: true
         cache-dependency-glob: "uv.lock"
         python-version: ${{ matrix.python-version }}
-    - name: Sync uv for docs
+    - name: Install Dependencies
       run: uv sync --extra docs
     - name: Build docs
       run: |
diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml
index 98f875d1d748eeeaf164d7eeee0b0c32927a26d1..3b2e2013d811466090fde14111f9632b96d0120d 100644
--- a/.github/workflows/lint.yml
+++ b/.github/workflows/lint.yml
@@ -13,18 +13,15 @@ jobs:
         - "3.13"
     steps:
     - uses: actions/checkout@v3
-    - name: Cache uv
-      uses: actions/cache@v4
-      with:
-        path: ~/.uv
-        key: ${{ runner.os }}-uv-${{ hashFiles('**/uv.lock') }}-${{ matrix.python-version }}
-        restore-keys: |
-          ${{ runner.os }}-uv-${{ matrix.python-version }}
     - name: Install uv
+      uses: astral-sh/setup-uv@v5
+      with:
+        enable-cache: true
+        cache-dependency-glob: "uv.lock"
+        python-version: ${{ matrix.python-version }}
+    - name: Install Dependencies
       run: |
-        curl -LsSf https://astral.sh/uv/install.sh | sh
-        uv venv --python 3.13
-        uv pip install .[dev]
-    - name: Analyzing the code with our lint
+        uv sync --extra dev
+    - name: Run Lint
       run: |
         make lint
diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
index be3d2396c89a21c5baf6c1997de207502ca2f8b5..05c2453f3e2dff53777b98ad95c8cda4ecea967b 100644
--- a/.github/workflows/release.yml
+++ b/.github/workflows/release.yml
@@ -9,20 +9,14 @@ jobs:
   build:
     runs-on: ubuntu-latest
     steps:
-    - name: Cache uv
-      uses: actions/cache@v4
-      with:
-        path: ~/.uv
-        key: ${{ runner.os }}-uv-${{ hashFiles('**/uv.lock') }}-${{ matrix.python-version }}
-        restore-keys: |
-          ${{ runner.os }}-uv-${{ matrix.python-version }}
-    - uses: actions/checkout@v2
-    - name: Set up Python
-      run: uv venv --python 3.13
     - name: Install uv
-      run: curl -LsSf https://astral.sh/uv/install.sh | sh
+      uses: astral-sh/setup-uv@v5
+      with:
+        enable-cache: true
+        cache-dependency-glob: "uv.lock"
+        python-version: ${{ matrix.python-version }}
     - name: Install dependencies
-      run: uv pip install .[dev]
+      run: uv sync --extra dev
     - name: Build
       run: uv build
 
@@ -31,12 +25,14 @@ jobs:
     runs-on: ubuntu-latest
     steps:
     - uses: actions/checkout@v2
-    - name: Set up Python
-      run: uv venv --python 3.13
     - name: Install uv
-      run: curl -LsSf https://astral.sh/uv/install.sh | sh
+      uses: astral-sh/setup-uv@v5
+      with:
+        enable-cache: true
+        cache-dependency-glob: "uv.lock"
+        python-version: ${{ matrix.python-version }}
     - name: Install dependencies
-      run: uv pip install .[dev]
+      run: uv sync --extra dev
     - name: Build
       run: uv build
     - name: Publish to PyPI
diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml
index b9e8ef189c23ce4f5ffa3f60fdf21cdb4d8a03eb..17e6a6e74c0127df68375c815cb39994efe10114 100644
--- a/.github/workflows/test.yml
+++ b/.github/workflows/test.yml
@@ -25,31 +25,14 @@ jobs:
         - "3.13"
     steps:
     - uses: actions/checkout@v4
-    - name: Cache uv
-      uses: actions/cache@v4
-      with:
-        path: ~/.uv
-        key: ${{ runner.os }}-uv-${{ hashFiles('**/uv.lock') }}-${{ matrix.python-version }}
-        restore-keys: |
-          ${{ runner.os }}-uv-${{ matrix.python-version }}
-
-    - name: Wait for Pinecone service to start
-      run: |
-        echo "Waiting for Pinecone service to start..."
-        sleep 10  # Wait for 10 seconds to ensure the container is up
-
     - name: Install uv
-      run: |
-        curl -LsSf https://astral.sh/uv/install.sh | sh
-    - name: Set up Python ${{ matrix.python-version }}
-      run: uv venv --python ${{ matrix.python-version }}
-
-    # only needed for local testing
-    # - name: Add Poetry to PATH
-    #   run: echo "PATH=$HOME/.local/bin:$PATH" >> $GITHUB_ENV
-
-    - name: Install dependencies
-      run: uv pip install .[all]
+      uses: astral-sh/setup-uv@v5
+      with:
+        enable-cache: true
+        cache-dependency-glob: "uv.lock"
+        python-version: ${{ matrix.python-version }}
+    - name: Install Dependencies
+      run: uv sync --extra all
     - name: Install nltk
       run: uv pip install nltk