Transform any website into an intelligent support assistant powered by AI agents
A sophisticated Streamlit web application that leverages CrewAI multi-agent framework to provide accurate, context-aware support responses by intelligently scraping and analyzing website content.
- Support Agent: Analyzes website content and crafts detailed responses
- QA Reviewer: Ensures accuracy and quality of all answers
- Memory System: Maintains conversation context for better interactions
- Real-time Website Scraping: Extract content from any public website
- Intelligent Text Processing: Clean and structure scraped content for optimal AI analysis
- Multi-format Support: Handle various website structures and content types
- Intuitive Interface: Clean, responsive chat UI with message history
- Real-time Progress: Visual feedback showing agent workflow steps
- Conversation Memory: Maintains context across multiple questions
- Error Handling: Graceful error management with helpful feedback
- Custom Styling: Modern gradient themes and smooth animations
- Responsive Layout: Optimized for desktop and mobile devices
- Status Indicators: Visual connection status for API and website
- Progress Tracking: Expandable step-by-step agent activity viewer
- Python 3.8 or higher
- OpenAI API key (Get one here)
-
Clone the repository
git clone https://github.com/akaTalhakhan/Customer_Support.git cd Customer_Support -
Create virtual environment
python -m venv .venv # On Windows .venv\Scripts\activate # On macOS/Linux source .venv/bin/activate
-
Install dependencies
pip install -r requirements.txt
-
Launch the application
streamlit run main.py
-
Access the app
- Open your browser to
http://localhost:8501 - Enter your OpenAI API key in the sidebar
- Provide a website URL to analyze
- Start asking questions!
- Open your browser to
- API Key: Enter your OpenAI API key in the sidebar (securely handled, not stored)
- Website URL: Provide the website you want the assistant to learn from
- Ask Questions: Type support questions in the chat interface
- View Progress: Expand the progress tracker to see agent workflow
- Continue Conversation: The assistant remembers context from previous messages
- Clear History: Use the sidebar button to reset conversation
- Change Website: Update the URL to switch knowledge sources
├── main.py # Main Streamlit application
├── requirements.txt # Python dependencies
└── README.md # Project documentation
- streamlit: Web application framework
- crewai: Multi-agent AI framework
- beautifulsoup4: HTML parsing and content extraction
- requests: HTTP client for website scraping
- langchain: LLM integration and tooling
- chromadb: Vector database for embeddings
- Content Extraction: Scrape and clean website content
- Context Building: Combine website data with conversation history
- Support Analysis: Primary agent generates response using website knowledge
- Quality Review: Secondary agent validates and improves the response
- Response Delivery: Final answer presented to user with progress tracking
OPENAI_API_KEY=your_api_key_here
OPENAI_MODEL_NAME=gpt-3.5-turbo # Default model- Model Selection: Modify
OPENAI_MODEL_NAMEfor different GPT models - Temperature Settings: Adjust creativity vs accuracy in agent configurations
- UI Styling: Customize CSS in the main application file
This project is licensed under the MIT License - see the LICENSE file for details.
- Issues: GitHub Issues
- Discussions: GitHub Discussions
- Email: Contact Developer
Transform websites into intelligent support assistants