help@rskworld.in +91 93305 39277
RSK World
  • Home
  • Development
    • Web Development
    • Mobile Apps
    • Software
    • Games
    • Project
  • Technologies
    • Data Science
    • AI Development
    • Cloud Development
    • Blockchain
    • Cyber Security
    • Dev Tools
    • Testing Tools
  • Blog
  • About
  • Contact

Theme Settings

Color Scheme
Display Options
Font Size
100%
Back to Project
RSK World
conversational-ai-bot
/
__pycache__
RSK World
conversational-ai-bot
Conversational AI Bot - Python + NLP + Flask + Machine Learning + Chatbot + AI
__pycache__
  • api_integrations.cpython-313.pyc5.4 KB
  • app.cpython-313.pyc5.7 KB
  • chatbot.cpython-313.pyc18.1 KB
  • config.cpython-313.pyc1.1 KB
  • context_manager.cpython-313.pyc7.1 KB
  • conversation_analytics.cpython-313.pyc6.6 KB
  • conversation_history.cpython-313.pyc6.5 KB
  • entity_extractor.cpython-313.pyc7 KB
  • intent_recognizer.cpython-313.pyc5.8 KB
  • language_support.cpython-313.pyc5.2 KB
  • response_templates.cpython-313.pyc6.6 KB
  • sentiment_analyzer.cpython-313.pyc5.4 KB
README.mdexample_usage.pysetup.cpython-313.pycSETUP.md
README.md
Raw Download

README.md

# Conversational AI Bot

<!--
Project: Conversational AI Bot
Developer: RSK World
Website: https://rskworld.in
Email: help@rskworld.in
Phone: +91 93305 39277
Year: 2026
-->

Advanced conversational chatbot with context management and multi-turn dialogue support.

## Features

### Core Features
- **Context-aware conversations**: Maintains context across multiple turns
- **Multi-turn dialogue support**: Handles complex conversation flows
- **Intent recognition**: Identifies user intentions from natural language
- **Entity extraction**: Extracts important information from user messages
- **Conversation history**: Stores and retrieves past conversations

### Advanced Features
- **Sentiment Analysis**: Analyzes user sentiment to provide better responses
- **Multi-language Support**: Detects and supports multiple languages (English, Spanish, French, German, Hindi, Chinese, Japanese, Arabic)
- **API Integrations**: Weather, news, jokes, quotes, and calculations
- **Conversation Analytics**: Tracks metrics, intent distribution, and session statistics
- **Response Templates**: Template-based response system for consistent interactions
- **Web Interface**: Beautiful Flask-based web interface for easy interaction
- **Real-time Analytics**: Track conversation patterns and user engagement

## Technologies

- Python 3.8+
- Natural Language Processing (NLP)
- Machine Learning
- Rasa (optional integration)
- Dialogflow (optional integration)

## Installation

1. Clone the repository:
```bash
git clone <repository-url>
cd conversational-ai-bot
```

2. Install dependencies:
```bash
pip install -r requirements.txt
```

3. Run the chatbot:
```bash
python main.py
```

## Usage

### Basic Usage

```python
from chatbot import ConversationalAIBot

bot = ConversationalAIBot()
response = bot.chat("Hello, how are you?")
print(response)
```

### Advanced Usage with Context

```python
from chatbot import ConversationalAIBot

bot = ConversationalAIBot()
bot.chat("My name is John")
response = bot.chat("What's my name?")
print(response) # The bot remembers your name
```

### Using Advanced Features

```python
from chatbot import ConversationalAIBot

bot = ConversationalAIBot()

# Sentiment Analysis
sentiment = bot.get_sentiment_analysis("I'm feeling great today!")
print(sentiment['sentiment']) # 'positive'

# Language Support
bot.set_language('es') # Set to Spanish
current_lang = bot.get_current_language()

# Analytics
analytics = bot.get_analytics()
summary = bot.get_analytics_summary()
print(summary)

# API Integrations
response = bot.chat("Tell me a joke")
response = bot.chat("What's 25 + 17?")
response = bot.chat("Weather in New York")
```

### Web Interface

Start the web interface:

```bash
python app.py
```

Then open your browser to `http://localhost:5000`

## Project Structure

```
conversational-ai-bot/
├── main.py # Main CLI entry point
├── app.py # Flask web interface
├── chatbot.py # Core chatbot class
├── context_manager.py # Context management
├── intent_recognizer.py # Intent recognition
├── entity_extractor.py # Entity extraction
├── conversation_history.py # Conversation history management
├── sentiment_analyzer.py # Sentiment analysis
├── language_support.py # Multi-language support
├── api_integrations.py # External API integrations
├── conversation_analytics.py # Analytics and metrics
├── response_templates.py # Response templates
├── config.py # Configuration settings
├── example_usage.py # Usage examples
├── test_chatbot.py # Test suite
├── templates/ # Web interface templates
│ └── index.html # Main web interface
├── requirements.txt # Python dependencies
└── README.md # This file
```

## Features

### Context Management
The bot maintains conversation context, allowing it to reference previous messages and maintain coherent multi-turn dialogues.

### Intent Recognition
Uses pattern matching and machine learning techniques to identify user intentions from natural language input.

### Entity Extraction
Extracts entities such as names, dates, locations, and other important information from user messages.

### Conversation History
Stores conversation history for each session, enabling the bot to reference past interactions.

