Terraform-ai
, unterstützt von OpenAI ChatGPT, vereinfacht den Prozess der Anwendung von Terraform HCL-Dateien durch die Bereitstellung eines intelligenten und interaktiven Assistenten.
terraform-ai
erfordert einen OpenAI-API-Schlüssel oder einen Azure OpenAI-Service-API-Schlüssel und -Endpunkt.
Sowohl für OpenAI als auch Azure OpenAI können Sie die folgenden Umgebungsvariablen verwenden:
export OPENAI_API_KEY= < your OpenAI key >
export OPENAI_DEPLOYMENT_NAME= < your OpenAI deployment/model name. defaults to " gpt-3.5-turbo " >
Folgende Modelle werden unterstützt:
code-davinci-002
text-davinci-003
gpt-3.5-turbo-0301
(Bereitstellung muss für Azuregpt-35-turbo-0301
heißen)gpt-3.5-turbo
gpt-35-turbo-0301
gpt-4-0314
gpt-4-32k-0314
Für Azure OpenAI Service können Sie die folgenden Umgebungsvariablen verwenden:
export AZURE_OPENAI_ENDPOINT= < your Azure OpenAI endpoint, like " https://my-aoi-endpoint.openai.azure.com " >
Wenn die Variable AZURE_OPENAI_ENDPOINT
festgelegt ist, wird der Azure OpenAI-Dienst verwendet. Andernfalls wird die OpenAI-API verwendet.
Zum brew
hinzufügen und installieren mit:
brew tap hubs-ai/terraform-ai https://github.com/hubs-ai/terraform-ai
brew install terraform-ai
Das Flag --require-confirmation
oder die Umgebungsvariable REQUIRE_CONFIRMATION
können so gesetzt werden, dass der Benutzer vor der Anwendung des Manifests zur Bestätigung aufgefordert wird. Der Standardwert ist „true“.
Das Flag --temperature
oder die Umgebungsvariable TEMPERATURE
können zwischen 0 und 1 eingestellt werden. Eine höhere Temperatur führt zu mehr kreativen Abschlüssen. Eine niedrigere Temperatur führt zu deterministischeren Abschlüssen. Der Standardwert ist 0.
--working-dir
Flag oder WORKING_DIR
Umgebungsvariable, die für den Terraform-Projektpfad festgelegt werden kann.
--exec-dir
Flag oder EXEC_DIR
Umgebungsvariable, die für die ausführbare Terraform-Binärdatei festgelegt werden kann.
terraform-ai " create micro ec2 ubuntu image 20.04 with name hello-future "
? Attempting to store the following template:
resource " aws_instance " " hello_future " {
ami = " ami-0f65671a86f061fcd "
instance_type = " t2.micro "
tags = {
Name = " hello-future "
}
}
Use the arrow keys to navigate: ↓ ↑ → ←
? Would you like to apply this ? [Reprompt/Apply/Don ' t Apply]:
+ Reprompt
▸ Apply
Don ' t Apply
terraform-ai init " create aws provider in ohio "
? Attempting to apply the following template:
provider " aws " {
region = " us-east-2 "
alias = " Ohio "
}
Use the arrow keys to navigate: ↓ ↑ → ←
? Would you like to apply this ? [Reprompt/Apply/Don ' t Apply]:
+ Reprompt
▸ Apply
Don ' t Apply
--require-confirmation
Ich habe mich von dem unter https://github.com/sozercan/kubectl-ai gehosteten Repository inspirieren lassen und möchte @sozercan meinen Dank für seine wertvolle Kreativität aussprechen. Darüber hinaus möchte ich die Arbeit von @simongottschlag am Azure OpenAI Fork würdigen, der unter https://github.com/simongottschlag/azure-openai-gpt-slack-bot verfügbar ist und auf dem von https:// gelegten Fundament aufbaut. github.com/PullRequestInc/go-gpt3.