认证
API 密钥
OpenAI API 使用 API 密钥进行身份验证。您可以在用户或服务账户级别创建 API 密钥。服务帐户与“机器人”个人相关联,应该用于为生产系统提供访问权限。每个 API 密钥的范围都可以限定为以下选项之一:
- 项目密钥 - 提供对单个项目的访问权限(首选选项);通过选择要为其生成密钥的特定项目来访问项目 API 密钥。
- User keys (用户密钥) - 我们的旧密钥。提供对用户已添加到的所有组织和所有项目的访问权;访问 API 密钥以查看您的可用密钥。我们强烈建议您过渡到项目密钥以获得最佳安全实践,尽管目前仍支持通过此方法进行访问。
请记住,您的 API 密钥是秘密!请勿与他人共享或在任何客户端代码(浏览器、应用程序)中公开它。生产请求必须通过您自己的后端服务器进行路由,在该服务器中,您的 API 密钥可以从环境变量或密钥管理服务安全地加载。
所有 API 请求都应在Authorization
HTTP 标头,如下所示:
Authorization: Bearer OPENAI_API_KEY
组织和项目 (可选)
对于属于多个组织或通过其旧版用户 API 密钥访问其项目的用户,您可以传递标头以指定用于 API 请求的组织和项目。这些 API 请求的使用量将计为指定组织和项目的使用量。
要访问Default project
在组织中,省略OpenAI-Project
页眉
curl 命令示例:
1
2
3
4
curl https://api.openai.com/v1/models \
-H "Authorization: Bearer $OPENAI_API_KEY" \
-H "OpenAI-Organization: YOUR_ORG_ID" \
-H "OpenAI-Project: $PROJECT_ID"
带有openai
Python 包:
1
2
3
4
5
6
from openai import OpenAI
client = OpenAI(
organization='YOUR_ORG_ID',
project='$PROJECT_ID',
)
带有openai
Node.js包:
1
2
3
4
5
6
import OpenAI from "openai";
const openai = new OpenAI({
organization: "YOUR_ORG_ID",
project: "$PROJECT_ID",
});
可以在 组织设置 页面上找到组织 ID。 通过选择特定项目,可以在 General settings (常规设置) 页面上找到项目 ID。