from typing import List from quickchart import QuickChart import pandas as pd from utils import TEMP_DIR def chart_generation_func(queries: List[str], session_hash): print("CHART GENERATION") query_dict = queries[0] print(query_dict) qc = QuickChart() qc.width = 1000 qc.height = 500 # Config can be set as a string or as a nested dict qc.config = query_dict url_id = qc.get_short_url().rsplit('/', 1)[-1] url_base = qc.get_url_base() # You can get the chart URL... interactive_url = url_base + '/chart-maker/view/' + url_id edit_url = url_base + '/chart-maker/edit/' + url_id iframe = '
\n

Edit, share, and download this graph here

' return {"reply": iframe} def table_generation_func(data: List[str], session_hash): dir_path = TEMP_DIR / str(session_hash) print("TABLE GENERATION") print(data) df = pd.DataFrame(data) csv_path = f'{dir_path}/data.csv' df.to_csv(csv_path) download_path = f'gradio_api/file/temp/{session_hash}/data.csv' html_table = df.to_html() + f'

Download as a CSV

' print(html_table) return {"reply": html_table}