openedx / platform-roadmap

Tracking the maintenance, enhancement, and advancement of the Open edX project.
11 stars 1 forks source link

AI-Driven Chatbot Integration for Enhanced User Support #386

Open trabby opened 18 hours ago

trabby commented 18 hours ago

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.

Detailed Product Proposal

No response

Context & Background (in brief, if a Product Proposal is linked above)

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.

The key benefit of this chatbot is that it reduces the reliance on human support, thus improving response times and allowing support teams to focus on more complex issues.

The chatbot addresses multiple use cases:

  1. Course Recommendations: The chatbot suggests relevant courses based on user input, helping learners find courses that match their interests and needs.
  2. Course Summary: Users can request concise or detailed summaries of course content, providing a quick overview of what the course covers.
  3. Course Details: The chatbot provides specific information about a course, including start/end dates, course partners, and a description.
  4. Difficulty Assistance: When a user expresses difficulty with a topic, the chatbot offers support by recommending beginner-friendly resources or courses.
  5. Platform-related Questions: The chatbot handles general platform-related inquiries, such as account management, course navigation, and registration.
  6. Course Enrollment: It assists users in checking and managing their course enrollment status, ensuring they are enrolled in the correct courses.
  7. Quiz Generation: The chatbot generates quizzes based on the course content a user has completed, helping reinforce learning.
  8. Course Progress Check: Users can ask for updates on their course progress, and the chatbot provides real-time data on completed units and grades.
  9. 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

Scope & Approach (in brief, if a Product Proposal is linked above)

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:

  1. General and Platform-Specific Question Detection:
  1. Course Summarization:
  1. Course Recommendations:
  1. Quiz Generation:
  1. Rate Limiting:
  1. Platform-Related Assistance:
  1. Course Enrollment:
  1. Difficulty Assistance:
  1. Discussion Forum Question Handling:
  1. User Progress Tracking:(pending)

Value & Impact (in brief, if a Product Proposal is linked above)

This proposal will enhance the Open edX platform by providing scalable, AI-driven support, thereby improving user experience, engagement, and overall satisfaction.

Milestones and/or Epics

### 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.

AI and NLP Integration:

The AI-driven functionality relies on OpenAI’s GPT models for both summarization and conversation. For recommendations, NLP techniques such as TF-IDF and cosine similarity are used to match user input to relevant course content.

Security Considerations:

Named Release

Teak

Timeline (in brief, if a Product Proposal is linked above)

We have created a proof of concept (POC) on a sandbox environment, which can be tested to further discuss potential use cases. As mentioned earlier, we have not yet initiated any efforts to implement the chatbot using micro-frontend (MFE). Please note, the chatbot is intended to be used exclusively by registered users on the platform.

Proposed By

Abstract-Technology

Additional Info

We have created some images showcasing the work completed so far. See comment below.

### Tasks
github-actions[bot] commented 18 hours ago

Thanks for your submission, @openedx/openedx-product-managers will review shortly.

trabby commented 18 hours ago

Here some images:

course-details png 640x0_q85_crop

course-enrollment png 640x0_q85_crop

course-recommendations png 640x0_q85_crop

course-summarization png 640x0_q85_crop

discussion-forum-question-handling png 640x0_q85_crop

general-and-platform-specific-question-detection png 640x0_q85_crop

login png 640x0_q85_crop rate-limiting png 640x0_q85_crop

translating png 640x0_q85_crop