openai-node

官方 TS SDK,类型安全调用 OpenAI 接口

开源 🏷️完全免费 🔧 仅开源项目,无在线服务,需自行部署 基础设施 🍴 复刻 1627 🐛 待处理 13 👀 关注 152
GitHub ↗
GitHub 星标 ★ 11242
维护状态 活跃
是否开源 开源
定价模式 🏷️完全免费 开源免费(Apache-2.0),API 调用按 OpenAI 用量计费

项目预览

openai-node 项目界面预览图
图片来源:GitHub 官方仓库名片

项目数据

分类基础设施
开发团队openai
定价模式🏷️完全免费
价格说明开源免费(Apache-2.0),API 调用按 OpenAI 用量计费
访问状态🔧 仅开源项目,无在线服务,需自行部署
是否开源是
开源协议Apache-2.0
主要语言TypeScript
技术栈/模型nodejs,openai,typescript
GitHub 星标★ 11242
上线时间2021-12-14 00:00:00
代码更新2026-10-25
仓库体积20.5 MB
本站数据更新2026-10-26
维护状态活跃
收录时间2026-10-26
浏览次数0

项目介绍

openai-node 是 OpenAI 官方维护的 JavaScript/TypeScript 客户端库,用于在 Node.js 及兼容运行时中调用 OpenAI API。它把认证、请求构造、重试、超时、流式响应、分页、错误处理等通用逻辑封装成类型安全的 SDK,开发者无需手写 HTTP 请求即可接入对话、嵌入、图像、音频、文件等接口。核心能力包括:完整的 TypeScript 类型定义与自动补全;内置指数退避重试与可配置超时;支持流式输出(SSE)与异步迭代;统一的错误类型便于捕获与分类处理;支持自定义 baseURL、代理与请求头,便于对接兼容 OpenAI 协议的服务;提供文件上传、批量任务等辅助方法。项目随官方 API 更新同步迭代,是 JS 生态接入 OpenAI 能力的事实标准客户端。

Star 增长趋势

本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整

数据来源:GitHub API 逐日快照 · 收录于 2026-10-26 · 当前星标 ★ 11242

技术标签

使用教程

难度:入门 约 10 分钟 部署方式:库/依赖 7 步

环境要求

  • Node.js 运行环境(README 未限定版本,建议用 LTS)
  • npm 包管理器
  • 一个可用的 API Key,通过环境变量 OPENAI_API_KEY 提供
  • 可选:Deno 运行时可从 npm 直接导入该包

安装与启动步骤

  1. 1确认运行环境

    确认本机已安装 Node.js 与 npm,后续安装和示例都在 Node 环境中运行。

    node -v
    npm -v
  2. 2初始化项目目录

    新建一个空目录并生成 package.json,作为使用 SDK 的工程根目录。

    mkdir openai-demo && cd openai-demo && npm init -y
  3. 3安装 openai 包

    README 给出的唯一安装方式,在项目目录下执行即可完成依赖安装。

    npm install openai
  4. 4配置 API Key

    SDK 默认读取环境变量 OPENAI_API_KEY,该设置只对当前终端会话生效。

    export OPENAI_API_KEY=sk-xxxxxxxx
  5. 5编写调用脚本

    按 README 示例创建 index.mjs,调用 Responses API 并打印返回文本。

    cat > index.mjs <<'EOF'
    import OpenAI from 'openai';
    
    const client = new OpenAI({
      apiKey: process.env['OPENAI_API_KEY'],
    });
    
    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);
    EOF
  6. 6运行脚本验证

    执行脚本,终端输出模型生成的文本即代表安装与调用链路正常。

    node index.mjs
  7. 7Deno 方式导入

    使用 Deno 时无需 npm 安装,直接从 npm 说明符导入该包即可。

    import OpenAI from 'npm:openai';

关键配置

