
AI in Product Development
Description
Curious about the potential of AI in product development?
Participants of this course will gain a comprehensive understanding of AI coding assistants, prompt engineering, and practical applications through hands-on exercises and real-world case studies. As they progress, participants will employ AI-assisted tools to build an application utilizing the building blocks mastered throughout the program.
Upon successful completion, attendees will have the knowledge and practical experience to confidently use AI assistants during their product development process and securely integrate language models into any software.
Participants attending this course will
- Understand the basics of artificial intelligence
- Be able to identify and explain the different forms of AI
- Utilize language models on a higher level with prompt engineering
- Have the knowledge to use AI tools to increase productivity and efficiency
- Gain practical experience using AI tools during development
- Be capable of training and deploying machine learning models
- Know how to build secure AI applications
Outline
- AI landscape
- Legal questions
- AI and software development
- Prompt Engineering
- Becoming more productive with AI tools
- Building an AI-integrated application
- AI security
- Working with models
- Machine Learning
Course information
Preparedness
AI Fundamentals
Exercises
Hands-on
Delivery methods
Onsite / Virtual classroom
Course reviews
Related courses
Table of contents
- Day 1
- Day 2
- Day 3
- The AI landscape
- Timetable for the 1st day
- Welcome to the AI Revolution
- Is this magic?
- Why learn about the fundamentals of AI?
- Jagged Frontier - Centaurs and Cyborgs
- How can we use LLMs?
- The short history of AI
- Future(s) of AI
- What is AGI?
- What are you going to take away from the course?
- Is this magic?
- Basic concepts
- Basic building blocks
- Model
- Prompt
- Token
- Completions
- Basic building blocks
- Other Chatbots
- ChatGPT competitors
- How do we compare models?
- ChatGPT competitors
- Pragmatic AI
- The danger of any emerging technology
- The importance of critical thinking
- The danger of any emerging technology
- Friendly introduction to neural networks
- General understanding and goals
- Input layer
- Inner layers, weights and output
- General understanding and goals
- Behind the Technology - Large Language Models
- What's an LLM?
- Predicting the next word
- How to get these probabilities?
- Word n-grams
- Temperature
- Transformer architecture
- What's a GPT?
- ChatGPT is not just an LLM
- OpenAI Playground
- What's an LLM?
- Timetable for the 1st day
- Legal questions
- Who owns what?
- AI Act
- AI Act - Risk levels
- Providers' process at high-risk AI systems
- AI Act - What should you apply?
- White House AI Memorandum
- Intellectual property
- Intellectual property regarding AI
- IP protections from service providers
- Who owns a model?
- Who owns generated data?
- AI Act
- Who owns what?
- Prompt Engineering
- Introduction
- What's a prompt?
- How and why prompt engineering works?
- LLMs always respond
- Make it stop
- The evolution of prompt engineering
- What's a prompt?
- Fundamentals
- The 5 rules for prompting
- Role - who am I?
- The importance of specifying a role
- Context - what are we doing?
- Tips on writing the right context
- Input - what's the data?
- Output - what do you expect?
- Restrictions - how should I do it?
- Scope - break it down
- The 5 rules for prompting
- Exercise: Chatbot UI Introduction
- A simple question
- A simple question
- Introduction
- Exercise: Dissecting a prompt
- Dissect the following prompt
- Dissect the following prompt
- Exercise: Writing a simple prompt
- A prompt for summarizing news
- A prompt for summarizing news
- Exercise: Write hierarchical prompts
- Prompting for a webpage
- Prompting for a webpage
- Behind the Technology - Limitations Today
- Context management
- Performance
- Trustfulness and Reliability
- Context management
- Exercise: OpenAI ChatGPT Limitations
- Hallucinations - lying with confidence
- Making typical mistakes
- Hallucinations - lying with confidence
- Exercise: Classifying transactions
- Classifying transactions
- Potential solutions
- Classifying transactions
- Intermediate techniques - Multi-shot prompting
- 0-shot prompting
- 1-shot prompting
- Multi-shot prompting
- 0-shot prompting
- Advanced techniques - Chain of Density
- What is Chain of Density prompting?
- Chain of Density research
- What is Chain of Density prompting?
- Exercise: Chain of Density
- Summarize an article with Chain of Density
- Summarize an article with Chain of Density
- Advanced techniques - Meta prompting
- What is Meta prompting?
- What is Meta prompting?
- Auto-GPT - Introduction
- The intelligent agent
- How does it work?
- The intelligent agent
- Exercise: AutoGPT
- Running AutoGPT with Docker
- Running AutoGPT with Docker
- AI in the software development industry
- Introduction
- Impact of AI on tech industry
- Reaction of the big players
- AI won't take your job (yet)
- From simple questions to working code
- Impact of AI on tech industry
- AI improves software development
- AI will transform software as we know it
- Connection between AI and software developers
- Introduction
- Developer Plugins
- Demo - Advanced Data Analytics
- Advanced Data Analytics
- Math examples
- Upload and download files with data analysis
- Create and interpret code
- Advanced Data Analytics
- Demo - Advanced Data Analytics
- Prompt Engineering
- Timetable for the 2nd day
- Fundamentals summarized
- The 5 rules for prompting
- The 5 rules for prompting
- Intermediate techniques summarized
- Intermediate techniques summarized
- Intermediate techniques summarized
- Advanced techniques summarized
- Advanced techniques summarized
- Advanced techniques summarized
- Limitations in development
- Limitations of ChatGPT
- Example - hallucinated answer
- Example - the correct function
- Limitations of ChatGPT
- Timetable for the 2nd day
- Copilot ecosystem
- GitHub Copilot
- Inside GitHub Copilot
- Prompt Engineering inside Copilot
- Fill-In-the-Middle (FIM)
- Life of a Completion
- Copilot over the network
- Improved semantic understanding with embedding
- Features and use-cases
- Productivity increase
- Boosted coding speed
- Other types of Copilot
- Inside GitHub Copilot
- GitHub Copilot - Testing
- Writing unit tests
- Writing unit tests
- Exercise: Testing with Github Copilot
- First tests for an Express app
- First tests for an Express app
- GitHub Copilot - Unfamiliar territory and boilerplate
- Boilerplate code generation
- Unfamiliar framework or libraries
- Boilerplate code generation
- Exercise: Writing boilerplate code
- Write boilerplate code
- Express boilerplate with Copilot
- Write boilerplate code
- GitHub Copilot
- Building an AI integrated application
- Fresh Cart
- Introducing Fresh Cart
- The vision for Fresh Cart 2.0
- How will we get there?
- Introducing Fresh Cart
- Exercise: Fresh Cart Setup
- Setting up the exercise
- The perfect output
- Fill the database with 100 ingredients
- Setting up the exercise
- Fresh Cart - Integrating an LLM chatbot
- OpenAI API introduction
- Context crafting and streaming
- OpenAI API introduction
- Exercise: Fresh Cart chatbot
- Exercise: Recipe chatbot
- Recipe chatbot
- Recipe chatbot
- Fresh Cart - Prompt routing
- Using multiple contexts
- From routing to orchestration
- Using multiple contexts
- Exercise: Prompt routing
- Prompt orchestration summary
- Prompt orchestration summary
- Exercise: Output formatting
- Fresh Cart - Basic Semantic Search
- What is semantic search?
- Semantic search vs. classical search?
- Semantic search vs. classical search?
- What is semantic search?
- Exercise: Semantic search
- Fresh Cart - State mutation
- Mutate state based on semantics
- Mutate state based on semantics
- Fresh Cart - Next steps
- Improvements
- Upcoming features
- Improvements
- Operating an AiLLM
- Logging
- Self correction
- Logging
- Fresh Cart
- Attacks on AI systems
- Attacks on AI systems - Prompt injection
- Prompt injection
- Impact
- Examples
- Indirect prompt injection
- From prompt injection to phishing
- Prompt injection
- Advanced techniques - SudoLang: pseudocode for LLMs
- Introducing SudoLang
- SudoLang examples
- Behind the tech
- A SudoLang program
- Integrating an LLM
- Integrating an LLM with SudoLang
- Introducing SudoLang
- Exercise: Translate a prompt to SudoLang
- A long prompt
- A different solution
- A long prompt
- Exercise: Red Teaming - Prompt injection (Levels 1-2)
- Get the password!
- Classic injection defense
- Levels 1-2
- Solutions for levels 1-2
- Attacks on AI systems - Model jailbreaks
- What's a model jailbreak?
- How jailbreaks work?
- What's a model jailbreak?
- Jailbreaking ChatGPT
- The most famous ChatGPT jailbreak
- The 6.0 DAN prompt
- AutoDAN - Generating Stealthy Jailbreak Prompts
- The most famous ChatGPT jailbreak
- Exercise: Red Teaming - Jailbreaking (Levels 3-5)
- Get the password!
- Levels 3-5
- Looking for external help
- Attacks on AI systems - Prompt extraction
- Prompt extraction
- Prompt extraction
- Exercise: Red Teaming - Prompt extraction (Levels 6-7)
- Get the password!
- Level 6
- Level 7
- Extract the boundaries of levels 6 and 7
- Defending AI systems - Prompt injection defenses
- Intermediate techniques
- Advanced techniques
- More Security APIs
- ReBuff example
- Llama Guard example I
- Llama Guard example II
- Lakera example
- Intermediate techniques
- Attempts against a similar exercise
- Gandalf from Lakera
- Types of Gandalf exploits
- Gandalf from Lakera
- Exercise: Red Teaming - Give it your best shot!
- Get the password!
- Level 8
- Level 9
- Attacks on AI systems - Prompt injection
- Working with models
- Timetable for the 3rd day
- Foundation Models
- What is a foundation model?
- Foundation Models in practice
- What is a foundation model?
- Open-source models
- Open-source models vs. closed-source models
- Examples of open-source models
- Open-source models vs. closed-source models
- Open-source models - HuggingFace 🤗
- Introduction
- Models
- Chat Markup Language (ChatML)
- Chat templates
- Instruction formats
- HuggingFace API in action
- Types of models
- Model properties
- Datasets
- Spaces
- The Open LLM Leaderboard
- Benchmarks
- AutoTrain
- Introduction
- Exercise: AutoTrain
- Comparing fine-tuned models
- A larger training set isn't always better
- AutoTrain
- Comparing fine-tuned models
- Transformers - Hugging Face
- What is Transformers?
- Transformers Pipelines
- Text Generation Pipeline
- What is Transformers?
- Exercise: Transformers
- Using the Transformers pipeline
- Using the Transformers pipeline solution
- Using the Transformers pipeline
- Inference Endpoints
- The easiest way to deploy AI models
- Inference Endpoints UI
- The supported models of Inference Endpoints
- The easiest way to deploy AI models
- Exercise: Inference Endpoints
- OpenChat with Inference Endpoints
- Sending a request to the Endpoint
- OpenChat with Inference Endpoints
- Working with models - LangChain
- What is LangChain?
- How does LangChain work?
- Chains
- Agents
- What is LangChain?
- Microsoft Guidance
- Microsoft Guidance - Example
- EmbedChain
- Deploy LLM bots easily
- Deploy LLM bots easily
- Timetable for the 3rd day
- Machine Learning
- TensorFlow
- Open-source machine learning platform
- Keras
- The main concepts of TensorFlow
- Training loop in Keras
- Machine learning on other devices
- Kaggle Models / Model Garden
- Open-source machine learning platform
- TensorFlow
- Advanced AI concepts
- Fine-tuning
- What is fine-tuning?
- Parameters and hyperparameters
- Behind the tech - How to fine-tune a model?
- Customizing OpenAI models
- Start a fine-tuning in OpenAI Playground
- Fine-tuning with Vertex AI
- Fine-tuning with Vertex AI - RLHF
- Fine-tuning on AWS
- What is fine-tuning?
- Exercise: Fine-tuning
- Fine-tuning with OpenAI Playground
- Fine-tuning with OpenAI Playground
- Embedding
- What is embedding?
- Vector space
- Euclidean distance (L2)
- Euclidean distance in high-dimensions
- The change of distance in high-dimensions
- Cosine similarity
- Dot product
- Vector databases and indexes
- Use cases
- What is embedding?
- Retrieval Augmented Generation
- RAG basics
- RAG in action
- RAG basics
- Exercise: Consensus.app
- What is Consensus.app?
- Research like you never did before
- What is Consensus.app?
- Exercise: Search with Perplexity AI
- Research with Perplexity AI
- Research with Perplexity AI
- Exercise: Finding similar products in FreshCart
- Explore the embedding flow
- Embedding products
- Query for similar products
- Explore the embedding flow
- Fine-tuning