A 12 Lesson course teaching everything you need to know to start building Generative AI applications
Learn the fundamentals of building Generative AI applications with our 12-lesson comprehensive course by Microsoft Cloud Advocates. Each lesson covers a key aspect of Generative AI principles and application development. Throughout this course, we will be building our own Generative AI startup so you can get an understanding of what it takes to launch your ideas.
To get started, fork this entire repo to your own GitHub account to be able to change any code and complete the challenges. You can also star (π) this repo to find it easier later.
Below are the links to each lesson. Feel free to explore and start at any lesson that interests you the most!
Head to the Course Setup Page to find the setup guide that works best for you.
We believe one of the best ways to learn is learning with others! Join our official AI Discord server to meet and network with other learners taking this course and get support. Who knows? You might find your next co-founder there!
After completing this course, check out our Generative AI Learning collection to continue leveling up your Generative AI knowledge!
Visit Microsoft's Founders Hub where you can apply to receive free OpenAI credits and up to $150k towards Azure's leading AI services.
Here are ways you can contribute to this course:
- Find spelling errors or code errors, Raise an issue or Create a pull request
- Send us your ideas, maybe your ideas for new lessons or exercises, and let us know how we can improve.
## π Each lesson includes:
- a short video introduction to the topic
- written lesson located in the README
- for project-based lessons, a Jupyter Notebook with code examples
- a challenge or assignment to apply your learning
- links to extra resources to continue your learning
## ποΈ Lessons
| | Lesson Link | Concepts Taught | Learning Goal |
| :---: | :------------------------------------: | :---------------------------------------------------------: | ----------------------------------------------------------- |
| 00 | [Course Introduction - How to Take This Course](./00-course-setup/README.md?WT.mc_id=academic-105485-koreyst) | Tech setup and course structure | Setting you up for success while learning in this course|
| 01 | [Introduction to Generative AI and LLMs](./01-introduction-to-genai/README.md?WT.mc_id=academic-105485-koreyst) | **Concept**: Generative AI and how we landed on the current technology landscape| Understanding what Generative AI is and how Large Language Models (LLMs) work. |
| 02 | [Exploring and comparing different LLMs](./02-exploring-and-comparing-different-llms/README.md?WT.mc_id=academic-105485-koreyst) | **Concept**: Testing, iterating, and comparing different Large Language Models | Select the right model for your use case |
| 03 | [Using Generative AI Responsibly](./03-using-generative-ai-responsibly/README.md?WT.mc_id=academic-105485-koreyst)| **Concept:** Understanding the limitations of foundation models and the risks behind AI | Learn how to build Generative AI Applications responsibly
| 04 | [Understanding Prompt Engineering Fundamentals](./04-prompt-engineering-fundamentals/README.md?WT.mc_id=academic-105485-koreyst) | **Code/Concept:** Hands-on application of Prompt Engineering Best Practices | Understand prompt structure & usage|
| 05 | [Creating Advanced Prompts](./05-advanced-prompts/README.md?WT.mc_id=academic-105485-koreyst) | **Code/Concept:** Extend your knowledge of prompt engineering by applying different techniques to your prompts | Apply prompt engineering techniques that improve the outcome of your prompts.|
| 06 | [Building Text Generation Applications](./06-text-generation-apps/README.md?WT.mc_id=academic-105485-koreyst) | **Code:** Build a text generation app using Azure OpenAI | Understand how to efficiently use tokens and temperature to vary the model's output | |
| 07 | [Building Chat Applications](./07-building-chat-applications/README.md?WT.mc_id=academic-105485-koreyst) | **Code**: Techniques for efficiently building and integrating chat applications.| Identify key metrics and considerations to effectively monitor and maintain the quality of AI-powered chat applications|
| 08 | [Building Search Apps Vector Databases](./08-building-search-applications/README.md?WT.mc_id=academic-105485-koreyst) | **Code**: Semantic vs Keyword search. What are text embeddings and how do they apply to search | Create an application that uses Embeddings to search for data. |
| 09 | [Building Image Generation Applications](./09-building-image-applications/README.md?WT.mc_id=academic-105485-koreyst) | **Code:** Image generation and why it's useful in building applications| Build an image generation application |
| 10 | [Building Low Code AI Applications](./10-building-low-code-ai-applications/README.md?WT.mc_id=academic-105485-koreyst) | **Low Code:** Introduction to Generative AI in Power Platform | Build a Student Assignment Tracker App for our education startup with Low Code | |
| 11 | [Integrating External Applications with Function Calling](./11-integrating-with-function-calling/README.md?WT.mc_id=academic-105485-koreyst) | **Code:** What is function calling and its use cases for applications | Setup a function call to retrieve data from an external API | |
| 12 | [Designing UX for AI Applications](./12-designing-ux-for-ai-applications/README.md?WT.mc_id=academic-105485-koreyst) | **Concept:** Designing AI Applications for Trust and Transparency | Apply UX design principles when developing Generative AI Applications | |
| xx | [Continue Your Learning](./13-continued-learning/README.md?WT.mc_id=academic-105485-koreyst) | Links to continue your learning from each lesson! | Mastering your Generative AI skills | |
## π Other Courses
Our team produces other courses! Check out:
- [ML for Beginners](https://aka.ms/ml-beginners?WT.mc_id=academic-105485-koreyst)
- [Data Science for Beginners](https://aka.ms/datascience-beginners?WT.mc_id=academic-105485-koreyst)
- [AI for Beginners](https://aka.ms/ai-beginners?WT.mc_id=academic-105485-koreyst)
- [Web Dev for Beginners](https://aka.ms/webdev-beginners?WT.mc_id=academic-105485-koreyst)
- [IoT for Beginners](https://aka.ms/iot-beginners?WT.mc_id=academic-105485-koreyst)
- [XR Development for Beginners](https://github.com/microsoft/xr-development-for-beginners?WT.mc_id=academic-105485-koreyst)