OpenAI Terraform 提供程序

2026-11-09 15:52 更新

官方 OpenAI Terraform 提供程序(provider)让你以基础设施即代码的方式管理 OpenAI 组织资源。它通过管理 API管理项目、用户、群组、角色、服务账户、证书、速率限制、支出告警及相关项目设置。

本文先创建一个 OpenAI 项目。随后可按具体场景继续配置项目访问、服务账户、运行限制、项目控制,或导入已有资源。

开始之前

你需要:

  • Terraform 1.0 或更高版本。导入示例要求 Terraform 1.5 或更高版本。
  • 一个有权创建管理 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 密钥认证的服务账户。
速率限制与支出 协调已有速率限制,并配置支出告警。
模型、工具与数据控制 配置模型访问、托管工具和数据保留。
导入与状态协调 将已有资源纳入管理,并检测配置漂移。

各参数及导入格式见提供程序资源与数据源参考。

以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号