This SDK is based on the official novita.ai API reference
Join our discord server for help:
Sign up on novita.ai and get an API key. Please follow the instructions at https://novita.ai/get-started
Install the npm package in your project.
npm i novita-sdk
We've made significant changes in version 2.0.0:
Please note that these changes may impact your existing code. Ensure you update your implementations accordingly when upgrading to this version.
import { NovitaSDK } from "novita-sdk";
const novitaClient = new NovitaSDK("your api key");
const params = {
request: {
model_name: "majicmixRealistic_v7_134792.safetensors",
prompt: "1girl,sweater,white background",
negative_prompt: "(worst quality:2),(low quality:2),(normal quality:2),lowres,watermark,",
width: 512,
height: 768,
sampler_name: "Euler a",
guidance_scale: 7,
steps: 20,
image_num: 1,
seed: -1,
},
};
novitaClient
.txt2Img(params)
.then((res) => {
if (res && res.task_id) {
const timer = setInterval(() => {
novitaClient
.progress({
task_id: res.task_id,
})
.then((progressRes) => {
if (progressRes.task.status === TaskStatus.SUCCEED) {
console.log("finished!", progressRes.images);
clearInterval(timer);
onFinish(progressRes.images);
}
if (progressRes.task.status === TaskStatus.FAILED) {
console.warn("failed!", progressRes.task.reason);
clearInterval(timer);
}
if (progressRes.task.status === TaskStatus.QUEUED) {
console.log("queueing");
}
})
.catch((err) => {
console.error("progress error:", err);
});
}, 1000);
}
})
.catch((err) => {
console.error(err);
});
For detailed information on the parameters and return types of each method, please refer to the types.ts file.
You can try all demos at https://novita.ai/model-api/playground