Course Syllabus
CSC 352 / CSC 552 | Generative AI
Fall 2026
Schedule: Tuesdays and Thursdays, 3:30-4:45 PM, CCE 030
This syllabus is subject to change.
Instructor Information
Instructor: Ron (Rongyu) Lin
Email: rongyu.lin@quinnipiac.edu
Office: CCE 233
Office hours (shared across CSC 150, CSC 352/552, and INF 605):
- Tuesday 2:00-3:00 PM, CCE 233 and Zoom
- Wednesday 11:00 AM-12:00 PM, CCE 233 and Zoom
- Thursday 1:00-2:00 PM, CCE 233 and Zoom
- Friday 11:00 AM-12:00 PM, Zoom only
To meet during office hours, book an appointment from Canvas, then join Zoom or come to CCE 233. Live booking and Zoom links are on Canvas.
Term: Fall 2026
Sections
CSC 352 and CSC 552 share the same lectures, classroom, and Canvas course.
| CSC 352 | CSC 552 | |
|---|---|---|
| Catalog / section | CSC*352-01 | CSC*552-01 |
| Meetings | T/Th 3:30-4:45 PM, CCE 030 | |
Monday holidays do not cancel this Tuesday/Thursday class. There is no class during Thanksgiving week.
Course Description
This course is a hands-on study of generative AI. Students implement core language-model components from scratch, including tokenization, attention, GPT-style architecture, training, and fine-tuning, using Sebastian Raschka's Build a Large Language Model (From Scratch). Later meetings cover prompting, retrieval, vision-language models, tool use, and coding-agent case studies, plus a team project.
Learning Objectives
By the end of this course, students will be able to:
- Implement the core of an LLM from scratch (tokenization, attention, GPT-style architecture, training, and fine-tuning)
- Explain how pre-training, instruction fine-tuning, and LoRA change what a model can do
- Design prompts, including chain-of-thought, and evaluate their effect
- Build a RAG pipeline that retrieves evidence and conditions generation on it
- Use function calling and an agent loop, including MCP, skills, and hooks
- Read production coding-agent systems at a course level
- Complete a team project
Required Materials
- Prompt Engineering Guide
- Model Context Protocol documentation and the official Python SDK
- Course notes and assigned articles posted on Canvas
Live links are on Canvas.
Grading
| Component | Weight | Description |
|---|---|---|
| Assignment 1 | 10% | Homework notebook |
| Assignment 2 | 12% | Homework notebook |
| Assignment 3 | 12% | Homework notebook |
| Assignment 4 | 8% | Homework notebook |
| Assignment 5 | 8% | Homework notebook |
| Final project | 40% | Team project |
| Attendance and participation | 10% | Lectures and in-class activities |
Extra credit, if offered, can add up to 3 percentage points on the course total. Assignment details are posted with each assignment.
Course Policies
- Attendance: The course meets in regularly scheduled sessions. Consistent presence is essential. In-class activities and discussions count toward the grade. If you miss a class, email the instructor in advance to arrange make-up work.
- Late work: Assignments are due Sunday of the due week, 11:59 PM ET, unless Canvas says otherwise. Late work loses 10% per day for the first 5 days. After 5 days the maximum score is 50%.
- Academic integrity: Cheating, plagiarism, and any form of academic dishonesty, including unauthorized use of ChatGPT or other AI tools, are prohibited. Use of AI tools is permitted only when explicitly authorized for that assignment.
- Accessibility: Students who require accommodation should contact the Office of Student Accessibility and provide the accommodation letter early in the semester.
Course Structure
Meetings: Tuesday and Thursday, 3:30-4:45 PM, CCE 030. This schedule is subject to change.
Assignment 1 is due Sunday of week 3, 11:59 PM ET. Later assignments follow every three weeks, each due Sunday of that week. Live due dates are on Canvas.
| Week | Session | Title |
|---|---|---|
| Week 1 | Overview | Course introduction and expectations |
| Week 1 | Lecture 1 | Machine Learning Foundations |
| Week 2 | Lecture 2 | PyTorch tensors and autograd |
| Week 2 | Lecture 3 | PyTorch networks and training |
| Week 3 | Lecture 4 | Tokenization |
| Week 3 | Lecture 5 | Embeddings and data sampling |
| Week 4 | Lecture 6 | Attention and Transformer Basics |
| Week 4 | Lecture 7 | Causal and multi-head attention |
| Week 5 | Lecture 8 | Building GPT Architecture |
| Week 5 | Lecture 9 | GPT implementation |
| Week 6 | Lecture 10 | Model Training Pipeline |
| Week 6 | Lecture 11 | Training pipeline practice |
| Week 7 | Lecture 12 | Fine-tuning for Classification |
| Week 7 | Lecture 13 | Classification fine-tuning practice |
| Week 8 | Lecture 14 | Instruction Fine-tuning |
| Week 8 | Lecture 15 | Parameter-efficient fine-tuning / LoRA |
| Week 9 | Lecture 16 | Systematic prompting |
| Week 9 | Lecture 17 | Chain-of-Thought and inference-time compute |
| Week 10 | Lecture 18 | RAG |
| Week 10 | Lecture 19 | Vision-language models |
| Week 11 | Lecture 20 | Function calling and the agent loop |
| Week 11 | Lecture 21 | MCP, skills, and hooks |
| Week 12 | Lecture 22 | Loop engineering and graph engineering |
| Week 12 | Lecture 23 | Case study: Claude Code |
| Week 13 | Lecture 24 | Case study: Grok Build |
| Week 13 | Lecture 25 | Final project kickoff |
| Week 14 | No class | Thanksgiving recess |
| Week 15 | Lecture 26 | Final project work session |
| Week 15 | Lecture 27 | Project presentations / wrap-up |