class-grader / docs /about.md
CoolDip00's picture
Deploy from GitHub main
5334076 verified
|
Raw History Blame Contribute Delete
4.02 kB

A newer version of the Gradio SDK is available: 6.32.0

Upgrade

What it measures

The rubric comes from the academy's own reviewer feedback on the sample classes. Reviewers repeatedly praise or ask for the same things, grouped here into four teaching pillars plus a camera check:

Pillar What earns a high score Weight
Structure & rapport Warm greeting, session intro, new joiners introduced, recap and goodbye 25%
Individual attention Children asked by name, everyone participates, understanding checked 30%
Homework & reinforcement Specific homework or practice set, key ideas recapped 10%
Tone & energy Lively, encouraging, specific praise, patient 20%
Camera compliance Tutor's face visible and well lit, camera on gate

How a recording is graded

  1. Transcript. A Zoom .vtt is used if provided. Otherwise the audio is transcribed with Whisper (Groq) and a small model labels each line as tutor or student.
  2. Pseudonymisation. Speakers become Tutor, S1, S2…; children's names in the text become tags such as [C3] before anything is sent to a language model.
  3. Measured metrics. Talk share, student turns per 10 minutes, questions, praise, names used, greeting / recap / homework detection, longest monologue. These are given to the judge as hints and shown in the report.
  4. Camera check, done locally. One frame every 10 s is matched to whoever was speaking at that moment (Zoom records the active speaker). On the tutor's frames a local face detector (OpenCV YuNet) measures face visibility, camera-off time and lighting.
  5. Judge. Claude Sonnet 5.5 scores each teaching pillar from 1 to 5 against fixed anchors and must cite [mm:ss] evidence for every score.
  6. Grade in code. The weighted pillar score maps to a grade: ≥4.25 Excellent, ≥3.5 Good, ≥2.75 Average, below that Poor. The model's own overall impression is shown on the benchmark tab for comparison but never decides the grade, so the same pillar scores always give the same grade.
  7. Camera gate. A serious camera failure (for example the tutor's face hidden for most of the class) makes the class a quality issue, graded Poor whatever the teaching, as the academy does. Smaller problems are reported but not graded: meeting the camera standard is expected, not a sign of good teaching.

Confidence drops when the transcript is mostly non-English or garbled, when no Zoom transcript was available, or when the score is close to a grade boundary. Within ±0.15 of a cut-off the report says so and names the other grade the class could have received.

Privacy

  • Video frames never leave the server. Face and lighting checks run locally; no image is sent to any API.
  • Text sent to Anthropic is the pseudonymised transcript only. Audio is sent to Groq only when no .vtt is provided, for speech-to-text.
  • Name removal is best-effort. It catches Zoom display names, names after greetings and in direct address, and rare capitalised words. A common name misheard by the speech recogniser can slip through.
  • Uploads are deleted after grading. The finished report (pseudonymised) is cached on the server by file hash so the same recording is not processed and billed twice.
  • The app is behind a login. The confidential sample recordings are not in the repository; only batch IDs, labels and scores are published.

Limitations

  • Tuned and tested on 10 labelled recordings: a sanity check, not a validation.
  • A missing branded background is not detected yet (one quality-issue class is missed for this reason).
  • The judge varies by roughly ±0.15 points between runs on the same class, which can flip a borderline grade. The same upload always returns the same (cached) report.
  • Without a .vtt, all students are merged into one speaker and tutor/student labels are guessed, which tends to over-score participation. Upload the .vtt when you have it.
  • Non-English or mixed-language classes get low confidence.