diff --git a/semantic_router/encoders/huggingface.py b/semantic_router/encoders/huggingface.py
index 56a3b685b90c82add9e422a346b339e82bbfd156..24bd5cd044c09bd8c2de2c5836ad8d79fc6204f8 100644
--- a/semantic_router/encoders/huggingface.py
+++ b/semantic_router/encoders/huggingface.py
@@ -150,7 +150,7 @@ class HFEndpointEncoder(BaseEncoder):
         score_threshold (float): A threshold value used for filtering or processing the embeddings.
     """
 
-    name: Optional[str] = "hugging_face_custom_endpoint"
+    name: str = "hugging_face_custom_endpoint"
     huggingface_url: Optional[str] = None
     huggingface_api_key: Optional[str] = None
     score_threshold: float = 0.8
@@ -181,17 +181,15 @@ class HFEndpointEncoder(BaseEncoder):
         huggingface_url = huggingface_url or os.getenv("HF_API_URL")
         huggingface_api_key = huggingface_api_key or os.getenv("HF_API_KEY")
 
+        super().__init__(name=name, score_threshold=score_threshold)  # type: ignore
+
         if huggingface_url is None:
             raise ValueError("HuggingFace endpoint url cannot be 'None'.")
         if huggingface_api_key is None:
             raise ValueError("HuggingFace API key cannot be 'None'.")
 
-        super().__init__(
-            name=name,
-            huggingface_url=huggingface_url,
-            huggingface_api_key=huggingface_api_key,
-            score_threshold=score_threshold,
-        )
+        self.huggingface_url = huggingface_url or os.getenv("HF_API_URL")
+        self.huggingface_api_key = huggingface_api_key or os.getenv("HF_API_KEY")
 
         try:
             self.query({"inputs": "Hello World!", "parameters": {}})
diff --git a/semantic_router/encoders/tfidf.py b/semantic_router/encoders/tfidf.py
index 0809b5ad467fabac693aae234eb28cb51b0991a0..77069da2b89dafbbd05a9a95bc4d10bbee15a449 100644
--- a/semantic_router/encoders/tfidf.py
+++ b/semantic_router/encoders/tfidf.py
@@ -35,7 +35,7 @@ class TfidfEncoder(BaseEncoder):
         docs = []
         for route in routes:
             for doc in route.utterances:
-                docs.append(self._preprocess(doc))
+                docs.append(self._preprocess(doc))  # type: ignore
         self.word_index = self._build_word_index(docs)
         self.idf = self._compute_idf(docs)
 
diff --git a/semantic_router/layer.py b/semantic_router/layer.py
index 39232c69955ece223221fe8ce22da85d07cbb18d..21c0da2766cd265a632d0e92e370c2a46a509bbd 100644
--- a/semantic_router/layer.py
+++ b/semantic_router/layer.py
@@ -5,7 +5,7 @@ import random
 from typing import Any, Dict, List, Optional, Tuple, Union
 
 import numpy as np
-import yaml
+import yaml  # type: ignore
 from tqdm.auto import tqdm
 
 from semantic_router.encoders import BaseEncoder, OpenAIEncoder
@@ -328,7 +328,7 @@ class RouteLayer:
     def add(self, route: Route):
         logger.info(f"Adding `{route.name}` route")
         # create embeddings
-        embeds = self.encoder(route.utterances)
+        embeds = self.encoder(route.utterances)  # type: ignore
         # if route has no score_threshold, use default
         if route.score_threshold is None:
             route.score_threshold = self.score_threshold
@@ -337,7 +337,7 @@ class RouteLayer:
         self.index.add(
             embeddings=embeds,
             routes=[route.name] * len(route.utterances),
-            utterances=route.utterances,
+            utterances=route.utterances,  # type: ignore
         )
         self.routes.append(route)
 
@@ -383,14 +383,14 @@ class RouteLayer:
         all_utterances = [
             utterance for route in routes for utterance in route.utterances
         ]
-        embedded_utterances = self.encoder(all_utterances)
+        embedded_utterances = self.encoder(all_utterances)  # type: ignore
         # create route array
         route_names = [route.name for route in routes for _ in route.utterances]
         # add everything to the index
         self.index.add(
             embeddings=embedded_utterances,
             routes=route_names,
-            utterances=all_utterances,
+            utterances=all_utterances,  # type: ignore
         )
 
     def _encode(self, text: str) -> Any: