import streamlit as st import pandas as pd import numpy as np import plotly.express as px import plotly.graph_objects as go from ydata_profiling import ProfileReport from streamlit_pandas_profiling import st_profile_report import os from dotenv import load_dotenv from groq import Groq from langchain_community.vectorstores import FAISS from langchain_community.document_loaders import TextLoader from langchain.text_splitter import RecursiveCharacterTextSplitter from langchain.embeddings import HuggingFaceEmbeddings import re from scipy import stats from sklearn.preprocessing import StandardScaler, LabelEncoder, OneHotEncoder import tempfile # Set page config as the first Streamlit command st.set_page_config(page_title="Data-Vision Pro", layout="wide") # Load environment variables load_dotenv() # Initialize Groq client client = Groq(api_key=os.getenv("GROQ_API_KEY")) # Initialize HuggingFace embeddings for FAISS embeddings = HuggingFaceEmbeddings(model_name="sentence-transformers/all-MiniLM-L6-v2") # Custom CSS with Modernized Silver, Blue, and Gold Theme + Responsiveness st.markdown(""" """, unsafe_allow_html=True) # Helper Functions def enhance_section_title(title): st.markdown(f"