From 48b64dc8a5a4ba4bd132f345fbac1491c035e885 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E2=80=9CDaniel=20Griffiths=E2=80=9D?=
 <Danielgriffiths1790@gmail.com>
Date: Thu, 4 Jan 2024 10:48:26 +0000
Subject: [PATCH] added hasattr  check for mypy

---
 semantic_router/hybrid_layer.py | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/semantic_router/hybrid_layer.py b/semantic_router/hybrid_layer.py
index a5e6bd4b..853fb332 100644
--- a/semantic_router/hybrid_layer.py
+++ b/semantic_router/hybrid_layer.py
@@ -36,7 +36,7 @@ class HybridRouteLayer:
         else:
             self.score_threshold = 0.82
         # if routes list has been passed, we initialize index now
-        if isinstance(sparse_encoder, TfidfEncoder):
+        if isinstance(self.sparse_encoder, TfidfEncoder) and hasattr(self.sparse_encoder, 'fit'):
             self.sparse_encoder.fit(routes)
         if routes:
             # initialize index now
@@ -54,7 +54,7 @@ class HybridRouteLayer:
             return None
 
     def add(self, route: Route):
-        if isinstance(self.sparse_encoder, TfidfEncoder):
+        if isinstance(self.sparse_encoder, TfidfEncoder) and hasattr(self.sparse_encoder, 'fit'):            
             self.sparse_encoder.fit(self.routes + [route])
             self.sparse_index = None
             for r in self.routes:
-- 
GitLab