OpenAI Terraform 提供程序
官方 OpenAI Terraform 提供程序(provider)让你以基础设施即代码的方式管理 OpenAI 组织资源。它通过管理 API管理项目、用户、群组、角色、服务账户、证书、速率限制、支出告警及相关项目设置。
本文先创建一个 OpenAI 项目。随后可按具体场景继续配置项目访问、服务账户、运行限制、项目控制,或导入已有资源。
开始之前
你需要:
管理 API 端点要求使用管理 API 密钥;这种密钥不能用于 OpenAI 的非管理类 API 端点。将密钥保存在环境变量或密钥管理器中,不要把它提交到 Terraform 配置或版本库。
配置提供程序
新建一个目录,并在其中创建 main.tf,写入以下配置:
来源示例 1(terraform):
## [中文] 配置Terraform最低版本、OpenAI提供程序来源与版本约束,声明一个项目并输出其ID;只有应用计划后才会创建远程项目。
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
}
这里的版本约束允许使用 1.0.0 及以上版本的提供程序。升级前应查看提供程序发布记录。
通过环境变量设置管理 API 密钥:
来源示例 2(bash):
## [中文] 在当前Shell设置管理API密钥环境变量;替换占位值,不把真实密钥写入版本库。
export OPENAI_ADMIN_KEY="<your-admin-api-key>"
提供程序默认读取 OPENAI_ADMIN_KEY。你也可以设置 OPENAI_ORG_ID 和 OPENAI_PROJECT_ID,让 API 请求携带 OpenAI-Organization 和 OpenAI-Project 请求头。如果未设置这两个可选变量,OpenAI 会根据 API 密钥确定组织和项目。需要明确指定 Terraform 配置管理的组织或项目时,再设置它们。完整参数见提供程序配置参考。
初始化并应用配置
初始化工作目录,再格式化并检查配置:
来源示例 3(bash):
## [中文] 依次初始化并下载提供程序、格式化配置、检查配置有效性;validate不等于真实API或权限验证。
terraform init
terraform fmt
terraform validate
Terraform 会下载提供程序并创建 .terraform.lock.hcl。将锁文件提交到版本库,使后续运行选择相同版本的提供程序。执行 terraform init -upgrade 可选择版本约束允许的最新提供程序版本。
查看 Terraform 将执行的变更:
来源示例 4(bash):
## [中文] 生成变更计划供检查;本命令不应用资源变更。
terraform plan
计划应显示新增一个 openai_project 资源。检查计划后再应用配置:
来源示例 5(bash):
## [中文] 应用经过检查的配置,按提示确认后会创建项目;这里不能当作只读查询。
terraform apply
出现提示时确认应用。Terraform 会创建项目,并通过 project_id 输出项显示项目 ID。
选择具体场景指南
| 指南 | 用途 |
|---|---|
| 项目与访问权限 | 创建项目,配置基于角色和群组的访问权限。 |
| 服务账户 | 创建用于工作负载身份或 API 密钥认证的服务账户。 |
| 速率限制与支出 | 协调已有速率限制,并配置支出告警。 |
| 模型、工具与数据控制 | 配置模型访问、托管工具和数据保留。 |
| 导入与状态协调 | 将已有资源纳入管理,并检测配置漂移。 |
各参数及导入格式见提供程序资源与数据源参考。

TRAE-AI编程


更多建议: