Spaces:
Sleeping
Sleeping
| import os | |
| import logging | |
| from typing import List | |
| from openai import OpenAI | |
| from dotenv import load_dotenv | |
| # Configure logging at the application level | |
| logger = logging.getLogger(__name__) | |
| logging.basicConfig(level=logging.INFO) | |
| load_dotenv() | |
| embedding_dimension = 1536 | |
| model = "text-embedding-3-small" | |
| openai_api_key = os.getenv("OPENAI_API_KEY").strip().strip("\n") | |
| client = OpenAI(api_key=openai_api_key) | |
| def generate_embeddings(text: str) -> List[float]: | |
| """Get embeddings from OpenAI API.""" | |
| logging.info("Embedding model: %s", model) | |
| try: | |
| if text: | |
| response = client.embeddings.create( | |
| model=model, input=text, dimensions=embedding_dimension | |
| ) | |
| return response.data[0].embedding | |
| except Exception as e: | |
| logger.error(f"OpenAI API error: {e}") | |
| raise | |