openai-fetch 是一个精简且适用于 fetch 的 OpenAI 客户端。其设计旨在简化和优化在不同环境中调用 OpenAI 服务的过程。
性能卓越且体积小巧:openai-fetch 提供了快速且轻量级的客户端体验,并且不会对 fetch 进行任何修改。相比之下,官方的 openai 包在功能上较为庞大且对 fetch 的修改可能会引起问题。
广泛的环境支持:openai-fetch 能在多种环境中运行,包括支持原生 fetch 的 Node 18+、浏览器、Deno 和 Cloudflare Workers 等。
基本功能覆盖:openai-fetch 可以满足在聊天、文本补全、嵌入生成、内容审核以及文本转语音(TTS)方面的需求。
优秀的包体积:openai-fetch 的包大小仅为约 14kb,而 openai 包则约为 152kb,为开发者节省了更多资源。
要安装 openai-fetch,您只需在命令行输入:
npm install openai-fetch
注意,该包要求 Node 版本不低于 18 或支持 fetch 的运行环境。此外,该包采用 ESM 输出,如果您的项目使用的是 CommonJS,您可以考虑切换到 ESM,或使用动态 import()
函数。
首先需要在代码中导入 OpenAIClient,然后使用 API 密钥进行实例化:
import { OpenAIClient } from 'openai-fetch'; const client = new OpenAIClient({ apiKey: '<your api key>' });
如果 apiKey
未提供,该客户端会尝试从环境变量 process.env.OPENAI_API_KEY
中获取。
openai-fetch 的 API 设计与 OpenAI 官方的 API 十分接近,开发者可以参考 OpenAI 的官方文档进行使用。以下是一些核心的 API 功能:
类型定义通过 TSServer 提供,可以在项目的类型文件中找到。这帮助开发者在使用过程中,能实时通过 TypeScript 获取类型错误提示,从而减少错误。
openai-fetch 采用 MIT 许可协议,由 Dexa 提供支持,适用于对项目进行修改和再分发。
总体来说,openai-fetch 是一款适合对接 OpenAI 轻量级功能需求的优秀工具,是偏向小巧和高效的开发者的理想选择。