CEIT490 DEVELOPING EDUCATIONAL APPLICATIONS USING LARGE LANGUAGE MODELS
Course Code: | 4300490 |
METU Credit (Theoretical-Laboratory hours/week): | 4 (3.00 - 2.00) |
ECTS Credit: | 8.0 |
Department: | Computer Education and Instructional Technology |
Language of Instruction: | English |
Level of Study: | Undergraduate |
Course Coordinator: | |
Offered Semester: | Fall and Spring Semesters. |
Course Objectives
Large Language Models (LLMs), like GPT-4 or GPT-4o, have become a hot topic in recent times thanks to ChatGPT. They're incredibly powerful tools that have the potential to change the way we work and learn across many areas, including education. This course will introduce you to the basics of LLMs and show you how to create your own LLM-powered applications using LangChain and StreamLit.
At the end of this course, the student will learn:
- The core principles behind how LLMs operate,
- Hugging Face transformers Library,
- Prompt engineering and fine-tuning techniques
- The Langchain Python framework,
- Memory, embeddings, and vector databases, and RAG,
- LLM agents, and Streamlit.
Course Content
AI in education; natural language processing; transformer architecture; prompting and prompt engineering; pre-training LLMs; fine-tuning LLMs; tokenization; embeddings; performance ealuation; reinforcement learning; LLM applications.
Course Learning Outcomes
Upon successful completion of this course, students will be able to:
- Understand and interact with large language models (LLMs) using APIs.
- Work with pre-trained LLMs using the Huggingface transformer library.
- Run open-source LLMs on their own computers.
- Use basic prompting techniques to get better results from LLMs.
- Apply advanced prompting methods for more complex and relevant LLM outputs.
- Explain how memory, embeddings, and vector databases help LLMs work.
- Build systems that combine LLM capabilities with external knowledge.
- Create LLM Agents that can perform tasks or interact with the world.
- Understand the basics of StreamLit and use it for interactive web apps.
- Develop AI applications with StreamLit that utilize LLMs.
- Fine-tune LLMs to make them better at specific tasks.
Program Outcomes Matrix
Level of Contribution | |||||
# | Program Outcomes | 0 | 1 | 2 | 3 |
1 | They have the skill and knowledge to use information technologies. | ✔ | |||
2 | They use information technology to access information, and they analyze, synthesize, and evaluate knowledge by adapting to new situations. | ✔ | |||
3 | They use strategies and techniques based on learning theories and apply them to solve instructional problems in a systemic and systematic way | ✔ | |||
4 | They have skill and knowledge in analysis, design, development, implementation and evaluation in instructional design process. | ✔ | |||
5 | They implement learning-teaching methods and techniques in computer education. | ✔ | |||
6 | They have knowledge, skill and competency about computer hardware, operating systems, computer networks and programming languages. | ✔ | |||
7 | They determine measurement and evaluation methods and techniques used in computer education. | ✔ | |||
8 | They have the ability to conduct and present results of intra-disciplinary and inter-disciplinary researches in the field of instructional technology. | ✔ | |||
9 | They comprehend project management processes and implement and present projects electronically. | ✔ | |||
10 | They have critical thinking and problem solving skills. | ✔ | |||
11 | They have social communication and cultural exchange skills. | ✔ | |||
12 | They have legal knowledge, skills and attitudes required for teaching profession and apply them in the learning environment. | ✔ |
0: No Contribution 1: Little Contribution 2: Partial Contribution 3: Full Contribution