文章目錄
- 開發者快速入門
- 分析圖像輸入
- 使用工具擴展模型
- 提供閃電般的 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(日)