openai/openai-node
Official JavaScript / TypeScript library for the OpenAI API
OpenAI Node.js / TypeScript SDK
它是什么
- 一个官方客户端库,让 JavaScript 或 TypeScript 代码可以调用 OpenAI REST API。
- 由 OpenAI 的 OpenAPI 规范生成,因此 SDK 与实时 API 接口保持同步。
核心功能
- 文本生成:通过新的 Responses API 和经典的 Chat Completions API。
- 视觉:发送图片与文本提示,并接收描述性输出。
- 流式传输:以 Server‑Sent Events 接收部分结果,适用于实时 UI。
- 文件处理:辅助函数 (
toFile,toStreamingFile) 让上传微调数据变得简单。 - 工作负载身份验证:使用来自 Kubernetes、Azure、GCP 或 X.509 客户端证书的短效令牌,取代静态 API 密钥。
- 实时 API:通过 WebSocket 进行低延迟、多模态(文本 + 音频)对话,并支持函数调用。
- Azure OpenAI 与 Amazon Bedrock 适配器:为对应的云服务商端点提供即插即用的支持。
- 自动分页、重试、超时与取消:提供合理的默认值,且可进行覆盖。
- Webhook 验证:内置验证与解析 OpenAI 发送之 Webhook 的方法。
典型使用案例
- 在 Web 或服务器应用程序中构建聊天助手、代码生成器或任何由 LLM 驱动的功能。
- 通过 Vision 端点使用 LLM 处理图像(例如 OCR、字幕生成)。
- 执行微调任务并管理已上传的训练文件。
- 使用 Realtime API 部署低延迟语音助手。
- 使用工作负载身份验证将 OpenAI 模型集成至基于 Kubernetes 的服务中,实现无密钥验证。
安装
npm install openai # or use Deno: import OpenAI from 'npm:openai'
快速开始 (使用 Responses API 进行文本生成)
import OpenAI from 'openai';
const client = new OpenAI({
apiKey: process.env.OPENAI_API_KEY, // optional – falls back to env var
});
const response = await client.responses.create({
model: 'gpt-5.5',
instructions: 'You are a coding assistant that talks like a pirate',
input: 'Are semicolons optional in JavaScript?',
});
console.log(response.output_text);
深入了解
- 完整方法列表:仓库中的
api.md。 - 示例代码:
examples/目录(例如多轮对话、流式传输、工作负载身份验证)。 - 官方 API 参考:https://platform.openai.com/docs/api-reference。
- 进阶主题文档:
docs/realtime.md、docs/azure.md以及 X.509 工作负载身份验证指南。
维护者
- 由 OpenAI 开发与维护,并定期于 npm 发布更新。
所有细节均直接取自仓库的 README;未添加任何外部假设。
相关
- 项目
- 项目
- 项目
- 项目
- 项目