Skip to content

OpenAI SDK 设置

设置您的开发环境,以便使用您首选语言的 SDK 调用 OpenAI API。

本页介绍如何设置本地开发环境以使用 OpenAI API。您可以使用官方支持的 SDK、社区库,或您自己喜欢的 HTTP 客户端。

创建并导出 API 密钥

开始之前,请通过令牌说明创建一个 API 密钥,用于安全访问 API。将密钥存储在安全位置,例如 .zshrc 文件或您电脑上的其他文本文件。生成 API 密钥后,在终端中将其导出为环境变量。

bash
export OPENAI_API_KEY="your_api_key_here"
bash
setx OPENAI_API_KEY "your_api_key_here"

OpenAI SDK 会自动从系统环境中读取您的 API 密钥。

当然,您也可以在代码中直接设置 API 密钥,但这并不安全,尤其是在共享代码时。建议使用环境变量来保护您的密钥。

安装官方 SDK

JavaScript

要在服务器端的 JavaScript 环境中使用 OpenAI API,如 Node.js、Deno 或 Bun,可以使用官方的 TypeScript 和 JavaScript OpenAI SDK。通过 npm 或你喜欢的包管理器安装 SDK 开始使用:

bash
npm install openai

安装 OpenAI SDK 后,创建一个名为 example.mjs 的文件,并将示例代码复制到其中:

js
import OpenAI from "openai";
const client = new OpenAI({
  apiKey: process.env.OPENAI_API_KEY,
  baseURL: "https://api.uniapi.io/v1", // 如果使用 UniAPI,请确保设置正确的 baseURL
});

const response = await client.responses.create({
  model: "gpt-4.1",
  input: "Write a one-sentence bedtime story about a unicorn.",
});

console.log(response.output_text);

使用 node example.mjs (或 Deno 或 Bun 的等效命令)执行代码。几秒钟后,你应该能看到 API 请求的输出结果。

Python

要在 Python 中使用 OpenAI API,您可以使用官方的 OpenAI Python SDK。首先通过 pip 安装该 SDK:

bash
pip install openai

安装 OpenAI SDK 后,创建一个名为 example.py 的文件,并将示例代码复制到其中:

python
from openai import OpenAI
import os

base_url = "https://api.uniapi.io/v1"  # 如果使用 UniAPI,请确保设置正确的 baseURL
api_key = os.getenv("OPENAI_API_KEY") # 从环境变量中获取 API 密钥
client = OpenAI(base_url=base_url, api_key=api_key)

response = client.chat.completions.create(
  model="gpt-4.1",
  messages=[
    {
      "role": "user",
      "content": "Write a one-sentence bedtime story about a unicorn."
    }
  ]
)

print(response.choices[0].message.content)

使用 python example.py 执行代码。几秒钟后,您应该能看到 API 请求的输出。

.NET

OpenAI 与微软合作,提供了官方支持的 C# API 客户端。您可以通过.NET CLI 从 NuGet 安装它。

bash
dotnet add package OpenAI

一个简单的聊天补全 API 请求看起来像这样:

csharp
using OpenAI.Chat;

ChatClient client = new(
  model: "gpt-4.1",
  apiKey: Environment.GetEnvironmentVariable("OPENAI_API_KEY"),
  baseUrl: "https://api.uniapi.io/v1" // 如果使用 UniAPI,请确保设置正确的 baseURL
);

ChatCompletion completion = client.CompleteChat("Say 'this is a test.'");

Console.WriteLine($"[ASSISTANT]: {completion.Content[0].Text}");

Java

OpenAI 提供了一个针对 Java 编程语言的 API 辅助工具,目前处于测试阶段。您可以使用以下配置来包含 Maven 依赖:

xml
<dependency>
    <groupId>com.openai</groupId>
    <artifactId>openai-java</artifactId>
    <version>0.31.0</version>
</dependency>

一个简单的聊天补全 API 请求看起来像这样:

java
import com.openai.client.OpenAIClient;
import com.openai.client.okhttp.OpenAIOkHttpClient;
import com.openai.models.ChatCompletion;
import com.openai.models.ChatCompletionCreateParams;
import com.openai.models.ChatModel;

// Configures using the `OPENAI_API_KEY`, `OPENAI_ORG_ID` and `OPENAI_PROJECT_ID`
// environment variables
OpenAIClient client = OpenAIOkHttpClient.fromEnv();

ChatCompletionCreateParams params = ChatCompletionCreateParams.builder()
    .addUserMessage("Say this is a test")
    .model(ChatModel.O3_MINI)
    .build();
ChatCompletion chatCompletion = client.chat().completions().create(params);

Go

OpenAI 提供了一个针对 Go 编程语言的 API 辅助工具,目前处于测试阶段。您可以使用以下代码导入该库:

go
import (
  "github.com/openai/openai-go" // imported as openai
)

一个简单的聊天补全 API 请求看起来像这样:

go
package main

import (
  "context"
  "fmt"

  "github.com/openai/openai-go"
  "github.com/openai/openai-go/option"
)

func main() {
  client := openai.NewClient(
    option.WithAPIKey("My API Key"), // defaults to os.LookupEnv("OPENAI_API_KEY")
    option.WithBaseURL("https://api.uniapi.io/v1"), // 如果使用 UniAPI,请确保设置正确的 baseURL
  )
  chatCompletion, err := client.Chat.Completions.New(
    context.TODO(), openai.ChatCompletionNewParams{
      Messages: openai.F(
        []openai.ChatCompletionMessageParamUnion{
          openai.UserMessage("Say this is a test"),
        }
      ),
      Model: openai.F(openai.ChatModelGPT4o),
    }
  )

  if err != nil {
    panic(err.Error())
  }

  println(chatCompletion.Choices[0].Message.Content)
}

Azure OpenAI 库

微软的 Azure 团队维护着兼容 OpenAI API 和 Azure OpenAI 服务的库。请阅读以下库文档,了解如何将它们与 OpenAI API 一起使用。

.NET 的 Azure OpenAI 客户端库JavaScript 的 Azure OpenAI 客户端库Java 的 Azure OpenAI 客户端库Go 的 Azure OpenAI 客户端库

社区库

以下库由更广泛的开发者社区构建和维护。您也可以关注我们在 GitHub 上的 OpenAPI 规范仓库,以便及时获取我们对 API 进行更改的最新信息。

请注意,OpenAI 不会验证这些项目的正确性或安全性。使用时请自行承担风险!

C#/.NET

C++

Clojure

Crystal

Dart/Flutter

Delphi

Elixir

Go

Java

Julia

Kotlin

Node.js

PHP

Python

R

Ruby

Rust

Scala

Swift

Unity

Unreal Engine

Other OpenAI repositories