Skip to content

vellum-ai/vellum-client-node

Repository files navigation

Vellum Node Library

npm shield license badge fern shield

The Vellum Node SDK provides access to the Vellum API from JavaScript/TypeScript in node environments.

Note: This SDK is not intended to work in client-side JavaScript environments (i.e. web browsers).

API Docs

You can find Vellum's complete API docs at docs.vellum.ai.

Installation

npm install --save vellum-ai
# or
yarn add vellum-ai

Usage

import { VellumClient } from 'vellum-ai';

const vellum = new VellumClient({
  apiKey: "<YOUR_API_KEY>",
});

void main();

async function main() {
    const result = await vellum.executePrompt({
        promptDeploymentName: "<your-deployment-name>>",
        releaseTag: "LATEST",
        inputs: [
            {
                type: "STRING",
                name: "<input_name>",
                value: "<example-string-value>",
            },
        ],
    });

    if (result.state === "REJECTED") {
        throw new Error(result.error.message)
    } else if (result.state === "FULFILLED") {
        console.log(result.outputs[0].value);
    }
}

Tip

You can set a system environment variable VELLUM_API_KEY to avoid writing your api key within your code. To do so, add export VELLUM_API_KEY=<your-api-token> to your ~/.zshrc or ~/.bashrc, open a new terminal, and then any code calling VellumClient() will read this key.

Contributing

While we value open-source contributions to this SDK, most of this library is generated programmatically.

Please feel free to make contributions to any of the directories or files below:

tests/*
README.md

Any additions made to files beyond those directories and files above would have to be moved over to our generation code (found in the separate vellum-client-generator repo), otherwise they would be overwritten upon the next generated release. Feel free to open a PR as a proof of concept, but know that we will not be able to merge it as-is. We suggest opening an issue first to discuss with us!