Spaces:
Running
Running
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() |