Repository files navigation

GitHub contributorsGitHub issuesGitHub pull-requestsPRs Welcome

GitHub watchersGitHub forksGitHub starsAzure AI Community Discord

Unlocking NLP Potential: Fine-Tuning with Microsoft Olive PRE016

Slide Deck

Fine-Tuning Workshop

This repository is for the Ignite 2024 PreDay Workshop on Fine Tuning Large Language Models

session banner

Session Description

Abstract: Join us for an exclusive workshop on fine-tuning pre-trained language models using Microsoft Olive. Optimizes the fine-tuning process both in the cloud and locally. Deep dive into advanced techniques, gain hands-on experience, and practical insights to elevate your NLP projects. Achieve state-of-the-art performance and unlock new possibilities in NLP. Enhance your skills and stay ahead in the rapidly evolving field of NLP.

Session Overview

Introduction and Overview (15 minutes)

  • Welcome and objectives
  • Overview of Fine Tuning
  • Solution Scenario

0. Setting Up the Environment (15 minutes)

  • Step-by-step guide to setting your VScode and CLI
  • This step has been completed if your using Skillable labs
Lab #TitleDescription
0Set upLearn how to set-up your Azure resources for this lab.

1. Login to Azure AI and Setup Compute Node (15 minutes)

  • Setting up a Cloud GPU environment
Lab #TitleDescription
1Set upLogin to your AI Hub and Project and deploy a GPU Compute resource.

2. Data Preperation (15 minutes)

  • Creating Synthentic Data using GPTs
Lab #TitleDescription
2Data PrepLearn how to prepare data for Finetuning and evaluation.

3. Fine-Tuning Basics (40 minutes)

  • Understanding pre-trained models
  • Introduction to fine-tuning techniques
  • Hyperparameter tuning
  • Data augmentation strategies
  • Hands-on exercise: Implementing advanced techniques
  • Hands-on exercise: Fine-tuning a simple model
Lab #TitleDescription
3Finetuning with Azure AI FoundryLearn how to finetune with Azure AI Foundry

4. Deployment of a Model (45 minutes)

  • Deployment strategies on Azure
  • Local deployment considerations
  • Deploy the Model: Once fine-tuned, deploy the model using the managed compute deployment option
  • Create an Endpoint: Set up an endpoint for real-time inference
  • Test the Endpoint: Use sample data to test the deployed model and ensure it's working correctly
Lab #TitleDescription
4Deploying models to a cloud endpointLearn how to deploy models to a cloud endpoint for inference using Azure AI Foundry.

5. Optimizing Performance (30 minutes)

  • Monitoring and evaluating model performance
  • Using Microsoft Olive for optimization
  • Hands-on exercise: Performance tuning
Lab #TitleDescription
5Optimize your model for Inference using Microsoft OliveLearn to optimize your model for on-device inference using Olive. This will include quantization methods and ONNX runtime optimizations.

6. Evaluation of Fine-Tuned Models (45 minutes)

  • Evaluating the fine-tuned model
  • Responsible AI considerations
  • Hands-on exercise: Evaluating the model
Lab #TitleDescription
6How to evaluate AI modelsIn this lab we show you how to evaluate your models to ensure they give trustworthy and safe responses.

7. Consumption of the Model (30 minutes)

  • Using .NET Aspire Application to consumed the fine tuned model
  • Optimize the model for specific hardware
Lab #TitleDescription
7Bring it all together in an appIn this lab we build an application that consumes the AI models you trained and optimized in previous labs. The application will call 2 different models: 1 model will be in the cloud and the other will be on-device.

8. Clean Up

  • Remove Azure Resources and Cleanup Resource Groups
Lab #TitleDescription
8Clean upIn this lab, we clean up all the resources.

9. Q&A and Wrap-Up (15 minutes)

  • Open floor for questions
  • Recap of key takeaways
  • Next steps and additional resources

Duration

4 hours

Learning Outcomes

  • Understand how to fine tune Language Models
  • Create synethic data
  • Fine-Tuning techniques and best practices​

Technology Used

  • Azure AI
  • Azure Machine Learning
  • Microsoft Olive
  • Microsoft ONNX Runtime

Additional Resources and Continued Learning

ResourcesLinksDescription
Session SlidesViewReview the slides presented during the workshop at your own pace

Content Owners

Lee Stott
Lee Stott

📢
Kinfey Lo
Kinfey Lo

Sam Kemp
Sam Kemp

📢

Responsible AI

Microsoft is committed to helping our customers use our AI products responsibly, sharing our learnings, and building trust-based partnerships through tools like Transparency Notes and Impact Assessments. Many of these resources can be found at https://aka.ms/RAI. Microsoft’s approach to responsible AI is grounded in our AI principles of fairness, reliability and safety, privacy and security, inclusiveness, transparency, and accountability.

Large-scale natural language, image, and speech models - like the ones used in this sample - can potentially behave in ways that are unfair, unreliable, or offensive, in turn causing harms. Please consult the Azure OpenAI service Transparency note to be informed about risks and limitations.

The recommended approach to mitigating these risks is to include a safety system in your architecture that can detect and prevent harmful behavior. Azure AI Content Safety provides an independent layer of protection, able to detect harmful user-generated and AI-generated content in applications and services. Azure AI Content Safety includes text and image APIs that allow you to detect material that is harmful. We also have an interactive Content Safety Studio that allows you to view, explore and try out sample code for detecting harmful content across different modalities. The following quickstart documentation guides you through making requests to the service.

Another aspect to take into account is the overall application performance. With multi-modal and multi-models applications, we consider performance to mean that the system performs as you and your users expect, including not generating harmful outputs. It's important to assess the performance of your overall application using generation quality and risk and safety metrics.

You can evaluate your AI application in your development environment using the prompt flow SDK. Given either a test dataset or a target, your generative AI application generations are quantitatively measured with built-in evaluators or custom evaluators of your choice. To get started with the prompt flow sdk to evaluate your system, you can follow the quickstart guide. Once you execute an evaluation run, you can visualize the results in Azure AI Studio.

About

Choosing the right finetuning technique, and discover tools for finetuning. A scenario will be used to provide real- world scenario for fine tuning, and optimization techniques

Resources

Code of conduct

Security policy

Stars

16 stars

Watchers

2 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content

