Natural Language Processing (NLP) enables computers to understand, analyze, and generate language. Conversational systems build on NLP to create agents capable of coherent, goal-oriented dialogue that spans multiple turns. These systems track context and maintain memory, allowing them to adapt to user intent over time. Modern conversational agents can also invoke external tools and APIs, using language as a control interface to retrieve information, perform actions, and solve tasks interactively.
Large Language Models are pretrained on vast quantities of language data, enabling them to understand and generate human-like text and power applications like ChatGPT. Many NLP tasks that once required complex, dedicated algorithms and models are now effectively solved by pretrained and fine-tuned LLMs.
The course takes a code-first approach, pairing each concept with extensive, hands-on examples that use modern libraries, including OpenAI, LangChain, Hugging Face Transformers, and LangGraph. The course equips students with a practical toolbox of ideas and tools for rapidly building LLM-based models and applications.
The course syllabus is designed to enable students to begin their projects while learning the material. As the course continues, they will enrich their projects with the concepts they acquire. Each team will give several in-class presentations for discussion and feedback.
As standard tasks are increasingly handled by AI and existing mature libraries, expectations of professional developers shift toward innovation and rapid integration. Accordingly, a key requirement for student course projects is to tackle new use cases by generating unique data and training or fine-tuning task-specific language models.
The list below presents the complete set of subjects; individual course instances may vary depending on the course format, students’ backgrounds, and class dynamics.
Browse course offerings