Abstract
This proposal aims to introduce an AI-driven chatbot system integrated into the Open edX platform, built with Django, to assist learners and educators. The chatbot's primary function is to respond to platform-specific questions, offer course recommendations, generate quizzes, provide course details, provide course summary and assist with course progress tracking. The chatbot leverages large language models (LLMs) from OpenAI, with support for natural language processing (NLP) techniques such as TF-IDF and fuzzy string matching.
Motivation
As online education platforms like Open edX continue to grow, the need for scalable support solutions becomes critical. Manually responding to user queries, while effective, is time-consuming and not easily scalable as the user base expands. This proposal seeks to implement an AI-driven chatbot that can automate common support tasks, such as course queries, platform navigation assistance, and course recommendations.
...
Course Recommendations: The chatbot suggests relevant courses based on user input, helping learners find courses that match their interests and needs.
Course Summary: Users can request concise or detailed summaries of course content, providing a quick overview of what the course covers.
Course Details: The chatbot provides specific information about a course, including start/end dates, course partners, and a description.
Difficulty Assistance: When a user expresses difficulty with a topic, the chatbot offers support by recommending beginner-friendly resources or courses.
Platform-related Questions: The chatbot handles general platform-related inquiries, such as account management, course navigation, and registration.
Course Enrollment: It assists users in checking and managing their course enrollment status, ensuring they are enrolled in the correct courses.
Quiz Generation: The chatbot generates quizzes based on the course content a user has completed, helping reinforce learning.
Course Progress Check: Users can ask for updates on their course progress, and the chatbot provides real-time data on completed units and grades.
Discussion Forum Question Handling: The chatbot automatically gathers and responds to student queries from the discussion forum, making it easy for students to find answers.
Functionality Overview
The proposed AI-driven chatbot will be implemented using Django on the Open edX platform, integrated with OpenAI’s large language models (LLMs) to enhance user support through conversational abilities. The chatbot provides several key features:
General and Platform-Specific Question Detection:
The system distinguishes between general queries (e.g., "What is AI?") and platform-specific queries (e.g., "How do I enroll in a course?"). General questions are discouraged, and users are guided toward platform-related inquiries.Course Summarization:
Using an LLM, the chatbot generates both concise and detailed summaries of course content. Summaries are presented in a user-friendly, HTML-formatted structure with sections like "Overview" and "Key Concepts."Course Recommendations:
Based on user input, the system suggests relevant courses from Open edX's course catalog. Fuzzy matching techniques and TF-IDF are used to ensure that recommendations are highly relevant to the user’s interests.Quiz Generation:
The chatbot generates dynamic quizzes based on the content a user has completed in a course. These quizzes are designed to reinforce learning outcomes and provide a more interactive learning experience.Rate Limiting:
To prevent system overload, the chatbot includes a rate-limiting feature that controls the number of requests a user can make within a specific time frame, ensuring fair and consistent access.Platform-Related Assistance:
The chatbot provides support for platform-related questions, such as navigating the system, enrolling in courses, and accessing course materials, helping users get the most out of the Open edX platform.Course Enrollment:
Users can inquire about their enrollment status, and the chatbot will inform them of the courses they are currently enrolled in and help manage their enrollments.Difficulty Assistance:
If a user expresses difficulty with a course topic, the chatbot offers support by suggesting beginner-friendly courses or additional resources to help the user better understand the concept.Discussion Forum Question Handling: (Pending)
The chatbot gathers questions from the discussion forum and provides answers, making it easier for students to find responses to common queries without needing to manually search through threads. This helps improve forum engagement and support.User Progress Tracking:(pending)
Users can ask for updates on their course progress, and the chatbot provides real-time data, including completed units, grades, and overall course progress.
Architecture Overview:
Backend:
The chatbot is built using Django and Open edX APIs for accessing course data. It also uses the Langchain library for building the interaction chain with OpenAI’s GPT-based LLM models. For text processing, it relies on the fuzzywuzzy library for matching user queries with course titles and descriptions, and TfidfVectorizer for content-based similarity comparisons.
...