diff --git a/docs/00-introduction.ipynb b/docs/00-introduction.ipynb
index 91b8ef2f8d905515ea0a13ad3909ac552ddbdbc2..f598f8c20a9a7c6df05822d7fbab6d01be984006 100644
--- a/docs/00-introduction.ipynb
+++ b/docs/00-introduction.ipynb
@@ -41,7 +41,7 @@
    "metadata": {},
    "outputs": [],
    "source": [
-    "!pip install -qU semantic-router==0.0.27"
+    "!pip install -qU semantic-router==0.0.28"
    ]
   },
   {
diff --git a/docs/01-save-load-from-file.ipynb b/docs/01-save-load-from-file.ipynb
index dbc7c8768e3de88af61babcfd727bfc5948d7630..4e084e1e0c92fdec5c33138fe79361e5644555f5 100644
--- a/docs/01-save-load-from-file.ipynb
+++ b/docs/01-save-load-from-file.ipynb
@@ -36,7 +36,7 @@
    "metadata": {},
    "outputs": [],
    "source": [
-    "!pip install -qU semantic-router==0.0.27"
+    "!pip install -qU semantic-router==0.0.28"
    ]
   },
   {
diff --git a/docs/02-dynamic-routes.ipynb b/docs/02-dynamic-routes.ipynb
index e896b0655f1b3612dd3c487b8cd3c7edff738b5e..084d19fe5f827871050a49fd3852606c40902184 100644
--- a/docs/02-dynamic-routes.ipynb
+++ b/docs/02-dynamic-routes.ipynb
@@ -48,7 +48,7 @@
       },
       "outputs": [],
       "source": [
-        "!pip install -qU semantic-router==0.0.27"
+        "!pip install -qU semantic-router==0.0.28"
       ]
     },
     {
diff --git a/docs/05-local-execution.ipynb b/docs/05-local-execution.ipynb
index e9dc0cadff7a1c9d936424051e944949388ea782..bd776631f325118e2324e9622c6c29d44814783e 100644
--- a/docs/05-local-execution.ipynb
+++ b/docs/05-local-execution.ipynb
@@ -41,7 +41,7 @@
    "metadata": {},
    "outputs": [],
    "source": [
-    "!pip install -qU \"semantic-router[local]==0.0.27\""
+    "!pip install -qU \"semantic-router[local]==0.0.28\""
    ]
   },
   {
diff --git a/docs/06-threshold-optimization.ipynb b/docs/06-threshold-optimization.ipynb
index 94f8962238fdd3dcff7d29cecbc46be235df78c7..2d17f216d831fcd2ead680ffc6c31cdc1c04b750 100644
--- a/docs/06-threshold-optimization.ipynb
+++ b/docs/06-threshold-optimization.ipynb
@@ -29,7 +29,7 @@
    "metadata": {},
    "outputs": [],
    "source": [
-    "!pip install -qU \"semantic-router[local]==0.0.27\""
+    "!pip install -qU \"semantic-router[local]==0.0.28\""
    ]
   },
   {
diff --git a/docs/07-multi-modal.ipynb b/docs/07-multi-modal.ipynb
index 3086006f42ee2a655d9743182df6681c467fcb1d..fc28677d459116ff79c31e9edfe7a26f6dcae8b7 100644
--- a/docs/07-multi-modal.ipynb
+++ b/docs/07-multi-modal.ipynb
@@ -100,7 +100,7 @@
    ],
    "source": [
     "!pip install -qU \\\n",
-    "    \"semantic-router[vision]==0.0.27\" \\\n",
+    "    \"semantic-router[vision]==0.0.28\" \\\n",
     "    datasets==2.17.0"
    ]
   },
diff --git a/docs/examples/ollama-local-execution.ipynb b/docs/examples/ollama-local-execution.ipynb
index f73a30f770439475e17ad990eb52619c4d37b1f6..3f326d54210a24571ac51eaf8211f555b8b77cfb 100644
--- a/docs/examples/ollama-local-execution.ipynb
+++ b/docs/examples/ollama-local-execution.ipynb
@@ -111,7 +111,7 @@
     }
    ],
    "source": [
-    "!pip install -qU \"semantic_router[local]==0.0.27\""
+    "!pip install -qU \"semantic_router[local]==0.0.28\""
    ]
   },
   {
diff --git a/docs/examples/unstructured-element-splitter.ipynb b/docs/examples/unstructured-element-splitter.ipynb
index 407c4b6cbbbb4164e4ab57f10591202b425fd9c8..e1ad820722f158b9bffc5d9d26af64b2d21a551f 100644
--- a/docs/examples/unstructured-element-splitter.ipynb
+++ b/docs/examples/unstructured-element-splitter.ipynb
@@ -16,7 +16,7 @@
     "# It may take longer to install the package\n",
     "!pip install -qU \\\n",
     "    \"unstructured[pdf]==0.12.4\" \\\n",
-    "    \"semantic-router==0.0.27\""
+    "    \"semantic-router==0.0.28\""
    ]
   },
   {
diff --git a/pyproject.toml b/pyproject.toml
index d19bf6369c6d7188294f17d376d356c64a284b91..bc43ed818baabcf5a41f3328661ae27844b9fd6f 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -1,6 +1,6 @@
 [tool.poetry]
 name = "semantic-router"
-version = "0.0.27"
+version = "0.0.28"
 description = "Super fast semantic router for AI decision making"
 authors = [
     "James Briggs <james@aurelio.ai>",
diff --git a/semantic_router/__init__.py b/semantic_router/__init__.py
index d7c6a53dbde597ed912e2c0a60537aa9d39cdce4..e8a4494b896dc2778fb2fcf70f9f8e6174bb7147 100644
--- a/semantic_router/__init__.py
+++ b/semantic_router/__init__.py
@@ -4,4 +4,4 @@ from semantic_router.route import Route
 
 __all__ = ["RouteLayer", "HybridRouteLayer", "Route", "LayerConfig"]
 
-__version__ = "0.0.27"
+__version__ = "0.0.28"