Repository files navigation

GitHub contributorsGitHub issuesGitHub pull-requestsPRs Welcome

GitHub watchersGitHub forksGitHub starsAzure AI Community Discord

Unlocking NLP Potential: Fine-Tuning with Microsoft Olive PRE016

Slide Deck

Fine-Tuning Workshop

This repository is for the Ignite 2024 PreDay Workshop on Fine Tuning Large Language Models

session banner

Session Description

Abstract: Join us for an exclusive workshop on fine-tuning pre-trained language models using Microsoft Olive. Optimizes the fine-tuning process both in the cloud and locally. Deep dive into advanced techniques, gain hands-on experience, and practical insights to elevate your NLP projects. Achieve state-of-the-art performance and unlock new possibilities in NLP. Enhance your skills and stay ahead in the rapidly evolving field of NLP.

Session Overview

Introduction and Overview (15 minutes)

  • Welcome and objectives
  • Overview of Fine Tuning
  • Solution Scenario

0. Setting Up the Environment (15 minutes)

  • Step-by-step guide to setting your VScode and CLI
  • This step has been completed if your using Skillable labs
Lab #TitleDescription
0Set upLearn how to set-up your Azure resources for this lab.

1. Login to Azure AI and Setup Compute Node (15 minutes)

  • Setting up a Cloud GPU environment
Lab #TitleDescription
1Set upLogin to your AI Hub and Project and deploy a GPU Compute resource.

2. Data Preperation (15 minutes)

  • Creating Synthentic Data using GPTs
Lab #TitleDescription
2Data PrepLearn how to prepare data for Finetuning and evaluation.

3. Fine-Tuning Basics (40 minutes)

  • Understanding pre-trained models
  • Introduction to fine-tuning techniques
  • Hyperparameter tuning
  • Data augmentation strategies
  • Hands-on exercise: Implementing advanced techniques
  • Hands-on exercise: Fine-tuning a simple model
Lab #TitleDescription
3Finetuning with Azure AI FoundryLearn how to finetune with Azure AI Foundry

4. Deployment of a Model (45 minutes)

  • Deployment strategies on Azure
  • Local deployment considerations
  • Deploy the Model: Once fine-tuned, deploy the model using the managed compute deployment option
  • Create an Endpoint: Set up an endpoint for real-time inference
  • Test the Endpoint: Use sample data to test the deployed model and ensure it's working correctly
Lab #TitleDescription
4Deploying models to a cloud endpointLearn how to deploy models to a cloud endpoint for inference using Azure AI Foundry.

5. Optimizing Performance (30 minutes)

  • Monitoring and evaluating model performance
  • Using Microsoft Olive for optimization
  • Hands-on exercise: Performance tuning
Lab #TitleDescription
5Optimize your model for Inference using Microsoft OliveLearn to optimize your model for on-device inference using Olive. This will include quantization methods and ONNX runtime optimizations.

6. Evaluation of Fine-Tuned Models (45 minutes)

  • Evaluating the fine-tuned model
  • Responsible AI considerations
  • Hands-on exercise: Evaluating the model
Lab #TitleDescription
6How to evaluate AI modelsIn this lab we show you how to evaluate your models to ensure they give trustworthy and safe responses.

7. Consumption of the Model (30 minutes)

  • Using .NET Aspire Application to consumed the fine tuned model
  • Optimize the model for specific hardware
Lab #TitleDescription
7Bring it all together in an appIn this lab we build an application that consumes the AI models you trained and optimized in previous labs. The application will call 2 different models: 1 model will be in the cloud and the other will be on-device.

8. Clean Up

  • Remove Azure Resources and Cleanup Resource Groups
Lab #TitleDescription
8Clean upIn this lab, we clean up all the resources.

9. Q&A and Wrap-Up (15 minutes)

  • Open floor for questions
  • Recap of key takeaways
  • Next steps and additional resources

Duration

4 hours

Learning Outcomes

  • Understand how to fine tune Language Models
  • Create synethic data
  • Fine-Tuning techniques and best practices​

Technology Used

  • Azure AI
  • Azure Machine Learning
  • Microsoft Olive
  • Microsoft ONNX Runtime

Additional Resources and Continued Learning

ResourcesLinksDescription
Session SlidesViewReview the slides presented during the workshop at your own pace

Content Owners

Lee Stott
Lee Stott

📢
Kinfey Lo
Kinfey Lo

Sam Kemp
Sam Kemp

📢

Responsible AI

Microsoft is committed to helping our customers use our AI products responsibly, sharing our learnings, and building trust-based partnerships through tools like Transparency Notes and Impact Assessments. Many of these resources can be found at https://aka.ms/RAI. Microsoft’s approach to responsible AI is grounded in our AI principles of fairness, reliability and safety, privacy and security, inclusiveness, transparency, and accountability.

Large-scale natural language, image, and speech models - like the ones used in this sample - can potentially behave in ways that are unfair, unreliable, or offensive, in turn causing harms. Please consult the Azure OpenAI service Transparency note to be informed about risks and limitations.

The recommended approach to mitigating these risks is to include a safety system in your architecture that can detect and prevent harmful behavior. Azure AI Content Safety provides an independent layer of protection, able to detect harmful user-generated and AI-generated content in applications and services. Azure AI Content Safety includes text and image APIs that allow you to detect material that is harmful. We also have an interactive Content Safety Studio that allows you to view, explore and try out sample code for detecting harmful content across different modalities. The following quickstart documentation guides you through making requests to the service.

Another aspect to take into account is the overall application performance. With multi-modal and multi-models applications, we consider performance to mean that the system performs as you and your users expect, including not generating harmful outputs. It's important to assess the performance of your overall application using generation quality and risk and safety metrics.

You can evaluate your AI application in your development environment using the prompt flow SDK. Given either a test dataset or a target, your generative AI application generations are quantitatively measured with built-in evaluators or custom evaluators of your choice. To get started with the prompt flow sdk to evaluate your system, you can follow the quickstart guide. Once you execute an evaluation run, you can visualize the results in Azure AI Studio.

About

Choosing the right finetuning technique, and discover tools for finetuning. A scenario will be used to provide real- world scenario for fine tuning, and optimization techniques

Resources

Code of conduct

Security policy

Stars

16 stars

Watchers

