> ## Documentation Index
> Fetch the complete documentation index at: https://novita.ai/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Gebruikershandleiding voor Novita Deployments

> **Navigatie**: Models Console → Deployments
> **Van toepassing op**: Huidige productieversie
> **Laatst bijgewerkt**: 2026-04-20

***

## Inhoudsopgave

1. [Wat zijn Deployments](#1-what-are-deployments)
2. [Quick Start (live in 5 minuten)](#2-quick-start-go-live-in-5-minutes)
3. [Een Deployment maken](#3-creating-a-deployment)
   * 3.1 [Naamgeving](#31-naming)
   * 3.2 [Een model selecteren](#32-selecting-a-model)
   * 3.3 [Een GPU-instantie selecteren](#33-selecting-a-gpu-instance)
   * 3.4 [Autoscaling configureren](#34-configuring-autoscaling)
   * 3.5 [Engine-instellingen (geavanceerd)](#35-engine-settings-advanced)
4. [Deployment-levenscyclus en status](#4-deployment-lifecycle--status)
5. [Autoscaling in detail](#5-autoscaling-in-depth)
6. [Ondersteuning voor LoRA-adapters](#6-lora-adapter-support)
7. [Facturering](#7-billing)
8. [FAQ en probleemoplossing](#8-faq--troubleshooting)

***

## 1. Wat zijn Deployments

Een Deployment is Novita's product voor **dedicated AI-inference-endpoints**. In tegenstelling tot Serverless-endpoints die compute-resources delen met andere gebruikers, geeft elke Deployment je:

* **Exclusieve GPU**: Alle compute-resources zijn alleen van jou — geen hinderlijke buren
* **Voorspelbare performance-SLA**: Dedicated compute betekent consistente, voorspelbare inferentielatentie
* **Flexibele modelbronnen**: Deploy elk model van Hugging Face of uit de Novita-modelcatalogus
* **OpenAI-compatibele Chat API**: Voor pure tekstinferentie hoef je alleen `base_url` en `model` te vervangen om bestaande OpenAI-integraties te migreren
* **Facturering per seconde**: Er worden alleen kosten in rekening gebracht terwijl het endpoint actief is. De facturering pauzeert automatisch wanneer Scale-to-Zero wordt geactiveerd

**Wanneer gebruik je Deployments:**

| Use case                            | Waarom het past                                               |
| ----------------------------------- | ------------------------------------------------------------- |
| Productie-API-services              | Stabiele latentie, volledig geïsoleerd van andere gebruikers  |
| Private of fine-tuned model serving | Deploy elk aangepast HuggingFace-model                        |
| Inferentie met hoge concurrency     | Schaal automatisch naar meerdere replica's                    |
| Kostengevoelige workloads           | Scale-to-Zero stopt de facturering tijdens inactieve periodes |

***

## 2. Quick Start (live in 5 minuten)

**Stap 1 — Navigeer naar Deployments**

Log in bij Novita → linkerzijbalk → **Models Console** → **Models APIs** → **Deployments**

**Stap 2 — Maak een Deployment**

Klik op **+ New Deployment** en vul in:

* Een Deployment-naam (bijv. `my-llama3-endpoint`)
* Modelbron (de Novita-modelcatalogus wordt aanbevolen voor de snelste configuratie)
* GPU-instantie (het systeem beveelt automatisch een geschikte specificatie voor je model aan)
* Autoscaling-instellingen

**Stap 3 — Wacht tot de Deployment start**

De opstarttijd varieert afhankelijk van de modelgrootte, doorgaans **5–60 minuten**, en verloopt via drie fasen:

1. GPU aanvragen
2. Model downloaden
3. Engine initialiseren

Zodra de status **RUNNING** toont, is het endpoint klaar om requests te ontvangen.

**Stap 4 — Roep de API aan**

Ga naar de detailpagina van de Deployment → paneel **Quick Start** → kopieer het direct uitvoerbare codefragment.

> Beheer je API Keys onder **Settings → API Keys**.

***

## 3. Een Deployment maken

Klik op **+ New Deployment** om het aanmaakformulier te openen, dat vier configuratiesecties bevat.

### 3.1 Naamgeving

Aanbevolen naamgevingsindeling: `{model}-{environment}-{purpose}` — bijv. `llama3-prod-chatbot`.

### 3.2 Een model selecteren

Er worden twee modelbronnen ondersteund:

#### Novita Model Catalog (aanbevolen)

Kies uit Novita's gehoste modellenlijst — geen token vereist, **werkt direct**. Omvat alle belangrijke open-source modellen (Llama 3, Qwen, DeepSeek, Mistral en meer).

> Novita valideert modelcompatibiliteit vooraf en past engine-optimalisaties toe, wat resulteert in sneller opstarten en hogere stabiliteit.

#### Hugging Face Models

Voer een HuggingFace repository ID in (bijv. `meta-llama/Meta-Llama-3-8B-Instruct`).

* **Publieke modellen**: Geen token nodig, direct deployen
* **Private of Gated modellen**: Er moet eerst een HuggingFace Access Token worden gekoppeld

**Je HF Token koppelen:**

1. Ga naar [HuggingFace → Settings → Access Tokens](https://huggingface.co/settings/tokens) en maak een token aan
2. Klik in het Model-veld op het Create Deployment-formulier op **Integrate HF Token**
3. Plak het token en sla het op

> Als je token verloopt of wordt ingetrokken, kunnen actieve Deployments die ervan afhankelijk zijn het model niet opnieuw ophalen. Houd je token up-to-date.

#### LoRA Adapter (optioneel)

Na het selecteren van een Base Model kun je een of meer LoRA Adapters van HuggingFace koppelen. Meerdere adapters kunnen op dezelfde Deployment draaien zonder extra GPU-resources te vereisen.

Zie [Sectie 6 — Ondersteuning voor LoRA-adapters](#6-lora-adapter-support) voor details.

**Vereisten voor modelbestandsindeling (voor aangepaste HuggingFace-modellen):**

### 3.3 Een GPU-instantie selecteren

Het systeem beveelt automatisch een GPU-configuratie aan op basis van de grootte van je model.

> **TIGHT MEMORY-waarschuwing**: Als de geselecteerde GPU beperkte VRAM heeft voor het gekozen model, toont het systeem een `TIGHT MEMORY`-waarschuwing. Verhoog het aantal GPU's of neem contact op met Novita support.

> Het GPU-type **kan niet worden gewijzigd** nadat een Deployment is gemaakt. Verwijder en maak de Deployment opnieuw om van GPU-type te wisselen.

***

### 3.4 Autoscaling configureren

Autoscaling bepaalt hoeveel replica's er draaien als reactie op verkeer.

#### Autoscaling inschakelen (aanbevolen)

Gebruik de schuifregelaar met twee handgrepen om het replicabereik in te stellen:

| Parameter        | Beschrijving                                                                                 | Standaard      |
| ---------------- | -------------------------------------------------------------------------------------------- | -------------- |
| Min Replicas     | Minimumaantal actieve replica's op elk moment. Stel in op 0 om Scale-to-Zero in te schakelen | 1              |
| Max Replicas     | Maximumaantal replica's tijdens piekverkeer                                                  | 3              |
| Scale-down Delay | Aantal seconden wachten nadat verkeer afneemt voordat wordt afgeschaald (voorkomt flapping)  | 300s (minimum) |

**Scale-to-Zero (Min Replicas = 0):**

* Na langer inactief te zijn dan de Scale-down Delay, krijgt de Deployment de status **SLEEPING** en pauzeert de facturering
* De eerste binnenkomende request wekt deze automatisch
* Cold start-tijd: doorgaans 5 minuten, afhankelijk van de modelgrootte
* ⚠️ Het meest geschikt voor ontwikkel/test of workloads met lage frequentie. Houd voor productie Min Replicas ≥ 1

#### Autoscaling uitschakelen

Draait een vast aantal replica's. Het meest geschikt voor workloads met strikte latentie-SLA's die geen enkele schaalvertraging kunnen tolereren.

### 3.5 Engine-instellingen (geavanceerd)

Novita ondersteunt twee inferentie-engines — **vLLM** en **SGLang** — die automatisch aan je model worden gekoppeld. Deze instellingen zijn tijdens het maken van een Deployment standaard verborgen.

#### Max Concurrency per Replica

Bepaalt hoeveel requests één replica gelijktijdig verwerkt.

| Instelling            | Effect                                                     |
| --------------------- | ---------------------------------------------------------- |
| Onder aanbevolen      | Lagere latentie, maar beperkte throughput                  |
| Gelijk aan aanbevolen | Optimale balans tussen throughput en latentie (aanbevolen) |
| Boven aanbevolen      | Hogere throughput, maar verhoogde latentie per request     |

> Het systeem berekent een aanbevolen waarde op basis van je GPU-instantie. De standaardwaarde is 16.

#### Suffix Decoding

Op N-gram gebaseerde speculatieve decoding die toekomstige tokens vooraf genereert om inferentie te versnellen.

* Het meest effectief voor **zeer voorspelbare uitvoerindelingen** (bijv. codegeneratie, gestructureerde JSON)
* Biedt beperkt voordeel voor vrije conversatie; te hoge waarden kunnen de latentie juist verhogen

***

## 4. Deployment-levenscyclus en status

### Diagram van statusovergangen

```text theme={"system"}
Create
  │
  ▼
PENDING ──── Waiting for GPU resource allocation
  │
  ▼
DEPLOYING ── Three sub-phases:
  │            ├─ Requesting GPU
  │            ├─ Downloading Model
  │            └─ Engine Initializing
  │
  ├──────────────── FAILED (deployment failed)
  │
  ▼
RUNNING ──── Live and accepting requests
  │
  ├─ Zero traffic + Scale-to-Zero enabled ──► SLEEPING
  │                                               │
  │                                 First request ──► DEPLOYING ──► RUNNING
  │
  ├─ Config update ──► ROLLING (zero-downtime rolling update)
  │
  ├─ Traffic change ──► SCALING (autoscaling in progress)
  │
  └─ Manual terminate ──► TERMINATING ──► TERMINATED (can be redeployed or deleted)
```

> **Wanneer facturering start**: Alleen draaiende replica's worden gefactureerd. Instanties die nog worden gedeployd en replica's die nog opschalen tellen niet mee voor kosten.

***

## 5. Autoscaling in detail

### Hoe het werkt

Novita autoscaling monitort live verkeer en past het aantal replica's dynamisch aan binnen het Min–Max-bereik:

* **Scale-Up**: Achterstand in request-wachtrij gedetecteerd → replica's toevoegen → meer GPU's verwerken requests parallel
* **Scale-Down**: Verkeer neemt af → wachten tot Scale-down Delay verloopt → replica's verminderen
* **Scale-to-Zero**: Wanneer Min Replicas = 0 en de Deployment langer dan de vertraging inactief is geweest, gaat deze naar SLEEPING en stopt de facturering

### Afweging tussen kosten en beschikbaarheid

| Configuratie        | Kosten                                | Beschikbaarheid                         | Het meest geschikt voor                       |
| ------------------- | ------------------------------------- | --------------------------------------- | --------------------------------------------- |
| Min=0, Max=N        | Laagst (geen kosten bij inactiviteit) | Cold start-vertraging (5 min)           | Ontwikkel/test, workloads met lage frequentie |
| Min=1, Max=N        | Gemiddeld                             | Altijd beschikbaar, schaalt op aanvraag | Meeste productie-workloads ✅                  |
| Min=N, Max=N (vast) | Hoogst                                | Helemaal geen schaalvertraging          | Ultra-lage-latentie SLA-vereisten             |

### Kosten per replica

Elke extra replica voegt kosten toe tegen hetzelfde GPU-tarief als de basisreplica.
Voorbeeld: een 2× H100 Deployment die schaalt naar 2 replica's verdubbelt de GPU-kosten.

### Best practices

* Stel **Min Replicas = 1** in productie in om te voorkomen dat cold starts eindgebruikers beïnvloeden
* De standaard Scale-down Delay van 300s (5 minuten) werkt goed voor de meeste situaties; verhoog deze als je verkeer zeer variabel is
* Stel Max Replicas in op niet meer dan 1,5× je verwachte (piek-QPS / QPS per replica) om onverwachte kostenpieken te voorkomen

***

## 6. Ondersteuning voor LoRA-adapters

### Wat is LoRA

LoRA (Low-Rank Adaptation) is een parameterefficiënte fine-tuningtechniek die lichtgewicht adapterlagen boven op een Base Model toevoegt om het voor specifieke taken aan te passen — zonder het volledige model opnieuw te trainen.

### LoRA gebruiken in Novita Deployments

**Adapters toevoegen tijdens het maken:**

Klik in Create Deployment → Model-veld → na het selecteren van een Base Model op **+ Add Adapter** en voer de HuggingFace repository ID van de LoRA-adapter in.

**Adapters bekijken tijdens runtime:**

In het paneel Engine Configuration verschijnt een `+N LoRA`-badge naast de Model ID. Beweeg eroverheen om de volledige lijst met gekoppelde adapters te bekijken.

### Multi-LoRA: meerdere adapters op één Deployment

Eén Deployment kan meerdere LoRA-adapters gelijktijdig draaien. Geef per request op welke adapter je wilt gebruiken via het veld `model`:

> Multi-LoRA vereist geen extra GPU-resources. Alle adapters delen één kopie van de Base Model-gewichten in het geheugen.

***

## 7. Facturering

### Factureringseenheid

In rekening gebracht per **GPU-seconde**: aantal GPU's × draaiende seconden × eenheidsprijs.

### Wanneer facturering start en stopt

| Gebeurtenis                 | Details                                                                                       |
| --------------------------- | --------------------------------------------------------------------------------------------- |
| **Facturering start**       | Nadat GPU-toewijzing is voltooid tijdens DEPLOYING (d.w\.z. wanneer Downloading Model begint) |
| **Facturering stopt**       | Wanneer de Deployment de status SLEEPING of TERMINATED krijgt                                 |
| **Doorlopende facturering** | Een RUNNING Deployment wordt gefactureerd, zelfs wanneer deze nul API-requests ontvangt       |

### GPU-prijzen

> Raadpleeg voor de nieuwste prijzen de [Novita-prijspagina](https://novita.ai/pricing).

### Factureringsvoorbeeld

**Scenario**: Een klant deployt modelinstantie X op één RTX 4090 (geprijsd op \$0.61/GPU/hour), met autoscaling ingesteld op Min=0, Max=5.

Gebruik en kosten voor 9:00–10:00:

1. **9:00:00 – 9:15:40** — Instantie is SLEEPING. Kosten: **\$0.00**
2. **9:15:41 – 9:16:45** — 1 draaiende replica die verkeer bedient (65 seconden).
   Kosten: ($0.61 ÷ 3600) × 1 replica × 65s = **$0.011\*\*
3. **9:16:46 – 10:00:00** — 2 draaiende replica's die verkeer bedienen (1.994 seconden).
   Kosten: ($0.61 ÷ 3600) × 2 replica's × 1.994s = **$0.676\*\*

**Totaal voor 9:00–10:00: $0 + $0.011 + $0.676 = $0.687**

### Tips voor kostenbeheersing

1. **Schakel Scale-to-Zero in** (Min Replicas = 0) voor workloads met lage frequentie — geen kosten bij inactiviteit
2. **Controleer je Deployment-lijst regelmatig** en verwijder ongebruikte Deployments
3. **Beperk Max Replicas conservatief** om onverwachte kostenpieken door ongecontroleerde autoscaling te voorkomen
4. **TERMINATED-status kost niets** — beëindig en redeploy op aanvraag

***

## 8. FAQ en probleemoplossing

### Deployment-problemen

**Q: Mijn Deployment zit al lange tijd vast in DEPLOYING — wat moet ik doen?**

* `Requesting GPU`: GPU-resources kunnen beperkt beschikbaar zijn. Wacht 5–10 minuten of probeer een ander GPU-type
* `Downloading Model`: Grote modellen (70B+) kunnen meer dan 10 minuten nodig hebben om te downloaden
* `Engine Initializing`: Zou onder normale omstandigheden binnen 5 minuten moeten worden voltooid

**Q: Mijn Deployment toont FAILED — wat zijn de veelvoorkomende oorzaken?**

* Model heeft niet de `.safetensors`-indeling (`.bin` wordt niet ondersteund)
* HuggingFace Token is ongeldig of heeft geen toegang tot een gated model
* Onvoldoende GPU-VRAM voor het model (TIGHT MEMORY-configuratie)
* Modelarchitectuur wordt nog niet ondersteund

Debuggingstappen: controleer het wijzigingslog in het tabblad Settings → verifieer de modelbestandsindeling → valideer het HF Token → verhoog het aantal GPU's en maak de Deployment opnieuw.

**Q: Mijn Deployment is SLEEPING — hoe wek ik deze?**

Stuur er een willekeurige API-request naar. De Deployment wordt automatisch gewekt. De eerste request wacht tot de cold start is voltooid voordat er een response wordt ontvangen.

***

### API-problemen

**Q: Wat betekenen de veelvoorkomende HTTP-foutcodes?**

| Code  | Oorzaak                                                | Oplossing                                                                                       |
| ----- | ------------------------------------------------------ | ----------------------------------------------------------------------------------------------- |
| `400` | Ongeldig gevormde request                              | Valideer je request-JSON; zorg dat alle vereiste velden aanwezig zijn                           |
| `401` | Ontbrekende of ongeldige API Key                       | Neem een geldige key op in `Authorization: Bearer <Key>`                                        |
| `403` | API Key heeft geen toegang tot dit endpoint            | Bevestig dat de key hoort bij hetzelfde account dat eigenaar is van de Deployment               |
| `404` | Verkeerde Endpoint URL of Model ID                     | Kopieer de URL en Model ID opnieuw vanuit het Quick Start-paneel                                |
| `422` | Ongeldige parameterwaarde (bijv. max\_tokens te groot) | Pas de parameter aan — probeer max\_tokens te verlagen                                          |
| `429` | Rate limit overschreden                                | Verlaag de requestfrequentie of neem contact op met Novita om je limiet te verhogen             |
| `500` | Interne serverfout                                     | Probeer het na een korte wachttijd opnieuw; neem contact op met Novita support als het aanhoudt |

**Q: Waar vind ik mijn API Key?**

Ga naar **Settings → API Keys** om keys te maken of te beheren. Een key wordt slechts één keer getoond bij het maken — sla deze direct op.

***

### Factureringsproblemen

**Q: Waarom worden er kosten in rekening gebracht als er geen requests zijn?**

Een RUNNING Deployment bezet continu GPU-resources, ongeacht het requestvolume.
**Oplossing**: Schakel Autoscaling in en stel Min Replicas = 0 in. De Deployment gaat automatisch slapen en stopt de facturering wanneer deze inactief is.

**Q: Hoe stop ik alle kosten volledig?**

Twee opties:

* **Scale-to-Zero**: Laat autoscaling op natuurlijke wijze triggeren (vereist dat Autoscaling aan staat met Min = 0)
* **Terminate**: Klik op **Terminate** op de detailpagina van de Deployment om de GPU onmiddellijk vrij te geven

***

## Appendix: Verklarende woordenlijst

| Term             | Definitie                                                                                             |
| ---------------- | ----------------------------------------------------------------------------------------------------- |
| Deployment       | Novita's product voor dedicated inference-endpoints                                                   |
| Replica          | Eén draaiende instantie van de inferentieservice; meerdere replica's draaien parallel                 |
| Scale-to-Zero    | Min Replicas instellen op 0 zodat het endpoint slaapt wanneer het inactief is en de facturering stopt |
| Scale-down Delay | Wachttijd voordat wordt afgeschaald, om flapping bij variabel verkeer te voorkomen                    |
| LoRA Adapter     | Lichtgewicht fine-tuningplugin die boven op een Base Model wordt geplaatst                            |
| Endpoint URL     | Het API-toegangsadres voor deze Deployment                                                            |
| Endpoint ID      | Unieke identifier voor deze Deployment                                                                |
| Base Model       | Het onderliggende foundation model dat wordt bediend                                                  |
| Max Concurrency  | Maximumaantal gelijktijdige requests dat één replica verwerkt                                         |
| Suffix Decoding  | N-gram speculatieve decoding om inferentie op voorspelbare uitvoer te versnellen                      |
| GPU-second       | Factureringseenheid: 1 GPU die 1 seconde draait                                                       |

***

*Neem voor ondersteuning contact op met het Novita-team via: [support@novita.ai](mailto:support@novita.ai)*
