import os import pandas as pd from langchain_core.tools import tool @tool def excel_code_interpreter(code: str, entreprise_name: str): """ Exécute du code Python pour générer un tableau Excel. Le fichier sera enregistré dans un dossier au nom de l'entreprise. Arguments: - code: Le code Python à exécuter (doit utiliser pandas). - entreprise_name: Le nom de l'entreprise pour créer le dossier. """ import warnings warnings.filterwarnings("ignore") try: # 1. Création du dossier de l'entreprise s'il n'existe pas # On nettoie le nom pour éviter les problèmes de caractères spéciaux folder_path = entreprise_name.replace(" ", "_").strip() if not os.path.exists(folder_path): os.makedirs(folder_path) # 2. Préparation du contexte d'exécution # On définit le chemin de sortie par défaut pour l'agent output_file = os.path.join(folder_path, f"Rapport_{folder_path}.xlsx") context = { "pd": pd, "os": os, "output_file": output_file, "result": None } # 3. Exécution du code # L'agent doit utiliser 'pd.ExcelWriter(output_file, engine="xlsxwriter")' dans son code exec(code, context) return f"✅ Succès : Code exécuté. Fichier enregistré dans : {output_file}" except Exception as e: return f"❌ ERREUR PYTHON : {str(e)}"