2 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

GitHub contributorsGitHub issuesGitHub pull-requestsPRs Welcome

GitHub watchersGitHub forksGitHub starsAzure AI Community Discord

Unlocking NLP Potential: Fine-Tuning with Microsoft Olive PRE016

Slide Deck

Fine-Tuning Workshop

This repository is for the Ignite 2024 PreDay Workshop on Fine Tuning Large Language Models

session banner

Session Description

Abstract: Join us for an exclusive workshop on fine-tuning pre-trained language models using Microsoft Olive. Optimizes the fine-tuning process both in the cloud and locally. Deep dive into advanced techniques, gain hands-on experience, and practical insights to elevate your NLP projects. Achieve state-of-the-art performance and unlock new possibilities in NLP. Enhance your skills and stay ahead in the rapidly evolving field of NLP.

Session Overview

Introduction and Overview (15 minutes)

  • Welcome and objectives
  • Overview of Fine Tuning
  • Solution Scenario

0. Setting Up the Environment (15 minutes)

  • Step-by-step guide to setting your VScode and CLI
  • This step has been completed if your using Skillable labs
Lab #TitleDescription
0Set upLearn how to set-up your Azure resources for this lab.

1. Login to Azure AI and Setup Compute Node (15 minutes)

  • Setting up a Cloud GPU environment
Lab #TitleDescription
1Set upLogin to your AI Hub and Project and deploy a GPU Compute resource.

2. Data Preperation (15 minutes)

  • Creating Synthentic Data using GPTs
Lab #TitleDescription
2Data PrepLearn how to prepare data for Finetuning and evaluation.

3. Fine-Tuning Basics (40 minutes)

  • Understanding pre-trained models
  • Introduction to fine-tuning techniques
  • Hyperparameter tuning
  • Data augmentation strategies
  • Hands-on exercise: Implementing advanced techniques
  • Hands-on exercise: Fine-tuning a simple model
Lab #TitleDescription
3Finetuning with Azure AI FoundryLearn how to finetune with Azure AI Foundry

4. Deployment of a Model (45 minutes)

  • Deployment strategies on Azure
  • Local deployment considerations
  • Deploy the Model: Once fine-tuned, deploy the model using the managed compute deployment option
  • Create an Endpoint: Set up an endpoint for real-time inference
  • Test the Endpoint: Use sample data to test the deployed model and ensure it's working correctly
Lab #TitleDescription
4Deploying models to a cloud endpointLearn how to deploy models to a cloud endpoint for inference using Azure AI Foundry.

5. Optimizing Performance (30 minutes)

  • Monitoring and evaluating model performance
  • Using Microsoft Olive for optimization
  • Hands-on exercise: Performance tuning
Lab #TitleDescription
5Optimize your model for Inference using Microsoft OliveLearn to optimize your model for on-device inference using Olive. This will include quantization methods and ONNX runtime optimizations.

6. Evaluation of Fine-Tuned Models (45 minutes)

  • Evaluating the fine-tuned model
  • Responsible AI considerations
  • Hands-on exercise: Evaluating the model
Lab #TitleDescription
6How to evaluate AI modelsIn this lab we show you how to evaluate your models to ensure they give trustworthy and safe responses.

7. Consumption of the Model (30 minutes)

  • Using .NET Aspire Application to consumed the fine tuned model
  • Optimize the model for specific hardware
Lab #TitleDescription
7Bring it all together in an appIn this lab we build an application that consumes the AI models you trained and optimized in previous labs. The application will call 2 different models: 1 model will be in the cloud and the other will be on-device.

8. Clean Up

  • Remove Azure Resources and Cleanup Resource Groups
Lab #TitleDescription
8Clean upIn this lab, we clean up all the resources.

9. Q&A and Wrap-Up (15 minutes)

  • Open floor for questions
  • Recap of key takeaways
  • Next steps and additional resources

Duration

4 hours

Learning Outcomes

  • Understand how to fine tune Language Models
  • Create synethic data
  • Fine-Tuning techniques and best practices​

Technology Used

  • Azure AI
  • Azure Machine Learning
  • Microsoft Olive
  • Microsoft ONNX Runtime

Additional Resources and Continued Learning

ResourcesLinksDescription
Session SlidesViewReview the slides presented during the workshop at your own pace

Content Owners

Lee Stott
Lee Stott

📢
Kinfey Lo
Kinfey Lo

Sam Kemp
Sam Kemp

📢

Responsible AI

Microsoft is committed to helping our customers use our AI products responsibly, sharing our learnings, and building trust-based partnerships through tools like Transparency Notes and Impact Assessments. Many of these resources can be found at https://aka.ms/RAI. Microsoft’s approach to responsible AI is grounded in our AI principles of fairness, reliability and safety, privacy and security, inclusiveness, transparency, and accountability.

Large-scale natural language, image, and speech models - like the ones used in this sample - can potentially behave in ways that are unfair, unreliable, or offensive, in turn causing harms. Please consult the Azure OpenAI service Transparency note to be informed about risks and limitations.

The recommended approach to mitigating these risks is to include a safety system in your architecture that can detect and prevent harmful behavior. Azure AI Content Safety provides an independent layer of protection, able to detect harmful user-generated and AI-generated content in applications and services. Azure AI Content Safety includes text and image APIs that allow you to detect material that is harmful. We also have an interactive Content Safety Studio that allows you to view, explore and try out sample code for detecting harmful content across different modalities. The following quickstart documentation guides you through making requests to the service.

Another aspect to take into account is the overall application performance. With multi-modal and multi-models applications, we consider performance to mean that the system performs as you and your users expect, including not generating harmful outputs. It's important to assess the performance of your overall application using generation quality and risk and safety metrics.

You can evaluate your AI application in your development environment using the prompt flow SDK. Given either a test dataset or a target, your generative AI application generations are quantitatively measured with built-in evaluators or custom evaluators of your choice. To get started with the prompt flow sdk to evaluate your system, you can follow the quickstart guide. Once you execute an evaluation run, you can visualize the results in Azure AI Studio.

About

Choosing the right finetuning technique, and discover tools for finetuning. A scenario will be used to provide real- world scenario for fine tuning, and optimization techniques

Resources

Code of conduct

Security policy

Stars

16 stars

Watchers

2 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