## License

This project is provided by RSK World (https://rskworld.in) for educational and development purposes.

## Contact

- **Website**: https://rskworld.in
- **Email**: help@rskworld.in
- **Phone**: +91 93305 39277

---

© 2026 RSK World. All rights reserved.

example_usage.py
Raw Download
Find: Go to:
"""
Example Usage of Conversational AI Bot
Demonstrates various features and capabilities of the chatbot.

Developer: RSK World
Website: https://rskworld.in
Email: help@rskworld.in
Phone: +91 93305 39277
Year: 2026
"""

from chatbot import ConversationalAIBot


def example_basic_conversation():
    """Example of basic conversation."""
    print("=" * 60)
    print("Example 1: Basic Conversation")
    print("=" * 60)
    
    bot = ConversationalAIBot()
    
    messages = [
        "Hello",
        "My name is John",
        "What's my name?",
        "What can you do?",
        "Thank you",
        "Goodbye"
    ]
    
    for message in messages:
        print(f"\nUser: {message}")
        response = bot.chat(message)
        print(f"Bot: {response}")
    
    print("\n")


def example_context_awareness():
    """Example demonstrating context awareness."""
    print("=" * 60)
    print("Example 2: Context Awareness")
    print("=" * 60)
    
    bot = ConversationalAIBot()
    
    # First conversation
    print("\nUser: My name is Alice")
    print(f"Bot: {bot.chat('My name is Alice')}")
    
    # Later in conversation, bot remembers
    print("\nUser: What's my name?")
    print(f"Bot: {bot.chat('What\'s my name?')}")
    
    # Context summary
    print(f"\nContext Summary: {bot.get_context_summary()}")
    print("\n")


def example_entity_extraction():
    """Example demonstrating entity extraction."""
    print("=" * 60)
    print("Example 3: Entity Extraction")
    print("=" * 60)
    
    bot = ConversationalAIBot()
    
    messages = [
        "My name is Sarah Johnson",
        "I live in New York",
        "My email is sarah@example.com",
        "Call me at +1-555-123-4567"
    ]
    
    for message in messages:
        print(f"\nUser: {message}")
        response = bot.chat(message)
        print(f"Bot: {response}")
    
    # Show extracted entities
    context = bot.context_manager.get_context()
    print(f"\nExtracted Entities: {context.get('entities', {})}")
    print("\n")


def example_multi_turn_dialogue():
    """Example of multi-turn dialogue."""
    print("=" * 60)
    print("Example 4: Multi-turn Dialogue")
    print("=" * 60)
    
    bot = ConversationalAIBot()
    
    conversation = [
        ("Hello, how are you?", "Greeting"),
        ("My name is Michael", "Name introduction"),
        ("What's my name?", "Name query"),
        ("What time is it?", "Time query"),
        ("What's the date?", "Date query"),
        ("Thank you for your help", "Compliment"),
        ("Goodbye", "Farewell")
    ]
    
    for message, intent_type in conversation:
        print(f"\nUser: {message}")
        response = bot.chat(message)
        print(f"Bot: {response}")
    
    print("\n")


def example_conversation_history():
    """Example showing conversation history."""
    print("=" * 60)
    print("Example 5: Conversation History")
    print("=" * 60)
    
    bot = ConversationalAIBot()
    
    # Have a conversation
    bot.chat("Hello")
    bot.chat("My name is David")
    bot.chat("What can you do?")
    
    # Retrieve history
    history = bot.get_conversation_history()
    
    print("\nConversation History:")
    for i, entry in enumerate(history, 1):
        print(f"\n{i}. User: {entry.get('user_message')}")
        print(f"   Bot: {entry.get('bot_response')}")
        print(f"   Intent: {entry.get('intent', 'N/A')}")
        if entry.get('entities'):
            print(f"   Entities: {entry.get('entities')}")
    
    print("\n")


def main():
    """Run all examples."""
    print("\n" + "=" * 60)
    print("Conversational AI Bot - Example Usage")
    print("Developer: RSK World (https://rskworld.in)")
    print("=" * 60 + "\n")
    
    examples = [
        example_basic_conversation,
        example_context_awareness,
        example_entity_extraction,
        example_multi_turn_dialogue,
        example_conversation_history
    ]
    
    for example_func in examples:
        try:
            example_func()
        except Exception as e:
            print(f"Error in {example_func.__name__}: {e}\n")
    
    print("=" * 60)
    print("All examples completed!")
    print("=" * 60 + "\n")


if __name__ == "__main__":
    main()

169 lines•4.3 KB
python
🚀 Support RSK World

Subscribe to our YouTube channel for latest tutorials & updates!



Click subscribe & support our work ❤️

About RSK World

Founded by Molla Samser, with Designer & Tester Rima Khatun, RSK World is your one-stop destination for free programming resources, source code, and development tools.

Founder: Molla Samser
Designer & Tester: Rima Khatun

Development

  • Game Development
  • Web Development
  • Mobile Development
  • AI Development
  • Development Tools

Legal

  • Terms & Conditions
  • Privacy Policy
  • Disclaimer

Contact Info

Nutanhat, Mongolkote
Purba Burdwan, West Bengal
India, 713147

+91 93305 39277

hello@rskworld.in
support@rskworld.in

© 2026 RSK World. All rights reserved.

Content used for educational purposes only. View Disclaimer