文章目录
- 开发者快速入门
- 分析图像输入
- 使用工具扩展模型
- 提供闪电般的 AI 体验
- 构建代理
- 进一步探索
- 模型
- 精选模型
- 推理模型
- 旗舰聊天模型
- 成本优化模型
- 实时模型
- 旧版 GPT 模型
- DALL·E
- 文本转语音
- 转写
- 嵌入
- 调度
- 工具特定模型
- GPT 基础模型
- Libraries
- 创建和导出 API 密钥
- 安装官方 SDK
- JavaScript
- Python
- Azure 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
开发者快速入门
使用 OpenAI API 的第一步。
https://platform.openai.com/docs/quickstart
OpenAI API 为文本生成、自然语言处理、计算机视觉等领域提供了一种简单接口,用于访问最先进的 AI 模型。此示例从提示中生成 文本输出,就像您使用 ChatGPT 一样。
从模型生成文本
import OpenAI from "openai";
const client = new OpenAI();const completion = await client.chat.completions.create({model: "gpt-4o",messages: [{role: "user",content: "Write a one-sentence bedtime story about a unicorn.",},],
});console.log(completion.choices[0].message.content);
配置您的开发环境
安装并配置官方OpenAI SDK以运行上述代码。
https://platform.openai.com/docs/libraries
文本生成和提示
了解更多关于提示、消息角色和构建对话式应用的信息。
https://platform.openai.com/docs/guides/text
分析图像输入
您也可以将图像输入提供给模型。扫描收据、分析截图或在现实世界中寻找物体,使用 计算机视觉。
分析图像内容
import OpenAI from "openai";
const openai = new OpenAI();const response = await openai.chat.completions.create({model: "gpt-4o-mini",messages: [{role: "user",content: [{ type: "text", text: "What's in this image?" },{type: "image_url",image_url: {url: "https://upload.wikimedia.org/wikipedia/commons/thumb/d/dd/Gfp-wisconsin-madison-the-nature-boardwalk.jpg/2560px-Gfp-wisconsin-madison-the-nature-boardwalk.jpg",},},],},],
});console.log(response.choices[0].message.content);
计算机视觉指南
学习如何使用模型输入图像并从图像中提取意义。
https://platform.openai.com/docs/guides/images
使用工具扩展模型
使用工具使模型能够访问新的数据和功能。您可以选择调用自己的自定义代码,或者使用 OpenAI 的强大的内置工具。此示例使用网络搜索来使模型能够访问互联网上的最新信息。
从互联网获取完成信息
import OpenAI from "openai";
const client = new OpenAI();const completion = await client.chat.completions.create({model: "gpt-4o-search-preview",web_search_options: {},messages: [{"role": "user","content": "What was a positive news story from today?"}],
});console.log(completion.choices[0].message.content);
使用内置工具
了解强大的内置工具,如网络搜索和文件搜索。
https://platform.openai.com/docs/guides/tools
函数调用指南
学习如何使模型调用您自己的自定义代码。
https://platform.openai.com/docs/guides/function-calling
提供闪电般的 AI 体验
使用新的 实时 API 或服务器端发送的 流式事件,您可以构建高性能、低延迟的用户体验。
从 API 流式传输服务器发送的事件
import OpenAI from "openai";
const openai = new OpenAI();const stream = await openai.chat.completions.create({model: "gpt-4o",messages: [{role: "user",content: "Say 'double bubble bath' ten times fast." ,}],stream: true,
});for await (const chunk of stream) {console.log(chunk);console.log(chunk.choices[0].delta);console.log("****************");
}
使用流式事件
使用服务器端事件快速将模型响应流式传输给用户。
https://platform.openai.com/docs/guides/streaming-responses
开始使用实时API
使用 WebRTC 或 WebSockets 为超快语音到语音 AI 应用程序。
https://platform.openai.com/docs/guides/realtime
构建代理
使用 OpenAI 平台构建 代理 ,使其能够代表用户采取行动——例如 控制计算机 。使用 Python 代理 SDK 在后端创建编排逻辑。
from agents import Agent, Runner
import asynciospanish_agent = Agent(name="Spanish agent",instructions="You only speak Spanish.",
)english_agent = Agent(name="English agent",instructions="You only speak English",
)triage_agent = Agent(name="Triage agent",instructions="Handoff to the appropriate agent based on the language of the request.",handoffs=[spanish_agent, english_agent],
)async def main():result = await Runner.run(triage_agent, input="Hola, ¿cómo estás?")print(result.final_output)if __name__ == "__main__":asyncio.run(main())# ¡Hola! Estoy bien, gracias por preguntar. ¿Y tú, cómo estás?
构建能够采取行动的代理程序
学习如何使用 OpenAI 平台构建强大、高效的 AI 代理。
https://platform.openai.com/docs/guides/agents
进一步探索
我们对 OpenAI 平台所能实现的功能仅仅触及了皮毛。以下是一些您可能想要进一步探索的资源。
深入探索提示和文本生成
了解有关提示、消息角色以及构建像聊天机器人这样的对话式应用程序的更多信息。
https://platform.openai.com/docs/guides/text
分析图像内容
学习如何使用模型中的图像输入并从图像中提取意义。
https://platform.openai.com/docs/guides/images
从模型生成结构化 JSON 数据
从模型生成符合您指定的JSON模式的JSON数据。
https://platform.openai.com/docs/guides/structured-outputs
调用自定义代码以帮助生成响应
赋予模型调用您自己的自定义代码以帮助生成响应的能力。这样做是为了让模型能够访问它否则无法访问的数据或系统。
https://platform.openai.com/docs/guides/function-calling
完整API参考
查看 OpenAI 平台的完整 API 参考文档。
https://platform.openai.com/docs/api-reference
模型
https://platform.openai.com/docs/models
探索所有可用的模型并比较它们的性能。
精选模型
- GPT-4.5 Preview
最大且功能最强大的 GPT 模型 - o3-mini
快速、灵活、智能推理模型 - GPT-4o
快速、智能、灵活的 GPT 模型
推理模型
o系列模型,擅长复杂、多步骤的任务。
- o3-mini : 快速、灵活、智能推理模型
- o1 : 高智能推理模型
- o1-mini : 一个比o1更快、更经济的推理模型
- o1-pro : 一个具有更多计算能力以获得更好响应的o1版本
旗舰聊天模型
我们的多功能、高智能旗舰模型。
- GPT-4.5 Preview : 最大的、功能最强大的 GPT 模型
- GPT-4o : 快速、智能、灵活的 GPT 模型
- GPT-4o Audio : GPT-4o 模型,能够处理音频输入和输出
- ChatGPT-4o : GPT-4o 模型用于 ChatGPT
成本优化模型
更小、更快且运行成本更低的模型。
- GPT-4o mini : 快速、经济的专注任务小型模型
- GPT-4o mini 音频 : 较小的模型,能够进行音频输入和输出
实时模型
能够进行实时文本和音频输入输出的模型。
- GPT-4o Realtime : 模型能够实时处理文本和音频输入输出
- GPT-4o mini Realtime : 较小的实时文本和音频输入输出模型
旧版 GPT 模型
支持我们通用和聊天模型的旧版版本。
- GPT-4 Turbo : 一个较旧的、高智能的GPT模型
- GPT-4 : 一个较老的高智能 GPT 模型
- GPT-3.5 Turbo : 遗留的 GPT 模型,用于更便宜的聊天和非聊天任务
DALL·E
能够根据自然语言提示生成和编辑图像的模型。
- DALL·E 3 : 我们的最新图像生成模型
- DALL·E 2 : 我们的第一个图像生成模型
文本转语音
可以将文本转换为自然发音的语音的模型。
- GPT-4o mini TTS : 文本到语音模型,由 GPT-4o mini 驱动
- TTS-1 : 文本到语音模型,针对速度进行了优化
- TTS-1 HD : 文本到语音模型,针对质量进行了优化
转写
模型可以转录和翻译音频为文本。
- GPT-4o Transcribe : 语音转文本模型,由 GPT-4o 驱动
- GPT-4o mini Transcribe : 语音转文字模型,由 GPT-4o mini 驱动
- Whisper : 通用语音识别模型
嵌入
一组可以将文本转换为向量表示的模型。
- text-embedding-3-small : 小型嵌入模型
- text-embedding-3-large : 最具能力的嵌入模型
- text-embedding-ada-002 : 更老的嵌入模型
调度
精细调整的模型,用于检测输入是否可能敏感或不安全。
- omni-moderation : 识别文本和图像中的潜在有害内容
- text-moderation : 前一代仅基于文本的审核模型
工具特定模型
模型以支持特定的内置工具。
- GPT-4o Search Preview : GPT 模型用于 Chat Completions 中的网页搜索
- GPT-4o mini Search Preview : 快速、经济实惠的小型网页搜索模型
- computer-use-preview : 专用计算机使用工具模型
GPT 基础模型
较老的模型,未经过指令遵循训练。
- babbage-002 : GPT-3 ada 和 babbage 基础模型的替代方案
- davinci-002 : GPT-3 curie 和 davinci 基础模型的替代方案
Libraries
https://platform.openai.com/docs/libraries
设置您的开发环境以使用 OpenAI API 和您首选语言的 SDK。
本页介绍如何设置您的本地开发环境以使用 OpenAI API。您可以使用我们官方支持的 SDK 之一、社区库或您自己首选的 HTTP 客户端。
创建和导出 API 密钥
开始之前,在仪表板中创建一个 API 密钥,您将使用该密钥安全地访问 API。将密钥存储在安全的位置,例如 .zshrc
文件 或计算机上的其他文本文件。生成 API 密钥后,将其作为 环境变量 导出到终端。
macOS / Linux
Export an environment variable on macOS or Linux systems
export OPENAI_API_KEY="your_api_key_here"
Windows
Export an environment variable in PowerShell
setx OPENAI_API_KEY "your_api_key_here"
OpenAI SDK 配置为从系统环境中自动读取您的 API 密钥。
安装官方 SDK
JavaScript
要在类似于 Node.js、Deno 或 Bun 的服务器端 JavaScript 环境中使用 OpenAI API,您可以使用官方的 OpenAI TypeScript 和 JavaScript SDK。通过使用 npm 或您首选的包管理器来安装 SDK 开始使用:
使用 npm 安装 OpenAI SDK
npm install openai
使用安装好的 OpenAI SDK,创建一个名为 example.mjs
的文件,并将示例代码复制到其中:
测试一个基本的API请求
import OpenAI from "openai";
const client = new OpenAI();const completion = await client.chat.completions.create({model: "gpt-4o",messages: [{role: "user",content: "Write a one-sentence bedtime story about a unicorn.",},],
});console.log(completion.choices[0].message.content);
执行代码 node example.mjs
(或 Deno 或 Bun 的等效命令)。片刻之后,你应该能看到你的 API 请求的输出。
Python
要在 Python 中使用 OpenAI API,可以使用官方的 OpenAI SDK for Python。使用 pip 安装 SDK,开始使用:
使用 pip 安装 OpenAI SDK
pip install openai
安装 OpenAI SDK 后,创建一个名为 example.py
的文件,并将示例代码复制到其中:
测试基本 API 请求
from openai import OpenAI
client = OpenAI()response = client.responses.create(model="gpt-4o",input="Write a one-sentence bedtime story about a unicorn."
)print(response.output_text)
使用 python example.py
执行代码。一会儿,您就会看到 API 请求的输出结果。
了解详情请访问 GitHub
探索更多SDK功能和选项,请访问库的GitHub README页面。
https://github.com/openai/openai-node
Azure OpenAI 库
微软的 Azure 团队维护的库与 OpenAI API 和 Azure OpenAI 服务兼容。阅读以下库文档,了解如何使用它们与 OpenAI API。
- Azure OpenAI 客户端库 for .NET
- Azure OpenAI 客户端库 for JavaScript
- Azure OpenAI 客户端库 for Java
- Azure OpenAI 客户端库 for Go
社区库
以下库是由更广泛的开发者社区构建和维护的。您还可以在GitHub上关注我们的OpenAPI规范存储库,以获取关于我们何时对我们的API进行更改的及时更新。
请注意,OpenAI不会验证这些项目的正确性或安全性。请自行承担风险!
C# / .NET
- Betalgo.OpenAI by Betalgo
- OpenAI-API-dotnet by OkGoDoIt
- OpenAI-DotNet by RageAgainstThePixel
C++
- liboai by D7EAD
Clojure
- openai-clojure by wkok
Crystal
- openai-crystal 由 sferik 开发
Dart/Flutter
- openai by anasfik
Delphi
- DelphiOpenAI by HemulGM
Elixir
- openai.ex 由 mgallo
Go
- go-gpt3 由 sashabaranov
Java
- simple-openai by Sashir Estela
- Spring AI
Julia
- OpenAI.jl 由 rory-linehan 开发
Kotlin
- openai-kotlin by Mouaad Aallam
Node.js
- openai-api 由 Njerschow
- openai-api-node 由 erlapso
- gpt-x 由 ceifa
- gpt3 由 poteat
- gpts 由 thencc
- @dalenguyen/openai 由 dalenguyen
- tectalic/openai 由 tectalic
PHP
- orhanerday/open-ai 由 orhanerday 提供
- tectalic/openai 由 tectalic 提供
- openai-php client 由 openai-php 提供
Python
- 时序 by OthersideAI
R
- rgpt3 by ben-aaron188
Ruby
- openai by nileshtrivedi
- ruby-openai by alexrudall
Rust
- async-openai 由 64bit 提供
- fieri 由 lbkolev 提供
Scala
- openai-scala-client 由 cequence-io 开发
Swift
- AIProxySwift 由 Lou Zell
- OpenAIKit 由 dylanshine
- OpenAI 由 MacPaw
Unity
- OpenAi-Api-Unity by hexthedev
- com.openai.unity by RageAgainstThePixel
Unreal Engine
- OpenAI-Api-Unreal by KellanM
Other OpenAI repositories
- tiktoken - counting tokens
- simple-evals - simple evaluation library
- mle-bench - library to evaluate machine learning engineer agents
- gym - reinforcement learning library
- swarm - educational orchestration repository
2025-03-29(日)