Mit dem offiziellen OpenAI Terraform-Provider kannst du die Ressourcen deiner OpenAI-Organisation mit Infrastructure as Code verwalten. Der Provider nutzt die Administration API, um Projekte, Nutzende, Gruppen, Rollen, Dienstkonten, Zertifikate, Ratenlimits, Ausgabenwarnungen und zugehörige Projekteinstellungen zu verwalten.
In diesem Leitfaden erstellst du ein OpenAI-Projekt. In den weiterführenden Leitfäden zu einzelnen Anwendungsfällen erfährst du mehr über Projektzugriff, Dienstkonten, betriebliche Limits, Projektsteuerung und Importe.
Bevor du beginnst
Du benötigst:
- Terraform 1.0 oder neuer. Die Importbeispiele erfordern Terraform 1.5 oder neuer.
- Eine OpenAI-Organisation, in der du berechtigt bist, einen Admin-API-Schlüssel zu erstellen.
Die Endpunkte der Administration API erfordern Admin-API-Schlüssel. Diese funktionieren nicht mit OpenAI-API-Endpunkten außerhalb der Administration API. Speichere den Schlüssel in einer Umgebungsvariable oder einem Secret-Manager. Nimm ihn weder in deine Terraform-Konfiguration noch in die Versionsverwaltung auf.
Provider konfigurieren
Erstelle ein neues Verzeichnis und füge eine Datei namens main.tf mit folgender Konfiguration hinzu:
terraform {
required_version = ">= 1.0"
required_providers {
openai = {
source = "openai/openai"
version = ">= 1.0.0"
}
}
}
provider "openai" {}
resource "openai_project" "example" {
name = "terraform-managed"
}
output "project_id" {
value = openai_project.example.project_id
}
Die Versionsbeschränkung lässt die Provider-Version 1.0.0 und neuere Versionen zu. Sieh dir vor einem Upgrade die Versionen des Providers an.
Setze deinen Admin-API-Schlüssel als Umgebungsvariable:
export OPENAI_ADMIN_KEY="<your-admin-api-key>"
Der Provider liest standardmäßig OPENAI_ADMIN_KEY. Du kannst außerdem OPENAI_ORG_ID und OPENAI_PROJECT_ID setzen, um die Header OpenAI-Organization und OpenAI-Project bei API-Anfragen mitzusenden. Sind diese optionalen Variablen nicht gesetzt, ermittelt OpenAI die Organisation und das Projekt anhand des API-Schlüssels. Setze sie, wenn du ausdrücklich angeben möchtest, welche Organisation oder welches Projekt deine Terraform-Konfiguration verwaltet. Alle verfügbaren Argumente findest du in der Referenz zur Provider-Konfiguration.
Initialisieren und anwenden
Initialisiere das Arbeitsverzeichnis, formatiere anschließend die Konfiguration und überprüfe sie:
terraform init
terraform fmt
terraform validate
Terraform lädt den Provider herunter und erstellt .terraform.lock.hcl. Nimm die Lockdatei per Commit in die Versionsverwaltung auf, damit bei künftigen Ausführungen dieselbe Provider-Version ausgewählt wird. Führe terraform init -upgrade aus, um die neueste Provider-Version auszuwählen, die die Versionsbeschränkung zulässt.
Überprüfe die Änderungen, die Terraform vornehmen wird:
terraform plan
Der Plan sollte eine hinzuzufügende Ressource vom Typ openai_project anzeigen. Wende die Konfiguration erst an, nachdem du den Plan überprüft hast:
terraform apply
Bestätige das Anwenden, wenn du dazu aufgefordert wirst. Terraform erstellt das Projekt und zeigt dessen ID über die Ausgabe project_id an.
Leitfaden für einen Anwendungsfall auswählen
| Leitfaden | Damit kannst du |
|---|---|
| Projekte und Zugriff | Projekte erstellen und rollen- sowie gruppenbasierten Zugriff konfigurieren. |
| Dienstkonten | Dienstkonten für die Authentifizierung per Workload-Identität oder API-Schlüssel erstellen. |
| Ratenlimits und Ausgaben | Bestehende Ratenlimits abgleichen und Ausgabenwarnungen konfigurieren. |
| Steuerung von Modellen, Tools und Daten | Modellzugriff, gehostete Tools und Datenaufbewahrung konfigurieren. |
| Import und Abgleich | Bestehende Ressourcen übernehmen und Konfigurationsabweichungen erkennen. |
Details zu einzelnen Argumenten und Importformaten findest du in der Referenz zu Ressourcen und Datenquellen des Providers.