Skip to main content
We give you the option to use the Prem AI API, the PremAI SDK, or the OpenAI SDK.
Before using the SDKs, you’ll need to create an API key. See our API Key guide for instructions.

Use with PremAI SDK

Install the PremAI SDK

npm install premai

List Models

import PremAI from 'premai';

const client = new PremAI({
  apiKey: process.env['PREMAI_API_KEY'], // This is the default and can be omitted
});

const response = await client.models.list();

console.log(response.data);

Chat Completions

import PremAI from 'premai';

const client = new PremAI({
  apiKey: process.env['PREMAI_API_KEY'], // This is the default and can be omitted
});

const response = await client.chat.completions({
    messages: [{
        role: 'user',
        content: 'Write a one-sentence bedtime story about a unicorn.'
    }],
    model: 'llama3.2-3b'
});

console.log(response.choices[0].message.content);

Chat Completion with Streaming

Streaming is not supported for the PremAI SDK. Will be supported in the future.

Use with OpenAI SDK

Install the OpenAI SDK

npm install openai

List Models

import OpenAI from 'openai';

const client = new OpenAI({
  baseURL: "https://studio.premai.io/api/v1/",
  apiKey: process.env['PREMAI_API_KEY'], // This is the default and can be omitted
});

const response = await client.models.list();

console.log(response.data);

Chat Completions

The model name can be replaced with the name of your fine-tuned models as well.
import OpenAI from "openai";

const client = new OpenAI({
    baseURL: "https://studio.premai.io/api/v1/",
    apiKey: process.env.PREMAI_API_KEY,
});

//Create a chat completion
const response = await client.chat.completions.create({
    model: "llama3.2-3b", //Or any other model you want to use
    messages: [{ role: "user", content: "Write a one-sentence bedtime story about a unicorn." }]
});

console.log(response.choices[0].message.content);

Chat Completion with Streaming

import OpenAI from "openai";

const client = new OpenAI({
    baseURL: "https://studio.premai.io/api/v1/",
    apiKey: process.env.PREMAI_API_KEY,
});

//Create a chat completion
const response = await client.chat.completions.create({
    model: "llama3.2-3b", //Or any other model you want to use
    messages: [{ role: "user", content: "Write a one-sentence bedtime story about a unicorn." }],
    stream: true,
});

for await (const chunk of response) {
    process.stdout.write(chunk.choices[0].delta.content);
}