Projects / Vessel SDK
On this page
Vessel SDK
Repository: github.com/andrewcampi/vessel_sdk.
What it does
Vessel SDK is the official Python client for the Vessel platform at https://vessel-platform.acampi.dev. It wraps embeddings and chat completions and handles batching so a caller can pass many inputs without building the batch protocol by hand.
The constructor takes a base URL and an API key, the same shape as the OpenAI client. The repository's quick start reads both from the environment:
from vessel import Vessel
import os
client = Vessel(
base_url=os.environ["VESSEL_BASE_URL"],
api_key=os.environ["VESSEL_API_KEY"],
)
client.models.list()
Install it from a checkout with pip install -e . after the requirements file, or install the requirements directly. The package is the client. The server is Vessel itself, described on the Vessel page.
What the client takes care of
- Automatic batch processing. Multiple inputs are grouped into the batch calls Vessel is built for.
- Rate limiting. The client waits when it would otherwise exceed the platform's limits.
- Metrics. Calls can report timing and throughput, which is the number Vessel is designed around.
- Errors. Failures come back as exceptions with a message, rather than a partial silent result.
The interface is deliberately small. Model listing, chat completions, and embeddings are the surface. The server-side design (a captain process, crewmate workers, Redis, and large batches on a model that stays resident) is documented on the Vessel page and is not reimplemented in the SDK.
Repository
Issues and the rest of the examples are in andrewcampi/vessel_sdk. The platform URL above is the one published in that repo's description. This portfolio does not hand out Vessel API keys.