Samuelsamraj / My-Train_Chatbot

MyTrain Chatbot simplifies accessing Indian train schedules via text/voice input with multi-language support. It retrieves train options, offers seat preferences, rectifies errors, and recommends alternatives, enhancing travel planning and user experience.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

My-Train_Chatbot

MyTrain Chatbot simplifies accessing Indian train schedules via text/voice input with multi-language support. It retrieves train options, offers seat preferences, rectifies errors, and recommends alternatives, enhancing travel planning and user experience.

MyTrain Chatbot

MyTrain Chatbot is an AI-powered chatbot designed to facilitate users in accessing Indian train time table information conveniently. This project aims to provide a user-friendly interface for retrieving accurate and relevant train schedule details through text or voice inputs.

Problem Statement

The objective of the MyTrain Chatbot project is to develop an AI-powered chatbot that prompts users for input regarding the "from" and "to" locations in multiple regional languages, as well as their seat/coach preferences (Optional), through text or audio inputs. Based on this input, the chatbot retrieves and displays all available trains on that route.

Features

  • Text and Voice Input: Users can interact with the chatbot through text messages or voice commands in multiple languages.
  • Location Selection: Users specify their origin and destination stations.
  • Train Information Retrieval: The chatbot retrieves information on available trains between the specified locations, including train name and number, departure and arrival times, travel duration, and seat availability (if possible).
  • Seat/Coach Preference (Optional): Users can provide their preferred seat/coach type.
  • Rectification and Recommendations: Identify bugs in Disha 2.0 and rectify those in the Rail Chatbot. Additionally, recommend alternative nearby stations if direct trains are unavailable.
  • User-Friendly Interface: Interacts with users in a natural and engaging manner, providing clear instructions and informative responses.
  • Error Handling: Handles erroneous inputs gracefully, guiding users to correct their input or provide clarifications as needed.

Project Workflow

  1. User Interaction: Users interact with the Rail Chatbot by entering text-based queries or speaking voice commands for train time table information.
  2. Input Processing: The chatbot processes user inputs using NLP techniques to understand the user's intent and extract relevant information.
  3. Data Retrieval: Retrieves the train time table data based on the user's input parameters.
  4. Response Generation: Generates a response containing the available trains, their schedules, seat availability (optional), Nearby stations, and coach types (optional) matching the user's criteria.
  5. User Feedback: Users can provide feedback on the provided information, enabling continuous improvement of the chatbot's accuracy and performance.

Getting Started

To get started with MyTrain Chatbot, follow these steps:

  1. Clone the repository: git clone https://github.com/yourusername/mytrain-chatbot.git
  2. Install dependencies: pip install -r requirements.txt
  3. Run the chatbot: python chatbot.py

Contributing

We welcome contributions from the community! To contribute to MyTrain Chatbot, please follow these guidelines:

  1. Fork the repository and create your branch: git checkout -b feature/new-feature
  2. Commit your changes: git commit -m 'Add new feature'
  3. Push to your branch: git push origin feature/new-feature
  4. Submit a pull request

License

This project is licensed under the MIT License.

Acknowledgements

  • Thanks to Disha 2.0 for inspiring this project.
  • Special thanks to the Indian Railways for providing the train schedule data.

.

About

MyTrain Chatbot simplifies accessing Indian train schedules via text/voice input with multi-language support. It retrieves train options, offers seat preferences, rectifies errors, and recommends alternatives, enhancing travel planning and user experience.


Languages

Language:Jupyter Notebook 100.0%