import gradio as gr import pandas as pd # Assuming columns_to_click are the columns which contain URLs that you want to make clickable columns_to_click = ["Paper / Repo", "Playground"] def get_data(): # Load the CSV file into a DataFrame df = pd.read_csv( "https://docs.google.com/spreadsheets/d/e/2PACX-1vSC40sszorOjHfozmNqJT9lFiJhG94u3fbr3Ss_7fzcU3xqqJQuW1Ie_SNcWEB-uIsBi9NBUK7-ddet/pub?output=csv", skiprows=1, ) # Drop rows where the 'Model' column is NaN df.dropna(subset=['Model'], inplace=True) # Drop rows where the 'Parameters \n(B)' column is 'TBA' df = df[df["Parameters \n(B)"] != "TBA"] # Apply make_clickable_cell to the specified columns for col in columns_to_click: df[col] = df[col].apply(make_clickable_cell) return df def make_clickable_cell(cell): if pd.isnull(cell) or not isinstance(cell, str): return "" else: return f'{cell}' # Load the data to get the columns for setting up datatype dataframe = get_data() dtypes = ["str" if c not in columns_to_click else "html" for c in dataframe.columns] # Gradio app setup with gr.Blocks() as demo: # Markdown and DataFrame components gr.Markdown(title) gr.Markdown(description) gr.DataFrame(get_data, datatype=dtypes, every=60) # Launch the Gradio app demo.launch()