import spacy from spacy.lang.en.stop_words import STOP_WORDS # Load spaCy's English language model nlp = spacy.load('en_core_web_sm') def extract_keywords(question): # Process the question using spaCy NLP pipeline doc = nlp(question) # Extract keywords by removing stopwords, punctuation, and selecting nouns/adjectives keywords = [token.text for token in doc if token.is_stop == False and token.is_punct == False and token.pos_ in ['NOUN', 'ADJ', 'VERB']] return keywords # Example chatbot question question = "What is the weather like in New York City today?" # Extract keywords keywords = extract_keywords(question) print("Keywords:", keywords)