├── LICENSE └── README.md /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2024 Mahdi Ahmadi 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | --- 2 | # Kaggle's 5-Day Gen-AI Intensive Course with Google 3 | Welcome to the repository of the 5-Day Gen AI Intensive Course with Google. This repository contains links to all the daily whitepapers, podcasts, assignments, and other materials for the course. 4 | 5 | This is a 5-day online course designed and presented by Google and Kaggle, to help you deeply understand some of the fundamental technologies and techniques behind Generative AI. Created by a team of Google’s ML researchers and engineers, this program includes both conceptual deep dives and hands-on coding examples so you can tackle new Gen AI projects with confidence. 6 | 7 | 📘Read [An Overview of the Course](https://rsvp.withgoogle.com/events/google-generative-ai-intensive/home) 8 | 9 | ## Initial Setup Instructions 10 | * Sign up for a [Kaggle](https://www.kaggle.com/) account and learn [how Notebooks work](https://www.kaggle.com/docs/notebooks). Make sure to [phone verify](https://www.kaggle.com/settings) your account, it’s necessary for the course’s code labs. 11 | * Sign up for a [Google AI Studio](https://aistudio.google.com/) account and ensure you can generate an [API key](https://aistudio.google.com/app/apikey). 12 | * Sign up for a Discord account and join us on the [Kaggle Discord server](https://discord.com/invite/kaggle). There are 3 channels dedicated to this course: 13 | + [#5dgai-general-chat](https://discord.com/channels/1101210829807956100/1303438361117069363): find official course announcements and livestream recordings. 14 | + [#5dgai-introductions](https://discord.com/channels/1101210829807956100/1303438635772809311): introduce yourself and meet other participants from around the world. 15 | + [#5dgai-q-and-a](https://discord.com/channels/1101210829807956100/1305578408042041394): ask questions and kick off discussions about the assignments. 16 | 17 | 18 | --- 19 | # Day 1: Foundational Large Language Models & Text Generation 20 | ## 💡What You’ll Learn 21 | Today you’ll explore the evolution of LLMs, from transformers to techniques like fine-tuning and inference acceleration. You’ll also get trained in the art of prompt engineering for optimal LLM interaction. The code lab will walk you through getting started with the Gemini API and cover several prompt techniques and how different parameters impact the prompts. 22 | ## 📺 Watch Day 1 livestream recording [here](https://www.youtube.com/watch?v=kpRyiJUUFxY&list=PLqFaTIg4myu-b1PlxitQdY0UYIbys-2es&index=1). 23 | ## 🎒 Today’s Assignments 24 | * **Foundational Large Language Models & Text Generation** 25 | - Listen to the [summary podcast episode](https://www.youtube.com/watch?v=mQDlCZZsOyo) for this unit (created by NotebookLM). 26 | - Read the “[Foundational Large Language Models & Text Generation](https://www.kaggle.com/whitepaper-foundational-llm-and-text-generation)” whitepaper. 27 | * **Prompt Engineering** 28 | - Listen to the [summary podcast episode](https://www.youtube.com/watch?v=F_hJ2Ey4BNc) for this unit (created by NotebookLM). 29 | - Read the “[Prompt Engineering](https://www.kaggle.com/whitepaper-prompt-engineering)” whitepaper. 30 | - Complete [this code lab](https://www.kaggle.com/code/markishere/day-1-prompting) on Kaggle where you’ll learn prompting fundamentals. 31 | 32 | 33 | --- 34 | # Day 2: Embeddings and Vector Stores/Databases 35 | ## 💡What You’ll Learn 36 | Today you will learn about the conceptual underpinning of embeddings and vector databases and how they can be used to bring live or specialist data into your LLM application. You’ll also explore their geometrical powers for classifying and comparing textual data. 37 | ## 📺 Watch Day 2 livestream recording [here](https://www.youtube.com/watch?v=86GZC56rQCc&list=PLqFaTIg4myu-b1PlxitQdY0UYIbys-2es&index=2). 38 | ## 🎒 Today’s Assignments 39 | - Listen to the [summary podcast episode](https://www.youtube.com/watch?v=1CC39K76Nqs) for this unit (created by NotebookLM). 40 | - Read the “[Embeddings and Vector Stores/Databases](https://www.kaggle.com/whitepaper-embeddings-and-vector-stores)” whitepaper. 41 | - Complete these code labs on Kaggle: 42 | * [Build](https://www.kaggle.com/code/markishere/day-2-document-q-a-with-rag) a RAG question-answering system over custom documents 43 | * [Explore](https://www.kaggle.com/code/markishere/day-2-embeddings-and-similarity-scores) text similarity with embeddings 44 | * [Build](https://www.kaggle.com/code/markishere/day-2-classifying-embeddings-with-keras) a neural classification network with Keras using embeddings 45 | 46 | 47 | --- 48 | # Day 3: Generative AI Agents 49 | ## 💡What You’ll Learn 50 | Learn to build sophisticated AI agents by understanding their core components and the iterative development process. The code labs cover how to connect LLMs to existing systems and to the real world. Learn about function calling by giving SQL tools to a chatbot, and learn how to build a LangGraph agent that takes orders in a café. 51 | ## 📺 Watch Day 3 livestream recording [here](https://www.youtube.com/watch?v=HQUtMWoTAD4&list=PLqFaTIg4myu-b1PlxitQdY0UYIbys-2es&index=3). 52 | ## 🎒 Today’s Assignments 53 | - Listen to the [summary podcast episode](https://www.youtube.com/watch?v=H4gZd4BCrDQ) for this unit (created by NotebookLM). 54 | - Read the “[Generative AI Agents](https://www.kaggle.com/whitepaper-agents)” whitepaper. 55 | - Complete these code labs on Kaggle: 56 | - [Talk](https://www.kaggle.com/code/markishere/day-3-function-calling-with-the-gemini-api) to a database with function calling 57 | - [Build](https://www.kaggle.com/code/markishere/day-3-building-an-agent-with-langgraph/) an agentic ordering system in LangGraph 58 | 59 | 60 | --- 61 | # Day 4: Domain-Specific LLMs 62 | ## 💡What You’ll Learn 63 | In today’s practice, you’ll delve into the creation and application of specialized LLMs like SecLM and MedLM/Med-PaLM, with insights from the researchers who built them. In the code labs, you will learn how to add real-world data to a model beyond its knowledge cut-off by grounding with Google Search. You will also learn how to fine-tune a custom Gemini model using your own labeled data to solve custom tasks. 64 | ## 📺 Watch Day 4 livestream recording [here](https://www.youtube.com/watch?v=odvuLMJWUSU&list=PLqFaTIg4myu-b1PlxitQdY0UYIbys-2es&index=4). 65 | ## 🎒 Today’s Assignments 66 | - Listen to the [summary podcast episode](https://www.youtube.com/watch?v=b1a4ZOQ8XdI) for this unit (created by NotebookLM). 67 | - Read the “[Solving Domain-Specific Problems Using LLMs](https://www.kaggle.com/whitepaper-solving-domains-specific-problems-using-llms)” whitepaper. 68 | - Complete these code labs on Kaggle: 69 | - [Use](https://www.kaggle.com/code/markishere/day-4-google-search-grounding) Google Search data in generation 70 | - [Tune](https://www.kaggle.com/code/markishere/day-4-fine-tuning-a-custom-model) a Gemini model for a custom task 71 | 72 | 73 | --- 74 | # Day 5: MLOps for Generative AI 75 | ## 💡What You’ll Learn 76 | Discover how to adapt MLOps practices for Generative AI and leverage Vertex AI's tools for foundation models and generative AI applications. 77 | ## 📺 Watch Day 5 livestream recording [here](https://www.youtube.com/watch?v=uCFW0i9xrBc&list=PLqFaTIg4myu-b1PlxitQdY0UYIbys-2es&index=5). 78 | ## 🎒 Today’s Assignments 79 | - Listen to the [summary podcast episode](https://www.youtube.com/watch?v=k9S6IhiUUj4) for this unit (created by NotebookLM). 80 | - Read the “[MLOps for Generative AI](https://www.kaggle.com/whitepaper-operationalizing-generative-ai-on-vertex-ai-using-mlops)” whitepaper. 81 | - No code lab for the final day! We will do a code walkthrough and live demo of [GCP GenAI](https://github.com/GoogleCloudPlatform/generative-ai/tree/main/gemini/sample-apps/e2e-gen-ai-app-starter-pack), a resource created for making MLOps for Gen AI easier and accelerating the path to production. Please go through the repository in advance. 82 | - 📚 Check out this [bonus assignment](https://www.kaggle.com/code/markishere/bonus-day-extra-api-features-to-try/): This bonus notebook walks you through a few more things you can do with the Gemini API that weren't covered during the course. This material doesn't pair with the whitepapers or podcast, but covers some extra capabilities you might find useful when building Gemini API powered apps. 83 | --------------------------------------------------------------------------------