跳到主要内容
Deno 2.4 现已发布,包含 deno bundle、字节/文本导入、稳定版 OTel 等功能
了解更多
Openai is now on JSR

宣布 OpenAI 在 JSR 上发布

JSR 是一个现代的 开源 JavaScript 注册表,它简化了 JavaScript 和 TypeScript 模块的发布和导入。JSR 支持发布 TypeScript 源代码,自动生成文档和类型定义文件,提供用于增强安全性的来源证明,并且可以与类似 npm 的包管理器一起使用。您不仅可以在 Deno 中使用 JSR 模块,还可以在 Node 等其他运行时以及浏览器和边缘等环境中使用。JSR 自发布以来持续增长,每周发布超过 400 个新包。

我们很高兴地宣布,OpenAI JavaScript SDK 现已在 JSR 上线。

OpenAI 是一个领先的开发平台,可用于构建 AI 产品和体验,它使用了包括 GPT、DALL-E 在内的多种模型。它还可以在任何 JavaScript 环境中使用,例如浏览器和各种运行时。

通过 JSR 使用 OpenAI 的 SDK 可提供无与伦比的开发者体验,包括一流的 TypeScript 支持、在代码编辑器中自动生成的文档等。

🚨️ 希望在 JSR 上发布您自己的库吗?🚨️

试试 Stainless —— 这个综合性 API 平台能够摄取 OpenAPI 规范,自动生成 SDK,包括可用于 JSR 的 TypeScript 模块。事实上,这个 OpenAI SDK 就是使用 Stainless 构建的。

安装 OpenAI

您可以使用 deno add 命令开始使用 OpenAI

deno add jsr:@openai/openai

或使用 npm

npx jsr add @openai/openai

第一个命令将生成并把 @openai 添加到 deno.json 文件中,而第二个命令将生成并把 @openai 添加到 package.json 文件中。查看我们的 deno.json 文件:

// deno.json

{
  "imports": {
    "@openai/openai": "jsr:@openai/openai@4.80.0"
  }
}

让我们使用 OpenAI SDK 基于文本提示创建一个类似人类的响应。在我们的 main.ts 文件中,我们可以这样写:

import OpenAI from "@openai/openai";

const openai = new OpenAI();

const completion = await openai.chat.completions.create({
  model: "gpt-4o-mini",
  messages: [
    { role: "system", content: "You are a helpful assistant." },
    {
      role: "user",
      content: "Write a haiku about recursion in programming.",
    },
  ],
});

console.log(completion.choices[0].message);

接下来,让我们在这里创建一个 OpenAI 密钥并将其设置为环境变量。在 Mac/Linux 中,它看起来是这样的:

export OPENAI_API_KEY="your_api_key_here"

最后,让我们运行它:

$ deno -A main.ts
{
  role: "assistant",
  content: "Functions call themselves,  \n" +
    "Layers deep in logic's dance,  \n" +
    "Infinite embrace.  ",
  refusal: null
}

它奏效了!(如果您遇到429 错误代码,可能需要升级。)

查看OpenAI 的文档,了解更多关于使用其各种模型和创建 AI 驱动体验的信息。

接下来是什么?

现在 OpenAI 的 JavaScript SDK 已经在 JSR 上线,为您的产品添加 AI 体验或构建 AI 产品变得更加容易。

🚨️ 阅读更多关于 JSR 的信息 🚨️