Download app.py from Arhashmi/ML-App: direct link, hf CLI and curl.
- Browser
- Download file 1.36 kB
-
https://huggingface.co/spaces/Arhashmi/ML-App/resolve/main/app.py
- Command line
-
hf download hf://spaces/Arhashmi/ML-App/app.py
-
curl -L -o app.py https://huggingface.co/spaces/Arhashmi/ML-App/resolve/main/app.py
1.36 kB
| import streamlit as st | |
| import subprocess | |
| # Install NLTK directly within the script | |
| subprocess.run(["pip", "install", "nltk"]) | |
| import nltk | |
| nltk.download('punkt') | |
| from nltk import ngrams | |
| from nltk.tokenize import word_tokenize | |
| # Function to generate n-grams from a given text | |
| def generate_ngrams(text, n): | |
| tokens = word_tokenize(text) | |
| n_grams = ngrams(tokens, n) | |
| return [' '.join(gram) for gram in n_grams] | |
| # Streamlit web application | |
| def main(): | |
| st.title("N-gram Generator") | |
| # User input for text passage | |
| text_input = st.text_area("Enter text passage:") | |
| # User input for selecting n-gram type | |
| n_gram_type = st.selectbox("Select n-gram type:", ["Bigram", "Trigram", "Custom N-gram"]) | |
| # Set n value based on user selection | |
| if n_gram_type == "Bigram": | |
| n_value = 2 | |
| elif n_gram_type == "Trigram": | |
| n_value = 3 | |
| else: | |
| n_value = st.number_input("Enter the value of N:", min_value=1, value=2, step=1) | |
| # Generate n-grams and display the result | |
| if st.button("Generate N-grams"): | |
| if text_input: | |
| ngrams_result = generate_ngrams(text_input, n_value) | |
| st.write(f"{n_gram_type}s:") | |
| for gram in ngrams_result: | |
| st.write(gram) | |
| else: | |
| st.warning("Please enter a text passage.") | |
| if __name__ == "__main__": | |
| main() |