MS-DP3028: Implement Generative AI engineering with Azure Databricks

Course Code: MS-DP3028

This course covers generative AI engineering on Azure Databricks, using Spark to explore, fine-tune, evaluate, and integrate advanced language models. It teaches how to implement techniques like retrieval-augmented generation (RAG) and multi-stage reasoning, as well as how to fine-tune large language models for specific tasks and evaluate their performance. Students will also learn about responsible AI practices for deploying AI solutions and how to manage models in production using LLMOps (Large Language Model Operations) on Azure Databricks.

  • Duration: 1 Day
  • Level: Intermediate
  • Technology: Azure Data
  • Delivery Method: Instructor-led
  • Training Credits: NA

This course is designed for software engineers who are responsible for creating cloud-native solutions using Azure Cosmos DB for NoSQL and its various SDKs.

Before attending this course, delegates must have:

- Familiarity with familiar with fundamental Azure Databricks concepts

After completion of this course, you will be able to:

- Understand language models in Azure Databricks

- Implement Retrieval Augmented Generation (RAG) with Azure Databricks

- Implement multi-stage reasoning in Azure Databricks

- Fine-tune language models with Azure Databricks

- Implement LLMOps in Azure Databricks

There is no Associated Certification or Exam for this course.

Download our course content

Click Here

Modules

Learn how Large Language Models (LLMs) have revolutionized various industries by enabling advanced natural language processing (NLP) capabilities. These language models are utilized in a wide array of applications, including text summarization, sentiment analysis, language translation, zero-shot classification, and few-shot learning.

Lessons:

- Introduction

- Understand Generative AI

- Understand Large Language Models (LLMs)

- Identify key components of LLM applications

- Use LLMs for Natural Language Processing (NLP) tasks

- Exercise - Explore language models

- Module assessment

- Summary

By the end of this module, you'll be able to:

- Describe Generative AI.

- Describe Large Language Models (LLMs).

- Identify key components of LLM applications.

- Use LLMs for Natural Language Processing (NLP) tasks.

Retrieval Augmented Generation (RAG) is an advanced technique in natural language processing that enhances the capabilities of generative models by integrating external information retrieval mechanisms. When you use both generative models and retrieval systems, RAG dynamically fetches relevant information from external data sources to augment the generation process, leading to more accurate and contextually relevant outputs.

Lessons:

- Introduction

- Explore the main concepts of a RAG workflow

- Prepare your data for RAG

- Find relevant data with vector search

- Rerank your retrieved results

- Exercise - Set up RAG

- Module assessment

- Summary

By the end of this module, you'll be able to:

- Set up a RAG workflow.

- Prepare your data for RAG.

- Retrieve relevant documents with vector search.

- Improve model accuracy by reranking your search results.

Multi-stage reasoning systems break down complex problems into multiple stages or steps, with each stage focusing on a specific reasoning task. The output of one stage serves as the input for the next, allowing for a more structured and systematic approach to problem-solving.

Lessons

- Introduction

- What are multi-stage reasoning systems?

- Explore LangChain

- Explore LlamaIndex

- Explore Haystack

- Explore the DSPy framework

- Exercise - Implement multi-stage reasoning with LangChain

- Module assessment

- Summary

By the end of this module, you'll be able to:

- Identify the need for multi-stage reasoning systems.

- Describe a multi-stage reasoning workflow.

- Implement multi-stage reasoning with libraries like LangChain, LlamaIndex, Haystack, and the DSPy framework.

Fine-tuning uses Large Language Models' (LLMs) general knowledge to improve performance on specific tasks, allowing organizations to create specialized models that are more accurate and relevant while saving resources and time compared to training from scratch.

Lessons:

- Introduction

- What is fine-tuning?

- Prepare your data for fine-tuning

- Fine-tune an Azure OpenAI model

- Exercise - Fine-tune an Azure OpenAI model

- Module assessment

- Summary

By the end of this module, you'll be able to:

- Understand when to use fine-tuning.

- Prepare your data for fine-tuning.

- Fine-tune an Azure OpenAI model.

In this module, you explore Large Language Model evaluation using various metrics and approaches, learn about evaluation challenges and best practices, and discover automated evaluation techniques including LLM-as-a-judge methods.

Lessons:

- Introduction

- Explore LLM evaluation

- Evaluate LLMs and AI systems

- Evaluate LLMs with standard metrics

- Describe LLM-as-a-judge for evaluation

- Exercise - Evaluate an Azure OpenAI model

- Module assessment

- Summary

By the end of this module, you'll be able to:

- Evaluate LLM evaluation models

- Describe the relationship between LLM evaluation and AI system evaluation

- Describe standard LLM evaluation metrics like accuracy, perplexity, and toxicity

- Describe LLM-as-a-judge for evaluation

When working with Large Language Models (LLMs) in Azure Databricks, it's important to understand the responsible AI principles for implementation, ethical considerations, and how to mitigate risks. Based on identified risks, learn how to implement key security tooling for language models.

Lessons:

- Introduction

- What is responsible AI?

- Identify risks

- Mitigate issues

- Use key security tooling to protect your AI systems

- Exercise - Implement responsible AI

- Module assessment

- Summary

By the end of this module, you'll be able to:

- Describe the responsible AI principles for implementation of language models

- Identify the ethical considerations for language models

- Mitigate the risks associated with language models

- Implement key security tooling for language models

Streamline the implementation of Large Language Models (LLMs) with LLMOps (LLM Operations) in Azure Databricks. Learn how to deploy and manage LLMs throughout their lifecycle using Azure Databricks.

Lessons:

- Introduction

- Transition from traditional MLOps to LLMOps

- Understand model deployments

- Describe MLflow deployment capabilities

- Use Unity Catalog to manage models

- Exercise - Implement LLMOps

- Module assessment

- Summary

By the end of this module, you'll be able to:

- Describe the LLM lifecycle overview.

- Identify the model deployment option that best fits your needs.

- Use MLflow and Unity Catalog to implement LLMops.