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

# Setting Up Endpoints

> Create and configure a serverless endpoint with full control over parameters and workergroup configuration

This guide walks through creating a serverless endpoint using the full configuration flow, giving you control over scaling parameters, workergroup setup, and template selection.

For a faster, one-click setup, see the [Quickstart](/guides/serverless/quickstart).

## Create an Endpoint

<Steps>
  <Step title="Open the Create Endpoint Dialog">
    Navigate to the [Serverless Dashboard](https://cloud.vast.ai/serverless/). How you open the **Create Endpoint** dialog depends on whether you already have an endpoint:

    * **No endpoints yet:** the dashboard shows the **"Get Started"** quickstart modal. Click **"Advanced setup"** at the bottom of the modal to switch to the full configuration flow.
    * **Existing endpoint:** click **"+ Endpoint"** in the top right.

    Either path opens the **Create Endpoint** dialog, which lets you configure the following parameters:

    | Parameter              | Default        | Description                                                          |
    | ---------------------- | -------------- | -------------------------------------------------------------------- |
    | **Endpoint Name**      | Auto-generated | A descriptive name for your endpoint                                 |
    | **Minimum Workers**    | 5              | Minimum total workers (active + inactive) maintained by the engine   |
    | **Max Workers**        | 16             | Hard upper limit on total workers                                    |
    | **Minimum Load**       | 1              | Minimum active capacity (keeps at least one worker active)           |
    | **Target Utilization** | 0.9            | Ratio of active capacity to anticipated load (lower = more headroom) |

    <img src="https://mintcdn.com/vastai-80aa3a82/Q42MuHjAcputSILl/images/serverless/create_endpoint_light.webp?fit=max&auto=format&n=Q42MuHjAcputSILl&q=85&s=72d1252bb1fb814aae386b4ccd798b65" className="block dark:hidden" alt="Create Endpoint dialog" width="2480" height="1749" data-path="images/serverless/create_endpoint_light.webp" />

    <img src="https://mintcdn.com/vastai-80aa3a82/Q42MuHjAcputSILl/images/serverless/create_endpoint_dark.webp?fit=max&auto=format&n=Q42MuHjAcputSILl&q=85&s=72038902d9d669b50c363eadd4851c73" className="hidden dark:block" alt="Create Endpoint dialog" width="2480" height="1749" data-path="images/serverless/create_endpoint_dark.webp" />
  </Step>

  <Step title="Configure Advanced Parameters (Optional)">
    Optionally, click **"Advanced"** to expand additional scaling parameters. These all have sensible defaults, so you can leave them as-is and continue:

    | Parameter              | Default | Description                                                         |
    | ---------------------- | ------- | ------------------------------------------------------------------- |
    | **Cold Multiplier**    | 3       | Inactive capacity as a multiplier of current active workload        |
    | **Minimum Cold Load**  | 0       | Total capacity target independent of cold multiplier                |
    | **Max Queue Time**     | 30s     | Max seconds of expected queue time per worker before routing holds  |
    | **Target Queue Time**  | 10s     | Queue time threshold that triggers aggressive scale-up              |
    | **Inactivity Timeout** | Not set | Seconds of inactivity before the engine is allowed to scale to zero |

    <img src="https://mintcdn.com/vastai-80aa3a82/Q42MuHjAcputSILl/images/serverless/create_endpoint_advanced_light.webp?fit=max&auto=format&n=Q42MuHjAcputSILl&q=85&s=ecb3c377ebc1728dcc473eb5dcf2dc17" className="block dark:hidden" alt="Create Endpoint advanced parameters" width="2480" height="1749" data-path="images/serverless/create_endpoint_advanced_light.webp" />

    <img src="https://mintcdn.com/vastai-80aa3a82/Q42MuHjAcputSILl/images/serverless/create_endpoint_advanced_dark.webp?fit=max&auto=format&n=Q42MuHjAcputSILl&q=85&s=c7ed168d2e4b578887480c52ede3938d" className="hidden dark:block" alt="Create Endpoint advanced parameters" width="2480" height="1749" data-path="images/serverless/create_endpoint_advanced_dark.webp" />

    For details on what each parameter controls, see [Endpoint Parameters](/guides/serverless/serverless-parameters).

    Click **"Next"** to proceed to workergroup configuration.
  </Step>

  <Step title="Select a Template">
    On the **Create Workergroup** page, start by selecting a template for your workers.

    Click **"Select Template"** and choose from the available pre-built templates. For LLM inference, select **vLLM (Serverless)**, which comes pre-configured with:

    * **Model**: Qwen/Qwen3-8B (8 billion parameter LLM)
    * **Framework**: vLLM for high-performance inference
    * **API**: OpenAI-compatible endpoints

    <img src="https://mintcdn.com/vastai-80aa3a82/Q42MuHjAcputSILl/images/serverless/create_workergroup_template_light.webp?fit=max&auto=format&n=Q42MuHjAcputSILl&q=85&s=3f9454bfd3650dd67b322921c3c8f8c0" className="block dark:hidden" alt="Create Workergroup - Template selection" width="2680" height="860" data-path="images/serverless/create_workergroup_template_light.webp" />

    <img src="https://mintcdn.com/vastai-80aa3a82/Q42MuHjAcputSILl/images/serverless/create_workergroup_template_dark.webp?fit=max&auto=format&n=Q42MuHjAcputSILl&q=85&s=8f3a2083f53b0299bb3ef26cba3f48ea" className="hidden dark:block" alt="Create Workergroup - Template selection" width="2680" height="860" data-path="images/serverless/create_workergroup_template_dark.webp" />

    The template will automatically filter available GPU instances to those with enough VRAM for the model.
  </Step>

  <Step title="Select GPU Instances">
    After selecting a template, choose the GPU instances for your workergroup.

    Use the filters to narrow by GPU type, quantity, region, and sort order. Each instance card shows specs including TFLOPS, VRAM, efficiency, disk speed, and pricing.

    <img src="https://mintcdn.com/vastai-80aa3a82/Q42MuHjAcputSILl/images/serverless/create_workergroup_light.webp?fit=max&auto=format&n=Q42MuHjAcputSILl&q=85&s=7fde2e7daf72cc3341048ad5f299c8d9" className="block dark:hidden" alt="Create Workergroup - GPU selection" width="1300" height="750" data-path="images/serverless/create_workergroup_light.webp" />

    <img src="https://mintcdn.com/vastai-80aa3a82/Q42MuHjAcputSILl/images/serverless/create_workergroup_dark.webp?fit=max&auto=format&n=Q42MuHjAcputSILl&q=85&s=c4b2f955eb1d0d8ad6dd917f362264aa" className="hidden dark:block" alt="Create Workergroup - GPU selection" width="1300" height="750" data-path="images/serverless/create_workergroup_dark.webp" />

    Click **"Create"** once you've selected your template and reviewed the available instances.
  </Step>

  <Step title="Wait for Workers to Initialize">
    Your serverless infrastructure is now being provisioned. **This process takes time** as workers need to:

    1. Start up the GPU instances
    2. Download the model (8GB for Qwen3-8B)
    3. Load the model into GPU memory
    4. Complete health checks

    <img src="https://mintcdn.com/vastai-80aa3a82/-B7vPzPRPgY83TXM/images/serverless/workers_loading_light.webp?fit=max&auto=format&n=-B7vPzPRPgY83TXM&q=85&s=5195bc9a0826960075cacf710182b13e" className="block dark:hidden" alt="Workers loading in the dashboard" width="2480" height="1749" data-path="images/serverless/workers_loading_light.webp" />

    <img src="https://mintcdn.com/vastai-80aa3a82/-B7vPzPRPgY83TXM/images/serverless/workers_loading_dark.webp?fit=max&auto=format&n=-B7vPzPRPgY83TXM&q=85&s=59d4a02dc416699a3666ec6059caade4" className="hidden dark:block" alt="Workers loading in the dashboard" width="2480" height="1749" data-path="images/serverless/workers_loading_dark.webp" />

    <Warning>
      **Expect 3-5 minutes wait time** for workers to become ready, especially on first deployment. Larger models may take longer.
    </Warning>

    Monitor the worker status in the dashboard:

    * **Stopped**: Worker has the model loaded and is ready to activate on-demand (cold worker)
    * **Loading**: Worker is starting up and loading the model into GPU memory
    * **Ready**: Worker is active and ready to handle requests

    You can view detailed statistics by clicking **"View detailed stats"** on the Workergroup.

    Monitor the instance logs to track the loading process:

    * Click on the "eye" icon to view the logs for a worker
    * Logs show model download progress, loading status, and any startup errors

    <img src="https://mintcdn.com/vastai-80aa3a82/-B7vPzPRPgY83TXM/images/serverless/workers_progress_light.webp?fit=max&auto=format&n=-B7vPzPRPgY83TXM&q=85&s=4991a4d8a69de9ca81cb8c3860bfe521" className="block dark:hidden" alt="Workers progressing through initialization" width="2480" height="1749" data-path="images/serverless/workers_progress_light.webp" />

    <img src="https://mintcdn.com/vastai-80aa3a82/-B7vPzPRPgY83TXM/images/serverless/workers_progress_dark.webp?fit=max&auto=format&n=-B7vPzPRPgY83TXM&q=85&s=9f3a7246428ce1e2dd7e256e0606ac28" className="hidden dark:block" alt="Workers progressing through initialization" width="2480" height="1749" data-path="images/serverless/workers_progress_dark.webp" />

    <Note>
      The SDK automatically holds and retries requests until workers are ready. However, for best performance, wait for at least one worker to show "Ready" or "Stopped" status before making your first call.
    </Note>
  </Step>
</Steps>

## Edit an Existing Endpoint

To modify parameters on a live endpoint, click the **pencil icon** on the endpoint card in the Serverless Dashboard.

The **Edit Endpoint** dialog shows the same parameters as creation. Changes take effect immediately and the serverless engine will work to match the new targets.

<img src="https://mintcdn.com/vastai-80aa3a82/Q42MuHjAcputSILl/images/serverless/edit_endpoint_light.webp?fit=max&auto=format&n=Q42MuHjAcputSILl&q=85&s=bd3e369c65a60cd40bbf667f2f7c1f0c" className="block dark:hidden" alt="Edit Endpoint dialog" width="2480" height="1749" data-path="images/serverless/edit_endpoint_light.webp" />

<img src="https://mintcdn.com/vastai-80aa3a82/Q42MuHjAcputSILl/images/serverless/edit_endpoint_dark.webp?fit=max&auto=format&n=Q42MuHjAcputSILl&q=85&s=6a599074ea1988e5108e61da252ffe45" className="hidden dark:block" alt="Edit Endpoint dialog" width="2480" height="1749" data-path="images/serverless/edit_endpoint_dark.webp" />

Click **"Advanced"** to access additional scaling controls:

<img src="https://mintcdn.com/vastai-80aa3a82/Q42MuHjAcputSILl/images/serverless/edit_endpoint_advanced_light.webp?fit=max&auto=format&n=Q42MuHjAcputSILl&q=85&s=b2e82570cf8ad28eece8af2031cc951c" className="block dark:hidden" alt="Edit Endpoint advanced parameters" width="2480" height="1749" data-path="images/serverless/edit_endpoint_advanced_light.webp" />

<img src="https://mintcdn.com/vastai-80aa3a82/Q42MuHjAcputSILl/images/serverless/edit_endpoint_advanced_dark.webp?fit=max&auto=format&n=Q42MuHjAcputSILl&q=85&s=caf639c44b0eccd6df860a0d27170931" className="hidden dark:block" alt="Edit Endpoint advanced parameters" width="2480" height="1749" data-path="images/serverless/edit_endpoint_advanced_dark.webp" />

## Next Steps

* [Endpoint Parameters](/guides/serverless/serverless-parameters) for a deep dive into what each parameter controls
* [Managing Scale](/guides/serverless/managing-scale) for tuning your endpoint for different load scenarios
* [Workergroup Parameters](/guides/serverless/workergroup-parameters) for configuring GPU instance settings
