Skip to content
adatum
  • Home
  •  About adatum
  •  Learn Azure Bicep
  •  SCOM Web API
Azure

News from Microsoft Ignite 2023

  • 15/11/202307/01/2025
  • by Martin Ehrnst

For those who experienced the “real Microsoft Ignite” this years event is not the same. We are defiantly in the era of hybrid whether you like it or not. Although, Microsoft does not disappoint on their release news for 2023.

Ignite Book Of News

I had the chance to briefly read up on this years book of news 2023. As you probably expect it is infused by AI. But what other cool stuff can we find? Lets take a look, but first lets get the AI related stuff out of the way.

I will update the list once I have the time to read through all the news, and read up on the details.

AI updates form Ignite

There is a a lot to unpack, but after OpenAI announcements a week ago, I was particularly interested in what features Azure OpenAI would get.

  • Model Catalog
    A catalog of fine-tuned models from Hugging Face, Meta, and other providers.
  • Azure AI Studio
    A revamped portal to built your custom AI solution. Brings in model selections, plugins, the model catalog, etc.
  • Prompt Flow is now generally available in machine learning, as well as in preview for Azure AI studio
  • Foundation model fine tuning through API
    This will allow companies that today uses LLAMA in their own applications to host the model on Azure OpenAI instead of GPU enabled compute, and fine tune through the APIs
  • GPT4-turbo and GPT4-turbo vision in preview and release by end of year
  • New ML translation model can now translate text without first translate to English, and then to the requested language
  • For customers who want to run on-premises. New images are available, like entity recognition
  • Kubernetes AI toolchain operator lets you run and distribute LLMs across your nodes in AKS.
  • Microsoft Copilot For Azure. Just as you thought who needs another copilot. Microsoft announces your new friend helping you out with the ARM control plane.
  • Microsoft Copilot for Service and copilot for sales. Integrates with CRM, Salesforce, ZenDesk etc. Giving your sales and support super powers.

Compute and data updates

Compute is the foundation to everything in the cloud. A few interesting things that stand out to me, are the latest updates to confidential compute (which I believe will be standard in the future).

  • Confidential containers for AKS is now in preview.
  • Azure SQL hyperscale gets a price cut. This service was (to me) already fairly priced compared to other options.
  • Partition scaling for CosmosDb
  • CosmosDb copilot (sneaking in with other news here)

Infrastructure and core Azure

  • Azure Boost too much to write. But this is quite a huge step for the overall Azure platform. Azure Boost moves the network and host management from servers on to purpose built chips. The results are huge performance gains.
  • SCOM managed instance. For long term followers you know I have a warm heart for Ops Manager. Microsoft is helping customers on to their cloud with SCOM managed instance.
  • Azure business continuity center
  • Chaos Studio generally available
  • Kubernetes Fleet Manager is GA, which lets you manage multiple AKS clusters more seamlessly. This is a very welcome release, as I have personally battled with managing a fleet without the tool.

Share this:

  • Click to share on LinkedIn (Opens in new window) LinkedIn
  • Click to share on X (Opens in new window) X
  • Click to share on Reddit (Opens in new window) Reddit
Community

Speaking at MVP Dagen and NIC

  • 10/10/202307/01/2025
  • by Martin Ehrnst

I will be speaking at two upcoming conferences in Norway: the Nordic Infrastructure Conference and MVP Dagen. These are great opportunities to learn from some of the leading experts in the Microsoft ecosystem and network with other IT professionals and decision-makers.

The Nordic Infrastructure Conference (NIC) is the premiere conference for any IT professional and decision-maker who wants to stay updated on what’s happening in the Microsoft cloud. NIC is the industry’s foremost collaborative and learning event offered at a global level, with best-in-class content and structure delivered by some of the leading technical IT speakers in the world. NIC will be held on November 1-3, 2023 at Oslo Spektrum.

MVP Dagen is a day where Norwegian Microsoft MVPs share their knowledge with those who are interested in keeping up with what’s happening in the Microsoft cloud. This is not a day for MVPs, but a day where we as MVPs share our insights and knowledge with you. MVP Dagen will be held on October 25, 2023 at Microsoft Norway’s office in Oslo.

