Back to Home
martin-prillard icon

llm-as-a-teacher

by martin-prillard

Overview

An intelligent tool that uses Large Language Models (LLMs) to evaluate student GitHub projects against project descriptions.

Installation

Run Command
./run.sh

Environment Variables

  • OPENAI_API_KEY
  • GITHUB_TOKEN
  • PORT
  • GRADIO_SHARE

Security Notes

The server uses `subprocess.run` to `git clone` arbitrary GitHub repository URLs provided by the user. While `subprocess.run` with a list of arguments is safer than shell injection, cloning and processing code from untrusted external sources (student projects) without a robust sandboxing mechanism poses a moderate security risk to the host system. Malicious repositories could potentially exploit vulnerabilities in the Git client or other tools, or contain harmful files. There are no direct `eval` calls or hardcoded secrets, and API calls are to standard services (GitHub, OpenAI). Input files (project descriptions) are parsed by established libraries, but handling of `description_file.name` in the Gradio app might warrant extra caution depending on Gradio's internal handling of uploaded file paths.

Similar Servers

Stats

Interest Score0
Security Score6
Cost ClassHigh
Avg Tokens47000
Stars0
Forks0
Last Update2025-12-02

Tags

LLMCode EvaluationGitHubAIEducation