Spaces:
Build error
Build error
File size: 992 Bytes
348f7b7 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
import os
import openai
import numpy as np
from typing import List, Union
import asyncio
class EmbeddingModel:
def __init__(self, model_name: str = "text-embedding-3-small"):
self.model_name = model_name
self.openai_api_key = os.getenv("OPENAI_API_KEY")
if self.openai_api_key is None:
raise ValueError("OPENAI_API_KEY is not set")
def get_embedding(self, text: str) -> np.ndarray:
openai.api_key = self.openai_api_key
response = openai.Embedding.create(
model=self.model_name,
input=text
)
return np.array(response.data[0].embedding)
async def async_get_embeddings(self, list_of_text: List[str]) -> List[np.ndarray]:
openai.api_key = self.openai_api_key
response = await openai.Embedding.acreate(
model=self.model_name,
input=list_of_text
)
return [np.array(item.embedding) for item in response.data] |