notbulubula commited on
Commit
fc248a4
1 Parent(s): dc1bc99
Files changed (1) hide show
  1. app.py +10 -5
app.py CHANGED
@@ -44,23 +44,28 @@ df = fetch_runs_to_df(api, projects, selected_project)
44
  # Streamlit UI
45
  st.title("W&B Data in Streamlit")
46
 
 
47
  st.sidebar.header("Filter Options")
48
- run_name_filter = st.sidebar.text_input("Filter by Run Name")
49
  state_filter = st.sidebar.selectbox("Filter by State", ["All"] + df["State"].unique().tolist())
 
50
 
51
  # Apply filters
52
  if run_name_filter:
53
  df = df[df["Run Name"].str.contains(run_name_filter, case=False, na=False)]
54
  if state_filter != "All":
55
  df = df[df["State"] == state_filter]
 
 
 
56
 
57
- # Show the filtered DataFrame
58
  st.dataframe(df)
59
 
60
  # Display details of selected run
61
- selected_run_id = st.selectbox("Select a Run ID to see details", df["ID"].tolist())
62
  if selected_run_id:
63
- selected_run = api.run(f"{entity}/{project}/{selected_run_id}")
64
  run_df = selected_run.history()
65
  st.write(f"Details for run: {selected_run.name}")
66
- st.dataframe(run_df)
 
44
  # Streamlit UI
45
  st.title("W&B Data in Streamlit")
46
 
47
+ # Sidebar filter options
48
  st.sidebar.header("Filter Options")
49
+ run_name_filter = st.sidebar.text_input("Filter by Run Name", "")
50
  state_filter = st.sidebar.selectbox("Filter by State", ["All"] + df["State"].unique().tolist())
51
+ tag_filter = st.sidebar.text_input("Filter by Tags (comma separated)", "")
52
 
53
  # Apply filters
54
  if run_name_filter:
55
  df = df[df["Run Name"].str.contains(run_name_filter, case=False, na=False)]
56
  if state_filter != "All":
57
  df = df[df["State"] == state_filter]
58
+ if tag_filter:
59
+ tag_list = [tag.strip() for tag in tag_filter.split(",")]
60
+ df = df[df["Tags"].apply(lambda tags: any(tag in tags for tag in tag_list))]
61
 
62
+ # Display the filtered DataFrame
63
  st.dataframe(df)
64
 
65
  # Display details of selected run
66
+ selected_run_id = st.selectbox("Select a Run ID to see details", df["ID"].tolist() if not df.empty else [])
67
  if selected_run_id:
68
+ selected_run = api.run(f"{projects[selected_project]['entity']}/{projects[selected_project]['project']}/{selected_run_id}")
69
  run_df = selected_run.history()
70
  st.write(f"Details for run: {selected_run.name}")
71
+ st.dataframe(run_df)