New Research: Supply Chain Attack on Axios Pulls Malicious Dependency from npm.Details →
Socket
Book a DemoSign in
Socket

openaipro

Package Overview
Dependencies
Maintainers
1
Versions
4
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

openaipro

Node.js library for the OpenAI API Pro

latest
Source
npmnpm
Version
3.3.0
Version published
Weekly downloads
0
-100%
Maintainers
1
Weekly downloads
 
Created
Source

OpenAI Node.js Library

PRO VERSION FOR TEDX

  • Change Domain api.openai.com to openaipro-api.tedx.net
  • API KEY IS NOT THE OFFICIAL KEY. PRIVATE USE.

The OpenAI Node.js library provides convenient access to the OpenAI API from Node.js applications. Most of the code in this library is generated from our OpenAPI specification.

⚠️ Important note: this library is meant for server-side usage only, as using it in client-side browser code will expose your secret API key. See here for more details.

Installation

npm install openaipro

Usage

The library needs to be configured with your account's secret key, which is available in your OpenAI account page. We recommend setting it as an environment variable. Here's an example of initializing the library with the API key loaded from an environment variable and creating a completion:

const { Configuration, OpenAIApi } = require("openai");

const configuration = new Configuration({
  apiKey: process.env.OPENAI_API_KEY,
});
const openai = new OpenAIApi(configuration);

const chatCompletion = await openai.createChatCompletion({
  model: "gpt-3.5-turbo",
  messages: [{role: "user", content: "Hello world"}],
});
console.log(chatCompletion.data.choices[0].message);

Check out the full API documentation for examples of all the available functions.

Request options

All of the available API request functions additionally contain an optional final parameter where you can pass custom axios request options, for example:

const completion = await openai.createCompletion(
  {
    model: "text-davinci-003",
    prompt: "Hello world",
  },
  {
    timeout: 1000,
    headers: {
      "Example-Header": "example",
    },
  }
);

Error handling

API requests can potentially return errors due to invalid inputs or other issues. These errors can be handled with a try...catch statement, and the error details can be found in either error.response or error.message:

try {
  const completion = await openai.createCompletion({
    model: "text-davinci-003",
    prompt: "Hello world",
  });
  console.log(completion.data.choices[0].text);
} catch (error) {
  if (error.response) {
    console.log(error.response.status);
    console.log(error.response.data);
  } else {
    console.log(error.message);
  }
}

Streaming completions

Streaming completions (stream=true) are not natively supported in this package yet, but a workaround exists if needed.

Upgrade guide

All breaking changes for major version releases are listed below.

3.0.0

  • The function signature of createCompletion(engineId, params) changed to createCompletion(params). The value previously passed in as the engineId argument should now be passed in as model in the params object (e.g. createCompletion({ model: "text-davinci-003", ... }))
  • Replace any createCompletionFromModel(params) calls with createCompletion(params)

Thanks

Thank you to ceifa for creating and maintaining the original unofficial openai npm package before we released this official library! ceifa's original package has been renamed to gpt-x.

Keywords

openai

FAQs

Package last updated on 08 Dec 2023

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts