rag_ielts / README.md
poemsforaphrodite's picture
Update README.md
b9ce254 verified

A newer version of the Streamlit SDK is available: 1.44.0

Upgrade
metadata
title: rag_ielts
app_file: app.py
sdk: streamlit
emoji: πŸ“š
colorFrom: green
colorTo: indigo
pinned: true
sdk_version: 1.41.1

Exam Content Management System

A Streamlit application for managing and generating exam content using Azure OpenAI and Supabase.

Features

  • Upload and process PDF files containing exam content
  • Generate questions based on exam type (SAT, IELTS, TOEFL)
  • Store and manage exam content in Supabase
  • View and manage questions with filtering capabilities
  • Analytics dashboard with detailed metrics
  • Question rewriting and fixing capabilities

Prerequisites

  • Python 3.8+
  • Supabase database
  • Azure OpenAI API access

Installation

  1. Clone the repository:
git clone <repository-url>
cd <repository-directory>
  1. Install dependencies:
pip install -r requirements.txt
  1. Set up environment variables: Create a .env file with the following variables:
AZURE_OPENAI_KEY=your_azure_openai_key
AZURE_OPENAI_ENDPOINT=your_azure_openai_endpoint
AZURE_OPENAI_DEPLOYMENT_NAME=your_deployment_name
SUPABASE_DB_URL=your_supabase_url
SUPABASE_API_KEY=your_supabase_api_key

Running the Application

  1. Start the Streamlit app:
streamlit run app.py
  1. Open your browser and navigate to the URL shown in the terminal (usually http://localhost:8501)

Usage

1. Upload & Generate

  • Select exam type (SAT, IELTS, or TOEFL)
  • Upload PDF files containing exam content
  • Click "Generate and Upload Questions" to process files
  • Download generated questions as JSON if needed

2. View Questions

  • Browse questions with filtering options:
    • Exam Type
    • Domain
    • Subdomain
    • Topic
    • Difficulty Level
  • Rewrite or delete individual questions
  • View detailed explanations and answers

3. Analytics

  • View comprehensive analytics dashboard
  • Monitor question distribution
  • Track content quality metrics
  • Analyze domain coverage
  • View generation timeline

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

License

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