This repository is a tool for visualizing an agent RL process from a grid2op format. It was made though a partnership between RTE and Artelys for the different challengers of the L2RPN RL Challenge.
Getting the following error message when trying to run the cell containing app_jup.run_server() in Grid2Viz_demo.ipynb
ValueError Traceback (most recent call last)
Cell In [7], line 2
1 #if you want to run it in the notebook
----> 2 from grid2viz.app_jupyter import app as app_jup
3 app_jup.run_server(port=8050,mode="inline")#mode="inline",debug=True)
4 # app_jup.run_server(mode="jupyterlab"
File ~/..../venvs/L2PRN/lib/python3.10/site-packages/grid2viz/app_jupyter.py:28
21 app = JupyterDash(
22 __name__, external_stylesheets=[dbc.themes.BOOTSTRAP]
23 ) # ,server_url="http://127.0.0.1:8050/")
25 """
26 Get Imports to create layout and callbacks
27 """
---> 28 from grid2viz.main_callbacks import register_callbacks_main
29 from grid2viz.layout import make_layout as layout
31 from grid2viz.src.episodes.episodes_clbk import register_callbacks_episodes
File ~/..../venvs/L2PRN/lib/python3.10/site-packages/grid2viz/main_callbacks.py:18
10 from dash.exceptions import PreventUpdate
12 """
13 WARNING :
14 These imports are mandatory to build the dependance tree and actually add the callbacks to the dash decoration routine
15 Do not remove !
16 The "as ..." are also mandatory, other nothing is done.
17 """
---> 18 from grid2viz.src.overview import overview_lyt as overview
19 from grid2viz.src.macro import macro_lyt as macro
20 from grid2viz.src.micro import micro_lyt as micro
File ~/..../venvs/L2PRN/lib/python3.10/site-packages/grid2viz/src/overview/overview_lyt.py:22
19 import matplotlib.pyplot as plt
20 import plotly.graph_objects as go
---> 22 from grid2viz.src.manager import (
23 agent_scenario,
24 make_episode,
25 best_agents,
26 grid2viz_home_directory,
27 make_network_scenario_overview,
28 )
29 from grid2viz.src.utils.constants import DONT_SHOW_FILENAME
30 from grid2viz.src.utils.layout_helpers import modal, should_help_open
File ~/..../venvs/L2PRN/lib/python3.10/site-packages/grid2viz/src/manager.py:643
635 """Parsing of agent folder tree"""
636 agents = sorted(
637 [
638 file
(...)
641 ]
642 )
--> 643 meta_json, best_agents, survival_df, attention_df = check_all_tree_and_get_meta_and_best(
644 agents_dir, agents
645 )
646 scenarios = []
647 scenarios_agent = {}
File ~/..../venvs/L2PRN/lib/python3.10/site-packages/grid2viz/src/manager.py:560, in check_all_tree_and_get_meta_and_best(base_dir, agents)
557 survival_dic[agent] = survival_dic_agent
558 attention_dic[agent] = attention_dic_agent
--> 560 survival_df = pd.DataFrame(columns=agents, index=scenarios)
561 attention_df = pd.DataFrame(columns=agents, index=scenarios)#, dtype=np.int64)
562 for agent in agents:
File ~/..../venvs/L2PRN/lib/python3.10/site-packages/pandas/core/frame.py:636, in DataFrame.__init__(self, data, index, columns, dtype, copy)
634 # GH47215
635 if index is not None and isinstance(index, set):
--> 636 raise ValueError("index cannot be a set")
637 if columns is not None and isinstance(columns, set):
638 raise ValueError("columns cannot be a set")
ValueError: index cannot be a set
Issue can be fixed by converting the scenarios set to list index=list(scenarios) on these two lines
Getting the following error message when trying to run the cell containing app_jup.run_server() in Grid2Viz_demo.ipynb
Issue can be fixed by converting the scenarios set to list
index=list(scenarios)
on these two lineshttps://github.com/rte-france/grid2viz/blob/191f5f0f3f62d0ab8224bb5a84ef18f1fc6ff6be/grid2viz/src/manager.py#L560
https://github.com/rte-france/grid2viz/blob/191f5f0f3f62d0ab8224bb5a84ef18f1fc6ff6be/grid2viz/src/manager.py#L561