GitHub contributorsGitHub issuesGitHub pull-requestsPRs Welcome

GitHub watchersGitHub forksGitHub starsAzure AI Community Discord

Unlocking NLP Potential: Fine-Tuning with Microsoft Olive PRE016

Slide Deck

Fine-Tuning Workshop

This repository is for the Ignite 2024 PreDay Workshop on Fine Tuning Large Language Models

session banner

Session Description

Abstract: Join us for an exclusive workshop on fine-tuning pre-trained language models using Microsoft Olive. Optimizes the fine-tuning process both in the cloud and locally. Deep dive into advanced techniques, gain hands-on experience, and practical insights to elevate your NLP projects. Achieve state-of-the-art performance and unlock new possibilities in NLP. Enhance your skills and stay ahead in the rapidly evolving field of NLP.

Session Overview

Introduction and Overview (15 minutes)

  • Welcome and objectives
  • Overview of Fine Tuning
  • Solution Scenario

0. Setting Up the Environment (15 minutes)

  • Step-by-step guide to setting your VScode and CLI
  • This step has been completed if your using Skillable labs
Lab #TitleDescription
0Set upLearn how to set-up your Azure resources for this lab.

1. Login to Azure AI and Setup Compute Node (15 minutes)

  • Setting up a Cloud GPU environment
Lab #TitleDescription
1Set upLogin to your AI Hub and Project and deploy a GPU Compute resource.

2. Data Preperation (15 minutes)

  • Creating Synthentic Data using GPTs
Lab #TitleDescription
2Data PrepLearn how to prepare data for Finetuning and evaluation.

3. Fine-Tuning Basics (40 minutes)

  • Understanding pre-trained models
  • Introduction to fine-tuning techniques
  • Hyperparameter tuning
  • Data augmentation strategies
  • Hands-on exercise: Implementing advanced techniques
  • Hands-on exercise: Fine-tuning a simple model
Lab #TitleDescription
3Finetuning with Azure AI FoundryLearn how to finetune with Azure AI Foundry

4. Deployment of a Model (45 minutes)

  • Deployment strategies on Azure
  • Local deployment considerations
  • Deploy the Model: Once fine-tuned, deploy the model using the managed compute deployment option
  • Create an Endpoint: Set up an endpoint for real-time inference
  • Test the Endpoint: Use sample data to test the deployed model and ensure it's working correctly
Lab #TitleDescription
4Deploying models to a cloud endpointLearn how to deploy models to a cloud endpoint for inference using Azure AI Foundry.

5. Optimizing Performance (30 minutes)

  • Monitoring and evaluating model performance
  • Using Microsoft Olive for optimization
  • Hands-on exercise: Performance tuning
Lab #TitleDescription
5Optimize your model for Inference using Microsoft OliveLearn to optimize your model for on-device inference using Olive. This will include quantization methods and ONNX runtime optimizations.

6. Evaluation of Fine-Tuned Models (45 minutes)

  • Evaluating the fine-tuned model
  • Responsible AI considerations
  • Hands-on exercise: Evaluating the model
Lab #TitleDescription
6How to evaluate AI modelsIn this lab we show you how to evaluate your models to ensure they give trustworthy and safe responses.

7. Consumption of the Model (30 minutes)

  • Using .NET Aspire Application to consumed the fine tuned model
  • Optimize the model for specific hardware
Lab #TitleDescription
7Bring it all together in an appIn this lab we build an application that consumes the AI models you trained and optimized in previous labs. The application will call 2 different models: 1 model will be in the cloud and the other will be on-device.

8. Clean Up

  • Remove Azure Resources and Cleanup Resource Groups
Lab #TitleDescription
8Clean upIn this lab, we clean up all the resources.

9. Q&A and Wrap-Up (15 minutes)

  • Open floor for questions
  • Recap of key takeaways
  • Next steps and additional resources

Duration

4 hours

Learning Outcomes

  • Understand how to fine tune Language Models
  • Create synethic data
  • Fine-Tuning techniques and best practices​

Technology Used

  • Azure AI
  • Azure Machine Learning
  • Microsoft Olive
  • Microsoft ONNX Runtime

Additional Resources and Continued Learning

ResourcesLinksDescription
Session SlidesViewReview the slides presented during the workshop at your own pace

Content Owners

Lee Stott
Lee Stott

📢
Kinfey Lo
Kinfey Lo

Sam Kemp
Sam Kemp

📢

Responsible AI

Microsoft is committed to helping our customers use our AI products responsibly, sharing our learnings, and building trust-based partnerships through tools like Transparency Notes and Impact Assessments. Many of these resources can be found at https://aka.ms/RAI. Microsoft’s approach to responsible AI is grounded in our AI principles of fairness, reliability and safety, privacy and security, inclusiveness, transparency, and accountability.

Large-scale natural language, image, and speech models - like the ones used in this sample - can potentially behave in ways that are unfair, unreliable, or offensive, in turn causing harms. Please consult the Azure OpenAI service Transparency note to be informed about risks and limitations.

The recommended approach to mitigating these risks is to include a safety system in your architecture that can detect and prevent harmful behavior. Azure AI Content Safety provides an independent layer of protection, able to detect harmful user-generated and AI-generated content in applications and services. Azure AI Content Safety includes text and image APIs that allow you to detect material that is harmful. We also have an interactive Content Safety Studio that allows you to view, explore and try out sample code for detecting harmful content across different modalities. The following quickstart documentation guides you through making requests to the service.

Another aspect to take into account is the overall application performance. With multi-modal and multi-models applications, we consider performance to mean that the system performs as you and your users expect, including not generating harmful outputs. It's important to assess the performance of your overall application using generation quality and risk and safety metrics.

You can evaluate your AI application in your development environment using the prompt flow SDK. Given either a test dataset or a target, your generative AI application generations are quantitatively measured with built-in evaluators or custom evaluators of your choice. To get started with the prompt flow sdk to evaluate your system, you can follow the quickstart guide. Once you execute an evaluation run, you can visualize the results in Azure AI Studio.

About

Choosing the right finetuning technique, and discover tools for finetuning. A scenario will be used to provide real- world scenario for fine tuning, and optimization techniques

Resources

Code of conduct

Security policy

Stars

16 stars

Watchers

2 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content

Repository files navigation

