import streamlit as st
import json
from datasets import load_dataset
import sqlparse
st.set_page_config(page_title="BIRD SQL inspection", layout="wide")
st.markdown("
BIRD SQL inspection 🔍
", unsafe_allow_html=True)
st.markdown("""
Here you can inspect BIRD SQL data with schemas from [BIRD-Bench](https://bird-bench.github.io/).
""")
@st.cache()
def load_data():
ds = load_dataset("xu3kev/BIRD-SQL-data", split="train")
return ds
samples = load_data()
st.sidebar.header('Sample Selection')
index_example = st.sidebar.number_input(f"Choose a sample from the existing {len(samples)} notebooks:", min_value=0, max_value=max(0, len(samples)-1), value=0, step=1)
db_id = samples[index_example]["db_id"]
st.markdown(f'{index_example} Question:
', unsafe_allow_html=True)
st.code(samples[index_example]["question"])
sql_str = samples[index_example]["SQL"]
sql_str_pretty = sqlparse.format(sql_str, reindent=True, keyword_case='upper')
st.markdown(f'SQL:
', unsafe_allow_html=True)
st.code(sql_str_pretty)
st.markdown(f'Database schema:
', unsafe_allow_html=True)
st.code(samples[index_example]["schema"])