Spaces:
Runtime error
Runtime error
| import random | |
| import spacy | |
| import srsly | |
| import streamlit as st | |
| nlp = spacy.load("en_core_web_trf") | |
| # Load pre-processed grants from disk. | |
| grants = list(srsly.read_jsonl("data/processed/entities.jsonl")) | |
| colors = {"GPE": "#5cff84", "LOC": "#5cff84"} | |
| options = {"ents": ["GPE", "LOC"], "colors": colors} | |
| HTML_WRAPPER = """<div style="overflow-x: auto; border: 1px solid #e6e9ef; border-radius: 0.25rem; padding: 1rem; margin-bottom: 2.5rem">{}</div>""" | |
| def render_entities(doc, colors: dict, options: dict) -> str: | |
| """ | |
| Takes a SpaCy doc | |
| """ | |
| #if isinstance(doc, spacy.tokens.doc.Doc): | |
| # doc = doc.to_json() | |
| html = spacy.displacy.render(doc, style="ent", options=options) | |
| html = html.replace("\n", " ") | |
| return html | |
| st.header("Location Entity Recognition Demo πππ") | |
| st.subheader("Look for Locations") | |
| if st.button("Show new example", key="text"): | |
| sample = random.choice(grants) | |
| doc = nlp(sample["text"]) | |
| html = render_entities(doc, colors, options) | |
| text = st.text_area("Text input", value=sample["text"], height=200) | |
| st.write(HTML_WRAPPER.format(html), unsafe_allow_html=True) | |
| else: | |
| sample = random.choice(grants) | |
| doc = nlp(sample["text"]) | |
| html = render_entities(doc, colors, options) | |
| text = st.text_area("Text input", value=sample["text"], height=200, help="Enter text here and click the 'Find Locations' button to search for entities.") | |
| st.write(HTML_WRAPPER.format(html), unsafe_allow_html=True) | |