GitHub contributorsGitHub issuesGitHub pull-requestsPRs Welcome

GitHub watchersGitHub forksGitHub starsAzure AI Community Discord

Unlocking NLP Potential: Fine-Tuning with Microsoft Olive PRE016

Slide Deck

Fine-Tuning Workshop

This repository is for the Ignite 2024 PreDay Workshop on Fine Tuning Large Language Models

session banner

Session Description

Abstract: Join us for an exclusive workshop on fine-tuning pre-trained language models using Microsoft Olive. Optimizes the fine-tuning process both in the cloud and locally. Deep dive into advanced techniques, gain hands-on experience, and practical insights to elevate your NLP projects. Achieve state-of-the-art performance and unlock new possibilities in NLP. Enhance your skills and stay ahead in the rapidly evolving field of NLP.

Session Overview

Introduction and Overview (15 minutes)

  • Welcome and objectives
  • Overview of Fine Tuning
  • Solution Scenario

0. Setting Up the Environment (15 minutes)

  • Step-by-step guide to setting your VScode and CLI
  • This step has been completed if your using Skillable labs
Lab #TitleDescription
0Set upLearn how to set-up your Azure resources for this lab.

1. Login to Azure AI and Setup Compute Node (15 minutes)

  • Setting up a Cloud GPU environment
Lab #TitleDescription
1Set upLogin to your AI Hub and Project and deploy a GPU Compute resource.

2. Data Preperation (15 minutes)

  • Creating Synthentic Data using GPTs
Lab #TitleDescription
2Data PrepLearn how to prepare data for Finetuning and evaluation.

3. Fine-Tuning Basics (40 minutes)

  • Understanding pre-trained models
  • Introduction to fine-tuning techniques
  • Hyperparameter tuning
  • Data augmentation strategies
  • Hands-on exercise: Implementing advanced techniques
  • Hands-on exercise: Fine-tuning a simple model
Lab #TitleDescription
3Finetuning with Azure AI FoundryLearn how to finetune with Azure AI Foundry

4. Deployment of a Model (45 minutes)

  • Deployment strategies on Azure
  • Local deployment considerations
  • Deploy the Model: Once fine-tuned, deploy the model using the managed compute deployment option
  • Create an Endpoint: Set up an endpoint for real-time inference
  • Test the Endpoint: Use sample data to test the deployed model and ensure it's working correctly
Lab #TitleDescription
4Deploying models to a cloud endpointLearn how to deploy models to a cloud endpoint for inference using Azure AI Foundry.

5. Optimizing Performance (30 minutes)

  • Monitoring and evaluating model performance
  • Using Microsoft Olive for optimization
  • Hands-on exercise: Performance tuning
Lab #TitleDescription
5Optimize your model for Inference using Microsoft OliveLearn to optimize your model for on-device inference using Olive. This will include quantization methods and ONNX runtime optimizations.

6. Evaluation of Fine-Tuned Models (45 minutes)

  • Evaluating the fine-tuned model
  • Responsible AI considerations
  • Hands-on exercise: Evaluating the model
Lab #TitleDescription
6How to evaluate AI modelsIn this lab we show you how to evaluate your models to ensure they give trustworthy and safe responses.

7. Consumption of the Model (30 minutes)

  • Using .NET Aspire Application to consumed the fine tuned model
  • Optimize the model for specific hardware
Lab #TitleDescription
7Bring it all together in an appIn this lab we build an application that consumes the AI models you trained and optimized in previous labs. The application will call 2 different models: 1 model will be in the cloud and the other will be on-device.

8. Clean Up

  • Remove Azure Resources and Cleanup Resource Groups
Lab #TitleDescription
8Clean upIn this lab, we clean up all the resources.

9. Q&A and Wrap-Up (15 minutes)

  • Open floor for questions
  • Recap of key takeaways
  • Next steps and additional resources

Duration

4 hours

Learning Outcomes

  • Understand how to fine tune Language Models
  • Create synethic data
  • Fine-Tuning techniques and best practices​

Technology Used

  • Azure AI
  • Azure Machine Learning
  • Microsoft Olive
  • Microsoft ONNX Runtime

Additional Resources and Continued Learning

ResourcesLinksDescription
Session SlidesViewReview the slides presented during the workshop at your own pace

Content Owners

Lee Stott
Lee Stott

📢
Kinfey Lo
Kinfey Lo

Sam Kemp
Sam Kemp

📢

Responsible AI

Microsoft is committed to helping our customers use our AI products responsibly, sharing our learnings, and building trust-based partnerships through tools like Transparency Notes and Impact Assessments. Many of these resources can be found at https://aka.ms/RAI. Microsoft’s approach to responsible AI is grounded in our AI principles of fairness, reliability and safety, privacy and security, inclusiveness, transparency, and accountability.

Large-scale natural language, image, and speech models - like the ones used in this sample - can potentially behave in ways that are unfair, unreliable, or offensive, in turn causing harms. Please consult the Azure OpenAI service Transparency note to be informed about risks and limitations.

The recommended approach to mitigating these risks is to include a safety system in your architecture that can detect and prevent harmful behavior. Azure AI Content Safety provides an independent layer of protection, able to detect harmful user-generated and AI-generated content in applications and services. Azure AI Content Safety includes text and image APIs that allow you to detect material that is harmful. We also have an interactive Content Safety Studio that allows you to view, explore and try out sample code for detecting harmful content across different modalities. The following quickstart documentation guides you through making requests to the service.

Another aspect to take into account is the overall application performance. With multi-modal and multi-models applications, we consider performance to mean that the system performs as you and your users expect, including not generating harmful outputs. It's important to assess the performance of your overall application using generation quality and risk and safety metrics.

You can evaluate your AI application in your development environment using the prompt flow SDK. Given either a test dataset or a target, your generative AI application generations are quantitatively measured with built-in evaluators or custom evaluators of your choice. To get started with the prompt flow sdk to evaluate your system, you can follow the quickstart guide. Once you execute an evaluation run, you can visualize the results in Azure AI Studio.

About

Choosing the right finetuning technique, and discover tools for finetuning. A scenario will be used to provide real- world scenario for fine tuning, and optimization techniques

Resources

Code of conduct

Security policy

Stars

16 stars

Watchers

2 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

