ERMA / user_guide.md
mfirat007's picture
Upload 27 files
5cf374f verified

Educational Research Methods Chatbot - User Guide

Introduction

The Educational Research Methods Chatbot is designed to assist experienced academics in choosing appropriate research methods for educational research. The chatbot provides recommendations based on comprehensive knowledge of qualitative, quantitative, and mixed methods research approaches, with proper APA7 citations from published scientific resources.

Features

  • Research Method Recommendations: Get expert advice on which research methods are most appropriate for your specific educational research questions and contexts.
  • APA7 Citations: All information is provided with proper APA7 citations from reputable published scientific resources.
  • Conversation Context: The chatbot maintains context throughout your conversation for more coherent multi-turn interactions.
  • Web-based Interface: Access the chatbot through a user-friendly web interface that works on both desktop and mobile devices.

Getting Started

Prerequisites

  • Python 3.8 or higher
  • pip (Python package installer)
  • An OpenAI API key for Command R+ access

Installation

  1. Unzip the research_methods_chatbot.zip file to your desired location.

  2. Navigate to the project directory:

    cd research_methods_chatbot
    
  3. Install the required dependencies:

    pip install -r src/requirements.txt
    
  4. Create a .env file in the src directory with your OpenAI API key:

    OPENAI_API_KEY=your_api_key_here
    

Running the Chatbot

  1. Start the application:

    cd src
    python main.py
    
  2. Open your web browser and navigate to:

    http://localhost:8080
    
  3. You should see the chatbot interface where you can ask questions about educational research methods.

Using the Chatbot

Example Questions

Here are some example questions you can ask the chatbot:

  • "What is qualitative research?"
  • "What are the differences between qualitative and quantitative research methods?"
  • "When should I use mixed methods research in educational studies?"
  • "I want to study the impact of technology on student learning outcomes. Which research method would be most appropriate?"
  • "What are the advantages and disadvantages of case studies in educational research?"
  • "How do I design a sequential explanatory mixed methods study?"

Multi-turn Conversations

The chatbot maintains context throughout your conversation, allowing you to ask follow-up questions. For example:

  1. "What is a case study in educational research?"
  2. "What are the limitations of this method?"

The chatbot will understand that "this method" refers to case studies from your previous question.

Architecture

The chatbot uses a Retrieval Augmented Generation (RAG) architecture with the following components:

  1. Command R+ LLM: Powers the natural language understanding and generation.
  2. Vector Database: Stores embeddings of research methods information for efficient retrieval.
  3. FastAPI Backend: Handles API requests and manages the RAG pipeline.
  4. Web Frontend: Provides a user-friendly interface for interacting with the chatbot.

Customization

To customize the chatbot with additional research methods information:

  1. Add your information to the research_methods_info.md file.
  2. Restart the application to rebuild the vector database with the new information.

Troubleshooting

  • If you encounter CORS issues, check that the frontend URL matches the allowed origins in the backend configuration.
  • If the chatbot doesn't provide citations, ensure that the research methods information is properly formatted with source information.
  • If you receive API errors, verify that your OpenAI API key is valid and has sufficient credits.

Testing

To run the automated tests:

./run_tests.sh

This will execute unit tests for the backend API, frontend components, and integration tests.

License

This project is licensed under the MIT License - see the LICENSE file for details.