import os
from openai import OpenAI
from dotenv import load_dotenv

# Load environment variables
load_dotenv()


class AIService:
    def __init__(self):
        """Initialize OpenAI client with API key from environment"""
        self.client = OpenAI(
            api_key=os.getenv("OPENAI_API_KEY")
        )
    
    def ai_response(self, question: str, system_prompt: str = "", max_tokens: int = 1000) -> str:
    
        
        # Base system prompt
        base_system_prompt = "You are a helpful assistant."
        
        # Combine system prompts
        if system_prompt:
            final_system_prompt = base_system_prompt + " " + system_prompt
        else:
            final_system_prompt = base_system_prompt
            
        try:
            response = self.client.chat.completions.create(
                model=os.getenv("OPENAI_API_MODEL"),
                messages=[
                    {"role": "system", "content": final_system_prompt},
                    {"role": "user", "content": question}
                ],
                max_tokens=max_tokens,
                temperature=0.7
            )
            
            return response.choices[0].message.content
        
        except Exception as e:
            return f"Error: {str(e)}"