# import os # os.environ["STREAMLIT_BROWSER_GATHER_USAGE_STATS"] = "false" # import streamlit as st # import spacy # import benepar # from nltk import Tree # import nltk # # Setup NLTK and benepar # nltk.download('punkt') # benepar.download('benepar_en3') # nlp = spacy.load("en_core_web_sm") # if "benepar" not in nlp.pipe_names: # nlp.add_pipe("benepar", config={"model": "benepar_en3"}) # st.set_page_config(page_title="Syntax Parser Comparison Tool", layout="wide") # st.title("🌐 Syntax Parser Comparison Tool") # st.write("This tool compares Dependency Parsing, Constituency Parsing, and a simulated Abstract Syntax Representation (ASR).") # sentence = st.text_input("Enter a sentence:", "John eats an apple.") # if sentence: # doc = nlp(sentence) # sent = list(doc.sents)[0] # col1, col2, col3 = st.columns(3) # with col1: # st.header("Dependency Parsing") # for token in sent: # st.write(f"{token.text} --> {token.dep_} --> {token.head.text}") # st.code(" ".join(f"({token.text}, {token.dep_}, {token.head.text})" for token in sent)) # with col2: # st.header("Constituency Parsing") # tree = sent._.parse_string # st.text(tree) # st.code(Tree.fromstring(tree).pformat()) # with col3: # st.header("Simulated ASR Output") # st.write("Combining phrase structure with dependency head annotations:") # for token in sent: # if token.dep_ in ("nsubj", "obj", "det", "ROOT"): # st.write(f"[{token.text}] - {token.dep_} --> {token.head.text} ({token.pos_})") # st.markdown("_(ASR is simulated by combining POS tags, dependency heads, and phrase information.)_") # st.code(" ".join(f"[{token.text}: {token.dep_} → {token.head.text}]({token.pos_})" for token in sent)) import streamlit as st st.title("✅ Custom App Loaded") st.write("If you can see this, your `streamlit_app.py` is correctly loaded by Hugging Face.")