Skip to main content

No project description provided

Project description

Vellum Python Library

pypi license badge fern shield

The Vellum Python SDK provides access to the Vellum API from python.

API Docs

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

Installation

pip install --upgrade vellum-ai

Usage

Below is how you would invoke a deployed Prompt from the Vellum API. For a complete list of all APIs that Vellum supports, check out our API Reference.

from vellum import (
    PromptDeploymentInputRequest_String,
)
from vellum.client import Vellum

client = Vellum(
    api_key="YOUR_API_KEY",
)

def execute() -> str:
    result = client.execute_prompt(
        prompt_deployment_name="<example-deployment-name>>",
        release_tag="LATEST",
        inputs=[
            PromptDeploymentInputRequest_String(
                name="input_a",
                type="STRING",
                value="Hello, world!",
            )
        ],
    )
    
    if result.state == "REJECTED":
        raise Exception(result.error.message)

    return result.outputs[0].value

if __name__ == "__main__":
    print(execute())

[!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 vellum.Vellum() will read this key.

Async Client

This SDK has an async version. Here's how to use it:

import asyncio

import vellum
from vellum.client import AsyncVellum

client = AsyncVellum(api_key="YOUR_API_KEY")

async def execute() -> str:
    result = await client.execute_prompt(
        prompt_deployment_name="<example-deployment-name>>",
        release_tag="LATEST",
        inputs=[
            vellum.PromptDeploymentInputRequest_String(
                name="input_a",
                value="Hello, world!",
            )
        ],
    )

    if result.state == "REJECTED":
        raise Exception(result.error.message)
    
    return result.outputs[0].value

if __name__ == "__main__":
    print(asyncio.run(execute()))

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:

examples/*
src/vellum/lib/*
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!

Project details


Release history Release notifications | RSS feed

This version

0.7.8

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

vellum_ai-0.7.8.tar.gz (127.3 kB view details)

Uploaded Source

Built Distribution

vellum_ai-0.7.8-py3-none-any.whl (420.9 kB view details)

Uploaded Python 3

File details

Details for the file vellum_ai-0.7.8.tar.gz.

File metadata

  • Download URL: vellum_ai-0.7.8.tar.gz
  • Upload date:
  • Size: 127.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.5.1 CPython/3.8.18 Linux/5.15.0-1068-azure

File hashes

Hashes for vellum_ai-0.7.8.tar.gz
Algorithm Hash digest
SHA256 1c06c051cda842d8380585110f13e300cb1cbb8cc1594a30d5855684b1d8b08d
MD5 847bbeefa3c74a3df6f63c4896419d26
BLAKE2b-256 d57db96874e7d6e4899e6b4ee09bfb0302d7856f5a9c7523a123906a6d3f8ff1

See more details on using hashes here.

Provenance

File details

Details for the file vellum_ai-0.7.8-py3-none-any.whl.

File metadata

  • Download URL: vellum_ai-0.7.8-py3-none-any.whl
  • Upload date:
  • Size: 420.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.5.1 CPython/3.8.18 Linux/5.15.0-1068-azure

File hashes

Hashes for vellum_ai-0.7.8-py3-none-any.whl
Algorithm Hash digest
SHA256 59668ce4287a89d57c73c238307d1cad922ddbdf0df6994738fe83659afb8359
MD5 4448c7c16537abd1f2eb3596b92f0388
BLAKE2b-256 6884d868ec2cccae50b2d9d68c7b556b22386dafafc9d3743cce0d080f60b86e

See more details on using hashes here.

Provenance

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page