From c2531aa02de07783307199bf9faba12a16773071 Mon Sep 17 00:00:00 2001 From: Kalyan Chakravarthy Date: Sat, 27 Dec 2025 17:22:01 +0530 Subject: [PATCH 1/2] fix: update OpenAI embedding initialization and response handling due to SDK version changes --- langtest/embeddings/openai.py | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/langtest/embeddings/openai.py b/langtest/embeddings/openai.py index 8fe9c686c..de36a0c2f 100644 --- a/langtest/embeddings/openai.py +++ b/langtest/embeddings/openai.py @@ -10,7 +10,7 @@ class OpenaiEmbeddings: LIB_NAME = "openai" - def __init__(self, model="text-embedding-ada-002"): + def __init__(self, model="text-embedding-3-small"): self.model = model self.api_key = os.environ.get("OPENAI_API_KEY") self.openai = None @@ -18,7 +18,7 @@ def __init__(self, model="text-embedding-ada-002"): if not self.api_key: raise ValueError(Errors.E032()) - self.openai.api_key = self.api_key + # self.openai.api_key = self.api_key def _check_openai_package(self): """Check if the 'openai' package is installed and import the required functions. @@ -44,13 +44,13 @@ def get_embedding( list[float]: A list of floating-point values representing the text's embedding. """ if isinstance(text, list): - response = self.openai.Embedding.create(input=text, model=self.model) + response = self.openai.Client(api_key=self.api_key).embedding.create(input=text, model=self.model) embedding = [ - np.array(response["data"][i]["embedding"]).reshape(1, -1) + np.array(response.data[i].embedding).reshape(1, -1) for i in range(len(text)) ] return embedding else: - response = self.openai.Embedding.create(input=[text], model=self.model) - embedding = np.array(response["data"][0]["embedding"]).reshape(1, -1) + response = self.openai.Client(api_key=self.api_key).embedding.create(input=[text], model=self.model) + embedding = np.array(response.data[0].embedding).reshape(1, -1) return embedding From 61123751fed216241b7e879f5443eed765fc99fa Mon Sep 17 00:00:00 2001 From: Kalyan Chakravarthy Date: Sat, 27 Dec 2025 19:45:41 +0530 Subject: [PATCH 2/2] fix: linting and formatting issues. --- langtest/embeddings/openai.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/langtest/embeddings/openai.py b/langtest/embeddings/openai.py index de36a0c2f..490e414f4 100644 --- a/langtest/embeddings/openai.py +++ b/langtest/embeddings/openai.py @@ -44,13 +44,17 @@ def get_embedding( list[float]: A list of floating-point values representing the text's embedding. """ if isinstance(text, list): - response = self.openai.Client(api_key=self.api_key).embedding.create(input=text, model=self.model) + response = self.openai.Client(api_key=self.api_key).embedding.create( + input=text, model=self.model + ) embedding = [ np.array(response.data[i].embedding).reshape(1, -1) for i in range(len(text)) ] return embedding else: - response = self.openai.Client(api_key=self.api_key).embedding.create(input=[text], model=self.model) + response = self.openai.Client(api_key=self.api_key).embedding.create( + input=[text], model=self.model + ) embedding = np.array(response.data[0].embedding).reshape(1, -1) return embedding