diff --git a/poetry.lock b/poetry.lock
index 33839cf8dd3449ed66a81666f4658dfe1d03ab38..ed829510f2a7661b1c0175a05bad3976cc196c7a 100644
--- a/poetry.lock
+++ b/poetry.lock
@@ -1,4 +1,4 @@
-# This file is automatically @generated by Poetry 1.5.1 and should not be changed by hand.
+# This file is automatically @generated by Poetry 1.8.2 and should not be changed by hand.
 
 [[package]]
 name = "annotated-types"
@@ -902,11 +902,11 @@ files = [
 google-auth = ">=2.14.1,<3.0.dev0"
 googleapis-common-protos = ">=1.56.2,<2.0.dev0"
 grpcio = [
-    {version = ">=1.33.2,<2.0dev", optional = true, markers = "extra == \"grpc\""},
+    {version = ">=1.33.2,<2.0dev", optional = true, markers = "python_version < \"3.11\" and extra == \"grpc\""},
     {version = ">=1.49.1,<2.0dev", optional = true, markers = "python_version >= \"3.11\" and extra == \"grpc\""},
 ]
 grpcio-status = [
-    {version = ">=1.33.2,<2.0.dev0", optional = true, markers = "extra == \"grpc\""},
+    {version = ">=1.33.2,<2.0.dev0", optional = true, markers = "python_version < \"3.11\" and extra == \"grpc\""},
     {version = ">=1.49.1,<2.0.dev0", optional = true, markers = "python_version >= \"3.11\" and extra == \"grpc\""},
 ]
 proto-plus = ">=1.22.3,<2.0.0dev"
diff --git a/semantic_router/splitters/consecutive_sim.py b/semantic_router/splitters/consecutive_sim.py
index 897baae40d5ef1055bf7fc1c7253756b7944b6d6..491860ec31f658e4ea22f7ef23bc707260f9b626 100644
--- a/semantic_router/splitters/consecutive_sim.py
+++ b/semantic_router/splitters/consecutive_sim.py
@@ -1,4 +1,5 @@
 from typing import Any, List
+from warnings import warn
 
 import numpy as np
 
@@ -18,6 +19,12 @@ class ConsecutiveSimSplitter(BaseSplitter):
         name: str = "consecutive_similarity_splitter",
         score_threshold: float = 0.45,
     ):
+        warn(
+            "Splitters are being deprecated. They have moved to their own "
+            "package. Please install the `semantic-chunkers` package. More "
+            "information can be found at:\n"
+            "https://github.com/aurelio-ai/semantic-chunkers"
+        )
         super().__init__(name=name, encoder=encoder)
         encoder.score_threshold = score_threshold
         self.score_threshold = score_threshold
diff --git a/semantic_router/splitters/cumulative_sim.py b/semantic_router/splitters/cumulative_sim.py
index 0e50a35499e670bc1011464e34aef29b1d1a6a8f..f10a64071bba343b56206d59b5cafebcb21071af 100644
--- a/semantic_router/splitters/cumulative_sim.py
+++ b/semantic_router/splitters/cumulative_sim.py
@@ -1,4 +1,5 @@
 from typing import List
+from warnings import warn
 
 import numpy as np
 
@@ -19,6 +20,12 @@ class CumulativeSimSplitter(BaseSplitter):
         name: str = "cumulative_similarity_splitter",
         score_threshold: float = 0.45,
     ):
+        warn(
+            "Splitters are being deprecated. They have moved to their own "
+            "package. Please install the `semantic-chunkers` package. More "
+            "information can be found at:\n"
+            "https://github.com/aurelio-ai/semantic-chunkers"
+        )
         super().__init__(name=name, encoder=encoder)
         encoder.score_threshold = score_threshold
         self.score_threshold = score_threshold
diff --git a/semantic_router/splitters/rolling_window.py b/semantic_router/splitters/rolling_window.py
index fb4ce20adae1e0c8dfa58e5a1ca901d5f6d96961..059789112e976fb92fb5503ddbf7d5911af49643 100644
--- a/semantic_router/splitters/rolling_window.py
+++ b/semantic_router/splitters/rolling_window.py
@@ -1,5 +1,6 @@
 from dataclasses import dataclass
 from typing import List
+from warnings import warn
 
 import numpy as np
 
@@ -49,6 +50,12 @@ class RollingWindowSplitter(BaseSplitter):
         plot_splits=False,
         enable_statistics=False,
     ):
+        warn(
+            "Splitters are being deprecated. They have moved to their own "
+            "package. Please install the `semantic-chunkers` package. More "
+            "information can be found at:\n"
+            "https://github.com/aurelio-ai/semantic-chunkers"
+        )
         super().__init__(name=name, encoder=encoder)
         self.calculated_threshold: float
         self.encoder = encoder