Overview
This project builds a course planning assistant that takes a student's academic background and target course, then queries a local LLM API to generate structured, step-by-step learning path recommendations. Four progressively sophisticated prompting strategies were implemented and compared.
System Pipeline
Four Prompting Strategies
Prompts & Outputs
Part 1 — Zero-Shot JSON Prompt
Student Profile:
Department: Computer Science
Level: Undergraduate
Completed: CSCI 256, CSCI 356, CSCI 343
Target Course: Deep Learning
"recommended_prerequisites": [
{ "course_number": "CSCI 356", "course_name": "Data Structures in Python" },
{ "course_number": "CSCI 343", "course_name": "Fundamentals of Data Science" }
],
"suggested_learning_path": [
{ "step": 1, "course_number": "CSCI 343" },
{ "step": 2, "course_number": "CSCI 632", "course_name": "Machine Learning" },
{ "step": 3, "course_number": "CSCI 492", "course_name": "Deep Learning" }
]
Part 3b — Multi-Step Decomposition Output
✓ Machine Learning
✓ Optimization Algorithms (e.g., Gradient Descent)
✓ Data Handling and Preprocessing
✓ Neural Networks (basic architecture, backpropagation)
✓ Data Science basics — covered via CSCI 343
✗ Machine Learning — not taken, gap identified
✗ Neural Networks — not taken, gap identified
✗ Optimization Algorithms — gap identified
Step 2: CSCI 356 — Data Structures in Python
Final: CSCI 492 — Deep Learning (Target)
Technique Comparison
| Part | Technique | Output Format | Reliability | Key Feature |
|---|---|---|---|---|
| 1 | Zero-shot JSON | JSON | Moderate | Simple, fast |
| 2 | Retry + JSON repair | JSON | High | Handles malformed responses |
| 3a | Chain-of-Thought | Free text → structured | High | Explicit reasoning steps |
| 3b | Multi-step decomposition | 3 × JSON | Highest | Each step verifiable |
Multi-step decomposition (Part 3b) produced the most reliable and explainable results — breaking the problem into independent LLM calls means each step can be validated separately, hallucinations are caught early, and the reasoning chain is fully transparent. Chain-of-Thought (3a) improved reasoning quality by forcing the model to justify each recommendation before committing to a course suggestion.