配置项必填说明示例
apiKey是调用接口的凭证,默认从环境变量 OPENAI_API_KEY 读取,可省略显式传入sk-xxxxxxxx
baseURL否自定义请求地址,用于对接兼容 OpenAI 协议的服务端点https://your-endpoint.example.com/v1

如何确认成功

运行 node index.mjs 后终端打印出模型返回的文本(response.output_text),即表示安装与调用成功。

常见问题

Q:运行时报错找不到 API Key 或鉴权失败怎么办?

A:确认当前终端已执行 export OPENAI_API_KEY=...,且 Key 未失效;换终端窗口后需重新导出环境变量。

Q:可以在 TypeScript 项目里直接用吗?

A:可以,该包自带完整类型定义,在 .ts 文件中按 README 示例导入即可获得类型提示与自动补全。

Q:Deno 环境怎么用?

A:无需 npm 安装,直接写 import OpenAI from 'npm:openai'; 即可导入使用。

Q:多轮对话历史丢失上下文怎么办?

A:README 提示手动维护历史时应按顺序保留 output items,直接筛选成 message 会丢掉必需内容。

注意事项

  • 不要把 API Key 写死在代码里或提交到 Git 仓库,统一用环境变量注入。
  • README 未限定 Node.js 最低版本,建议使用官方 LTS 版本以避免兼容问题。
  • 更多接口用法见仓库中的 api.md 与 examples 目录,不要凭猜测传参。

核心亮点

  • 官方维护,API 变更同步及时,类型定义完整
  • 内置重试、超时、流式响应与分页,省去样板代码
  • 统一错误类型与请求 ID,便于排查和日志追踪

不足之处

  • 仅覆盖 OpenAI 协议,换其他厂商模型需另配 SDK
  • 大版本升级偶有破坏性变更,需关注迁移说明

适用场景

  • Node.js 后端服务集成对话与嵌入能力
  • 前端或全栈项目通过 TypeScript 调用 OpenAI 接口
  • 构建流式输出的聊天应用或命令行工具

替代项目

openai-python、langchainjs、vercel-ai-sdk

上一篇:openai

下一篇:openai-openapi

同类项目推荐

Lexoid 开源

把脏乱数据变成 AI 能用的干净上下文

The open-source universal adapter for LLMs. Turn messy real-world data into clean, a···

★ 109 2026-08-09
cc-statistics 开源

一个面板看穿所有AI编程工具的花费与效率

AI Coding stats dashboard — track costs, tokens, and efficiency across Claude Code ···

★ 118 2026-08-09
llm.report 开源

记录 OpenAI 调用日志,分析成本,优化提示词

llm.report is an open-source logging and analytics platform for OpenAI: Log your Cha···

★ 1020 2026-08-09
CF-Workers-TGProxy 开源

白嫖 Cloudflare 搭私有 Telegram 代理,网页和客户端都能连

基于 Cloudflare Workers 的 Telegram Web/MTProto WebSocket 代理中继,支持 bridge 鉴权···

★ 1035 2026-10-11
anolisa 开源

用 Rust 打造 AI 代理的底层操作系统,让多代理协同更稳更安全。

ANOLISA (Agentic Nexus Operating Layer & Interface System Architecture) | Agentic OS···

★ 640 2026-08-09
paddock 开源

Rust 写的推理服务器,Mac 和 N 卡都能跑开放模型

Native Rust inference server for open models on NVIDIA and Apple Silicon. OpenAI- an···

★ 139 2026-10-16
ShannonBase 开源

像用 MySQL 一样,为 AI 应用构建统一数据底座

The Next-Gen Database for AI—an infrastructure designed for data and AI. As the MyS···

★ 198 2026-08-09
airgate-core 开源

插件化 AI 网关,多账号调度+计费,一键部署拼车共享

插件化 AI 中转网关,平台能力以 gRPC 插件独立装载,支持多账号调度、计费与拼车共享,do···

★ 63 2026-08-09
evadb 开源

用 SQL 方式调用 AI 模型,快速构建智能数据应用

Database system for AI-powered apps

★ 2674 2026-08-09