midlajvalappil's picture
Upload 14 files
6aa09c0 verified
import os
from dotenv import load_dotenv
# Load environment variables
load_dotenv()
class Config:
"""Application configuration class"""
# OpenAI Configuration
OPENAI_API_KEY = os.getenv('OPENAI_API_KEY')
# File Upload Configuration
MAX_FILE_SIZE_MB = int(os.getenv('MAX_FILE_SIZE_MB', 50))
SUPPORTED_FORMATS = os.getenv('SUPPORTED_FORMATS', 'csv,xlsx,xls').split(',')
# Application Settings
LOG_LEVEL = os.getenv('LOG_LEVEL', 'INFO')
# AI Model Configuration
OPENAI_MODEL = "gpt-3.5-turbo"
MAX_TOKENS = 1000
TEMPERATURE = 0.3
# Data Processing Settings
MAX_ROWS_FOR_AI_PROCESSING = 1000
SAMPLE_SIZE_FOR_ANALYSIS = 100
@classmethod
def validate_config(cls):
"""Validate required configuration"""
if not cls.OPENAI_API_KEY:
import streamlit as st
st.warning("⚠️ OpenAI API key not configured. AI-powered features will be disabled. Please add your API key in Streamlit Cloud secrets or .env file.")
return False
return True
@classmethod
def is_ai_enabled(cls):
"""Check if AI features are available"""
return bool(cls.OPENAI_API_KEY)