import requests from typing import List from classes.secret import Secret from .embedding import EmbeddingModel class OpenAIEmbedding(EmbeddingModel): def __init__(self, api_key: Secret): self.api_key = api_key def embedding(self, text: str) -> List[float]: response = requests.post( 'https://api.openai.com/v1/embeddings', json={ "input": text, "model": "text-embedding-ada-002", }, headers={ "Authorization": f"Bearer {self.api_key}", }, ) return response.json()['data'][0]['embedding']