Website-Icon Frankys Web

Exchange Server und OpenAI GPT-3?

Die KI von OpenAI ist ja aktuell in aller Munde und täglich finden sich in den Medien neue Artikel zu GPT3 oder GPT-4 mit Tests wie gut oder schlecht etwas funktioniert. Es werden Rufe nach Regulierung von KI Systemen laut und manche sehen auch schon die große Massenarbeitslosigkeit auf uns zukommen. Ob dies alles so eintritt und eine KI bald die Weltherrschaft übernimmt, kann ich als Exchange Admin nicht vorhersagen. Aber mit GPT-3 rumspielen will ich natürlich auch…

Natürlich habe ich auch den GPT-3 Chat ausprobiert und über die teils sehr guten Ergebnisse gestaunt, viel interessanter fand ich aber schnell die OpenAI API. Es gibt sogar schon ein PowerShell Modul, mit dem sich die OpenAI API sehr einfach ansprechen lässt. Das PowerShell Modul lässt sich mit dem folgenden Befehl installieren:

Install-Module PowerShellAI

Jetzt wird nur noch ein API Key benötigt, welcher hier erstellt werden kann. Der API Key lässt sich dann in einer Umgebungsvariable speichern und kann somit mit dem PowerShell Modul genutzt werden:

$env:OpenAIKey = "APIKEY"

Das erste Szenario, was mir eingefallen ist, war die KI mit den Fehlern aus dem Eventlog zu füttern und eine Lösung vorschlagen zu lassen. Ich hab daher schnell ein kleines Script erstellt:

#OpenAI API Key:
$env:OpenAIKey = "APITOKEN"

$EventLog = Get-EventLog -LogName Application -EntryType Error -After (get-date).AddDays(-1)
$EventLogGroups = $EventLog | group eventid

foreach ($EventLogGroup in $EventLogGroups) {
	$Event = $EventLogGroup.Group | select -Unique
	$EventID = $Event.EventID
	$Message = $Event.Message
	$GPT3Answer = Get-GPT3Completion "What could be the solution for this error: $Message"

	write-host "EventID: $EventID" -ForegroundColor red
	write-host "Message:" -ForegroundColor red
	write-host "$Message"
	write-host "Proposed solution by GPT-3:" -ForegroundColor green
	write-host "$GPT3Answer"
}

Auf meinem Test Exchange Server gibt es leider wenige „echte“ Fehler, die meisten Fehler treten während des Starts oder Runterfahren des Servers auf. So schlecht sind die Antworten allerdings nicht:

Ich habe dann OpenAI mit ein paar Fehlern eines produktiven Exchange Servers gefüttert, da waren die Ergebnisse erstaunlich gut. Bei zwei Fehlern passte sogar der von GPT-3 als Lösungsvorschlag vorgeschlagene Registry Schlüssel. Hier lohnt es sich also etwas weiter zu testen.

Übrigens kann GPT-3 auch recht brauchbare PowerShell Scripte für die Administration erstellen. Hier mal ein Beispiel:

$Script = Get-GPT3Completion "Create a PowerShell Script to list all Exchange Server Mailbox sizes"

Das ist dabei rausgekommen:

Es gibt einen kleinen Fehler: Die Zeile „Import-Module Exchange“ funktioniert so nicht, da es sich bei den Exchange CMDLets nicht um ein PowerShell Modul, sondern um ein SnapIn handelt. In der Exchange Management Shell selbst funktioniert das Script, da die die CMDLets zur Verfügung stehen und nicht extra geladen werden müssen.

An sich funktioniert das Script, wie man sehen kann wird die Größe des Administrator Postfachs angezeigt. Wenn man ein bisschen Fehlerbehandlung hinzufügt, ist das Script schon fertig.

Die Anweisungen funktionieren auch gut in der deutschen Sprache:

Das Rumspielen mit der OpenAI API macht wirklich Spaß, man findet sehr schnell immer neue Anwendungsfälle:

Viele Ergebnisse sind schon erstaunlich gut, aber aktuell muss man als Exchange Admin wohl noch keine Angst haben arbeitslos zu werden :-)

Da die Einstiegshürde mit der OpenAI API aber sehr niedrig ist, lohnt es sich damit ein bisschen zu experimentieren. Mir macht das aktuell ziemlich viel Spaß :-)

Die mobile Version verlassen