Zuletzt überprüft: Mai 2026
Erstellen Sie die AWS-Dienste der AI-900-Prüfung mit reinem Terraform — ein Block nach dem anderen, jeweils abgestimmt auf eine Prüfungsdomäne. Derselbe Code funktioniert auch mit OpenTofu.
Am Ende dieses Labs haben Sie mit einfachem Terraform die grundlegende Azure AI-Oberfläche bereitgestellt – eine Ressourcengruppe, ein Multi-Service Azure AI Services-Konto (ein Schlüssel, alle KI-APIs: Computer Vision, Sprache, Spracherkennung, Entscheidungsfindung), ein Speicherkonto für die zu verarbeitenden Eingaben und eine Diagnoseeinstellung, die jeden KI-API-Aufruf zur Überprüfung der Governance an Log Analytics übermittelt.
Jede Ressource ist einfaches Terraform. Fügen Sie die Snippets in eine einzelne main.tf ein, führen Sie terraform init aus und anschließend terraform apply Schritt für Schritt.
>= 1.5 oder OpenTofu >= 1.6.az login).terraform apply bei der Erstellung des KI-Kontos mit einem Responsible AI-Fehler fehlschlägt, akzeptieren Sie die Bedingungen über das Azure-Portal und wiederholen Sie den Vorgang.Meist kostenlos oder sehr günstig:
Der gesamte Stack kostet im Leerlauf < $1/Monat. Das Aufrufen der KI-APIs kostet echtes Geld; nach Gebrauch zerstören.
Standard-Azure-Eröffnung: azurerm ~> 4.0 festlegen, der leere features {}-Block und eine random_id für global eindeutige Ressourcennamen (AI Services-Konten müssen über alle Azure-Regionen hinweg für ihren DNS-Namen eindeutig sein).
terraform {
required_version = ">= 1.5"
required_providers {
azurerm = {
source = "hashicorp/azurerm"
version = "~> 4.0"
}
random = {
source = "hashicorp/random"
version = "~> 3.6"
}
}
}
provider "azurerm" {
features {}
}
resource "random_id" "suffix" {
byte_length = 2
}
locals {
tags = {
Project = "certlabpro-ai-900"
ManagedBy = "terraform"
}
}
resource "azurerm_resource_group" "main" {
name = "certlabpro-ai-900-rg"
location = "eastus"
tags = local.tags
}Fast jedes Azure AI-Szenario liest Eingaben aus Azure Storage – Bilder für Computer Vision, Audio-Clips für Spracherkennung, Textdateien für Sprache, Trainingsdaten für benutzerdefinierte Modelle. Wir stellen das Speicherkonto im Voraus mit sicheren Standardeinstellungen bereit (nur HTTPS, TLS 1.2, öffentlicher Netzwerkzugriff deaktiviert, kein öffentlicher Blob-Zugriff).
Der AI-900-Bereich Grundlagen des maschinellen Lernens in Azure testet dieses Konzept von Azure Storage als Datensubstrat direkt: Jedes Mal, wenn die Prüfung fragt, wo KI-Trainingsdaten gespeichert sind, ist Azure Storage (oder genauer Azure Blob Storage) die Antwort.
resource "azurerm_storage_account" "ai_data" {
name = "ai900data${random_id.suffix.hex}"
resource_group_name = azurerm_resource_group.main.name
location = azurerm_resource_group.main.location
account_tier = "Standard"
account_replication_type = "LRS"
account_kind = "StorageV2"
https_traffic_only_enabled = true
min_tls_version = "TLS1_2"
public_network_access_enabled = false
allow_nested_items_to_be_public = false
tags = local.tags
}Azure AI Services (der neu benannte Cognitive Services-Dachbegriff) bietet Ihnen einen Schlüssel, einen Endpunkt und Zugriff auf die gesamte Palette von KI-APIs – Computer Vision, Language, Speech, Translator, Document Intelligence, Content Safety und mehr. Das einzelne Multi-Service-Konto ist die AI-900 Kosten-Anti-Muster-Frage: Es ist teurer pro Aufruf als dedizierte Einzel-Service-Konten (Speech, Vision, Language haben jeweils einen eigenen kostenlosen F0-Tarif), aber es ist viel einfacher zu verwalten. AI-900 testet beide Formen – die Prüfung fragt, wann Sie welche wählen würden.
Wir setzen kind = "CognitiveServices" für das Multi-Service-Konto und sku_name = "S0" für den Standard-Tarif. Der custom_subdomain_name ist für die VNet-Integration erforderlich (der AI-900-Bereich Responsible AI testet dies als Voraussetzung für private Endpunkte). local_auth_enabled = true sorgt dafür, dass der API-Schlüssel-Fluss funktioniert; false würde nur die Entra ID-Authentifizierung erzwingen.
resource "azurerm_cognitive_account" "ai" {
name = "certlabpro-ai-900-${random_id.suffix.hex}"
resource_group_name = azurerm_resource_group.main.name
location = azurerm_resource_group.main.location
kind = "CognitiveServices"
sku_name = "S0"
custom_subdomain_name = "certlabpro-ai-900-${random_id.suffix.hex}"
local_auth_enabled = true
identity {
type = "SystemAssigned"
}
tags = local.tags
}Verantwortungsvolle KI (Responsible AI) ist eine AI-900-Säule (einer von fünf Prüfungsbereichen) – und die konkreteste Praxis der Responsible AI, die Sie mit Infrastruktur demonstrieren können, ist die Audit-Protokollierung. Wir erstellen einen Log Analytics-Arbeitsbereich als Ziel für Diagnoseprotokolle; in Schritt 5 konfigurieren wir die Diagnoseeinstellungen des KI-Kontos so, dass alles dorthin gesendet wird.
Log Analytics ist der zentrale Azure-Beobachtbarkeitsdienst – Azure Monitor sendet Metriken hierher, Application Insights sendet Anwendungs-Telemetriedaten hierher, Sentinel liest von hier für SIEM. Die Bereitstellung als Audit-Ziel des KI-Labs dient gleichzeitig als Baustein, den jede andere Azure-Zertifizierung als vorhanden voraussetzt.
resource "azurerm_log_analytics_workspace" "main" {
name = "certlabpro-ai-900-logs"
resource_group_name = azurerm_resource_group.main.name
location = azurerm_resource_group.main.location
sku = "PerGB2018"
retention_in_days = 30
tags = local.tags
}Diagnoseeinstellungen sind das universelle Beobachtbarkeits-Primitive von Azure: Jede Azure-Ressource kann ihre kategorisierten Protokolle und Metriken an einen Log Analytics-Arbeitsbereich, einen Event Hub oder ein Speicherkonto streamen. Wir aktivieren die Protokollkategorien Audit und RequestResponse des KI-Kontos – Audit erfasst was aufgerufen wurde, RequestResponse erfasst die tatsächlichen Anforderungs- und Antworttexte (nützlich für die Reaktion auf Vorfälle, beängstigend, wenn Sie personenbezogene Daten in Prompts haben; AI-900 Responsible AI testet beide Seiten dieses Kompromisses).
Mit diesem letzten Baustein landet jeder KI-API-Aufruf im Arbeitsbereich aus Schritt 4 und ist über KQL abfragbar. Das ist der AI-900-Abschluss der Responsible AI: nicht nur „wir haben einen Inhaltsfilter“, sondern „wir haben Beweise für jede Anfrage, die die KI gesehen hat“.
resource "azurerm_monitor_diagnostic_setting" "ai" {
name = "certlabpro-ai-900-diag"
target_resource_id = azurerm_cognitive_account.ai.id
log_analytics_workspace_id = azurerm_log_analytics_workspace.main.id
enabled_log {
category = "Audit"
}
enabled_log {
category = "RequestResponse"
}
metric {
category = "AllMetrics"
enabled = true
}
}Ein standardmäßiges terraform destroy entfernt alles in diesem Lab. Zwei Anmerkungen:
random_id-Suffix umgeht dies normalerweise.AI-900 behandelt Azure AI-Oberflächen, die dieses Lab nicht abdecken kann – Azure OpenAI Service (in AI-102 behandelt), Azure Machine Learning Studio + Arbeitsbereiche (DP-100), Bot Service, benutzerdefinierte Computer Vision-Modelle, Custom Vision Portal-Training, Language Studios benutzerdefinierte QnA und konversationelles Sprachverständnis, Document Intelligence benutzerdefinierte Modelle, Azure AI Search, Speech benutzerdefinierte Stimme/Aussprachebewertung und das Responsible AI-Dashboard für ML-Interpretierbarkeit.
Wir konzentrieren uns auf die Primitive Multi-Service-Konto + Speicher + Audit-Protokollierung, da sie das Substrat sind, an das jedes fortgeschrittenere Azure AI-Muster anknüpft. Sobald Sie verstanden haben, wie das Multi-Service-Konto die gesamte API-Palette unter einem Schlüssel verfügbar macht, sind die detaillierten Betrachtungen pro Dienst leichter zu navigieren.
Für eine konzeptionelle Abdeckung pro Dienst, siehe die Bereiche Durchsuchen und Editorial dieser Zertifizierungsseite.