GitHub contributorsGitHub issuesGitHub pull-requestsPRs Welcome

GitHub watchersGitHub forksGitHub starsAzure AI Community Discord

Unlocking NLP Potential: Fine-Tuning with Microsoft Olive PRE016

Slide Deck

Fine-Tuning Workshop

This repository is for the Ignite 2024 PreDay Workshop on Fine Tuning Large Language Models

session banner

Session Description

Abstract: Join us for an exclusive workshop on fine-tuning pre-trained language models using Microsoft Olive. Optimizes the fine-tuning process both in the cloud and locally. Deep dive into advanced techniques, gain hands-on experience, and practical insights to elevate your NLP projects. Achieve state-of-the-art performance and unlock new possibilities in NLP. Enhance your skills and stay ahead in the rapidly evolving field of NLP.

Session Overview

Introduction and Overview (15 minutes)

  • Welcome and objectives
  • Overview of Fine Tuning
  • Solution Scenario

0. Setting Up the Environment (15 minutes)

  • Step-by-step guide to setting your VScode and CLI
  • This step has been completed if your using Skillable labs
Lab #TitleDescription
0Set upLearn how to set-up your Azure resources for this lab.

1. Login to Azure AI and Setup Compute Node (15 minutes)

  • Setting up a Cloud GPU environment
Lab #TitleDescription
1Set upLogin to your AI Hub and Project and deploy a GPU Compute resource.

2. Data Preperation (15 minutes)

  • Creating Synthentic Data using GPTs
Lab #TitleDescription
2Data PrepLearn how to prepare data for Finetuning and evaluation.

3. Fine-Tuning Basics (40 minutes)

  • Understanding pre-trained models
  • Introduction to fine-tuning techniques
  • Hyperparameter tuning
  • Data augmentation strategies
  • Hands-on exercise: Implementing advanced techniques
  • Hands-on exercise: Fine-tuning a simple model
Lab #TitleDescription
3Finetuning with Azure AI FoundryLearn how to finetune with Azure AI Foundry

4. Deployment of a Model (45 minutes)

  • Deployment strategies on Azure
  • Local deployment considerations
  • Deploy the Model: Once fine-tuned, deploy the model using the managed compute deployment option
  • Create an Endpoint: Set up an endpoint for real-time inference
  • Test the Endpoint: Use sample data to test the deployed model and ensure it's working correctly
Lab #TitleDescription
4Deploying models to a cloud endpointLearn how to deploy models to a cloud endpoint for inference using Azure AI Foundry.

5. Optimizing Performance (30 minutes)

  • Monitoring and evaluating model performance
  • Using Microsoft Olive for optimization
  • Hands-on exercise: Performance tuning
Lab #TitleDescription
5Optimize your model for Inference using Microsoft OliveLearn to optimize your model for on-device inference using Olive. This will include quantization methods and ONNX runtime optimizations.

6. Evaluation of Fine-Tuned Models (45 minutes)

  • Evaluating the fine-tuned model
  • Responsible AI considerations
  • Hands-on exercise: Evaluating the model
Lab #TitleDescription
6How to evaluate AI modelsIn this lab we show you how to evaluate your models to ensure they give trustworthy and safe responses.

7. Consumption of the Model (30 minutes)

  • Using .NET Aspire Application to consumed the fine tuned model
  • Optimize the model for specific hardware
Lab #TitleDescription
7Bring it all together in an appIn this lab we build an application that consumes the AI models you trained and optimized in previous labs. The application will call 2 different models: 1 model will be in the cloud and the other will be on-device.

8. Clean Up

  • Remove Azure Resources and Cleanup Resource Groups
Lab #TitleDescription
8Clean upIn this lab, we clean up all the resources.

9. Q&A and Wrap-Up (15 minutes)

  • Open floor for questions
  • Recap of key takeaways
  • Next steps and additional resources

Duration

4 hours

Learning Outcomes

  • Understand how to fine tune Language Models
  • Create synethic data
  • Fine-Tuning techniques and best practices​

Technology Used

  • Azure AI
  • Azure Machine Learning
  • Microsoft Olive
  • Microsoft ONNX Runtime

Additional Resources and Continued Learning

ResourcesLinksDescription
Session SlidesViewReview the slides presented during the workshop at your own pace

Content Owners

Lee Stott
Lee Stott

📢
Kinfey Lo
Kinfey Lo

Sam Kemp
Sam Kemp

📢

Responsible AI

Microsoft is committed to helping our customers use our AI products responsibly, sharing our learnings, and building trust-based partnerships through tools like Transparency Notes and Impact Assessments. Many of these resources can be found at https://aka.ms/RAI. Microsoft’s approach to responsible AI is grounded in our AI principles of fairness, reliability and safety, privacy and security, inclusiveness, transparency, and accountability.

Large-scale natural language, image, and speech models - like the ones used in this sample - can potentially behave in ways that are unfair, unreliable, or offensive, in turn causing harms. Please consult the Azure OpenAI service Transparency note to be informed about risks and limitations.

The recommended approach to mitigating these risks is to include a safety system in your architecture that can detect and prevent harmful behavior. Azure AI Content Safety provides an independent layer of protection, able to detect harmful user-generated and AI-generated content in applications and services. Azure AI Content Safety includes text and image APIs that allow you to detect material that is harmful. We also have an interactive Content Safety Studio that allows you to view, explore and try out sample code for detecting harmful content across different modalities. The following quickstart documentation guides you through making requests to the service.

Another aspect to take into account is the overall application performance. With multi-modal and multi-models applications, we consider performance to mean that the system performs as you and your users expect, including not generating harmful outputs. It's important to assess the performance of your overall application using generation quality and risk and safety metrics.

You can evaluate your AI application in your development environment using the prompt flow SDK. Given either a test dataset or a target, your generative AI application generations are quantitatively measured with built-in evaluators or custom evaluators of your choice. To get started with the prompt flow sdk to evaluate your system, you can follow the quickstart guide. Once you execute an evaluation run, you can visualize the results in Azure AI Studio.

About

Choosing the right finetuning technique, and discover tools for finetuning. A scenario will be used to provide real- world scenario for fine tuning, and optimization techniques

Resources

Code of conduct

Security policy

Stars

16 stars

Watchers

2 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

GitHub contributorsGitHub issuesGitHub pull-requestsPRs Welcome

