From 0477b8665750db6581c28ed374ae76e29d86afcd Mon Sep 17 00:00:00 2001
From: James Briggs <35938317+jamescalam@users.noreply.github.com>
Date: Tue, 11 Feb 2025 10:38:30 +0400
Subject: [PATCH] fix: pinecone init logic

---
 semantic_router/index/pinecone.py | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/semantic_router/index/pinecone.py b/semantic_router/index/pinecone.py
index 1e16b381..e3a04964 100644
--- a/semantic_router/index/pinecone.py
+++ b/semantic_router/index/pinecone.py
@@ -215,10 +215,12 @@ class PineconeIndex(BaseIndex):
                 while not self.client.describe_index(self.index_name).status["ready"]:
                     time.sleep(0.2)
                 index = self.client.Index(self.index_name)
+                self.index = index
                 time.sleep(0.2)
             elif index_exists:
                 # if the index exists we just return it
                 index = self.client.Index(self.index_name)
+                self.index = index
                 # grab the dimensions from the index
                 self.dimensions = index.describe_index_stats()["dimension"]
             elif force_create and not dimensions_given:
@@ -235,7 +237,7 @@ class PineconeIndex(BaseIndex):
                     f"{force_create=}"
                 )
                 index = None
-        if self.host == "":
+        if self.index is not None and self.host == "":
             self.host = self.client.describe_index(self.index_name)["host"]
         return index
 
-- 
GitLab