import sys import os import streamlit as st from organisations_engagees import display_organisations_engagees from localisation import display_map from statistiques import main as display_statistics from ActionsRSE import display_actions_rse from AnalyseActionsRSE import display_analyse_actions_rse from partiesprenantes import display_materiality_partiesprenantes from partie_prenante_carte import display_pp from codecarbon import EmissionsTracker # Import modifiédes fonctions liées aux scripts from projetRSE import display_rse_projects from labelRSE import display_rse_labels from entreprises_labellisees import display_labelled_companies from inspirezvous import * from collaborons import display_company_selection_for_materiality,display_materiality_matrix from documentations import display_documentation from RAG_PDF_WEB import rag_pdf_web from prompt import get_prompts_list,prompt_execution,execute_prompt from chat_with_pps import display_chat from high_chart import test_chart from chat_te import display_chat_te from empreinte_carbone import * from comparateur import * import base64 import pandas as pd # Function to read and encode an SVG file to Base64 def load_svg_as_base64(file_path): with open(file_path, "rb") as f: svg_data = f.read() return base64.b64encode(svg_data).decode() def main(): if "emission" not in st.session_state: tracker = EmissionsTracker() tracker.start() st.session_state["emission"] = tracker if "partial_emissions" not in st.session_state: st.session_state["partial_emissions"] = { "Scrapping": {"cc": 0, "el": 0}, #cc for codecarbon , el for ecologits "extraction_pp": {"cc": 0, "el": 0}, "cartographie": {"cc": 0, "el": 0}, "chatbot": {"cc": 0, "el": 0}, "download_rapport": {"cc": 0, "el": 0}, } st.sidebar.title("OPEN DATA & IA au service de la RSE") section_principale = st.sidebar.radio( "Choisissez votre section", ["Data Bordeaux métropole", "Data bziiit","IA RSE","Documentation"], index=2 ) if section_principale == "Data Bordeaux métropole": app_mode = st.sidebar.radio( "Choisissez votre sous-section", ["Localisations", "Organisations engagées", "Statistiques", "Actions RSE", "Analyse actions RSE"] ) if app_mode == "Localisations": display_map() elif app_mode == "Organisations engagées": display_organisations_engagees() elif app_mode == "Statistiques": display_statistics() elif app_mode == "Actions RSE": display_actions_rse() elif app_mode == "Analyse actions RSE": display_analyse_actions_rse() elif section_principale == "Data bziiit": ia_mode = st.sidebar.radio( "Choisissez votre sous-section", ["Labels RSE", "Entreprises labellisées", "Fiches entreprises"] ) if ia_mode == "Labels RSE": display_rse_labels() elif ia_mode == "Entreprises labellisées": display_labelled_companies() elif ia_mode == "Fiches entreprises": data, bziiit_data = fetch_data() selected_company = display_company_selection(data) display_company_info(data, bziiit_data, selected_company) elif section_principale == "IA RSE": ia_mode = st.sidebar.radio( "Choisissez votre sous-section", [ "Audit flash RSE de vos contenus", "Parties prenantes", "Chatbot Parties Prenantes", "Empreinte carbone détaillée", # "Prompts RSE - TE", # "Chatbot RSE - TE", ], index=1 ) if ia_mode == "Parties prenantes": # data, bziiit_data = fetch_data() # selected_company = display_company_selection_for_materiality(data) # if selected_company: # display_materiality_partiesprenantes(selected_company, data, bziiit_data) display_pp() # elif ia_mode == "Matrice de matérialité": # data, bziiit_data = fetch_data() # selected_company = display_company_selection_for_materiality(data) # if selected_company: # display_materiality_matrix(selected_company, data, bziiit_data) elif ia_mode == "Chatbot Parties Prenantes": display_chat() elif ia_mode == "Audit flash RSE de vos contenus": rag_pdf_web() elif ia_mode == "Prompts RSE - TE": get_prompts_list() # elif ia_mode == "Générations de contenus RSE": # st.header("Exécutez un prompt") # selected_prompt = prompt_execution() # if selected_prompt: # execute_prompt(selected_prompt) elif ia_mode == "Chatbot RSE - TE": display_chat_te() elif ia_mode == "Empreinte carbone détaillée": display_carbon_footprint() elif section_principale == "Documentation": display_documentation() #carbon foot_print st.sidebar.markdown("---") display_cf_comparison(st.sidebar) # Instructions communes à toutes les sections st.sidebar.markdown("---") st.sidebar.markdown("Powered by **bziiit IA RSE**") st.sidebar.markdown("2024 : Open source en Licence MIT") st.sidebar.markdown("info@bziiit.com") if __name__ == "__main__": main()