GitHub watchersGitHub forksGitHub starsAzure AI Community Discord

Unlocking NLP Potential: Fine-Tuning with Microsoft Olive PRE016

Slide Deck

Fine-Tuning Workshop

This repository is for the Ignite 2024 PreDay Workshop on Fine Tuning Large Language Models

session banner

Session Description

Abstract: Join us for an exclusive workshop on fine-tuning pre-trained language models using Microsoft Olive. Optimizes the fine-tuning process both in the cloud and locally. Deep dive into advanced techniques, gain hands-on experience, and practical insights to elevate your NLP projects. Achieve state-of-the-art performance and unlock new possibilities in NLP. Enhance your skills and stay ahead in the rapidly evolving field of NLP.

Session Overview

Introduction and Overview (15 minutes)

  • Welcome and objectives
  • Overview of Fine Tuning
  • Solution Scenario

0. Setting Up the Environment (15 minutes)

  • Step-by-step guide to setting your VScode and CLI
  • This step has been completed if your using Skillable labs
Lab #TitleDescription
0Set upLearn how to set-up your Azure resources for this lab.

1. Login to Azure AI and Setup Compute Node (15 minutes)

  • Setting up a Cloud GPU environment
Lab #TitleDescription
1Set upLogin to your AI Hub and Project and deploy a GPU Compute resource.

2. Data Preperation (15 minutes)

  • Creating Synthentic Data using GPTs
Lab #TitleDescription
2Data PrepLearn how to prepare data for Finetuning and evaluation.

3. Fine-Tuning Basics (40 minutes)

  • Understanding pre-trained models
  • Introduction to fine-tuning techniques
  • Hyperparameter tuning
  • Data augmentation strategies
  • Hands-on exercise: Implementing advanced techniques
  • Hands-on exercise: Fine-tuning a simple model
Lab #TitleDescription
3Finetuning with Azure AI FoundryLearn how to finetune with Azure AI Foundry

4. Deployment of a Model (45 minutes)

  • Deployment strategies on Azure
  • Local deployment considerations
  • Deploy the Model: Once fine-tuned, deploy the model using the managed compute deployment option
  • Create an Endpoint: Set up an endpoint for real-time inference
  • Test the Endpoint: Use sample data to test the deployed model and ensure it's working correctly
Lab #TitleDescription
4Deploying models to a cloud endpointLearn how to deploy models to a cloud endpoint for inference using Azure AI Foundry.

5. Optimizing Performance (30 minutes)

  • Monitoring and evaluating model performance
  • Using Microsoft Olive for optimization
  • Hands-on exercise: Performance tuning
Lab #TitleDescription
5Optimize your model for Inference using Microsoft OliveLearn to optimize your model for on-device inference using Olive. This will include quantization methods and ONNX runtime optimizations.

6. Evaluation of Fine-Tuned Models (45 minutes)

  • Evaluating the fine-tuned model
  • Responsible AI considerations
  • Hands-on exercise: Evaluating the model
Lab #TitleDescription
6How to evaluate AI modelsIn this lab we show you how to evaluate your models to ensure they give trustworthy and safe responses.

7. Consumption of the Model (30 minutes)

  • Using .NET Aspire Application to consumed the fine tuned model
  • Optimize the model for specific hardware
Lab #TitleDescription
7Bring it all together in an appIn this lab we build an application that consumes the AI models you trained and optimized in previous labs. The application will call 2 different models: 1 model will be in the cloud and the other will be on-device.

8. Clean Up

  • Remove Azure Resources and Cleanup Resource Groups
Lab #TitleDescription
8Clean upIn this lab, we clean up all the resources.

9. Q&A and Wrap-Up (15 minutes)

  • Open floor for questions
  • Recap of key takeaways
  • Next steps and additional resources

Duration

4 hours

Learning Outcomes

  • Understand how to fine tune Language Models
  • Create synethic data
  • Fine-Tuning techniques and best practices​

Technology Used

  • Azure AI
  • Azure Machine Learning
  • Microsoft Olive
  • Microsoft ONNX Runtime

Additional Resources and Continued Learning

ResourcesLinksDescription
Session SlidesViewReview the slides presented during the workshop at your own pace

Content Owners

Lee Stott
Lee Stott

📢
Kinfey Lo
Kinfey Lo

Sam Kemp
Sam Kemp

📢

Responsible AI

Microsoft is committed to helping our customers use our AI products responsibly, sharing our learnings, and building trust-based partnerships through tools like Transparency Notes and Impact Assessments. Many of these resources can be found at https://aka.ms/RAI. Microsoft’s approach to responsible AI is grounded in our AI principles of fairness, reliability and safety, privacy and security, inclusiveness, transparency, and accountability.

Large-scale natural language, image, and speech models - like the ones used in this sample - can potentially behave in ways that are unfair, unreliable, or offensive, in turn causing harms. Please consult the Azure OpenAI service Transparency note to be informed about risks and limitations.

The recommended approach to mitigating these risks is to include a safety system in your architecture that can detect and prevent harmful behavior. Azure AI Content Safety provides an independent layer of protection, able to detect harmful user-generated and AI-generated content in applications and services. Azure AI Content Safety includes text and image APIs that allow you to detect material that is harmful. We also have an interactive Content Safety Studio that allows you to view, explore and try out sample code for detecting harmful content across different modalities. The following quickstart documentation guides you through making requests to the service.

Another aspect to take into account is the overall application performance. With multi-modal and multi-models applications, we consider performance to mean that the system performs as you and your users expect, including not generating harmful outputs. It's important to assess the performance of your overall application using generation quality and risk and safety metrics.

You can evaluate your AI application in your development environment using the prompt flow SDK. Given either a test dataset or a target, your generative AI application generations are quantitatively measured with built-in evaluators or custom evaluators of your choice. To get started with the prompt flow sdk to evaluate your system, you can follow the quickstart guide. Once you execute an evaluation run, you can visualize the results in Azure AI Studio.

About

Choosing the right finetuning technique, and discover tools for finetuning. A scenario will be used to provide real- world scenario for fine tuning, and optimization techniques

Resources

Code of conduct

Security policy

Stars

16 stars

Watchers

2 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content

Repository files navigation

GitHub contributorsGitHub issuesGitHub pull-requestsPRs Welcome

