SuperAPI AI 工具集

openai-api

编程与开发

查看项目

更新于 10-16 05:39

技能介绍

用途

本指南面向使用 OpenAI 无状态 API 构建应用的开发者,覆盖文本对话、向量嵌入、图像生成与编辑、语音转写与合成、内容审核等能力,并提供 Node.js SDK 与原生 fetch 两种调用方式。

主要能力

  • Chat Completions API(端点 POST /v1/chat/completions):支持 GPT-5 系列(gpt-5、gpt-5-mini、gpt-5-nano)、GPT-5.1、GPT-4o、GPT-4 Turbo、GPT-4 等模型,支持多轮对话、流式输出(SSE)、函数调用/工具、结构化输出(JSON Schema)、视觉理解(GPT-4o)。
  • GPT-5 系列特性:reasoning_effort(none/minimal/low/medium/high)与 verbosity(low/medium/high)参数;GPT-5.1 默认 reasoning_effort 为 none,GPT-5 默认为 medium;GPT-5 不支持 temperature、top_p、logprobs,也不支持跨轮次的有状态思维链。
  • Embeddings API(POST /v1/embeddings):text-embedding-3-large(3072 维,可自定义 256-3072)与 text-embedding-3-small(1536 维,可自定义 256-1536),支持批量输入,单条上限 8192 tokens,批量总计 300k tokens,数组最大 2048 条。
  • Images API:DALL-E 3 生成(POST /v1/images/generations,仅支持 n=1,可能返回 revised_prompt,URL 1 小时过期,可用 b64_json 持久化);GPT-Image-1 编辑(POST /v1/images/edits,使用 multipart/form-data,支持 image_2 合成、input_fidelity、透明背景与格式控制)。
  • Audio API:Whisper 转写(POST /v1/audio/transcriptions,支持 mp3、mp4、mpeg、mpga、m4a、wav、webm);TTS(POST /v1/audio/speech,模型 tts-1、tts-1-hd、gpt-4o-mini-tts,11 种音色,输入上限 4096 字符,速度 0.25-4.0,支持 mp3/opus/aac/flac/wav/pcm;gpt-4o-mini-tts 支持 instructions 与 SSE 流式)。
  • Moderation API(POST /v1/moderations):模型 omni-moderation-latest,覆盖 11 个安全类别,返回 flagged、categories 与 0.0-1.0 的 category_scores。

使用方式

安装:npm install openai@6.9.1。配置环境变量 OPENAI_API_KEY 或 .env 文件。Node.js SDK 示例:

import OpenAI from 'openai'; const openai = new OpenAI({ apiKey: process.env.OPENAI_API_KEY }); const completion = await openai.chat.completions.create({ model: 'gpt-5', messages: [{ role: 'user', content: 'What are the three laws of robotics?' }], }); console.log(completion.choices[0].message.content);

fetch 方式(如 Cloudflare Workers)直接请求 https://api.openai.com/v1/chat/completions,携带 Authorization: Bearer 与 Content-Type: application/json。

消息角色为 system、user、assistant;API 无状态,每次请求需发送完整对话历史。流式输出设置 stream: true,逐块读取 delta.content,处理 [DONE] 信号与不完整分块。函数调用通过 tools 定义 JSON Schema,模型返回 tool_calls 后执行函数并以 role: tool 回传结果,循环直到无 tool_calls。结构化输出使用 response_format 的 json_schema(strict: true)或 json_object,并在提示中包含“JSON”。视觉输入支持 image_url 的 URL 或 base64 data URI,可传多张图片。

适用场景

对话式 AI、文本生成、语义搜索与 RAG、图像生成与编辑、语音转写与合成、内容安全审核,以及需要函数调用、结构化输出或视觉理解的应用。

限制

GPT-5 不支持 temperature、top_p、logprobs 与跨轮次有状态思维链;DALL-E 3 每次仅生成一张图且 URL 1 小时过期;TTS 输入上限 4096 字符;instructions 与 stream_format: "sse" 仅适用于 gpt-4o-mini-tts;结构化输出在 GPT-4o 上支持最佳。文档还包含错误处理、速率限制与生产最佳实践章节,以及关于 openai-responses 技能(有状态对话)的说明。