I will be presenting two sessions at these conferences:

  • What can AI do for your incident process? Join me as we explore real-world use cases, examine the potential pitfalls, and discover best practices for integrating AI tools into your operations and incident processes. Whether you are a technology enthusiast, an IT professional, or a decision-maker seeking to maximize the value of AI investments, this session will provide valuable insights and actionable strategies.
  • Demystifying Azure Authentication. In this session, I will explain the basics of authentication and authorization in Azure, how and when to use App registrations, enterprise apps and managed identities

In addition to these conferences, I will also be attending the Pre NIC event organized by Azure User Group Norway on October 24, 2023 at 16:30 at Microsoft Norway’s office in Oslo. This is a meetup where you can get a sneak peek of some of the sessions that will be presented at NIC, as well as network with other Azure enthusiasts and speakers. If you are interested, join here.

If you are interested in attending these conferences or events, you can find more information and register on their websites: NIC Cloud Connect, MVP Dagen, and Azure User Group Norway. I hope to see you there!

Share this:

  • Click to share on LinkedIn (Opens in new window) LinkedIn
  • Click to share on X (Opens in new window) X
  • Click to share on Reddit (Opens in new window) Reddit
Automation

Using Azure OpenAI ChatGPT for incidents

  • 24/04/202307/01/2025
  • by Martin Ehrnst

The Challenge of Long Chat Threads During Incidents

Everyone is an AI expert these days. After OpenAI released ChatGPT it’s almost impossible to work in tech without being presented with good (and bad) examples of what this service can do for you. Of course, I am also interested in seeing what these services can help with, but until very recently I didn’t have any good use cases that would provide the company I work for and me any value. Of course, GitHub copilot help our developers when it comes to programming, and it helps me from time to time with the same. Maybe even more, as I have no idea what I am doing in most cases.

I used Azure OpenAI and the GPT3.5 turbo language model, which is what the public ChatGPT uses. The reason for using Azure OpenAI is to make sure we can use and train the model with our company-specific data. Currently, the service is open on request only.

Anyway, let’s dive into the actual problem at hand. As an incident responder, you know how important it is to keep track of what happened during an incident. When the incident is over, you need to have a clear summary of what happened to help you identify what went wrong and how you can prevent similar incidents in the future. But what if you have hundreds or even thousands of chat messages to go through? That’s where Azure OpenAI and ChatGPT come in.

Using PowerShell and Slack API to Retrieve Chat Threads from Slack

In Vipps Slack is our primary communication tool during incidents. After each incident, we need to go through the chat threads to understand what happened. We used to do this manually, but it was time-consuming and error-prone. That’s why we decided to automate the process using Azure OpenAI and ChatGPT.

First, I used PowerShell and Slack API to retrieve the individual messages from Slack threads. I then passed the chat threads to Azure OpenAI’s GPT-3 model, which generated a summary of the incident based on the chat messages.

Setting up a Slack App to use Slack API

