Tag Archives: microsoft
New Outlook 2024 Group Mailing
I am new to the New Outlook having used Outlook 2010 for years. Recently I changed ISP and email account to discover I lost Contacts and Calendar. Imported both to New Outlook and then struggled to restore Group Mailing Lists.
Now restored, I tried to send a Group email which failed for the message “try again or try later” . Neither suggestion worked. Even closing and reopening OPutlook didn’t help.
Any advice would be helpful.
Thank you
I am new to the New Outlook having used Outlook 2010 for years. Recently I changed ISP and email account to discover I lost Contacts and Calendar. Imported both to New Outlook and then struggled to restore Group Mailing Lists. Now restored, I tried to send a Group email which failed for the message “try again or try later” . Neither suggestion worked. Even closing and reopening OPutlook didn’t help. Any advice would be helpful. Thank you Read More
Passed MS AZ-900 Exam but No Certificate
I passed the MS AZ-900 exam two weeks but I have no certificate.
I passed the MS AZ-900 exam two weeks but I have no certificate. Read More
Median of a column of all numbers in the column that are greater than zero
I have a column of 10 dollar amounts. A certain number of those cells are filled with dollars over zero; the remainder, if any, are always filled with zero dollars. How can I find the MEDIAN of only the amounts greater than zero in a single formula without having to modify the range of the formula every time I need the MEDIAN value of the amounts greater than zero dollars?
I used the MEDIAN formula applied to all ten values in the column and was returned a median value that didn’t return the correct value because 4 of the entries were zero dollars. So, I adjusted the range in the MEDIAN formula for only the 6 entries that were greater than zero and it returned what I expected. Is there a formula that would allow the MEDIAN to only consider values over zero$?
I have a column of 10 dollar amounts. A certain number of those cells are filled with dollars over zero; the remainder, if any, are always filled with zero dollars. How can I find the MEDIAN of only the amounts greater than zero in a single formula without having to modify the range of the formula every time I need the MEDIAN value of the amounts greater than zero dollars? I used the MEDIAN formula applied to all ten values in the column and was returned a median value that didn’t return the correct value because 4 of the entries were zero dollars. So, I adjusted the range in the MEDIAN formula for only the 6 entries that were greater than zero and it returned what I expected. Is there a formula that would allow the MEDIAN to only consider values over zero$? Read More
मीशो ऑनलाइन पर शिकायत कैसे करें?
ग्राहक सहायता टीम (08102↑611↑817} तक पहुंच सकते हैं और जितनी जल्दी हो सके अपनी शिकायत दर्ज कर सकते हैं।
ग्राहक सहायता टीम (08102↑611↑817} तक पहुंच सकते हैं और जितनी जल्दी हो सके अपनी शिकायत दर्ज कर सकते हैं। Read More
Announcing Windows Server Preview Build 26311
Announcing Windows Server Preview Build 26311
Hello Windows Server Insiders!
Today we are pleased to release a new build of the next Windows Server Long-Term Servicing Channel (LTSC) Preview that contains both the Desktop Experience and Server Core installation options for Datacenter and Standard editions, Annual Channel for Container Host and Azure Edition (for VM evaluation only). Branding has been updated for the upcoming release, Windows Server 2025, in this preview – when reporting issues please refer to Windows Server 2025 preview. If you signed up for Server Flighting, you should receive this new build automatically.
What’s New
Windows Defender Application Control for Business (WDAC)
Windows Defender Application Control (WDAC) for business is a software-based security layer that reduces attack surface by enforcing an explicit list of software that is allowed to run. For Windows Server 2025, we have provided Microsoft defined ‘default policy’ which can be applied to the server via PowerShell cmdlets, powered by our ‘Security configuration platform called ‘OSconfig’.
To learn more, please review Windows Defender Application Control for Business (WDAC) – Microsoft Community Hub.
Windows Server 2025 Security Baseline Preview
Beginning with build 26296, we are pleased to announce the availability of the Windows Server 2025 Security Baseline Preview. You can enable security right from the start by applying the recommended security posture for your device or VM role through application of a tailored security baseline, with over 350 preconfigured Windows security settings that help you apply and enforce granular security settings that support best practices recommended by Microsoft and Industry standards. We have organized the Windows Server 2025 Security Baseline content into three categories based on server role:
Domain Controller (DC)
Member Server
Workgroup Member
Note: You should preview the security baseline only on test systems. While there is a ‘Remove’ command, not all configurations can be reversed.
To learn more, please review Announcing Windows Server 2025 Security Baseline Preview – Microsoft Community Hub.
Windows Server Flighting is here!!
If you signed up for Server Flighting, you should receive this new build automatically later today.
For more information, see Welcome to Windows Insider flighting on Windows Server – Microsoft Community Hub
The new Feedback Hub app is now available for Server Desktop users! The app should automatically update with the latest version, but if it does not, simply Check for updates in the app’s settings tab.
Known Issues
Download Windows Server Insider Preview (microsoft.com)
Flighting: The label for this flight may incorrectly reference Windows 11. However, when selected, the package installed is the Windows Server update. Please ignore the label and proceed with installing your flight. This issue will be addressed in a future release.
WinPE – Powershell Scripts: Applying the WinPE-Powershell optional component does not properly install Powershell in WinPE. As a result, Powershell cmdlets will fail. Customers who are dependent on Powershell in WinPE should not use this build.
If you are validating upgrades from Windows Server 2019 or 2022, we do not recommend that you use this build as intermittent upgrade failures have been identified for this build.
This build has an issue where archiving eventlogs with “wevetutil al” command causes the Windows Event Log service to crash, and the archive operation to fail. The service must be restarted by executing “Start-Service EventLog” from an administrative command line prompt.
If you have Secure Launch/DRTM code path enabled, we do not recommend that you install this build.
Available Downloads
Downloads to certain countries may not be available. See Microsoft suspends new sales in Russia – Microsoft On the Issues.
Windows Server Long-Term Servicing Channel Preview in ISO format in 18 languages, and in VHDX format in English only.
Windows Server Datacenter Azure Edition Preview in ISO and VHDX format, English only.
Microsoft Server Languages and Optional Features Preview
Keys: Keys are valid for preview builds only
Server Standard: MFY9F-XBN2F-TYFMP-CCV49-RMYVH
Datacenter: 2KNJJ-33Y9H-2GXGX-KMQWH-G6H67
Azure Edition does not accept a key
Symbols: Available on the public symbol server – see Using the Microsoft Symbol Server.
Expiration: This Windows Server Preview will expire September 15, 2025.
How to Download
Registered Insiders may navigate directly to the Windows Server Insider Preview download page. If you have not yet registered as an Insider, see GETTING STARTED WITH SERVER on the Windows Insiders for Business portal.
We value your feedback!
The most important part of the release cycle is to hear what’s working and what needs to be improved, so your feedback is extremely valued. Beginning with Insider build 26063, please use the new Feedback Hub app for Windows Server if you are running a Desktop version of Server. If you are using a Core edition, or if you are unable to use the Feedback Hub app, you can use your registered Windows 10 or Windows 11 Insider device and use the Feedback Hub application. In the app, choose the Windows Server category and then the appropriate subcategory for your feedback. In the title of the Feedback, please indicate the build number you are providing feedback on as shown below to ensure that your issue is attributed to the right version:
[Server #####] Title of my feedback
See Give Feedback on Windows Server via Feedback Hub for specifics. The Windows Server Insiders space on the Microsoft Tech Communities supports preview builds of the next version of Windows Server. Use the forum to collaborate, share and learn from experts. For versions that have been released to general availability in market, try the Windows Server for IT Pro forum or contact Support for Business.
Diagnostic and Usage Information
Microsoft collects this information over the internet to help keep Windows secure and up to date, troubleshoot problems, and make product improvements. Microsoft server operating systems can be configured to turn diagnostic data off, send Required diagnostic data, or send Optional diagnostic data. During previews, Microsoft asks that you change the default setting to Optional to provide the best automatic feedback and help us improve the final product.
Administrators can change the level of information collection through Settings. For details, see http://aka.ms/winserverdata. Also see the Microsoft Privacy Statement.
Terms of Use
This is pre-release software – it is provided for use “as-is” and is not supported in production environments. Users are responsible for installing any updates that may be made available from Windows Update. All pre-release software made available to you via the Windows Server Insider program is governed by the Insider Terms of Use.
Announcing Windows Server Preview Build 26311
Hello Windows Server Insiders!
Today we are pleased to release a new build of the next Windows Server Long-Term Servicing Channel (LTSC) Preview that contains both the Desktop Experience and Server Core installation options for Datacenter and Standard editions, Annual Channel for Container Host and Azure Edition (for VM evaluation only). Branding has been updated for the upcoming release, Windows Server 2025, in this preview – when reporting issues please refer to Windows Server 2025 preview. If you signed up for Server Flighting, you should receive this new build automatically.
What’s New
Windows Defender Application Control for Business (WDAC)
Windows Defender Application Control (WDAC) for business is a software-based security layer that reduces attack surface by enforcing an explicit list of software that is allowed to run. For Windows Server 2025, we have provided Microsoft defined ‘default policy’ which can be applied to the server via PowerShell cmdlets, powered by our ‘Security configuration platform called ‘OSconfig’.
To learn more, please review Windows Defender Application Control for Business (WDAC) – Microsoft Community Hub.
Windows Server 2025 Security Baseline Preview
Beginning with build 26296, we are pleased to announce the availability of the Windows Server 2025 Security Baseline Preview. You can enable security right from the start by applying the recommended security posture for your device or VM role through application of a tailored security baseline, with over 350 preconfigured Windows security settings that help you apply and enforce granular security settings that support best practices recommended by Microsoft and Industry standards. We have organized the Windows Server 2025 Security Baseline content into three categories based on server role:
Domain Controller (DC)
Member Server
Workgroup Member
Note: You should preview the security baseline only on test systems. While there is a ‘Remove’ command, not all configurations can be reversed.
To learn more, please review Announcing Windows Server 2025 Security Baseline Preview – Microsoft Community Hub.
Windows Server Flighting is here!!
If you signed up for Server Flighting, you should receive this new build automatically later today.
For more information, see Welcome to Windows Insider flighting on Windows Server – Microsoft Community Hub
The new Feedback Hub app is now available for Server Desktop users! The app should automatically update with the latest version, but if it does not, simply Check for updates in the app’s settings tab.
Known Issues
Download Windows Server Insider Preview (microsoft.com)
Flighting: The label for this flight may incorrectly reference Windows 11. However, when selected, the package installed is the Windows Server update. Please ignore the label and proceed with installing your flight. This issue will be addressed in a future release.
WinPE – Powershell Scripts: Applying the WinPE-Powershell optional component does not properly install Powershell in WinPE. As a result, Powershell cmdlets will fail. Customers who are dependent on Powershell in WinPE should not use this build.
If you are validating upgrades from Windows Server 2019 or 2022, we do not recommend that you use this build as intermittent upgrade failures have been identified for this build.
This build has an issue where archiving eventlogs with “wevetutil al” command causes the Windows Event Log service to crash, and the archive operation to fail. The service must be restarted by executing “Start-Service EventLog” from an administrative command line prompt.
If you have Secure Launch/DRTM code path enabled, we do not recommend that you install this build.
Available Downloads
Downloads to certain countries may not be available. See Microsoft suspends new sales in Russia – Microsoft On the Issues.
Windows Server Long-Term Servicing Channel Preview in ISO format in 18 languages, and in VHDX format in English only.
Windows Server Datacenter Azure Edition Preview in ISO and VHDX format, English only.
Microsoft Server Languages and Optional Features Preview
Keys: Keys are valid for preview builds only
Server Standard: MFY9F-XBN2F-TYFMP-CCV49-RMYVH
Datacenter: 2KNJJ-33Y9H-2GXGX-KMQWH-G6H67
Azure Edition does not accept a key
Symbols: Available on the public symbol server – see Using the Microsoft Symbol Server.
Expiration: This Windows Server Preview will expire September 15, 2025.
How to Download
Registered Insiders may navigate directly to the Windows Server Insider Preview download page. If you have not yet registered as an Insider, see GETTING STARTED WITH SERVER on the Windows Insiders for Business portal.
We value your feedback!
The most important part of the release cycle is to hear what’s working and what needs to be improved, so your feedback is extremely valued. Beginning with Insider build 26063, please use the new Feedback Hub app for Windows Server if you are running a Desktop version of Server. If you are using a Core edition, or if you are unable to use the Feedback Hub app, you can use your registered Windows 10 or Windows 11 Insider device and use the Feedback Hub application. In the app, choose the Windows Server category and then the appropriate subcategory for your feedback. In the title of the Feedback, please indicate the build number you are providing feedback on as shown below to ensure that your issue is attributed to the right version:
[Server #####] Title of my feedback
See Give Feedback on Windows Server via Feedback Hub for specifics. The Windows Server Insiders space on the Microsoft Tech Communities supports preview builds of the next version of Windows Server. Use the forum to collaborate, share and learn from experts. For versions that have been released to general availability in market, try the Windows Server for IT Pro forum or contact Support for Business.
Diagnostic and Usage Information
Microsoft collects this information over the internet to help keep Windows secure and up to date, troubleshoot problems, and make product improvements. Microsoft server operating systems can be configured to turn diagnostic data off, send Required diagnostic data, or send Optional diagnostic data. During previews, Microsoft asks that you change the default setting to Optional to provide the best automatic feedback and help us improve the final product.
Administrators can change the level of information collection through Settings. For details, see http://aka.ms/winserverdata. Also see the Microsoft Privacy Statement.
Terms of Use
This is pre-release software – it is provided for use “as-is” and is not supported in production environments. Users are responsible for installing any updates that may be made available from Windows Update. All pre-release software made available to you via the Windows Server Insider program is governed by the Insider Terms of Use. Read More
Building a WhatsApp AI bot for customer support
Building a WhatsApp AI Bot for customer support
In this blog post, we’ll explore how to build a customer support application that integrates with WhatsApp using Azure Communication Services and Azure OpenAI. This app enables users to interact with a self-service bot to resolve common customer queries, such as troubleshooting errors or checking order status. We’ll walk through the high-level architecture and provide an overview of the technologies involved, pointing you to the code repository for deeper exploration.
Sample Overview
The code sample showcases a customer support scenario for Contoso Electronics, where users can report issues with their calculators via WhatsApp. By typing a simple message such as “Hello,” the bot responds on WhatsApp and assists with troubleshooting, providing real-time guidance based on a custom knowledge base. This helps businesses automate responses to common customer problems without human intervention.
The same sample can be adapted for other use cases, including:
Order Queries: Customers can check order status or track shipments through WhatsApp or SMS.
Booking & Shopping Assistance: AI bots can help customers find products or book travel by querying the relevant databases.
Appointment Scheduling: AI bots can help users reschedule appointments, eliminating the need for human interaction.
Why WhatsApp channel?
Customers today have varied preferences for communication channels. Some might prefer WhatsApp, others SMS, iMessage, or web chat. WhatsApp has more than 2 billion monthly active users globally. By offering WhatsApp as a one of the communication channels for your customer interaction, you ensure your users can connect with your services on their preferred platforms, improving customer satisfaction.
Steps to build your first WhatsApp AI bot
In this section, we walk through the architecture and steps for building a WhatsApp bot. You can check out the full code sample on Github.
High-Level Architecture
An overview of the architecture used for this demo:
WhatsApp Client: The user initiates a conversation via the WhatsApp client.
Azure Communication Services Messaging: Messages are routed through Advanced Communication Messages SDK, which notifies the backend application of incoming messages.
Backend Application: The application receives the message and queries the knowledge base using Azure OpenAI’s language model.
Azure OpenAI Service: The LLM processes the input and returns a response.
Response Delivery: The backend application sends the response back to the Azure Communication Services, which forwards it to WhatsApp.
Frontend: For demo purposes, we spun up a lightweight web app that displays the conversation happening on WhatsApp in a browser. Creating a front-end is optional and you can choose not to add it in your code.
Architecture Diagram
This diagram demonstrates the different technologies used in the sample code and the application flow.
A WhatsApp bot has three main components
Logic to integrate with a generative AI model to produce natural language responses for the bot. We have used Azure OpenAI model.
WhatsApp channel integration with your backend application. We have used Azure Communication Services for this sample.
The application/bot uses a custom knowledge base to comprehend customer issues and provide relevant solutions. In the sample code, we have included the knowledge base in the system prompt. For a production-level implementation, you would need to use Azure AI Search or other indexing services to retrieve information from documents, websites, or any other format in which the knowledge base is stored. Numerous resources on retrieval-augmented search can be found here.
System prompt used in the sample
Steps for adding intelligence to your bot
Create an Azure Open AI resource on the Azure portal
Create an AI model deployment in Azure AI Studio
Write and test a system prompt in Azure AI Studio or use the one in the code repository.
Pass the system prompt and conversation history to a chat completion API in code.
Steps for integrating WhatsApp channel in your app
Create an Azure Communication Services resource.
Connect your WhatsApp business account with Azure Communication resource. You can also create and register a new WhatsApp business account.
Connect your existing number or an Azure Communication Services number with WhatsApp account.
Add code to handle events and send WhatsApp message.
Register your local or server URL in event grid for receiving WhatsApp messages.
Code Flow
The main logic for the WhatsApp bot is in the WebHookController class in the code repository. Here’s an overview of its key functions.
HandleGridEvents : This method handles incoming messages by the customer on your WhatsApp business account phone number. It calls another method “RespondToCustomerAsync” to generate a response and send it via WhatsApp channel.
private async Task<IActionResult> HandleGridEvents(string jsonContent)
{
var eventGridEvents = JsonSerializer.Deserialize<EventGridEvent[]>(jsonContent, _jsonOptions);
foreach (var eventGridEvent in eventGridEvents)
{
if (eventGridEvent.EventType.Equals(“microsoft.communication.advancedmessagereceived”, StringComparison.OrdinalIgnoreCase))
{
var messageData = JsonSerializer.Deserialize<AdvancedMessageReceivedEventData>(eventGridEvent.Data.ToString(), _jsonOptions);
Messages.MessagesListStatic.Add(new Message
{
Text = $”Customer({messageData.From}): “{messageData.Content}””
});
Messages.OpenAIConversationHistory.Add(new UserChatMessage(messageData.Content));
await RespondToCustomerAsync(messageData.From);
}
}
return Ok();
}
RespondToCustomerAsync : This method calls “GenerateAIResponseAsync” to get a response from the Azure Open AI model and then calls “SendWhatsAppMessageAsync” to send the AI generated response to the customer.
private async Task RespondToCustomerAsync(string numberToRespondTo)
{
try
{
var assistantResponseText = await GenerateAIResponseAsync();
if (string.IsNullOrWhiteSpace(assistantResponseText))
{
Messages.MessagesListStatic.Add(new Message
{
Text = “Error: No response generated from Azure OpenAI.”
});
return;
}
await SendWhatsAppMessageAsync(numberToRespondTo, assistantResponseText);
Messages.OpenAIConversationHistory.Add(new AssistantChatMessage(assistantResponseText));
Messages.MessagesListStatic.Add(new Message
{
Text = $”Assistant: {assistantResponseText}”
});
}
catch (RequestFailedException e)
{
Messages.MessagesListStatic.Add(new Message
{
Text = $”Error: Failed to respond to “{numberToRespondTo}”. Exception: {e.Message}”
});
}
}
GenerateAIResponseAsync : This method calls the LLM model and passes the system prompt and conversation history to get a response for the customer.
private async Task<string?> GenerateAIResponseAsync()
{
var chatMessages = new List<ChatMessage> { new SystemChatMessage(SystemPrompt) };
chatMessages.AddRange(Messages.OpenAIConversationHistory);
ChatCompletion response = await _azureOpenAIClient.GetChatClient(_deploymentName).CompleteChatAsync(chatMessages);
return response?.Content.FirstOrDefault()?.Text;
}
SendWhatsAppMessageAsync : This method uses Azure Communication Services to send the response to the customer through WhatsApp.
private async Task SendWhatsAppMessageAsync(string numberToRespondTo, string message)
{
var recipientList = new List<string> { numberToRespondTo };
var textContent = new TextNotificationContent(_channelRegistrationId, recipientList, message);
await _notificationMessagesClient.SendAsync(textContent);
}
Conclusion
By leveraging Azure Communication Services and Azure OpenAI, businesses can create efficient, self-service customer support applications that work across multiple communication channels. Whether it’s troubleshooting technical issues, checking order statuses, or scheduling appointments, these applications can greatly enhance customer experience while reducing the load on human support teams.
To dive deeper into the code, check out the repository linked in this blog, and try building your own WhatsApp bot today! Additionally, you can check out first-party WhatsApp channel if your organization uses Dynamics 365 Contact Center.
Explore related content:
Overview of advanced messaging for WhatsApp in Azure Communication Services
Advanced Messaging for WhatsApp Terms of Services
Trying WhatsApp Sandbox
Get Started With Advanced Communication Messages SDK
Handle Advanced Messaging Events
Messaging Policy
Pricing for Advanced Messaging for WhatsApp
Microsoft Tech Community – Latest Blogs –Read More
Microsoft Product Placemat for CMMC – October 2024 Update
Microsoft CMMC Acceleration
We are actively building acceleration by developing resources for both partners and Defense Industrial Base (DIB) companies to leverage in their Cybersecurity Maturity Model Certification (CMMC) journey. These tools cannot guarantee a positive CMMC adjudication, but they may assist Organizations Seeking Certification (OSC) by improving their CMMC posture going into a formal CMMC assessment in accordance with the DOD and Cyber Accreditation Body (Cyber-AB) standards.
For more information, please see Notices later in this article.
Here is a summary of the most recent resources to help get you started.
Home Page for CMMC
Want to start your CMMC compliance journey on the right foot? We have a home page for CMMC at https://aka.ms/cmmc. Found on the Microsoft Federal site, the home page includes an outline of resources available, including references to our Microsoft Cloud service offerings and an up-to-date list of blogs and documentation we release. Please bookmark the site and leverage it as your launching point in all things Microsoft and CMMC.
While you are there on the Microsoft Federal site, also browse around and check out our Federal Segment on Defense and the Solutions we have for DoD Zero Trust Strategy and the Cybersecurity Executive Order.
Microsoft Product Placemat for CMMC
Microsoft Product Placemat for CMMC is an interactive view representing how we believe Microsoft cloud products and services satisfy requirements for CMMC practices. The user interface resembles a periodic table of CMMC Practice Families. The default view illustrates the practices with Microsoft Coverage that are inherited from the underlying cloud platform. It also depicts practices for Shared Coverage where the underlying cloud platform contributes coverage for specific practices but requires additional customer configuration to satisfy requirements for full coverage. For each practice that aligns with Microsoft Coverage or Shared Coverage, verbal customer implementation guidance and practice implementation details are documented. This enables you to drill down into each practice and discover details on inheritance and prescriptive guidance for actions to be taken by the customer to try to meet practice requirements in the shared scope of responsibility for compliance with CMMC.
In addition to the default view, you may select and include products, features and suite SKUs to adjust how each cloud product is placed with CMMC. For example, you may select the Microsoft 365 E5 SKU or “Select All” for maximum coverage of CMMC. You may also use the blue-colored cell on the top left to select from a drop-down menu filtering the Placemat. You may choose between three options:
Level 1 – Foundational: This option will display the practices associated with CMMC Level 1.
Note: there are 17 practices in this release, but will be updated soon to reflect the Final Rule’s trim to 15 practices.
Level 2 – Advanced: This filter will display 110 practices associated with CMMC Level 2.
Note: aligns with the controls for NIST SP 800-171.
Level 3 – Expert: This filter displays the additional CMMC Level 3 practices that align with NIST SP 800-172.
The Microsoft Product Placemat for CMMC is currently in public preview. It has been updated to include support for CMMC Level 3 and usability improvements based on public preview feedback. In addition, the public preview release has been updated to include implementation guidance for every practice in alignment with the Technical Reference Guide.
Note: This release was issued prior to the final CMMC rule publication in this month (October 2024). We are diligently working on a refresh to refine for the final rule.
You may download a copy at:
https://aka.ms/cmmc/productplacemat
Please share feedback at https://aka.ms/cmmc/productplacematfeedback.
Microsoft Technical Reference Guide for CMMC
We are excited to update this significant artifact of CMMC Acceleration! The Microsoft Technical Reference Guide for CMMC includes implementation statements for an organization pursuing CMMC while leveraging relevant Microsoft services. This includes brief descriptions of relevant Microsoft cloud services and products, and links to further implementation documentation. The guide focuses on CMMC Level 2 (L2) and Level 3 (L3) for this release.
If you think of the Microsoft Product Placemat for CMMC as being a level 100 document, the guide is level 200 and more.
The guide is organized in sections for each of the domains of CMMC, beginning with Access Control:
AC.L1-3.1.1
Control Summary Information
NIST SP 800-53 Mapping: AC-2, AC-3, AC-17
Practice: Limit information system access to authorized users, processes acting on behalf of authorized users or devices (including other information systems).
Assessment Objectives:
[a] authorized users are identified;
[b] processes acting on behalf of authorized users are identified;
[c] devices (and other systems) authorized to connect to the system are identified;
[d] system access is limited to authorized users;
[e] system access is limited to processes acting on behalf of authorized users; and
[f] system access is limited to authorized devices (including other systems).
Primary Services
Secondary Services
Microsoft Entra ID
Azure RBAC
Intune/Intune Suite
Microsoft Information Protection
Conditional Access
Customer Lockbox
Privileged Identity Management (PIM)
Microsoft 365 Web Apps
M365 Groups
Microsoft Entra ID Multi-Factor Authentication
You may notice the guide has the same outline of Primary and Secondary Services as identified in the Microsoft Product Placemat for CMMC. However, this document format lets us get into much more depth of the implementation statements as compared to the Placemat spreadsheet.
The Microsoft Technical Reference Guide for CMMC is currently in public preview.
Note: This release was issued prior to the final CMMC rule publication in this month (October 2024). We are diligently working on a refresh to refine for the final rule.
You may download a copy at:
https://aka.ms/cmmc/techrefguide
Please share feedback at https://aka.ms/cmmc/techrefguidefeedback.
Notices
Microsoft CMMC Acceleration provides customers and partners with resources to pursue CMMC compliance while leveraging Microsoft products and services— It does not address security practices occurring outside of Microsoft products and services.
Please further note that the CMMC compliance standard has yet to be officially rolled out. As a result, there may be additional nuance or complexity associated with CMMC compliance that will only materialize through the practical application of the standard by the DoD and Cyber-AB. As a result, the information herein, including all Microsoft CMMC related offerings, are provisional and may be enhanced to align with future guidance.
Microsoft does not guarantee nor imply any ultimate compliance outcome or determination based on one’s consumption of this article or the resources linked from it — all CMMC certification requirements and decisions are governed by the DoD and Cyber-AB, and Microsoft has no direct or indirect insight into or bearing over compliance determinations. The associations between compliance domains, practices, and Microsoft CMMC Acceleration may change at any time.
Customers must individually determine the necessary steps required to ensure their organization fully satisfies each recommended CMMC compliance practice, in addition to or in place of what is described in program resources. This responsibility spans all Microsoft (Azure, Microsoft 365, etc.) consumption decisions, including, among other things, which Microsoft offerings to procure, as well as all configuration decisions associated with such use and consumption.
Appendix
Please follow me here and on LinkedIn. Here are my additional blog articles:
Blog Title
Aka Link
Microsoft Collaboration Framework
https://aka.ms/ND-ISAC/CollabFramework
ND-ISAC MSCloud – Reference Identity Architectures for the US Defense Industrial Base
https://aka.ms/ND-ISAC/IdentityWP
Microsoft CMMC Acceleration Update
https://aka.ms/CMMC/Acceleration
History of Microsoft Cloud Service Offerings leading to the US Sovereign Cloud for Government
https://aka.ms/USSovereignCloud
The Microsoft 365 Government (GCC High) Conundrum – DIB Data Enclave vs Going All In
Microsoft US Sovereign Cloud Myth Busters – A Global Address List (GAL) Can Span Multiple Tenants
Microsoft US Sovereign Cloud Myth Busters – A Single Domain Should Not Span Multiple Tenants
Microsoft US Sovereign Cloud Myth Busters – Active Directory Does Not Require Restructuring
Microsoft US Sovereign Cloud Myth Busters – CUI Effectively Requires Data Sovereignty
Microsoft expands qualification of contractors for government cloud offerings
https://aka.ms/GovCloudEligibility
Microsoft Tech Community – Latest Blogs –Read More
Skilling snack: Windows compliance reports and analytics
One of the most important questions asked is, “How many of our devices are up to date?” This question is one you can easily answer using Microsoft Intune, Windows Autopatch, or Windows Update for Business reports. Learn more about the tools and reports you can use to identify exactly which devices are up to date, which might need attention, and other insights.
Feel free to choose the resources best suited to your needs and interests.
Time to learn: 126 minutes
WATCH
The latest on managing Windows updates in Microsoft Intune
For a broader overview of Windows updates in Microsoft Intune, walk through built-in functionalities, including the Windows update distribution report for all your Intune enrolled devices. And learn more about this report in the resources below.
(30 mins)
Intune + Quality updates + Drivers + Windows 11 + Windows 10 + Policies
READ
Use Windows Update for Business reports for Windows Updates in Microsoft Intune
If you use policies to update your Windows 10/11 devices, there are reports for them! Get a summary of update success, in-progress updates, device update status, and failure alerts along with remediation recommendations. Most importantly, learn about the Windows update distribution report and Windows Update for Business (WUfB) reports. The last two are what you need to know which devices are up to date. Find more information in the resources below.
(36 mins)
Intune + Policies + Rings + WUfB reports + Quality + Feature + Device + Azure
Windows update distribution report in Microsoft Intune
If you use Microsoft Intune, start with the Windows update distribution report, also known as the Quality update distribution report. This report provides status for all devices enrolled in Microsoft Intune, regardless of whether they are assigned to any update policies.
Windows update distribution report (the latest on managing Windows updates in Microsoft Intune) (5 mins)
Starting at the 14:50 minute mark, learn about the Windows update distribution report in Intune. Watch the 5-minute demo to walk through the interface, the structure, and the details available in the report.
Windows update distribution report (6 mins)
Among the more comprehensive documentation on reports, read the section on the Windows update distribution report. How many and what devices are on each Windows feature version and quality update? Get the high-level summary and drill down with this Microsoft Intune report.
Intune + Rings + Co-management + Feature version + Device version + Update type + Device activity
Windows quality update reports in Windows Autopatch
Windows Autopatch provides additional insights, such as a historical view of updates. Here are four useful tips about reporting to try.
Generate reports from Windows Autopatch (2 mins)
Getting started with Windows Autopatch reports? We recommend starting with this short demo of how you can generate update status and update history reports.
Windows quality update summary dashboard (2 mins)
Want a comprehensive overview of the current update status for all devices managed by Windows Autopatch? Learn how to generate and interpret the Summary dashboard in this quick guide.
Quality update status report (6 mins)
For a per-device view of the current update status for your devices, explore Windows Autopatch > Windows quality updates > Reports > Quality update status. You’ll find device-specific information, including build numbers, readiness status, and alerts included in this report.
Quality update trending report (1 min)
This report graphs trends over the last 90 days. Learn about the historical trends by update status or deployment ring.
Autopatch + Update + Status + Ring + History + Build + Alerts
Windows Update for Business reports tools
If you want to query the data or build custom dashboards, access the same data using Windows Update for Business reports. See for yourself.
Use the workbook for Windows Update for Business reports (16 mins)
If you’re new to Windows Update for Business reports, start here. This documentation walks you through what’s inside, how to understand it, and how to customize and use various reports.
Get the most out of expedited Windows quality updates (13 mins)
Whenever you expedite Windows security or non-security updates, you’ll get a failure report. Use it to troubleshoot and remediate common issues marked as alerts. This article introduces you to common alerts, resolutions, and best practices.
Tailor Windows Update for Business reports with Power BI (9 mins)
Use the Power BI integration in Windows Update for Business reports to create custom visualizations. Better understand the device landscape, identify trends, issues, and areas for improvement. Walk through the visualizations of the Windows 11 migration scenario and update deployment monitoring. Let us show you how to turn these reports into actionable insights.
WUfB + Azure + Quality + Feature + Driver + DO + Update state + Power BI + Alerts + Resolution
Which tool, or tools, best fit your needs? Share your thoughts in the comments below!
Check out related resources to keep building your skills:
Skilling snack: Windows Update for Business reports
Skilling snack: Windows Autopatch
Automate updates with Windows Autopatch – Tackling Tech
Skilling snack: Managing Windows 11 updates
We’re turning our beloved skilling snacks into a monthly series! With our library of 45 learning bites, we invite you to review what you’ve missed and come back once a month to keep your skills sharp and memory fresh.
Continue the conversation. Find best practices. Bookmark the Windows Tech Community, then follow us @MSWindowsITPro on X and on LinkedIn. Looking for support? Visit Windows on Microsoft Q&A.
Microsoft Tech Community – Latest Blogs –Read More
Exploring SUSE Enterprise Linux on Azure
Exploring SUSE Enterprise Linux on Azure
In today’s cloud-centric world, leveraging robust and reliable operating systems is crucial for businesses. One such powerful combination is SUSE Enterprise Linux on Azure. This blog delves into the various aspects of using SUSE Enterprise Linux, particularly the High Availability (HA) extension, on Azure.
SUSE Distributions Supported on Azure
Azure supports several SUSE distributions, including:
SUSE Enterprise Linux Server
SUSE Enterprise Linux Server for SAP
SUSE Enterprise Linux Server for HPC
For more details: click here.
Pricing and Licensing Models
SUSE has three offerings in Azure:
BYOS
SUSE Image with patching support
24×7 support
When it comes to pricing, the Azure pricing calculator provides various options. For instance, for a B2as machine with SUSE Linux Enterprise + 24/7 Support, PAYG, the cost is approximately $47.45 per month as of writing this blog.
You can select the desired image during the installation, and the Azure marketplace provides detailed information on what is offered under each SUSE image deployed through the marketplace.
High Availability Extension
The High Availability extension is a critical component for businesses that require continuous uptime and disaster recovery solutions. If you purchase the SUSE Linux Enterprise Server for SAP, the High Availability extension is included. However, if you opt for the standard SUSE Linux Enterprise Server through the Azure marketplace, you cannot add the High Availability extension. In such cases, you will need to use the BYOS (Bring Your Own Subscription) model.
Key Features of SUSE Enterprise Linux for SAP
SUSE Enterprise Linux for SAP comes with several features designed to enhance performance and reliability, including:
A full High Availability / Disaster Recovery solution
SAP HANA System Replication automation agents
SAP HANA Firewall with automated setup
A KMIP-compliant key server for remote storage
SAP configuration and tuning packages
Automated configuration and installation of SAP HANA clusters
A clustered SAP HANA software automated update wizard (tech preview)
Azure market place provides the detail on what is offered under each SUSE image deployed through the marketplace.
Considerations
When using SLES Enterprise HA on Azure, it’s essential to be aware of certain considerations. For example, Generation 2 VM support specific SLES marketplace images. Refer Azure support for Generation 2 VMs – Azure Virtual Machines | Microsoft Learn for more details.
Conclusion
SUSE Enterprise Linux on Azure provides a robust and scalable solution for businesses looking to leverage the power of the cloud. With various distributions, pricing models, and the critical High Availability extension, SUSE on Azure is a compelling choice for enterprises.
Microsoft Tech Community – Latest Blogs –Read More
Changing Client Push Service Account question
Hello, we have not changed the password for our service account that does the Client Push since the initial setup. According to the Microsoft documentation for “Accounts used in Configuration Manager”, it is recommended that you create a new account and assign it the Client Push role. Give it some time to propagate, then remove the original account.
Is there a way to make the new account be the primary account that is used? I don’t really understand how the client will know that there are 2 accounts being used and if one does not exist to use the other.
Thank you,
Steve
Hello, we have not changed the password for our service account that does the Client Push since the initial setup. According to the Microsoft documentation for “Accounts used in Configuration Manager”, it is recommended that you create a new account and assign it the Client Push role. Give it some time to propagate, then remove the original account. Is there a way to make the new account be the primary account that is used? I don’t really understand how the client will know that there are 2 accounts being used and if one does not exist to use the other. Thank you, Steve Read More
Multi line text column with append changes managed property
I’m trying to get data from a multi line text field with append changes on it to appear on a custom search page built using the PnP Search web parts. I haven’t had any luck mapping it successfully to a managed property after trying for about 2 weeks. I’ve tried using the RefinableString properties, and two text managed properties that have Searchable, Queryable, Retrievable and one with Allow multiple values enabled (Allow multiple values: Allow multiple values of the same type in this managed property. For example, if this is the “author” managed property, and a document has multiple authors, each author name will be stored as a separate value in this managed property.) All return null. There is content in the fields, the list has been reindexed a few times and it’s been over 48 hours.
I’m beginning to think it isn’t possible seeing as you have to jump through a few hoops to get the values with REST calls. Does anyone know if it is possible?
I’m trying to get data from a multi line text field with append changes on it to appear on a custom search page built using the PnP Search web parts. I haven’t had any luck mapping it successfully to a managed property after trying for about 2 weeks. I’ve tried using the RefinableString properties, and two text managed properties that have Searchable, Queryable, Retrievable and one with Allow multiple values enabled (Allow multiple values: Allow multiple values of the same type in this managed property. For example, if this is the “author” managed property, and a document has multiple authors, each author name will be stored as a separate value in this managed property.) All return null. There is content in the fields, the list has been reindexed a few times and it’s been over 48 hours. I’m beginning to think it isn’t possible seeing as you have to jump through a few hoops to get the values with REST calls. Does anyone know if it is possible? Read More
Identity forensics with Copilot for Security Identity Analyst Plugin
Overview
This is a step-by-step guided walkthrough of how to use a custom KQL Copilot for Security plugin for Identity SOC and forensics use cases and how it helps in implementing a consistent security policy for every user, employee, frontline worker, customer, and partner as well as apps, devices, and workloads across multi-cloud and hybrid.
Use case summary
Monitoring and governing Identities using Copilot for Security custom Identity Analyst Plugin:
User Risk Assessment: Monitor user risk levels based on their activities. This could include sign-in attempts from unfamiliar locations, repeated failed sign-in attempts, or other suspicious behavior.
Sign-in Monitoring: Track user sign-in activities. This includes successful sign-ins, failed attempts, and the location and device used for sign-in. Unusual sign-in activity could be a sign of a potential security threat.
Admin Activity Monitoring: Admin accounts have high-level access and can be a prime target for attackers. Monitor admin activities, especially those involving changes to security settings, user privileges, or access controls.
Application Usage Monitoring: Keep an eye on the usage of applications within your organization. Unusual application activity, such as a high number of downloads or an increase in usage outside of normal business hours, could indicate a potential security issue.
Privileged Identity Management: Monitor the lifecycle of privileged identities within your organization. This includes the creation, modification, and deletion of privileged accounts.
Access Review: Regularly review user access to various resources within your organization. This can help ensure that users only have access to the resources they need for their job functions, reducing the risk of insider threats.
In this guide, we will provide high-level steps to get started using the new tooling. We will start by adding the custom plugin and it’s recommended for organizations to test this in their dev environment first.
Installation
Use the following steps to obtain and install the custom Identity Analyst Plugin for Copilot for Security: Go to securitycopilot.microsoft.com
Download the IdentitySecurityAnalyst.yml file from here.
Select the plugins icon down in the left corner.
4. Under Custom upload, select upload plugin
5. Select the Copilot for Security plugin and upload the IdentitySecurityAnalyst.yml file
6. Click Add
7. Under Custom you will now see the plug-in. Ensure it is enabled.
The custom package contains the following prompts:
Let us get started with more use cases leveraging Copilot for Security capabilities:
User Risk Assessment
Fetches the user risk levels based on their activities. This could include sign-in attempts from unfamiliar locations, repeated failed sign-in attempts, or other suspicious behavior.
In Copilot for Security, you can either directly invoke the plugin via selling the concerned skill under prompt–system capabilities or type ‘/IdentityGetUserRiskAssesment’ as shown below:
A sample result will be:
User Sign-In Activities
Fetches user sign-in activities. This includes successful sign-ins, failed attempts, and the location and device used for sign-in. Unusual sign-in activity could be a sign of a potential security threat.
In Copilot for Security, you can either directly invoke the plugin via selling the concerned skill under prompt–system capabilities or type ‘/IdentityGetSignInMonitoring’ or prompt with ‘Get users signin activities using Identity analyst plugin’.
Admin Activities Monitoring
Fetches Admin Activity Monitoring logs. Admin accounts have high-level access and can be a prime target for attackers. Monitor all admin activities, especially those involving changes to security settings, user privileges, or access controls.
In Copilot for Security, you can either directly invoke the plugin via selling the concerned skill under prompt–system capabilities or type ‘/IdentityGetAdminActivityMonitoring’ or prompt with ‘Get admin activities monitoring using Identity analyst plugin’.
Applications Usage Monitoring
Fetches Application Usage Monitoring logs to keep an eye on the usage of applications within your organization. Unusual application activity, such as a high number of downloads or an increase in usage outside of normal business hours, could indicate a potential security issue.
In Copilot for Security, you can either directly invoke the plugin via selling the concerned skill under prompt–system capabilities or type ‘/IdentityGetApplicationUsageMonitoring’ or prompt with ‘Get application usage monitoring using Identity analyst plugin’.
Privileged Identity Management (PIM) Monitoring
Fetches Privileged Identity Management logs to monitor the lifecycle of privileged identities within your organization. This includes the creation, modification, and deletion of privileged accounts.
In Copilot for Security, you can either directly invoke the plugin via selling the concerned skill under prompt–system capabilities or type ‘/IdentityPIMMonitoring or prompt with ‘Get Privileged Identity Management monitoring using Identity analyst plugin’.
Access Review Monitoring
Fetches Access Review logs to regularly review user access to various resources within your organization. This can help ensure that users only have access to the resources they need for their job functions, reducing the risk of insider threats.
In Copilot for Security, you can either directly invoke the plugin via selling the concerned skill under prompt–system capabilities or type ‘/IdentityAccessReviewMonitoring or prompt with ‘Get Access Review monitoring using Identity analyst plugin’.
Conclusion
This plugin is based on KQL that presents a relatively simple and scalable way to leverage the existing repositories of proven KQL queries within the Microsoft security ecosystem, One of the suggestions is you can customize the Custom KQL plugin YML file and make the time range to be as input parameter from Copilot for Security instead of specific hard-coded input. These can then be used as a basis to bring AI enrichment onto security data already present within Microsoft Identity for more details on Microsoft Copilot for Security custom plugins via KQL please visit https://learn.microsoft.com/en-us/copilot/security/plugin-kql. Give it a go and give us your feedback so we can continuously improve the product for your benefit.
Microsoft Tech Community – Latest Blogs –Read More
Enrollment for additional business location fails – support website
Hi there,
we are trying to enroll our US business location for CSP indirect reseller (for our DE location we are successfully registered and enrolled).
I created an Entra tenant and used the enrollment form, but I fail when completing the form to kick everything off. I receive the below error message:
We have one central website, but it won’t accept the entry. What can i provide to make this work?
I can not even open a support request, because I end up in a closed form when i follow the red link :
Any recommendations and ideas are really welcome.
Thanks
Ann
Hi there, we are trying to enroll our US business location for CSP indirect reseller (for our DE location we are successfully registered and enrolled). I created an Entra tenant and used the enrollment form, but I fail when completing the form to kick everything off. I receive the below error message: We have one central website, but it won’t accept the entry. What can i provide to make this work? I can not even open a support request, because I end up in a closed form when i follow the red link : Any recommendations and ideas are really welcome. Thanks Ann Read More
Patient Tracker and Package Tracker
Hi,
I have two sheets one in which patient attendance is tracked with which therapist has been attended. Another sheet that says the type of package that the patients has bought.
Every day I need to calculate the revenue by each Therapist. I have attached both the sheets, to show the type of data that is being generated from the system.
Patient Attendance Tracker
Patient NamePatient IDTherapistDepartmentDateShyam Hani153RyaanOccupational Therapy02/10/2024Shyam Hani153RyaanOccupational Therapy04/09/2024Shyam Hani153RyaanOccupational Therapy06/09/2024Shyam Hani153SanjuSpeech Therapy02/10/2024Shyam Hani153SanjuSpeech Therapy04/09/2024Shyam Hani153SanjuSpeech Therapy05/10/2024Shyam Hani153SanjuSpeech Therapy06/09/2024Shyam Hani153SanjuSpeech Therapy07/09/2024Meera Hasan152SanjuSpeech Therapy09/10/2024Meera Hasan152SanjuSpeech Therapy09/10/2024Meera Hasan152SanjuSpeech Therapy10/08/2024Meera Hasan152SanjuSpeech Therapy11/09/2024Meera Hasan152SanjuSpeech Therapy11/09/2024Meera Hasan152SanjuSpeech Therapy11/10/2024Meera Hasan152SanjuSpeech Therapy11/10/2024Meera Hasan152SanjuSpeech Therapy12/10/2024Dev Mani112SanjuOccupational Therapy01/10/2024Dev Mani112SanjuOccupational Therapy02/10/2024Dev Mani112SanjuOccupational Therapy04/10/2024Dev Mani112SanjuOccupational Therapy08/10/2024Dev Mani112SanjuOccupational Therapy09/10/2024Dev Mani112SanjuOccupational Therapy10/09/2024Dev Mani112SanjuOccupational Therapy10/10/2024Dev Mani112RyaanOccupational Therapy11/09/2024Dev Mani112RyaanOccupational Therapy11/10/2024Dev Mani112RyaanOccupational Therapy12/09/2024Dev Mani112RyaanOccupational Therapy01/10/2024Dev Mani112RyaanOccupational Therapy04/10/2024Dev Mani112RyaanOccupational Therapy08/10/2024Dev Mani112RyaanOccupational Therapy10/10/2024
Patient Price Tracker
Patient NameTherapistPatient IDPackage FromPackage ToPackage PricePackageShyam HaniSanju153Wednesday, 2 October 2024Wednesday, 4 September 2024100Speech TherapyShyam HaniRyaan153Wednesday, 2 October 2024 0Occupational TherapyMeera HasanSanju152Wednesday, 9 October 2024Saturday, 12 October 2024200Occupational TherapyDev ManiSanju112Tuesday, 1 October 2024Tuesday, 8 October 2024300Occupational TherapyDev ManiRyaan112Saturday, 27 July 2024Tuesday, 27 August 2024400Occupational Therapy
Hi,I have two sheets one in which patient attendance is tracked with which therapist has been attended. Another sheet that says the type of package that the patients has bought. Every day I need to calculate the revenue by each Therapist. I have attached both the sheets, to show the type of data that is being generated from the system. Patient Attendance Tracker Patient NamePatient IDTherapistDepartmentDateShyam Hani153RyaanOccupational Therapy02/10/2024Shyam Hani153RyaanOccupational Therapy04/09/2024Shyam Hani153RyaanOccupational Therapy06/09/2024Shyam Hani153SanjuSpeech Therapy02/10/2024Shyam Hani153SanjuSpeech Therapy04/09/2024Shyam Hani153SanjuSpeech Therapy05/10/2024Shyam Hani153SanjuSpeech Therapy06/09/2024Shyam Hani153SanjuSpeech Therapy07/09/2024Meera Hasan152SanjuSpeech Therapy09/10/2024Meera Hasan152SanjuSpeech Therapy09/10/2024Meera Hasan152SanjuSpeech Therapy10/08/2024Meera Hasan152SanjuSpeech Therapy11/09/2024Meera Hasan152SanjuSpeech Therapy11/09/2024Meera Hasan152SanjuSpeech Therapy11/10/2024Meera Hasan152SanjuSpeech Therapy11/10/2024Meera Hasan152SanjuSpeech Therapy12/10/2024Dev Mani112SanjuOccupational Therapy01/10/2024Dev Mani112SanjuOccupational Therapy02/10/2024Dev Mani112SanjuOccupational Therapy04/10/2024Dev Mani112SanjuOccupational Therapy08/10/2024Dev Mani112SanjuOccupational Therapy09/10/2024Dev Mani112SanjuOccupational Therapy10/09/2024Dev Mani112SanjuOccupational Therapy10/10/2024Dev Mani112RyaanOccupational Therapy11/09/2024Dev Mani112RyaanOccupational Therapy11/10/2024Dev Mani112RyaanOccupational Therapy12/09/2024Dev Mani112RyaanOccupational Therapy01/10/2024Dev Mani112RyaanOccupational Therapy04/10/2024Dev Mani112RyaanOccupational Therapy08/10/2024Dev Mani112RyaanOccupational Therapy10/10/2024 Patient Price Tracker Patient NameTherapistPatient IDPackage FromPackage ToPackage PricePackageShyam HaniSanju153Wednesday, 2 October 2024Wednesday, 4 September 2024100Speech TherapyShyam HaniRyaan153Wednesday, 2 October 2024 0Occupational TherapyMeera HasanSanju152Wednesday, 9 October 2024Saturday, 12 October 2024200Occupational TherapyDev ManiSanju112Tuesday, 1 October 2024Tuesday, 8 October 2024300Occupational TherapyDev ManiRyaan112Saturday, 27 July 2024Tuesday, 27 August 2024400Occupational Therapy Read More
Surface 10 Pro Business – Driver controller sata
I have to format a Surface 10 Pro Business without using a recovery image but using the Windows 11 key. The SSD disk is not recognized because the Sata controller driver is missing. Can anyone tell me the model or the driver download link? Thank you
I have to format a Surface 10 Pro Business without using a recovery image but using the Windows 11 key. The SSD disk is not recognized because the Sata controller driver is missing. Can anyone tell me the model or the driver download link? Thank you Read More
New Field in log
How can I get the “department” field in the AD log? I already have AD integrated with Wazuh! But the data from this field is not coming through!
thanks
How can I get the “department” field in the AD log? I already have AD integrated with Wazuh! But the data from this field is not coming through!thanks Read More
win 10 build 19045.2787
Bonjour,
je suis en windows 10 22h2 build 19045.2787
quelles sont les manips pour l’upgrader, car il est figé .
Merci
Bonjour,je suis en windows 10 22h2 build 19045.2787quelles sont les manips pour l’upgrader, car il est figé .Merci Read More
Planner Patch ETag Issue
Getting below error for planner task update operation
{“error”:{“code”:””,”message”:”The If-Match header contains an invalid value.”,”innerError”:{“date”:”2024-10-24T15:32:02″,”request-id”:”b976210d-9970-4997-9e64-bef1c6c8e9d5″,”client-request-id”:”b976210d-9970-4997-9e64-bef1c6c8e9d5″}}}
string currentETag = “W/”JzEtVGFzayAgQEBAQEBAQEBAQEBAQEBARCc=””;
httpClient.DefaultRequestHeaders.Add(“If-Match”, currentETag);
Need help of right combination for passing the correct etag I tried removing backlash and adding double quotes and other combinations given across articles.
Getting below error for planner task update operation{“error”:{“code”:””,”message”:”The If-Match header contains an invalid value.”,”innerError”:{“date”:”2024-10-24T15:32:02″,”request-id”:”b976210d-9970-4997-9e64-bef1c6c8e9d5″,”client-request-id”:”b976210d-9970-4997-9e64-bef1c6c8e9d5″}}}string currentETag = “W/”JzEtVGFzayAgQEBAQEBAQEBAQEBAQEBARCc=””; httpClient.DefaultRequestHeaders.Add(“If-Match”, currentETag); Need help of right combination for passing the correct etag I tried removing backlash and adding double quotes and other combinations given across articles. Read More
The Future of AI: Deploying your LoRA Fine-tuned Llama 3.1 8B on Azure AI, why it’s a breeze!
The Future of AI: Distillation Just Got Easier
Part 3 – Deploying your LoRA Fine-tuned Llama 3.1 8B model, why it’s a breeze!
Learn how Azure AI makes it effortless to deploy your LoRA fine-tuned models using Azure AI. (🚀🔥 Github recipe repo).
By Cedric Vidal, Principal AI Advocate, Microsoft
Part of the Future of AI 🚀 series initiated by Marco Casalaina with his Exploring Multi-Agent AI Systems blog post.
A Llama on a rocket launched in space, generated using Azure OpenAI DALL-E 3
Welcome back to our series on leveraging Azure AI Studio to accelerate your AI development journey. In our previous posts, we’ve explored synthetic dataset generation and the process of fine-tuning models. Today, we’re diving into the crucial step that turns your hard work into actionable insights: deploying your fine-tuned model. In this installment, we’ll guide you through deploying your model using Azure AI Studio and the Python SDK, ensuring a seamless transition from development to production.
Why Deploying GPU Accelerated Inference Workloads is Hard
Deploying GPU-accelerated inference workloads comes with a unique set of challenges that make the process significantly more complex compared to standard CPU workloads. Below are some of the primary difficulties encountered:
GPU Resource Allocation: GPUs are specialized and limited resources, requiring precise allocation to avoid wastage and ensure efficiency. Unlike CPUs that can be easily provisioned in larger numbers, the specialized nature of GPUs means that effective allocation strategies are crucial to optimize performance.
GPU Scaling: Scaling GPU workloads is inherently more challenging due to the high cost and limited availability of GPU resources. it requires careful planning to balance cost efficiency with workload demands, unlike more straightforward CPU resource scaling.
Load Balancing for GPU Instances: Implementing load balancing for GPU-based tasks is complex due to the necessity of evenly distributing tasks across available GPU instances. This step is vital to prevent bottlenecks, avoid overload in certain instances, and ensure optimal performance of each GPU unit.
Model Partitioning and Sharding: Large models that cannot fit into a single GPU memory require partitioning and sharding. This process involves splitting the model across multiple GPUs, which introduces additional layers of complexity in terms of load distribution and resource management.
Containerization and Orchestration: While containerization simplifies the deployment process by packaging models and dependencies, managing GPU resources within containers and orchestrating them across nodes adds another layer of complexity. Effective orchestration setups need to be fine-tuned to handle the subtle dynamics of GPU resource utilization and management.
LoRA Adapter Integration: LoRA, which stands for Low-order Rank Adaptation, is a powerful optimization technique that reduces the number of trainable parameters by decomposing the original weight matrices into lower-rank matrices. This makes it efficient for fine-tuning large models with fewer resources. However, integrating LoRA adapters into deployment pipelines involves additional steps to efficiently store, load and merge the lightweight adapters with the base model and serve the final model, which increases the complexity of the deployment process.
Monitoring GPU Inference Endpoints: Monitoring GPU inference endpoints is complex due to the need for specialized metrics to capture GPU utilization, memory bandwidth, and thermal limits, not to mention model specific metrics such as token counts or request counts. These metrics are vital for understanding performance bottlenecks and ensuring efficient operation but require intricate tools and expertise to collect and analyze accurately.
Model Specific Considerations: It’s important to acknowledge that the deployment process is often specific to the base model architecture you are working with. Each new version of a model or a different model vendor will require a fair amount of adaptations in your deployment pipeline. This could include changes in preprocessing steps, modifications in environment configurations, or adjustments in the integration or versions of third-party libraries. Therefore, it’s crucial to stay updated with the model documentation and vendor-specific deployment guidelines to ensure a smooth and efficient deployment process.
Model Versioning Complexity: Keeping track of multiple versions of a model can be intricate. Each version may exhibit distinct behaviors and performance metrics, necessitating thorough evaluation to manage updates, rollbacks, and compatibility with other systems. We’ll cover the subject of model evaluation more thoroughly in the next blog post. Another difficulty with versioning is storing the weights of the different LoRA adapters and keeping track of the versions of the base models they must be adapted onto.
Cost Planning: Planning the costs for GPU inference workloads is challenging due to the variable nature of GPU usage and the higher costs associated with GPU resources. Predicting the precise amount of GPU time required for inference under different workloads can be difficult, leading to unexpected expenses.
Understanding and addressing these difficulties is crucial for successfully deploying GPU-accelerated inference workloads, ensuring that the full potential of GPU capabilities is harnessed.
Azure AI Serverless: A Game Changer
Azure AI Serverless is a game changer because it effectively addresses a lot of challenges with deploying GPU-accelerated inference workloads. By leveraging the serverless architecture, it abstracts away the complexities associated with GPU resource allocation, model specific deployment considerations, and API management. This means you can deploy your models without worrying about the underlying infrastructure management, allowing you to focus on your application’s needs. Additionally, Azure AI Serverless supports a diverse collection of models and abstracts away the choice and provisioning of GPU hardware accelerators, ensuring efficient and fast inference times. The platform’s integration with managed services enables robust container orchestration, simplifying the deployment process even further and enhancing overall operational efficiency.
Attractive pay as you go cost model
One of the standout features of Azure AI Serverless is its token-based cost model, which greatly simplifies cost planning. With token-based billing, you are charged based on the number of tokens processed by your model, making it easy to predict costs based on expected usage patterns. This model is particularly beneficial for applications with variable loads, as you only pay for what you use.
Because the managed infrastructure needs to maintain LoRA adapters in memory and swap them on demand, there is an additional per hour cost associated with fine tuned serverless endpoints but it is billed by the hour only while the endpoint is being used. This makes it super easy to plan ahead future bills depending on your expected usage profile.
Also, the hourly cost is meant to go down, it already went down dramatically from $3.09/hour for a Llama 2 7B based model to $0.74/hour for a Llama 3.1 8B based model.
By paying attention to these critical factors, you can ensure that your model deployment is robust, secure, and capable of meeting the demands of your application.
Region Availability
When deploying your Llama 3.1 fine-tuned model, it’s important to consider the geographical regions where the model can be deployed. As of now, Azure AI Studio supports the deployment of Llama 3.1 fine-tuned models in the following regions: East US, East US 2, North Central US, South Central US, West US, and West US 3. Choosing a region that’s closer to your end-users can help reduce latency and improve performance. Ensure you select the appropriate region based on your target audience for optimal results.
For the most up-to-date information on region availability for other models, please refer to this guide on deploying models serverlessly.
Let’s get coding with Azure AI Studio and the Python SDK
Before proceeding to deployment, you’ll need a model that you have previously fine-tuned. One way is to use the process described in the two preceding installments of this fine-tuning blog post series: the first one covers synthetic dataset generation using RAFT and the second one covers fine-tuning. This ensures that you can fully benefit from the deployment steps using Azure AI Studio.
Note: All code samples that follow have been extracted from the 3_deploy.ipynb notebook of the raft-recipe GitHub repository. The snippets have been simplified and some intermediary steps left aside for ease of reading. You can either head over there, clone the repo and start experimenting right away or stick with me here for an overview.
Step 1: Set Up Your Environment
First, ensure you have the necessary libraries installed. You’ll need the Azure Machine Learning SDK for Python. You can install it using pip:
pip install azure-ai-ml
Next, you’ll need to import the required modules and authenticate your Azure ML workspace. This is standard, the MLClient is the gateway to the ML Workspace which gives you access to everything AI and ML on Azure.
from azure.ai.ml import MLClient
from azure.identity import (
DefaultAzureCredential,
InteractiveBrowserCredential,
)
from azure.ai.ml.entities import MarketplaceSubscription, ServerlessEndpoint
try:
credential = DefaultAzureCredential()
credential.get_token(“https://management.azure.com/.default”)
except Exception as ex:
credential = InteractiveBrowserCredential()
try:
client = MLClient.from_config(credential=credential)
except:
print(“Please create a workspace configuration file in the current directory.”)
# Get AzureML workspace object.
workspace = client._workspaces.get(client.workspace_name)
workspace_id = workspace._workspace_id
Step 2: Resolving the previously registered fine-tuned model
Before deploying, you need to resolve your fine-tuned model in the Azure ML workspace.
Since the fine-tuning job might still be running, you may want to wait for the model to be registered, here’s a simple helper function you can use.
def wait_for_model(client, model_name):
“””Wait for the model to be available, typically waiting for a finetuning job to complete.”””
import time
attempts = 0
while True:
try:
model = client.models.get(model_name, label=”latest”)
return model
except:
print(f”Model not found yet #{attempts}”)
attempts += 1
time.sleep(30)
The above function is basic but will make sure your deployment can proceed as soon as your model becomes available.
print(f”Waiting for fine tuned model {FINETUNED_MODEL_NAME} to complete training…”)
model = wait_for_model(client, FINETUNED_MODEL_NAME)
print(f”Model {FINETUNED_MODEL_NAME} is ready”)
Step 3: Subscribe to the model provider
Before deploying a model fine-tuned using a base model from a third-party non-Microsoft source, you need to subscribe to the model provider’s marketplace offering. This subscription allows you to access and use the model within Azure ML.
print(f”Deploying model asset id {model_asset_id}”)
from azure.core.exceptions import ResourceExistsError
marketplace_subscription = MarketplaceSubscription(
model_id=base_model_id,
name=subscription_name,
)
try:
marketplace_subscription = client.marketplace_subscriptions.begin_create_or_update(marketplace_subscription).result()
except ResourceExistsError as ex:
print(f”Marketplace subscription {subscription_name} already exists for model {base_model_id}”)
Details on how to construct the base_model_id and subscription_name are available in the 3_deploy.ipynb notebook.
Step 4: Deploy the model as a serverless endpoint
This section manages the deployment of a serverless endpoint for your fine-tuned model using the Azure ML client. It checks for an existing endpoint and creates one if it doesn’t exist, then proceeds with the deployment.
from azure.core.exceptions import ResourceNotFoundError
try:
serverless_endpoint = client.serverless_endpoints.get(endpoint_name)
print(f”Found existing endpoint {endpoint_name}”)
except ResourceNotFoundError as ex:
serverless_endpoint = ServerlessEndpoint(name=endpoint_name, model_id=model_asset_id)
serverless_endpoint = client.serverless_endpoints.begin_create_or_update(serverless_endpoint).result()
print(“Waiting for deployment to complete…”)
serverless_endpoint = ServerlessEndpoint(name=endpoint_name, model_id=model_id)
created_endpoint = client.serverless_endpoints.begin_create_or_update(serverless_endpoint).result()
print(“Deployment complete”)
Step 5: Check that the endpoint is correctly deployed
As part of a deployment pipeline, it is a good practice to include integration tests that check that the model is correctly deployed and fails fast instead of waiting for steps down the line to fail without context.
import requests
url = f”{endpoint.scoring_uri}/v1/chat/completions”
prompt = “What do you know?”
payload = {
“messages”:[ { “role”:”user”,”content”: prompt } ],
“max_tokens”:1024
}
headers = {“Content-Type”: “application/json”, “Authorization”: endpoint_keys.primary_key}
response = requests.post(url, json=payload, headers=headers)
response.json()
This code assumes that the deployed model is a chat model for simplicity. The code available in the 3_deploy.ipynb notebook is more generic and will cover both completion and chat models.
Conclusion
Deploying your fine-tuned model with Azure AI Studio and the Python SDK not only simplifies the process but also empowers you with unparalleled control, ensuring you have a robust and reliable platform for your deployment needs.
Stay tuned for our next blog post, in two weeks we will delve into assessing the performance of your deployed model through rigorous evaluation methodologies. Until then, head out to the Github repo and happy coding!
Microsoft Tech Community – Latest Blogs –Read More
Question on Consolidation
Hello, could you please tell me, if I have the following data in the multiple worksheet then how can I consolidate the data as per prioriy category. Thank you
Hello, could you please tell me, if I have the following data in the multiple worksheet then how can I consolidate the data as per prioriy category. Thank you Read More