GitHub watchersGitHub forksGitHub starsAzure AI Community Discord

Unlocking NLP Potential: Fine-Tuning with Microsoft Olive PRE016

Slide Deck

Fine-Tuning Workshop

This repository is for the Ignite 2024 PreDay Workshop on Fine Tuning Large Language Models

session banner

Session Description

Abstract: Join us for an exclusive workshop on fine-tuning pre-trained language models using Microsoft Olive. Optimizes the fine-tuning process both in the cloud and locally. Deep dive into advanced techniques, gain hands-on experience, and practical insights to elevate your NLP projects. Achieve state-of-the-art performance and unlock new possibilities in NLP. Enhance your skills and stay ahead in the rapidly evolving field of NLP.

Session Overview

Introduction and Overview (15 minutes)

  • Welcome and objectives
  • Overview of Fine Tuning
  • Solution Scenario

0. Setting Up the Environment (15 minutes)

  • Step-by-step guide to setting your VScode and CLI
  • This step has been completed if your using Skillable labs
Lab #TitleDescription
0Set upLearn how to set-up your Azure resources for this lab.

1. Login to Azure AI and Setup Compute Node (15 minutes)

  • Setting up a Cloud GPU environment
Lab #TitleDescription
1Set upLogin to your AI Hub and Project and deploy a GPU Compute resource.

2. Data Preperation (15 minutes)

  • Creating Synthentic Data using GPTs
Lab #TitleDescription
2Data PrepLearn how to prepare data for Finetuning and evaluation.

3. Fine-Tuning Basics (40 minutes)

  • Understanding pre-trained models
  • Introduction to fine-tuning techniques
  • Hyperparameter tuning
  • Data augmentation strategies
  • Hands-on exercise: Implementing advanced techniques
  • Hands-on exercise: Fine-tuning a simple model
Lab #TitleDescription
3Finetuning with Azure AI FoundryLearn how to finetune with Azure AI Foundry

4. Deployment of a Model (45 minutes)

  • Deployment strategies on Azure
  • Local deployment considerations
  • Deploy the Model: Once fine-tuned, deploy the model using the managed compute deployment option
  • Create an Endpoint: Set up an endpoint for real-time inference
  • Test the Endpoint: Use sample data to test the deployed model and ensure it's working correctly
Lab #TitleDescription
4Deploying models to a cloud endpointLearn how to deploy models to a cloud endpoint for inference using Azure AI Foundry.

5. Optimizing Performance (30 minutes)

  • Monitoring and evaluating model performance
  • Using Microsoft Olive for optimization
  • Hands-on exercise: Performance tuning
Lab #TitleDescription
5Optimize your model for Inference using Microsoft OliveLearn to optimize your model for on-device inference using Olive. This will include quantization methods and ONNX runtime optimizations.

6. Evaluation of Fine-Tuned Models (45 minutes)

  • Evaluating the fine-tuned model
  • Responsible AI considerations
  • Hands-on exercise: Evaluating the model
Lab #TitleDescription
6How to evaluate AI modelsIn this lab we show you how to evaluate your models to ensure they give trustworthy and safe responses.

7. Consumption of the Model (30 minutes)

  • Using .NET Aspire Application to consumed the fine tuned model
  • Optimize the model for specific hardware
Lab #TitleDescription
7Bring it all together in an appIn this lab we build an application that consumes the AI models you trained and optimized in previous labs. The application will call 2 different models: 1 model will be in the cloud and the other will be on-device.

8. Clean Up

  • Remove Azure Resources and Cleanup Resource Groups
Lab #TitleDescription
8Clean upIn this lab, we clean up all the resources.

9. Q&A and Wrap-Up (15 minutes)

  • Open floor for questions
  • Recap of key takeaways
  • Next steps and additional resources

Duration

4 hours

Learning Outcomes

  • Understand how to fine tune Language Models
  • Create synethic data
  • Fine-Tuning techniques and best practices​

Technology Used

  • Azure AI
  • Azure Machine Learning
  • Microsoft Olive
  • Microsoft ONNX Runtime

Additional Resources and Continued Learning

ResourcesLinksDescription
Session SlidesViewReview the slides presented during the workshop at your own pace

Content Owners

Lee Stott
Lee Stott

📢
Kinfey Lo
Kinfey Lo

Sam Kemp
Sam Kemp

📢

Responsible AI

Microsoft is committed to helping our customers use our AI products responsibly, sharing our learnings, and building trust-based partnerships through tools like Transparency Notes and Impact Assessments. Many of these resources can be found at https://aka.ms/RAI. Microsoft’s approach to responsible AI is grounded in our AI principles of fairness, reliability and safety, privacy and security, inclusiveness, transparency, and accountability.

Large-scale natural language, image, and speech models - like the ones used in this sample - can potentially behave in ways that are unfair, unreliable, or offensive, in turn causing harms. Please consult the Azure OpenAI service Transparency note to be informed about risks and limitations.

The recommended approach to mitigating these risks is to include a safety system in your architecture that can detect and prevent harmful behavior. Azure AI Content Safety provides an independent layer of protection, able to detect harmful user-generated and AI-generated content in applications and services. Azure AI Content Safety includes text and image APIs that allow you to detect material that is harmful. We also have an interactive Content Safety Studio that allows you to view, explore and try out sample code for detecting harmful content across different modalities. The following quickstart documentation guides you through making requests to the service.

Another aspect to take into account is the overall application performance. With multi-modal and multi-models applications, we consider performance to mean that the system performs as you and your users expect, including not generating harmful outputs. It's important to assess the performance of your overall application using generation quality and risk and safety metrics.

You can evaluate your AI application in your development environment using the prompt flow SDK. Given either a test dataset or a target, your generative AI application generations are quantitatively measured with built-in evaluators or custom evaluators of your choice. To get started with the prompt flow sdk to evaluate your system, you can follow the quickstart guide. Once you execute an evaluation run, you can visualize the results in Azure AI Studio.

About

Choosing the right finetuning technique, and discover tools for finetuning. A scenario will be used to provide real- world scenario for fine tuning, and optimization techniques

Resources

Code of conduct

Security policy

Stars

16 stars

Watchers

2 watching

Forks

Releases

Packages

Used by

Contributors

Languages