To use the Slack API to retrieve chat threads, you’ll need to set up a Slack app and obtain an API token. Here’s how you can do it:

  1. Go to the Slack API website (https://api.slack.com) and sign in with your Slack account.
  2. Click on the “Create New App” button and give your app a name and a development workspace.
  3. In the app dashboard, navigate to the “OAuth & Permissions” section and add the “channels:history” scope to your bot token scopes.
  4. Install the app in your workspace and copy the Bot User OAuth Access Token.
  5. In PowerShell, use the following code to retrieve the chat threads from Slack:
$token = "YOUR_BOT_TOKEN"
$channelId = "CHANNEL_ID"
$url = "https://slack.com/api/conversations.history?token=$token&channel=$channelId"
$response = Invoke-RestMethod -Uri $url
Output from the Azure OpenAI PowerShell script

Putting the Complete PowerShell Script together

Below is a complete PowerShell script. I have redacted some company-specific information. So feel free to use and modify where you need. It is possible that you need to filter out more things than I did. Specific users that you do not want to include, HTML content, etc.

# slack test
$slackKey = Get-AzKeyVaultsecret -VaultName "" -Name "" -AsPlainText
$azOpenAiKey = Get-AzKeyVaultsecret -VaultName "" -Name "" -AsPlainText
$slackChannelId = ""
$slackThreadId = ""
$openAiUrl = ""
$slackUrl = "https://slack.com/api/conversations.replies?channel=$slackChannelId&ts=$slackThreadId&pretty=1"
$slackHeaders= @{
"Authorization" = "Bearer $slackKey"
"content-type" = "authorization/x-www-form-urlencoded"
}
$incidentThread = Invoke-RestMethod -uri $slackUrl -Method Get -Headers $slackHeaders
$incidentMessages = ""
foreach ($message in $incidentThread.messages) {
$messageText = $message.text
$messageUser = $message.user
$messageUserUrl = "https://slack.com/api/users.info?user=$messageUser&pretty=1"
$messageUser = Invoke-RestMethod -uri $messageUserUrl -Method Get -Headers $slackHeaders
$messageUser = $messageUser.user.profile.real_name_normalized
$messageDate = (([System.DateTimeOffset]::FromUnixTimeSeconds($message.ts)).DateTime).ToString("yyyy-MM-dd HH:mm")
$messageText = $messageText.Replace("`n", "")
$messageText = $messageText.Replace("`r", "")
$messageText = $messageText.Replace(">", "")
$messageText = $messageText.Split("https://")[0]
$incidentMessages+="$messageDate|$messageUser|$messageText|`n"
}
$openAiHeaders = @{
"Content-Type" = "application/json"
"api-key" = $azOpenAiKey
"accept" = "application/json, text/plain, */*"
"accept-language" = "en"
}
$messages = $incidentMessages |Out-String
$prompt = @"
summarize the incident chat log in the following format returning a structured markdown document. Make sure to include the following fields as headings
Start time:
End time:
Observed issue:
Root cause:
Action items:
Participants:
$messages
summary:
"@
$body = @{
"prompt" = "$prompt"
"max_tokens" = 500
"temperature" = 0.3
"top_p" = 1
"frequency_penalty" = 0.2
"presence_penalty" = 0.2
"stop" = "tokens"
} | ConvertTo-Json -EscapeHandling EscapeNonAscii
$summary = Invoke-RestMethod -uri $openAiUrl -Method Post -Headers $openAiHeaders -Body $body
$summary.choices.text
view raw azopenai-slack.ps1 hosted with ❤ by GitHub

Summary and things to know

When using Azure OpenAI and ChatGPT to generate incident summaries, it’s important to keep in mind that the model is designed to analyze text-based data. If the chat messages contain images or other non-text data, the model will not be able to interpret them.

If your incident chat threads contain images or other non-text data, you may need to consider alternative ways to include that information

Another important consideration when using Azure OpenAI and ChatGPT to summarize chat threads from Slack during incidents is the token limitations of the model. The GPT-3 model has a limit of 2048 tokens per input, which means that if your chat threads are particularly long, you may need to split them into multiple inputs to generate a complete summary.

In addition, the Azure OpenAI API uses a token-based pricing model, which means that you will be charged based on the number of tokens generated by the model. If you’re generating a large number of summaries or working with particularly long chat threads, this can quickly become a significant expense.

By being mindful of these token limitations and experimenting with different summarization strategies, you can still use Azure OpenAI and ChatGPT to generate valuable incident summaries that can help you improve your incident response process.

Image from chatgpt showing i used chatgpt to write the post

Share this:

  • Click to share on LinkedIn (Opens in new window) LinkedIn
  • Click to share on X (Opens in new window) X
  • Click to share on Reddit (Opens in new window) Reddit

Posts pagination

1 2 3 4 … 37

Popular blog posts

  • Azure Application registrations, Enterprise Apps, and managed identities
  • SCOM Alerts to Microsoft Teams and Mattermost
  • How to move Azure blobs up the path
  • Creating Azure AD Application using Powershell
  • SCOM and OMS: The agents

Categories

Automation Azure Azure Active Directory Azure Bicep Azure DevOps Azure Functions Azure Lighthouse Azure Logic Apps Azure Monitor Azure Policy Community Conferences CSP Monitoring DevOps GitHub Guest blogs Infrastructure As Code Kubernetes Microsoft CSP MPAuthoring OMS Operations Manager Podcast Powershell Uncategorised Windows Admin Center Windows Server

Follow Martin Ehrnst

  • X
  • LinkedIn

RSS feed RSS - Posts

RSS feed RSS - Comments

Microsoft Azure MVP

Martin Ehrnst Microsoft Azure MVP
Adatum.no use cookies to ensure that we give you the best experience on our website. If you continue to use this site we will assume that you are happy with it. Cookie Policy
Theme by Colorlib Powered by WordPress