Table of contents

Models

The Podstack Inference Cloud hosts a catalog of open-source models served over the OpenAI-compatible API. The catalog is managed per deployment and evolves over time, so there is no fixed, hardcoded list of model IDs — always list the catalog and copy a real ID before you wire it into code.

Model types

Each model has a task type:

TypeUse it forEndpoint
text-generationChat and code modelsPOST /v1/chat/completions
embeddingVector embeddings for search / RAGPOST /v1/embeddings
visionMultimodal (image + text) chatPOST /v1/chat/completions
audio-transcriptionSpeech-to-text (coming soon)POST /v1/audio/transcriptions

Models are served from one of several sources — self-hosted on Podstack GPUs (vLLM / Triton) or proxied to a partner provider — but this is transparent to you: the request and response shape is the same OpenAI contract in every case.

List models from the CLI

The quickest way is the Podstack CLI:

podstack models list
NAME                    CONTEXT   ID
...                     ...       ...

The ID column is what you pass as the model field in an API call. Add --output json for scripting:

podstack models list --output json

See the CLI Models guide for details.

List models over the API

GET /v1/models returns an OpenAI-style list. It accepts either a Podstack account token or an inference API key (psk_) as a bearer token:

curl https://cloud.podstack.ai/infer/v1/models \
  -H "Authorization: Bearer $PODSTACK_API_KEY"
{
  "object": "list",
  "data": [
    {
      "id": "...",
      "display_name": "...",
      "description": "...",
      "task_type": "text-generation",
      "context_length": 32768,
      "parameters_b": 8
    }
  ]
}

With the OpenAI SDK:

for m in client.models.list().data:
    print(m.id)

Fetch a single model’s details with GET /v1/models/{id}.

Referencing a model

When you send a request, the model field is resolved against the catalog by, in order:

  1. The model’s catalog ID, or
  2. Its display name, or
  3. Its Hugging Face repository ID (for self-hosted models).

Only enabled models resolve — a disabled or unknown value returns 404 model_not_found. Using the exact id from GET /v1/models is the most robust choice.

Browse in the portal

The Inference > Catalog view in the portal shows every model with its display name, description, task type, context length, size, and per-token pricing. From there you can open the Playground with a model preselected, or copy a ready-made curl / Python / JavaScript snippet.

Requesting a new model

If a model you need isn’t in the catalog, use Request Model in the portal (submit the Hugging Face model ID). The team evaluates requests and may add the model.

Next steps