A Python-based console application that demonstrates practical Natural Language Processing (NLP) techniques. This interactive tool allows users to input text and receive both Named Entity Recognition (NER) analysis and AI-generated summaries.
- Interactive Console Interface: Simple text-based interface for easy text input and processing
- Named Entity Recognition: Identifies and categorizes people, organizations, and locations in text using spaCy
- Text Summarization: Generates concise summaries of input text using Hugging Face transformers
- Real-time Processing: Immediate results for quick analysis and experimentation
- Python 3.8+
- spaCy with
en_core_web_mdfor entity recognition - Hugging Face Transformers with
facebook/bart-large-cnnfor summarization - PyTorch as the machine learning backend
- Run the application:
python nlp_console.py - Enter your text when prompted
- View the processed results:
- Extracted entities (people, organizations, locations)
- AI-generated summary
- Repeat with new text or exit
Enter your text: Satya Nadella, CEO of Microsoft, announced a new partnership with OpenAI during an event in San Francisco. The collaboration focuses on advancing AI research and development.
--- Named Entity Recognition Results --- PERSONS: 'Satya Nadella' ORGANIZATIONS: 'Microsoft', 'OpenAI' LOCATIONS: 'San Francisco'
--- Text Summary --- Microsoft CEO Satya Nadella announced a partnership with OpenAI at a San Francisco event, focusing on AI research and development.
- Python 3.8 or higher
- Clone the repository:
git clone https://github.com/Auction-s/Search.git cd Search python -m venv venv
pip install -r requirements.txt python -m spacy download en_core_web_md python nlp_console.py
๐ What I Learned Building this application provided hands-on experience with: Integrating multiple NLP libraries (spaCy + Hugging Face) in a single pipeline Processing user input and handling different text formats Working with transformer models for text generation tasks Structuring console applications for better user experience Managing model dependencies and deployment requirements
๐ Future Enhancements Add support for file input (process text documents) Implement batch processing for multiple texts Expand to support multiple languages Add sentiment analysis capability Create a web interface using Streamlit Optimize model loading for faster startup