Spaces:
Build error
Build error
Upload 6 files
Browse files- .gitignore +7 -0
- Dockerfile +50 -0
- LICENSE +21 -0
- README.md +405 -10
- docker-bake.hcl +26 -0
- worker-config.json +1514 -0
.gitignore
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
|
| 2 |
+
runpod.toml
|
| 3 |
+
*.pyc
|
| 4 |
+
.env
|
| 5 |
+
test/*
|
| 6 |
+
vllm-base/vllm-*
|
| 7 |
+
.DS_Store
|
Dockerfile
ADDED
|
@@ -0,0 +1,50 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
FROM nvidia/cuda:12.1.0-base-ubuntu22.04
|
| 2 |
+
|
| 3 |
+
RUN apt-get update -y \
|
| 4 |
+
&& apt-get install -y python3-pip
|
| 5 |
+
|
| 6 |
+
RUN ldconfig /usr/local/cuda-12.1/compat/
|
| 7 |
+
|
| 8 |
+
# Install Python dependencies
|
| 9 |
+
COPY builder/requirements.txt /requirements.txt
|
| 10 |
+
RUN --mount=type=cache,target=/root/.cache/pip \
|
| 11 |
+
python3 -m pip install --upgrade pip && \
|
| 12 |
+
python3 -m pip install --upgrade -r /requirements.txt
|
| 13 |
+
|
| 14 |
+
# Install vLLM (switching back to pip installs since issues that required building fork are fixed and space optimization is not as important since caching) and FlashInfer
|
| 15 |
+
RUN python3 -m pip install vllm==0.10.0 && \
|
| 16 |
+
python3 -m pip install flashinfer -i https://flashinfer.ai/whl/cu121/torch2.3
|
| 17 |
+
|
| 18 |
+
# Setup for Option 2: Building the Image with the Model included
|
| 19 |
+
ARG MODEL_NAME=""
|
| 20 |
+
ARG TOKENIZER_NAME=""
|
| 21 |
+
ARG BASE_PATH="/runpod-volume"
|
| 22 |
+
ARG QUANTIZATION=""
|
| 23 |
+
ARG MODEL_REVISION=""
|
| 24 |
+
ARG TOKENIZER_REVISION=""
|
| 25 |
+
|
| 26 |
+
ENV MODEL_NAME=$MODEL_NAME \
|
| 27 |
+
MODEL_REVISION=$MODEL_REVISION \
|
| 28 |
+
TOKENIZER_NAME=$TOKENIZER_NAME \
|
| 29 |
+
TOKENIZER_REVISION=$TOKENIZER_REVISION \
|
| 30 |
+
BASE_PATH=$BASE_PATH \
|
| 31 |
+
QUANTIZATION=$QUANTIZATION \
|
| 32 |
+
HF_DATASETS_CACHE="${BASE_PATH}/huggingface-cache/datasets" \
|
| 33 |
+
HUGGINGFACE_HUB_CACHE="${BASE_PATH}/huggingface-cache/hub" \
|
| 34 |
+
HF_HOME="${BASE_PATH}/huggingface-cache/hub" \
|
| 35 |
+
HF_HUB_ENABLE_HF_TRANSFER=0
|
| 36 |
+
|
| 37 |
+
ENV PYTHONPATH="/:/vllm-workspace"
|
| 38 |
+
|
| 39 |
+
|
| 40 |
+
COPY src /src
|
| 41 |
+
RUN --mount=type=secret,id=HF_TOKEN,required=false \
|
| 42 |
+
if [ -f /run/secrets/HF_TOKEN ]; then \
|
| 43 |
+
export HF_TOKEN=$(cat /run/secrets/HF_TOKEN); \
|
| 44 |
+
fi && \
|
| 45 |
+
if [ -n "$MODEL_NAME" ]; then \
|
| 46 |
+
python3 /src/download_model.py; \
|
| 47 |
+
fi
|
| 48 |
+
|
| 49 |
+
# Start the handler
|
| 50 |
+
CMD ["python3", "/src/handler.py"]
|
LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
MIT License
|
| 2 |
+
|
| 3 |
+
Copyright (c) 2025 Runpod
|
| 4 |
+
|
| 5 |
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
| 6 |
+
of this software and associated documentation files (the "Software"), to deal
|
| 7 |
+
in the Software without restriction, including without limitation the rights
|
| 8 |
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
| 9 |
+
copies of the Software, and to permit persons to whom the Software is
|
| 10 |
+
furnished to do so, subject to the following conditions:
|
| 11 |
+
|
| 12 |
+
The above copyright notice and this permission notice shall be included in all
|
| 13 |
+
copies or substantial portions of the Software.
|
| 14 |
+
|
| 15 |
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
| 16 |
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
| 17 |
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
| 18 |
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
| 19 |
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
| 20 |
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
| 21 |
+
SOFTWARE.
|
README.md
CHANGED
|
@@ -1,10 +1,405 @@
|
|
| 1 |
-
|
| 2 |
-
|
| 3 |
-
|
| 4 |
-
|
| 5 |
-
|
| 6 |
-
|
| 7 |
-
|
| 8 |
-
|
| 9 |
-
|
| 10 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
<div align="center">
|
| 2 |
+
|
| 3 |
+
# OpenAI-Compatible vLLM Serverless Endpoint Worker
|
| 4 |
+
|
| 5 |
+
Deploy OpenAI-Compatible Blazing-Fast LLM Endpoints powered by the [vLLM](https://github.com/vllm-project/vllm) Inference Engine on RunPod Serverless with just a few clicks.
|
| 6 |
+
|
| 7 |
+
</div>
|
| 8 |
+
|
| 9 |
+
## Table of Contents
|
| 10 |
+
|
| 11 |
+
- [Setting up the Serverless Worker](#setting-up-the-serverless-worker)
|
| 12 |
+
- [Option 1: Deploy Any Model Using Pre-Built Docker Image [Recommended]](#option-1-deploy-any-model-using-pre-built-docker-image-recommended)
|
| 13 |
+
- [Configuration](#configuration)
|
| 14 |
+
- [Option 2: Build Docker Image with Model Inside](#option-2-build-docker-image-with-model-inside)
|
| 15 |
+
- [Prerequisites](#prerequisites)
|
| 16 |
+
- [Arguments](#arguments)
|
| 17 |
+
- [Example: Building an image with OpenChat-3.5](#example-building-an-image-with-openchat-35)
|
| 18 |
+
- [(Optional) Including Huggingface Token](#optional-including-huggingface-token)
|
| 19 |
+
- [Compatible Model Architectures](#compatible-model-architectures)
|
| 20 |
+
- [Usage: OpenAI Compatibility](#usage-openai-compatibility)
|
| 21 |
+
- [Modifying your OpenAI Codebase to use your deployed vLLM Worker](#modifying-your-openai-codebase-to-use-your-deployed-vllm-worker)
|
| 22 |
+
- [OpenAI Request Input Parameters](#openai-request-input-parameters)
|
| 23 |
+
- [Chat Completions [RECOMMENDED]](#chat-completions-recommended)
|
| 24 |
+
- [Examples: Using your RunPod endpoint with OpenAI](#examples-using-your-runpod-endpoint-with-openai)
|
| 25 |
+
- [Chat Completions](#chat-completions)
|
| 26 |
+
- [Getting a list of names for available models](#getting-a-list-of-names-for-available-models)
|
| 27 |
+
- [Usage: Standard (Non-OpenAI)](#usage-standard-non-openai)
|
| 28 |
+
- [Request Input Parameters](#request-input-parameters)
|
| 29 |
+
- [Sampling Parameters](#sampling-parameters)
|
| 30 |
+
- [Text Input Formats](#text-input-formats)
|
| 31 |
+
|
| 32 |
+
# Setting up the Serverless Worker
|
| 33 |
+
|
| 34 |
+
## Option 1: Deploy Any Model Using Pre-Built Docker Image [Recommended]
|
| 35 |
+
|
| 36 |
+
**🚀 Deploy Guide**: Follow our [step-by-step deployment guide](https://docs.runpod.io/serverless/vllm/get-started) to deploy using the RunPod Console.
|
| 37 |
+
|
| 38 |
+
**📦 Docker Image**: `runpod/worker-v1-vllm:<version>`
|
| 39 |
+
|
| 40 |
+
- **Available Versions**: See [GitHub Releases](https://github.com/runpod-workers/worker-vllm/releases)
|
| 41 |
+
- **CUDA Compatibility**: Requires CUDA >= 12.1
|
| 42 |
+
|
| 43 |
+
### Configuration
|
| 44 |
+
|
| 45 |
+
Configure worker-vllm using environment variables:
|
| 46 |
+
|
| 47 |
+
| Environment Variable | Description | Default | Options |
|
| 48 |
+
| ----------------------------------- | ------------------------------------------------- | ------------------- | ------------------------------------------------------------------ |
|
| 49 |
+
| `MODEL_NAME` | Path of the model weights | "facebook/opt-125m" | Local folder or Hugging Face repo ID |
|
| 50 |
+
| `HF_TOKEN` | HuggingFace access token for gated/private models | | Your HuggingFace access token |
|
| 51 |
+
| `MAX_MODEL_LEN` | Model's maximum context length | | Integer (e.g., 4096) |
|
| 52 |
+
| `QUANTIZATION` | Quantization method | | "awq", "gptq", "squeezellm", "bitsandbytes" |
|
| 53 |
+
| `TENSOR_PARALLEL_SIZE` | Number of GPUs | 1 | Integer |
|
| 54 |
+
| `GPU_MEMORY_UTILIZATION` | Fraction of GPU memory to use | 0.95 | Float between 0.0 and 1.0 |
|
| 55 |
+
| `MAX_NUM_SEQS` | Maximum number of sequences per iteration | 256 | Integer |
|
| 56 |
+
| `CUSTOM_CHAT_TEMPLATE` | Custom chat template override | | Jinja2 template string |
|
| 57 |
+
| `ENABLE_AUTO_TOOL_CHOICE` | Enable automatic tool selection | false | boolean (true or false) |
|
| 58 |
+
| `TOOL_CALL_PARSER` | Parser for tool calls | | "mistral", "hermes", "llama3_json", "granite", "deepseek_v3", etc. |
|
| 59 |
+
| `OPENAI_SERVED_MODEL_NAME_OVERRIDE` | Override served model name in API | | String |
|
| 60 |
+
| `MAX_CONCURRENCY` | Maximum concurrent requests | 300 | Integer |
|
| 61 |
+
|
| 62 |
+
For the complete list of all available environment variables, examples, and detailed descriptions: **[Configuration](docs/configuration.md)**
|
| 63 |
+
|
| 64 |
+
## Option 2: Build Docker Image with Model Inside
|
| 65 |
+
|
| 66 |
+
To build an image with the model baked in, you must specify the following docker arguments when building the image.
|
| 67 |
+
|
| 68 |
+
### Prerequisites
|
| 69 |
+
|
| 70 |
+
- Docker
|
| 71 |
+
|
| 72 |
+
### Arguments
|
| 73 |
+
|
| 74 |
+
- **Required**
|
| 75 |
+
- `MODEL_NAME`
|
| 76 |
+
- **Optional**
|
| 77 |
+
- `MODEL_REVISION`: Model revision to load (default: `main`).
|
| 78 |
+
- `BASE_PATH`: Storage directory where huggingface cache and model will be located. (default: `/runpod-volume`, which will utilize network storage if you attach it or create a local directory within the image if you don't. If your intention is to bake the model into the image, you should set this to something like `/models` to make sure there are no issues if you were to accidentally attach network storage.)
|
| 79 |
+
- `QUANTIZATION`
|
| 80 |
+
- `WORKER_CUDA_VERSION`: `12.1.0` (`12.1.0` is recommended for optimal performance).
|
| 81 |
+
- `TOKENIZER_NAME`: Tokenizer repository if you would like to use a different tokenizer than the one that comes with the model. (default: `None`, which uses the model's tokenizer)
|
| 82 |
+
- `TOKENIZER_REVISION`: Tokenizer revision to load (default: `main`).
|
| 83 |
+
|
| 84 |
+
For the remaining settings, you may apply them as environment variables when running the container. Supported environment variables are listed in the [Environment Variables](#environment-variables) section.
|
| 85 |
+
|
| 86 |
+
### Example: Building an image with OpenChat-3.5
|
| 87 |
+
|
| 88 |
+
```bash
|
| 89 |
+
docker build -t username/image:tag --build-arg MODEL_NAME="openchat/openchat_3.5" --build-arg BASE_PATH="/models" .
|
| 90 |
+
```
|
| 91 |
+
|
| 92 |
+
### (Optional) Including Huggingface Token
|
| 93 |
+
|
| 94 |
+
If the model you would like to deploy is private or gated, you will need to include it during build time as a Docker secret, which will protect it from being exposed in the image and on DockerHub.
|
| 95 |
+
|
| 96 |
+
1. Enable Docker BuildKit (required for secrets).
|
| 97 |
+
|
| 98 |
+
```bash
|
| 99 |
+
export DOCKER_BUILDKIT=1
|
| 100 |
+
```
|
| 101 |
+
|
| 102 |
+
2. Export your Hugging Face token as an environment variable
|
| 103 |
+
|
| 104 |
+
```bash
|
| 105 |
+
export HF_TOKEN="your_token_here"
|
| 106 |
+
```
|
| 107 |
+
|
| 108 |
+
2. Add the token as a secret when building
|
| 109 |
+
|
| 110 |
+
```bash
|
| 111 |
+
docker build -t username/image:tag --secret id=HF_TOKEN --build-arg MODEL_NAME="openchat/openchat_3.5" .
|
| 112 |
+
```
|
| 113 |
+
|
| 114 |
+
# Compatible Model Architectures
|
| 115 |
+
|
| 116 |
+
You can deploy **any model on Hugging Face** that is supported by vLLM. For the complete and up-to-date list of supported model architectures, see the [vLLM Supported Models documentation](https://docs.vllm.ai/en/latest/models/supported_models.html#list-of-text-only-language-models).
|
| 117 |
+
|
| 118 |
+
# Usage: OpenAI Compatibility
|
| 119 |
+
|
| 120 |
+
The vLLM Worker is fully compatible with OpenAI's API, and you can use it with any OpenAI Codebase by changing only 3 lines in total. The supported routes are <ins>Chat Completions</ins> and <ins>Models</ins> - with both streaming and non-streaming.
|
| 121 |
+
|
| 122 |
+
## Modifying your OpenAI Codebase to use your deployed vLLM Worker
|
| 123 |
+
|
| 124 |
+
**Python** (similar to Node.js, etc.):
|
| 125 |
+
|
| 126 |
+
1. When initializing the OpenAI Client in your code, change the `api_key` to your RunPod API Key and the `base_url` to your RunPod Serverless Endpoint URL in the following format: `https://api.runpod.ai/v2/<YOUR ENDPOINT ID>/openai/v1`, filling in your deployed endpoint ID. For example, if your Endpoint ID is `abc1234`, the URL would be `https://api.runpod.ai/v2/abc1234/openai/v1`.
|
| 127 |
+
|
| 128 |
+
- Before:
|
| 129 |
+
|
| 130 |
+
```python
|
| 131 |
+
from openai import OpenAI
|
| 132 |
+
|
| 133 |
+
client = OpenAI(api_key=os.environ.get("OPENAI_API_KEY"))
|
| 134 |
+
```
|
| 135 |
+
|
| 136 |
+
- After:
|
| 137 |
+
|
| 138 |
+
```python
|
| 139 |
+
from openai import OpenAI
|
| 140 |
+
|
| 141 |
+
client = OpenAI(
|
| 142 |
+
api_key=os.environ.get("RUNPOD_API_KEY"),
|
| 143 |
+
base_url="https://api.runpod.ai/v2/<YOUR ENDPOINT ID>/openai/v1",
|
| 144 |
+
)
|
| 145 |
+
```
|
| 146 |
+
|
| 147 |
+
2. Change the `model` parameter to your deployed model's name whenever using Completions or Chat Completions.
|
| 148 |
+
- Before:
|
| 149 |
+
```python
|
| 150 |
+
response = client.chat.completions.create(
|
| 151 |
+
model="gpt-3.5-turbo",
|
| 152 |
+
messages=[{"role": "user", "content": "Why is RunPod the best platform?"}],
|
| 153 |
+
temperature=0,
|
| 154 |
+
max_tokens=100,
|
| 155 |
+
)
|
| 156 |
+
```
|
| 157 |
+
- After:
|
| 158 |
+
```python
|
| 159 |
+
response = client.chat.completions.create(
|
| 160 |
+
model="<YOUR DEPLOYED MODEL REPO/NAME>",
|
| 161 |
+
messages=[{"role": "user", "content": "Why is RunPod the best platform?"}],
|
| 162 |
+
temperature=0,
|
| 163 |
+
max_tokens=100,
|
| 164 |
+
)
|
| 165 |
+
```
|
| 166 |
+
|
| 167 |
+
**Using http requests**:
|
| 168 |
+
|
| 169 |
+
1. Change the `Authorization` header to your RunPod API Key and the `url` to your RunPod Serverless Endpoint URL in the following format: `https://api.runpod.ai/v2/<YOUR ENDPOINT ID>/openai/v1`
|
| 170 |
+
- Before:
|
| 171 |
+
```bash
|
| 172 |
+
curl https://api.openai.com/v1/chat/completions \
|
| 173 |
+
-H "Content-Type: application/json" \
|
| 174 |
+
-H "Authorization: Bearer $OPENAI_API_KEY" \
|
| 175 |
+
-d '{
|
| 176 |
+
"model": "gpt-4",
|
| 177 |
+
"messages": [
|
| 178 |
+
{
|
| 179 |
+
"role": "user",
|
| 180 |
+
"content": "Why is RunPod the best platform?"
|
| 181 |
+
}
|
| 182 |
+
],
|
| 183 |
+
"temperature": 0,
|
| 184 |
+
"max_tokens": 100
|
| 185 |
+
}'
|
| 186 |
+
```
|
| 187 |
+
- After:
|
| 188 |
+
```bash
|
| 189 |
+
curl https://api.runpod.ai/v2/<YOUR ENDPOINT ID>/openai/v1/chat/completions \
|
| 190 |
+
-H "Content-Type: application/json" \
|
| 191 |
+
-H "Authorization: Bearer <YOUR OPENAI API KEY>" \
|
| 192 |
+
-d '{
|
| 193 |
+
"model": "<YOUR DEPLOYED MODEL REPO/NAME>",
|
| 194 |
+
"messages": [
|
| 195 |
+
{
|
| 196 |
+
"role": "user",
|
| 197 |
+
"content": "Why is RunPod the best platform?"
|
| 198 |
+
}
|
| 199 |
+
],
|
| 200 |
+
"temperature": 0,
|
| 201 |
+
"max_tokens": 100
|
| 202 |
+
}'
|
| 203 |
+
```
|
| 204 |
+
|
| 205 |
+
## OpenAI Request Input Parameters:
|
| 206 |
+
|
| 207 |
+
When using the chat completion feature of the vLLM Serverless Endpoint Worker, you can customize your requests with the following parameters:
|
| 208 |
+
|
| 209 |
+
### Chat Completions [RECOMMENDED]
|
| 210 |
+
|
| 211 |
+
<details>
|
| 212 |
+
<summary>Supported Chat Completions Inputs and Descriptions</summary>
|
| 213 |
+
|
| 214 |
+
| Parameter | Type | Default Value | Description |
|
| 215 |
+
| ------------------- | -------------------------------- | ------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
|
| 216 |
+
| `messages` | Union[str, List[Dict[str, str]]] | | List of messages, where each message is a dictionary with a `role` and `content`. The model's chat template will be applied to the messages automatically, so the model must have one or it should be specified as `CUSTOM_CHAT_TEMPLATE` env var. |
|
| 217 |
+
| `model` | str | | The model repo that you've deployed on your RunPod Serverless Endpoint. If you are unsure what the name is or are baking the model in, use the guide to get the list of available models in the **Examples: Using your RunPod endpoint with OpenAI** section |
|
| 218 |
+
| `temperature` | Optional[float] | 0.7 | Float that controls the randomness of the sampling. Lower values make the model more deterministic, while higher values make the model more random. Zero means greedy sampling. |
|
| 219 |
+
| `top_p` | Optional[float] | 1.0 | Float that controls the cumulative probability of the top tokens to consider. Must be in (0, 1]. Set to 1 to consider all tokens. |
|
| 220 |
+
| `n` | Optional[int] | 1 | Number of output sequences to return for the given prompt. |
|
| 221 |
+
| `max_tokens` | Optional[int] | None | Maximum number of tokens to generate per output sequence. |
|
| 222 |
+
| `seed` | Optional[int] | None | Random seed to use for the generation. |
|
| 223 |
+
| `stop` | Optional[Union[str, List[str]]] | list | List of strings that stop the generation when they are generated. The returned output will not contain the stop strings. |
|
| 224 |
+
| `stream` | Optional[bool] | False | Whether to stream or not |
|
| 225 |
+
| `presence_penalty` | Optional[float] | 0.0 | Float that penalizes new tokens based on whether they appear in the generated text so far. Values > 0 encourage the model to use new tokens, while values < 0 encourage the model to repeat tokens. |
|
| 226 |
+
| `frequency_penalty` | Optional[float] | 0.0 | Float that penalizes new tokens based on their frequency in the generated text so far. Values > 0 encourage the model to use new tokens, while values < 0 encourage the model to repeat tokens. |
|
| 227 |
+
| `logit_bias` | Optional[Dict[str, float]] | None | Unsupported by vLLM |
|
| 228 |
+
| `user` | Optional[str] | None | Unsupported by vLLM |
|
| 229 |
+
|
| 230 |
+
Additional parameters supported by vLLM:
|
| 231 |
+
| `best_of` | Optional[int] | None | Number of output sequences that are generated from the prompt. From these `best_of` sequences, the top `n` sequences are returned. `best_of` must be greater than or equal to `n`. This is treated as the beam width when `use_beam_search` is True. By default, `best_of` is set to `n`. |
|
| 232 |
+
| `top_k` | Optional[int] | -1 | Integer that controls the number of top tokens to consider. Set to -1 to consider all tokens. |
|
| 233 |
+
| `ignore_eos` | Optional[bool] | False | Whether to ignore the EOS token and continue generating tokens after the EOS token is generated. |
|
| 234 |
+
| `use_beam_search` | Optional[bool] | False | Whether to use beam search instead of sampling. |
|
| 235 |
+
| `stop_token_ids` | Optional[List[int]] | list | List of tokens that stop the generation when they are generated. The returned output will contain the stop tokens unless the stop tokens are special tokens. |
|
| 236 |
+
| `skip_special_tokens` | Optional[bool] | True | Whether to skip special tokens in the output. |
|
| 237 |
+
| `spaces_between_special_tokens`| Optional[bool] | True | Whether to add spaces between special tokens in the output. Defaults to True. |
|
| 238 |
+
| `add_generation_prompt` | Optional[bool] | True | Read more [here](https://huggingface.co/docs/transformers/main/en/chat_templating#what-are-generation-prompts) |
|
| 239 |
+
| `echo` | Optional[bool] | False | Echo back the prompt in addition to the completion |
|
| 240 |
+
| `repetition_penalty` | Optional[float] | 1.0 | Float that penalizes new tokens based on whether they appear in the prompt and the generated text so far. Values > 1 encourage the model to use new tokens, while values < 1 encourage the model to repeat tokens. |
|
| 241 |
+
| `min_p` | Optional[float] | 0.0 | Float that represents the minimum probability for a token to |
|
| 242 |
+
| `length_penalty` | Optional[float] | 1.0 | Float that penalizes sequences based on their length. Used in beam search.. |
|
| 243 |
+
| `include_stop_str_in_output` | Optional[bool] | False | Whether to include the stop strings in output text. Defaults to False.|
|
| 244 |
+
|
| 245 |
+
</details>
|
| 246 |
+
|
| 247 |
+
### Examples: Using your RunPod endpoint with OpenAI
|
| 248 |
+
|
| 249 |
+
First, initialize the OpenAI Client with your RunPod API Key and Endpoint URL:
|
| 250 |
+
|
| 251 |
+
```python
|
| 252 |
+
from openai import OpenAI
|
| 253 |
+
import os
|
| 254 |
+
|
| 255 |
+
# Initialize the OpenAI Client with your RunPod API Key and Endpoint URL
|
| 256 |
+
client = OpenAI(
|
| 257 |
+
api_key=os.environ.get("RUNPOD_API_KEY"),
|
| 258 |
+
base_url="https://api.runpod.ai/v2/<YOUR ENDPOINT ID>/openai/v1",
|
| 259 |
+
)
|
| 260 |
+
```
|
| 261 |
+
|
| 262 |
+
### Chat Completions:
|
| 263 |
+
|
| 264 |
+
This is the format used for GPT-4 and focused on instruction-following and chat. Examples of Open Source chat/instruct models include `meta-llama/Llama-2-7b-chat-hf`, `mistralai/Mixtral-8x7B-Instruct-v0.1`, `openchat/openchat-3.5-0106`, `NousResearch/Nous-Hermes-2-Mistral-7B-DPO` and more. However, if your model is a completion-style model with no chat/instruct fine-tune and/or does not have a chat template, you can still use this if you provide a chat template with the environment variable `CUSTOM_CHAT_TEMPLATE`.
|
| 265 |
+
|
| 266 |
+
- **Streaming**:
|
| 267 |
+
```python
|
| 268 |
+
# Create a chat completion stream
|
| 269 |
+
response_stream = client.chat.completions.create(
|
| 270 |
+
model="<YOUR DEPLOYED MODEL REPO/NAME>",
|
| 271 |
+
messages=[{"role": "user", "content": "Why is RunPod the best platform?"}],
|
| 272 |
+
temperature=0,
|
| 273 |
+
max_tokens=100,
|
| 274 |
+
stream=True,
|
| 275 |
+
)
|
| 276 |
+
# Stream the response
|
| 277 |
+
for response in response_stream:
|
| 278 |
+
print(chunk.choices[0].delta.content or "", end="", flush=True)
|
| 279 |
+
```
|
| 280 |
+
- **Non-Streaming**:
|
| 281 |
+
```python
|
| 282 |
+
# Create a chat completion
|
| 283 |
+
response = client.chat.completions.create(
|
| 284 |
+
model="<YOUR DEPLOYED MODEL REPO/NAME>",
|
| 285 |
+
messages=[{"role": "user", "content": "Why is RunPod the best platform?"}],
|
| 286 |
+
temperature=0,
|
| 287 |
+
max_tokens=100,
|
| 288 |
+
)
|
| 289 |
+
# Print the response
|
| 290 |
+
print(response.choices[0].message.content)
|
| 291 |
+
```
|
| 292 |
+
|
| 293 |
+
### Getting a list of names for available models:
|
| 294 |
+
|
| 295 |
+
In the case of baking the model into the image, sometimes the repo may not be accepted as the `model` in the request. In this case, you can list the available models as shown below and use that name.
|
| 296 |
+
|
| 297 |
+
```python
|
| 298 |
+
models_response = client.models.list()
|
| 299 |
+
list_of_models = [model.id for model in models_response]
|
| 300 |
+
print(list_of_models)
|
| 301 |
+
```
|
| 302 |
+
|
| 303 |
+
# Usage: Standard (Non-OpenAI)
|
| 304 |
+
|
| 305 |
+
## Request Input Parameters
|
| 306 |
+
|
| 307 |
+
<details>
|
| 308 |
+
<summary>Click to expand table</summary>
|
| 309 |
+
|
| 310 |
+
You may either use a `prompt` or a list of `messages` as input. If you use `messages`, the model's chat template will be applied to the messages automatically, so the model must have one. If you use `prompt`, you may optionally apply the model's chat template to the prompt by setting `apply_chat_template` to `true`.
|
| 311 |
+
| Argument | Type | Default | Description |
|
| 312 |
+
|-----------------------|----------------------|--------------------|--------------------------------------------------------------------------------------------------------|
|
| 313 |
+
| `prompt` | str | | Prompt string to generate text based on. |
|
| 314 |
+
| `messages` | list[dict[str, str]] | | List of messages, which will automatically have the model's chat template applied. Overrides `prompt`. |
|
| 315 |
+
| `apply_chat_template` | bool | False | Whether to apply the model's chat template to the `prompt`. |
|
| 316 |
+
| `sampling_params` | dict | {} | Sampling parameters to control the generation, like temperature, top_p, etc. You can find all available parameters in the `Sampling Parameters` section below. |
|
| 317 |
+
| `stream` | bool | False | Whether to enable streaming of output. If True, responses are streamed as they are generated. |
|
| 318 |
+
| `max_batch_size` | int | env var `DEFAULT_BATCH_SIZE` | The maximum number of tokens to stream every HTTP POST call. |
|
| 319 |
+
| `min_batch_size` | int | env var `DEFAULT_MIN_BATCH_SIZE` | The minimum number of tokens to stream every HTTP POST call. |
|
| 320 |
+
| `batch_size_growth_factor` | int | env var `DEFAULT_BATCH_SIZE_GROWTH_FACTOR` | The growth factor by which `min_batch_size` will be multiplied for each call until `max_batch_size` is reached. |
|
| 321 |
+
</details>
|
| 322 |
+
|
| 323 |
+
### Sampling Parameters
|
| 324 |
+
|
| 325 |
+
Below are all available sampling parameters that you can specify in the `sampling_params` dictionary. If you do not specify any of these parameters, the default values will be used.
|
| 326 |
+
|
| 327 |
+
<details>
|
| 328 |
+
<summary>Click to expand table</summary>
|
| 329 |
+
|
| 330 |
+
| Argument | Type | Default | Description |
|
| 331 |
+
| ------------------------------- | --------------------------- | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
| 332 |
+
| `n` | int | 1 | Number of output sequences generated from the prompt. The top `n` sequences are returned. |
|
| 333 |
+
| `best_of` | Optional[int] | `n` | Number of output sequences generated from the prompt. The top `n` sequences are returned from these `best_of` sequences. Must be ≥ `n`. Treated as beam width in beam search. Default is `n`. |
|
| 334 |
+
| `presence_penalty` | float | 0.0 | Penalizes new tokens based on their presence in the generated text so far. Values > 0 encourage new tokens, values < 0 encourage repetition. |
|
| 335 |
+
| `frequency_penalty` | float | 0.0 | Penalizes new tokens based on their frequency in the generated text so far. Values > 0 encourage new tokens, values < 0 encourage repetition. |
|
| 336 |
+
| `repetition_penalty` | float | 1.0 | Penalizes new tokens based on their appearance in the prompt and generated text. Values > 1 encourage new tokens, values < 1 encourage repetition. |
|
| 337 |
+
| `temperature` | float | 1.0 | Controls the randomness of sampling. Lower values make it more deterministic, higher values make it more random. Zero means greedy sampling. |
|
| 338 |
+
| `top_p` | float | 1.0 | Controls the cumulative probability of top tokens to consider. Must be in (0, 1]. Set to 1 to consider all tokens. |
|
| 339 |
+
| `top_k` | int | -1 | Controls the number of top tokens to consider. Set to -1 to consider all tokens. |
|
| 340 |
+
| `min_p` | float | 0.0 | Represents the minimum probability for a token to be considered, relative to the most likely token. Must be in [0, 1]. Set to 0 to disable. |
|
| 341 |
+
| `use_beam_search` | bool | False | Whether to use beam search instead of sampling. |
|
| 342 |
+
| `length_penalty` | float | 1.0 | Penalizes sequences based on their length. Used in beam search. |
|
| 343 |
+
| `early_stopping` | Union[bool, str] | False | Controls stopping condition in beam search. Can be `True`, `False`, or `"never"`. |
|
| 344 |
+
| `stop` | Union[None, str, List[str]] | None | List of strings that stop generation when produced. The output will not contain these strings. |
|
| 345 |
+
| `stop_token_ids` | Optional[List[int]] | None | List of token IDs that stop generation when produced. Output contains these tokens unless they are special tokens. |
|
| 346 |
+
| `ignore_eos` | bool | False | Whether to ignore the End-Of-Sequence token and continue generating tokens after its generation. |
|
| 347 |
+
| `max_tokens` | int | 16 | Maximum number of tokens to generate per output sequence. |
|
| 348 |
+
| `skip_special_tokens` | bool | True | Whether to skip special tokens in the output. |
|
| 349 |
+
| `spaces_between_special_tokens` | bool | True | Whether to add spaces between special tokens in the output. |
|
| 350 |
+
|
| 351 |
+
### Text Input Formats
|
| 352 |
+
|
| 353 |
+
You may either use a `prompt` or a list of `messages` as input.
|
| 354 |
+
|
| 355 |
+
1. `prompt`
|
| 356 |
+
The prompt string can be any string, and the model's chat template will not be applied to it unless `apply_chat_template` is set to `true`, in which case it will be treated as a user message.
|
| 357 |
+
|
| 358 |
+
Example:
|
| 359 |
+
```json
|
| 360 |
+
{
|
| 361 |
+
"input": {
|
| 362 |
+
"prompt": "why sky is blue?",
|
| 363 |
+
"sampling_params": {
|
| 364 |
+
"temperature": 0.7,
|
| 365 |
+
"max_tokens": 100
|
| 366 |
+
}
|
| 367 |
+
}
|
| 368 |
+
}
|
| 369 |
+
```
|
| 370 |
+
|
| 371 |
+
2. `messages`
|
| 372 |
+
Your list can contain any number of messages, and each message usually can have any role from the following list: - `user` - `assistant` - `system`
|
| 373 |
+
|
| 374 |
+
However, some models may have different roles, so you should check the model's chat template to see which roles are required.
|
| 375 |
+
|
| 376 |
+
The model's chat template will be applied to the messages automatically, so the model must have one.
|
| 377 |
+
|
| 378 |
+
Example:
|
| 379 |
+
|
| 380 |
+
```json
|
| 381 |
+
{
|
| 382 |
+
"input": {
|
| 383 |
+
"messages": [
|
| 384 |
+
{
|
| 385 |
+
"role": "system",
|
| 386 |
+
"content": "You are a helpful AI assistant that provides clear and concise responses."
|
| 387 |
+
},
|
| 388 |
+
{
|
| 389 |
+
"role": "user",
|
| 390 |
+
"content": "Can you explain the difference between supervised and unsupervised learning?"
|
| 391 |
+
},
|
| 392 |
+
{
|
| 393 |
+
"role": "assistant",
|
| 394 |
+
"content": "Sure! Supervised learning uses labeled data, meaning each input has a corresponding correct output. The model learns by mapping inputs to known outputs. In contrast, unsupervised learning works with unlabeled data, where the model identifies patterns, structures, or clusters without predefined answers."
|
| 395 |
+
}
|
| 396 |
+
],
|
| 397 |
+
"sampling_params": {
|
| 398 |
+
"temperature": 0.7,
|
| 399 |
+
"max_tokens": 100
|
| 400 |
+
}
|
| 401 |
+
}
|
| 402 |
+
}
|
| 403 |
+
```
|
| 404 |
+
|
| 405 |
+
</details>
|
docker-bake.hcl
ADDED
|
@@ -0,0 +1,26 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
variable "DOCKERHUB_REPO" {
|
| 2 |
+
default = "runpod"
|
| 3 |
+
}
|
| 4 |
+
|
| 5 |
+
variable "DOCKERHUB_IMG" {
|
| 6 |
+
default = "worker-v1-vllm"
|
| 7 |
+
}
|
| 8 |
+
|
| 9 |
+
variable "RELEASE_VERSION" {
|
| 10 |
+
default = "latest"
|
| 11 |
+
}
|
| 12 |
+
|
| 13 |
+
variable "HUGGINGFACE_ACCESS_TOKEN" {
|
| 14 |
+
default = ""
|
| 15 |
+
}
|
| 16 |
+
|
| 17 |
+
group "default" {
|
| 18 |
+
targets = ["worker-vllm"]
|
| 19 |
+
}
|
| 20 |
+
|
| 21 |
+
target "worker-vllm" {
|
| 22 |
+
tags = ["${DOCKERHUB_REPO}/${DOCKERHUB_IMG}:${RELEASE_VERSION}"]
|
| 23 |
+
context = "."
|
| 24 |
+
dockerfile = "Dockerfile"
|
| 25 |
+
platforms = ["linux/amd64"]
|
| 26 |
+
}
|
worker-config.json
ADDED
|
@@ -0,0 +1,1514 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"versions": {
|
| 3 |
+
"0.10.0": {
|
| 4 |
+
"imageName": "runpod/worker-v1-vllm:v2.8.0stable-cuda12.1.0",
|
| 5 |
+
"minimumCudaVersion": "12.1",
|
| 6 |
+
"categories": [
|
| 7 |
+
{
|
| 8 |
+
"title": "LLM Settings",
|
| 9 |
+
"settings": [
|
| 10 |
+
"TOKENIZER", "TOKENIZER_MODE", "SKIP_TOKENIZER_INIT", "TRUST_REMOTE_CODE",
|
| 11 |
+
"DOWNLOAD_DIR", "LOAD_FORMAT", "DTYPE", "KV_CACHE_DTYPE", "QUANTIZATION_PARAM_PATH",
|
| 12 |
+
"MAX_MODEL_LEN", "GUIDED_DECODING_BACKEND", "DISTRIBUTED_EXECUTOR_BACKEND",
|
| 13 |
+
"WORKER_USE_RAY", "RAY_WORKERS_USE_NSIGHT", "PIPELINE_PARALLEL_SIZE",
|
| 14 |
+
"TENSOR_PARALLEL_SIZE", "MAX_PARALLEL_LOADING_WORKERS", "ENABLE_PREFIX_CACHING",
|
| 15 |
+
"DISABLE_SLIDING_WINDOW", "NUM_LOOKAHEAD_SLOTS",
|
| 16 |
+
"SEED", "NUM_GPU_BLOCKS_OVERRIDE", "MAX_NUM_BATCHED_TOKENS", "MAX_NUM_SEQS",
|
| 17 |
+
"MAX_LOGPROBS", "DISABLE_LOG_STATS", "QUANTIZATION", "ROPE_SCALING", "ROPE_THETA",
|
| 18 |
+
"TOKENIZER_POOL_SIZE", "TOKENIZER_POOL_TYPE", "TOKENIZER_POOL_EXTRA_CONFIG",
|
| 19 |
+
"ENABLE_LORA", "MAX_LORAS", "MAX_LORA_RANK", "LORA_EXTRA_VOCAB_SIZE",
|
| 20 |
+
"LORA_DTYPE", "LONG_LORA_SCALING_FACTORS", "MAX_CPU_LORAS", "FULLY_SHARDED_LORAS",
|
| 21 |
+
"DEVICE", "SCHEDULER_DELAY_FACTOR", "ENABLE_CHUNKED_PREFILL", "SPECULATIVE_MODEL",
|
| 22 |
+
"NUM_SPECULATIVE_TOKENS", "SPECULATIVE_DRAFT_TENSOR_PARALLEL_SIZE",
|
| 23 |
+
"SPECULATIVE_MAX_MODEL_LEN", "SPECULATIVE_DISABLE_BY_BATCH_SIZE",
|
| 24 |
+
"NGRAM_PROMPT_LOOKUP_MAX", "NGRAM_PROMPT_LOOKUP_MIN", "SPEC_DECODING_ACCEPTANCE_METHOD",
|
| 25 |
+
"TYPICAL_ACCEPTANCE_SAMPLER_POSTERIOR_THRESHOLD", "TYPICAL_ACCEPTANCE_SAMPLER_POSTERIOR_ALPHA",
|
| 26 |
+
"MODEL_LOADER_EXTRA_CONFIG", "PREEMPTION_MODE", "PREEMPTION_CHECK_PERIOD",
|
| 27 |
+
"PREEMPTION_CPU_CAPACITY", "MAX_LOG_LEN", "DISABLE_LOGGING_REQUEST",
|
| 28 |
+
"ENABLE_AUTO_TOOL_CHOICE", "TOOL_CALL_PARSER"
|
| 29 |
+
]
|
| 30 |
+
},
|
| 31 |
+
{
|
| 32 |
+
"title": "Tokenizer Settings",
|
| 33 |
+
"settings": [
|
| 34 |
+
"TOKENIZER_NAME", "TOKENIZER_REVISION", "CUSTOM_CHAT_TEMPLATE"
|
| 35 |
+
]
|
| 36 |
+
},
|
| 37 |
+
{
|
| 38 |
+
"title": "System Settings",
|
| 39 |
+
"settings": [
|
| 40 |
+
"GPU_MEMORY_UTILIZATION", "MAX_PARALLEL_LOADING_WORKERS", "BLOCK_SIZE",
|
| 41 |
+
"SWAP_SPACE", "ENFORCE_EAGER", "MAX_SEQ_LEN_TO_CAPTURE", "DISABLE_CUSTOM_ALL_REDUCE"
|
| 42 |
+
]
|
| 43 |
+
},
|
| 44 |
+
{
|
| 45 |
+
"title": "Streaming Settings",
|
| 46 |
+
"settings": [
|
| 47 |
+
"DEFAULT_BATCH_SIZE", "DEFAULT_MIN_BATCH_SIZE", "DEFAULT_BATCH_SIZE_GROWTH_FACTOR"
|
| 48 |
+
]
|
| 49 |
+
},
|
| 50 |
+
{
|
| 51 |
+
"title": "OpenAI Settings",
|
| 52 |
+
"settings": [
|
| 53 |
+
"RAW_OPENAI_OUTPUT", "OPENAI_RESPONSE_ROLE", "OPENAI_SERVED_MODEL_NAME_OVERRIDE"
|
| 54 |
+
]
|
| 55 |
+
},
|
| 56 |
+
{
|
| 57 |
+
"title": "Serverless Settings",
|
| 58 |
+
"settings": [
|
| 59 |
+
"MAX_CONCURRENCY", "DISABLE_LOG_STATS", "DISABLE_LOG_REQUESTS"
|
| 60 |
+
]
|
| 61 |
+
}
|
| 62 |
+
]
|
| 63 |
+
},
|
| 64 |
+
"0.9.0": {
|
| 65 |
+
"imageName": "runpod/worker-v1-vllm:v2.6.0stable-cuda12.1.0",
|
| 66 |
+
"minimumCudaVersion": "12.1",
|
| 67 |
+
"categories": [
|
| 68 |
+
{
|
| 69 |
+
"title": "LLM Settings",
|
| 70 |
+
"settings": [
|
| 71 |
+
"TOKENIZER", "TOKENIZER_MODE", "SKIP_TOKENIZER_INIT", "TRUST_REMOTE_CODE",
|
| 72 |
+
"DOWNLOAD_DIR", "LOAD_FORMAT", "DTYPE", "KV_CACHE_DTYPE", "QUANTIZATION_PARAM_PATH",
|
| 73 |
+
"MAX_MODEL_LEN", "GUIDED_DECODING_BACKEND", "DISTRIBUTED_EXECUTOR_BACKEND",
|
| 74 |
+
"WORKER_USE_RAY", "RAY_WORKERS_USE_NSIGHT", "PIPELINE_PARALLEL_SIZE",
|
| 75 |
+
"TENSOR_PARALLEL_SIZE", "MAX_PARALLEL_LOADING_WORKERS", "ENABLE_PREFIX_CACHING",
|
| 76 |
+
"DISABLE_SLIDING_WINDOW", "NUM_LOOKAHEAD_SLOTS",
|
| 77 |
+
"SEED", "NUM_GPU_BLOCKS_OVERRIDE", "MAX_NUM_BATCHED_TOKENS", "MAX_NUM_SEQS",
|
| 78 |
+
"MAX_LOGPROBS", "DISABLE_LOG_STATS", "QUANTIZATION", "ROPE_SCALING", "ROPE_THETA",
|
| 79 |
+
"TOKENIZER_POOL_SIZE", "TOKENIZER_POOL_TYPE", "TOKENIZER_POOL_EXTRA_CONFIG",
|
| 80 |
+
"ENABLE_LORA", "MAX_LORAS", "MAX_LORA_RANK", "LORA_EXTRA_VOCAB_SIZE",
|
| 81 |
+
"LORA_DTYPE", "LONG_LORA_SCALING_FACTORS", "MAX_CPU_LORAS", "FULLY_SHARDED_LORAS",
|
| 82 |
+
"DEVICE", "SCHEDULER_DELAY_FACTOR", "ENABLE_CHUNKED_PREFILL", "SPECULATIVE_MODEL",
|
| 83 |
+
"NUM_SPECULATIVE_TOKENS", "SPECULATIVE_DRAFT_TENSOR_PARALLEL_SIZE",
|
| 84 |
+
"SPECULATIVE_MAX_MODEL_LEN", "SPECULATIVE_DISABLE_BY_BATCH_SIZE",
|
| 85 |
+
"NGRAM_PROMPT_LOOKUP_MAX", "NGRAM_PROMPT_LOOKUP_MIN", "SPEC_DECODING_ACCEPTANCE_METHOD",
|
| 86 |
+
"TYPICAL_ACCEPTANCE_SAMPLER_POSTERIOR_THRESHOLD", "TYPICAL_ACCEPTANCE_SAMPLER_POSTERIOR_ALPHA",
|
| 87 |
+
"MODEL_LOADER_EXTRA_CONFIG", "PREEMPTION_MODE", "PREEMPTION_CHECK_PERIOD",
|
| 88 |
+
"PREEMPTION_CPU_CAPACITY", "MAX_LOG_LEN", "DISABLE_LOGGING_REQUEST",
|
| 89 |
+
"ENABLE_AUTO_TOOL_CHOICE", "TOOL_CALL_PARSER"
|
| 90 |
+
]
|
| 91 |
+
},
|
| 92 |
+
{
|
| 93 |
+
"title": "Tokenizer Settings",
|
| 94 |
+
"settings": [
|
| 95 |
+
"TOKENIZER_NAME", "TOKENIZER_REVISION", "CUSTOM_CHAT_TEMPLATE"
|
| 96 |
+
]
|
| 97 |
+
},
|
| 98 |
+
{
|
| 99 |
+
"title": "System Settings",
|
| 100 |
+
"settings": [
|
| 101 |
+
"GPU_MEMORY_UTILIZATION", "MAX_PARALLEL_LOADING_WORKERS", "BLOCK_SIZE",
|
| 102 |
+
"SWAP_SPACE", "ENFORCE_EAGER", "MAX_SEQ_LEN_TO_CAPTURE", "DISABLE_CUSTOM_ALL_REDUCE"
|
| 103 |
+
]
|
| 104 |
+
},
|
| 105 |
+
{
|
| 106 |
+
"title": "Streaming Settings",
|
| 107 |
+
"settings": [
|
| 108 |
+
"DEFAULT_BATCH_SIZE", "DEFAULT_MIN_BATCH_SIZE", "DEFAULT_BATCH_SIZE_GROWTH_FACTOR"
|
| 109 |
+
]
|
| 110 |
+
},
|
| 111 |
+
{
|
| 112 |
+
"title": "OpenAI Settings",
|
| 113 |
+
"settings": [
|
| 114 |
+
"RAW_OPENAI_OUTPUT", "OPENAI_RESPONSE_ROLE", "OPENAI_SERVED_MODEL_NAME_OVERRIDE"
|
| 115 |
+
]
|
| 116 |
+
},
|
| 117 |
+
{
|
| 118 |
+
"title": "Serverless Settings",
|
| 119 |
+
"settings": [
|
| 120 |
+
"MAX_CONCURRENCY", "DISABLE_LOG_STATS", "DISABLE_LOG_REQUESTS"
|
| 121 |
+
]
|
| 122 |
+
}
|
| 123 |
+
]
|
| 124 |
+
},
|
| 125 |
+
"0.9.1": {
|
| 126 |
+
"imageName": "runpod/worker-v1-vllm:v2.7.0stable-cuda12.1.0",
|
| 127 |
+
"minimumCudaVersion": "12.1",
|
| 128 |
+
"categories": [
|
| 129 |
+
{
|
| 130 |
+
"title": "LLM Settings",
|
| 131 |
+
"settings": [
|
| 132 |
+
"TOKENIZER", "TOKENIZER_MODE", "SKIP_TOKENIZER_INIT", "TRUST_REMOTE_CODE",
|
| 133 |
+
"DOWNLOAD_DIR", "LOAD_FORMAT", "DTYPE", "KV_CACHE_DTYPE", "QUANTIZATION_PARAM_PATH",
|
| 134 |
+
"MAX_MODEL_LEN", "GUIDED_DECODING_BACKEND", "DISTRIBUTED_EXECUTOR_BACKEND",
|
| 135 |
+
"WORKER_USE_RAY", "RAY_WORKERS_USE_NSIGHT", "PIPELINE_PARALLEL_SIZE",
|
| 136 |
+
"TENSOR_PARALLEL_SIZE", "MAX_PARALLEL_LOADING_WORKERS", "ENABLE_PREFIX_CACHING",
|
| 137 |
+
"DISABLE_SLIDING_WINDOW", "NUM_LOOKAHEAD_SLOTS",
|
| 138 |
+
"SEED", "NUM_GPU_BLOCKS_OVERRIDE", "MAX_NUM_BATCHED_TOKENS", "MAX_NUM_SEQS",
|
| 139 |
+
"MAX_LOGPROBS", "DISABLE_LOG_STATS", "QUANTIZATION", "ROPE_SCALING", "ROPE_THETA",
|
| 140 |
+
"TOKENIZER_POOL_SIZE", "TOKENIZER_POOL_TYPE", "TOKENIZER_POOL_EXTRA_CONFIG",
|
| 141 |
+
"ENABLE_LORA", "MAX_LORAS", "MAX_LORA_RANK", "LORA_EXTRA_VOCAB_SIZE",
|
| 142 |
+
"LORA_DTYPE", "LONG_LORA_SCALING_FACTORS", "MAX_CPU_LORAS", "FULLY_SHARDED_LORAS",
|
| 143 |
+
"DEVICE", "SCHEDULER_DELAY_FACTOR", "ENABLE_CHUNKED_PREFILL", "SPECULATIVE_MODEL",
|
| 144 |
+
"NUM_SPECULATIVE_TOKENS", "SPECULATIVE_DRAFT_TENSOR_PARALLEL_SIZE",
|
| 145 |
+
"SPECULATIVE_MAX_MODEL_LEN", "SPECULATIVE_DISABLE_BY_BATCH_SIZE",
|
| 146 |
+
"NGRAM_PROMPT_LOOKUP_MAX", "NGRAM_PROMPT_LOOKUP_MIN", "SPEC_DECODING_ACCEPTANCE_METHOD",
|
| 147 |
+
"TYPICAL_ACCEPTANCE_SAMPLER_POSTERIOR_THRESHOLD", "TYPICAL_ACCEPTANCE_SAMPLER_POSTERIOR_ALPHA",
|
| 148 |
+
"MODEL_LOADER_EXTRA_CONFIG", "PREEMPTION_MODE", "PREEMPTION_CHECK_PERIOD",
|
| 149 |
+
"PREEMPTION_CPU_CAPACITY", "MAX_LOG_LEN", "DISABLE_LOGGING_REQUEST",
|
| 150 |
+
"ENABLE_AUTO_TOOL_CHOICE", "TOOL_CALL_PARSER"
|
| 151 |
+
]
|
| 152 |
+
},
|
| 153 |
+
{
|
| 154 |
+
"title": "Tokenizer Settings",
|
| 155 |
+
"settings": [
|
| 156 |
+
"TOKENIZER_NAME", "TOKENIZER_REVISION", "CUSTOM_CHAT_TEMPLATE"
|
| 157 |
+
]
|
| 158 |
+
},
|
| 159 |
+
{
|
| 160 |
+
"title": "System Settings",
|
| 161 |
+
"settings": [
|
| 162 |
+
"GPU_MEMORY_UTILIZATION", "MAX_PARALLEL_LOADING_WORKERS", "BLOCK_SIZE",
|
| 163 |
+
"SWAP_SPACE", "ENFORCE_EAGER", "MAX_SEQ_LEN_TO_CAPTURE", "DISABLE_CUSTOM_ALL_REDUCE"
|
| 164 |
+
]
|
| 165 |
+
},
|
| 166 |
+
{
|
| 167 |
+
"title": "Streaming Settings",
|
| 168 |
+
"settings": [
|
| 169 |
+
"DEFAULT_BATCH_SIZE", "DEFAULT_MIN_BATCH_SIZE", "DEFAULT_BATCH_SIZE_GROWTH_FACTOR"
|
| 170 |
+
]
|
| 171 |
+
},
|
| 172 |
+
{
|
| 173 |
+
"title": "OpenAI Settings",
|
| 174 |
+
"settings": [
|
| 175 |
+
"RAW_OPENAI_OUTPUT", "OPENAI_RESPONSE_ROLE", "OPENAI_SERVED_MODEL_NAME_OVERRIDE"
|
| 176 |
+
]
|
| 177 |
+
},
|
| 178 |
+
{
|
| 179 |
+
"title": "Serverless Settings",
|
| 180 |
+
"settings": [
|
| 181 |
+
"MAX_CONCURRENCY", "DISABLE_LOG_STATS", "DISABLE_LOG_REQUESTS"
|
| 182 |
+
]
|
| 183 |
+
}
|
| 184 |
+
]
|
| 185 |
+
},
|
| 186 |
+
"0.9.0": {
|
| 187 |
+
"imageName": "runpod/worker-v1-vllm:v2.6.0stable-cuda12.1.0",
|
| 188 |
+
"minimumCudaVersion": "12.1",
|
| 189 |
+
"categories": [
|
| 190 |
+
{
|
| 191 |
+
"title": "LLM Settings",
|
| 192 |
+
"settings": [
|
| 193 |
+
"TOKENIZER", "TOKENIZER_MODE", "SKIP_TOKENIZER_INIT", "TRUST_REMOTE_CODE",
|
| 194 |
+
"DOWNLOAD_DIR", "LOAD_FORMAT", "DTYPE", "KV_CACHE_DTYPE", "QUANTIZATION_PARAM_PATH",
|
| 195 |
+
"MAX_MODEL_LEN", "GUIDED_DECODING_BACKEND", "DISTRIBUTED_EXECUTOR_BACKEND",
|
| 196 |
+
"WORKER_USE_RAY", "RAY_WORKERS_USE_NSIGHT", "PIPELINE_PARALLEL_SIZE",
|
| 197 |
+
"TENSOR_PARALLEL_SIZE", "MAX_PARALLEL_LOADING_WORKERS", "ENABLE_PREFIX_CACHING",
|
| 198 |
+
"DISABLE_SLIDING_WINDOW", "NUM_LOOKAHEAD_SLOTS",
|
| 199 |
+
"SEED", "NUM_GPU_BLOCKS_OVERRIDE", "MAX_NUM_BATCHED_TOKENS", "MAX_NUM_SEQS",
|
| 200 |
+
"MAX_LOGPROBS", "DISABLE_LOG_STATS", "QUANTIZATION", "ROPE_SCALING", "ROPE_THETA",
|
| 201 |
+
"TOKENIZER_POOL_SIZE", "TOKENIZER_POOL_TYPE", "TOKENIZER_POOL_EXTRA_CONFIG",
|
| 202 |
+
"ENABLE_LORA", "MAX_LORAS", "MAX_LORA_RANK", "LORA_EXTRA_VOCAB_SIZE",
|
| 203 |
+
"LORA_DTYPE", "LONG_LORA_SCALING_FACTORS", "MAX_CPU_LORAS", "FULLY_SHARDED_LORAS",
|
| 204 |
+
"DEVICE", "SCHEDULER_DELAY_FACTOR", "ENABLE_CHUNKED_PREFILL", "SPECULATIVE_MODEL",
|
| 205 |
+
"NUM_SPECULATIVE_TOKENS", "SPECULATIVE_DRAFT_TENSOR_PARALLEL_SIZE",
|
| 206 |
+
"SPECULATIVE_MAX_MODEL_LEN", "SPECULATIVE_DISABLE_BY_BATCH_SIZE",
|
| 207 |
+
"NGRAM_PROMPT_LOOKUP_MAX", "NGRAM_PROMPT_LOOKUP_MIN", "SPEC_DECODING_ACCEPTANCE_METHOD",
|
| 208 |
+
"TYPICAL_ACCEPTANCE_SAMPLER_POSTERIOR_THRESHOLD", "TYPICAL_ACCEPTANCE_SAMPLER_POSTERIOR_ALPHA",
|
| 209 |
+
"MODEL_LOADER_EXTRA_CONFIG", "PREEMPTION_MODE", "PREEMPTION_CHECK_PERIOD",
|
| 210 |
+
"PREEMPTION_CPU_CAPACITY", "MAX_LOG_LEN", "DISABLE_LOGGING_REQUEST",
|
| 211 |
+
"ENABLE_AUTO_TOOL_CHOICE", "TOOL_CALL_PARSER"
|
| 212 |
+
]
|
| 213 |
+
},
|
| 214 |
+
{
|
| 215 |
+
"title": "Tokenizer Settings",
|
| 216 |
+
"settings": [
|
| 217 |
+
"TOKENIZER_NAME", "TOKENIZER_REVISION", "CUSTOM_CHAT_TEMPLATE"
|
| 218 |
+
]
|
| 219 |
+
},
|
| 220 |
+
{
|
| 221 |
+
"title": "System Settings",
|
| 222 |
+
"settings": [
|
| 223 |
+
"GPU_MEMORY_UTILIZATION", "MAX_PARALLEL_LOADING_WORKERS", "BLOCK_SIZE",
|
| 224 |
+
"SWAP_SPACE", "ENFORCE_EAGER", "MAX_SEQ_LEN_TO_CAPTURE", "DISABLE_CUSTOM_ALL_REDUCE"
|
| 225 |
+
]
|
| 226 |
+
},
|
| 227 |
+
{
|
| 228 |
+
"title": "Streaming Settings",
|
| 229 |
+
"settings": [
|
| 230 |
+
"DEFAULT_BATCH_SIZE", "DEFAULT_MIN_BATCH_SIZE", "DEFAULT_BATCH_SIZE_GROWTH_FACTOR"
|
| 231 |
+
]
|
| 232 |
+
},
|
| 233 |
+
{
|
| 234 |
+
"title": "OpenAI Settings",
|
| 235 |
+
"settings": [
|
| 236 |
+
"RAW_OPENAI_OUTPUT", "OPENAI_RESPONSE_ROLE", "OPENAI_SERVED_MODEL_NAME_OVERRIDE"
|
| 237 |
+
]
|
| 238 |
+
},
|
| 239 |
+
{
|
| 240 |
+
"title": "Serverless Settings",
|
| 241 |
+
"settings": [
|
| 242 |
+
"MAX_CONCURRENCY", "DISABLE_LOG_STATS", "DISABLE_LOG_REQUESTS"
|
| 243 |
+
]
|
| 244 |
+
}
|
| 245 |
+
]
|
| 246 |
+
},
|
| 247 |
+
"0.8.5": {
|
| 248 |
+
"imageName": "runpod/worker-v1-vllm:v2.5.0stable-cuda12.1.0",
|
| 249 |
+
"minimumCudaVersion": "12.1",
|
| 250 |
+
"categories": [
|
| 251 |
+
{
|
| 252 |
+
"title": "LLM Settings",
|
| 253 |
+
"settings": [
|
| 254 |
+
"TOKENIZER", "TOKENIZER_MODE", "SKIP_TOKENIZER_INIT", "TRUST_REMOTE_CODE",
|
| 255 |
+
"DOWNLOAD_DIR", "LOAD_FORMAT", "DTYPE", "KV_CACHE_DTYPE", "QUANTIZATION_PARAM_PATH",
|
| 256 |
+
"MAX_MODEL_LEN", "GUIDED_DECODING_BACKEND", "DISTRIBUTED_EXECUTOR_BACKEND",
|
| 257 |
+
"WORKER_USE_RAY", "RAY_WORKERS_USE_NSIGHT", "PIPELINE_PARALLEL_SIZE",
|
| 258 |
+
"TENSOR_PARALLEL_SIZE", "MAX_PARALLEL_LOADING_WORKERS", "ENABLE_PREFIX_CACHING",
|
| 259 |
+
"DISABLE_SLIDING_WINDOW", "NUM_LOOKAHEAD_SLOTS",
|
| 260 |
+
"SEED", "NUM_GPU_BLOCKS_OVERRIDE", "MAX_NUM_BATCHED_TOKENS", "MAX_NUM_SEQS",
|
| 261 |
+
"MAX_LOGPROBS", "DISABLE_LOG_STATS", "QUANTIZATION", "ROPE_SCALING", "ROPE_THETA",
|
| 262 |
+
"TOKENIZER_POOL_SIZE", "TOKENIZER_POOL_TYPE", "TOKENIZER_POOL_EXTRA_CONFIG",
|
| 263 |
+
"ENABLE_LORA", "MAX_LORAS", "MAX_LORA_RANK", "LORA_EXTRA_VOCAB_SIZE",
|
| 264 |
+
"LORA_DTYPE", "LONG_LORA_SCALING_FACTORS", "MAX_CPU_LORAS", "FULLY_SHARDED_LORAS",
|
| 265 |
+
"DEVICE", "SCHEDULER_DELAY_FACTOR", "ENABLE_CHUNKED_PREFILL", "SPECULATIVE_MODEL",
|
| 266 |
+
"NUM_SPECULATIVE_TOKENS", "SPECULATIVE_DRAFT_TENSOR_PARALLEL_SIZE",
|
| 267 |
+
"SPECULATIVE_MAX_MODEL_LEN", "SPECULATIVE_DISABLE_BY_BATCH_SIZE",
|
| 268 |
+
"NGRAM_PROMPT_LOOKUP_MAX", "NGRAM_PROMPT_LOOKUP_MIN", "SPEC_DECODING_ACCEPTANCE_METHOD",
|
| 269 |
+
"TYPICAL_ACCEPTANCE_SAMPLER_POSTERIOR_THRESHOLD", "TYPICAL_ACCEPTANCE_SAMPLER_POSTERIOR_ALPHA",
|
| 270 |
+
"MODEL_LOADER_EXTRA_CONFIG", "PREEMPTION_MODE", "PREEMPTION_CHECK_PERIOD",
|
| 271 |
+
"PREEMPTION_CPU_CAPACITY", "MAX_LOG_LEN", "DISABLE_LOGGING_REQUEST",
|
| 272 |
+
"ENABLE_AUTO_TOOL_CHOICE", "TOOL_CALL_PARSER"
|
| 273 |
+
]
|
| 274 |
+
},
|
| 275 |
+
{
|
| 276 |
+
"title": "Tokenizer Settings",
|
| 277 |
+
"settings": [
|
| 278 |
+
"TOKENIZER_NAME", "TOKENIZER_REVISION", "CUSTOM_CHAT_TEMPLATE"
|
| 279 |
+
]
|
| 280 |
+
},
|
| 281 |
+
{
|
| 282 |
+
"title": "System Settings",
|
| 283 |
+
"settings": [
|
| 284 |
+
"GPU_MEMORY_UTILIZATION", "MAX_PARALLEL_LOADING_WORKERS", "BLOCK_SIZE",
|
| 285 |
+
"SWAP_SPACE", "ENFORCE_EAGER", "MAX_SEQ_LEN_TO_CAPTURE", "DISABLE_CUSTOM_ALL_REDUCE"
|
| 286 |
+
]
|
| 287 |
+
},
|
| 288 |
+
{
|
| 289 |
+
"title": "Streaming Settings",
|
| 290 |
+
"settings": [
|
| 291 |
+
"DEFAULT_BATCH_SIZE", "DEFAULT_MIN_BATCH_SIZE", "DEFAULT_BATCH_SIZE_GROWTH_FACTOR"
|
| 292 |
+
]
|
| 293 |
+
},
|
| 294 |
+
{
|
| 295 |
+
"title": "OpenAI Settings",
|
| 296 |
+
"settings": [
|
| 297 |
+
"RAW_OPENAI_OUTPUT", "OPENAI_RESPONSE_ROLE", "OPENAI_SERVED_MODEL_NAME_OVERRIDE"
|
| 298 |
+
]
|
| 299 |
+
},
|
| 300 |
+
{
|
| 301 |
+
"title": "Serverless Settings",
|
| 302 |
+
"settings": [
|
| 303 |
+
"MAX_CONCURRENCY", "DISABLE_LOG_STATS", "DISABLE_LOG_REQUESTS"
|
| 304 |
+
]
|
| 305 |
+
}
|
| 306 |
+
]
|
| 307 |
+
},
|
| 308 |
+
"0.8.4": {
|
| 309 |
+
"imageName": "runpod/worker-v1-vllm:v2.4.0stable-cuda12.1.0",
|
| 310 |
+
"minimumCudaVersion": "12.1",
|
| 311 |
+
"categories": [
|
| 312 |
+
{
|
| 313 |
+
"title": "LLM Settings",
|
| 314 |
+
"settings": [
|
| 315 |
+
"TOKENIZER", "TOKENIZER_MODE", "SKIP_TOKENIZER_INIT", "TRUST_REMOTE_CODE",
|
| 316 |
+
"DOWNLOAD_DIR", "LOAD_FORMAT", "DTYPE", "KV_CACHE_DTYPE", "QUANTIZATION_PARAM_PATH",
|
| 317 |
+
"MAX_MODEL_LEN", "GUIDED_DECODING_BACKEND", "DISTRIBUTED_EXECUTOR_BACKEND",
|
| 318 |
+
"WORKER_USE_RAY", "RAY_WORKERS_USE_NSIGHT", "PIPELINE_PARALLEL_SIZE",
|
| 319 |
+
"TENSOR_PARALLEL_SIZE", "MAX_PARALLEL_LOADING_WORKERS", "ENABLE_PREFIX_CACHING",
|
| 320 |
+
"DISABLE_SLIDING_WINDOW", "NUM_LOOKAHEAD_SLOTS",
|
| 321 |
+
"SEED", "NUM_GPU_BLOCKS_OVERRIDE", "MAX_NUM_BATCHED_TOKENS", "MAX_NUM_SEQS",
|
| 322 |
+
"MAX_LOGPROBS", "DISABLE_LOG_STATS", "QUANTIZATION", "ROPE_SCALING", "ROPE_THETA",
|
| 323 |
+
"TOKENIZER_POOL_SIZE", "TOKENIZER_POOL_TYPE", "TOKENIZER_POOL_EXTRA_CONFIG",
|
| 324 |
+
"ENABLE_LORA", "MAX_LORAS", "MAX_LORA_RANK", "LORA_EXTRA_VOCAB_SIZE",
|
| 325 |
+
"LORA_DTYPE", "LONG_LORA_SCALING_FACTORS", "MAX_CPU_LORAS", "FULLY_SHARDED_LORAS",
|
| 326 |
+
"DEVICE", "SCHEDULER_DELAY_FACTOR", "ENABLE_CHUNKED_PREFILL", "SPECULATIVE_MODEL",
|
| 327 |
+
"NUM_SPECULATIVE_TOKENS", "SPECULATIVE_DRAFT_TENSOR_PARALLEL_SIZE",
|
| 328 |
+
"SPECULATIVE_MAX_MODEL_LEN", "SPECULATIVE_DISABLE_BY_BATCH_SIZE",
|
| 329 |
+
"NGRAM_PROMPT_LOOKUP_MAX", "NGRAM_PROMPT_LOOKUP_MIN", "SPEC_DECODING_ACCEPTANCE_METHOD",
|
| 330 |
+
"TYPICAL_ACCEPTANCE_SAMPLER_POSTERIOR_THRESHOLD", "TYPICAL_ACCEPTANCE_SAMPLER_POSTERIOR_ALPHA",
|
| 331 |
+
"MODEL_LOADER_EXTRA_CONFIG", "PREEMPTION_MODE", "PREEMPTION_CHECK_PERIOD",
|
| 332 |
+
"PREEMPTION_CPU_CAPACITY", "MAX_LOG_LEN", "DISABLE_LOGGING_REQUEST",
|
| 333 |
+
"ENABLE_AUTO_TOOL_CHOICE", "TOOL_CALL_PARSER"
|
| 334 |
+
]
|
| 335 |
+
},
|
| 336 |
+
{
|
| 337 |
+
"title": "Tokenizer Settings",
|
| 338 |
+
"settings": [
|
| 339 |
+
"TOKENIZER_NAME", "TOKENIZER_REVISION", "CUSTOM_CHAT_TEMPLATE"
|
| 340 |
+
]
|
| 341 |
+
},
|
| 342 |
+
{
|
| 343 |
+
"title": "System Settings",
|
| 344 |
+
"settings": [
|
| 345 |
+
"GPU_MEMORY_UTILIZATION", "MAX_PARALLEL_LOADING_WORKERS", "BLOCK_SIZE",
|
| 346 |
+
"SWAP_SPACE", "ENFORCE_EAGER", "MAX_SEQ_LEN_TO_CAPTURE", "DISABLE_CUSTOM_ALL_REDUCE"
|
| 347 |
+
]
|
| 348 |
+
},
|
| 349 |
+
{
|
| 350 |
+
"title": "Streaming Settings",
|
| 351 |
+
"settings": [
|
| 352 |
+
"DEFAULT_BATCH_SIZE", "DEFAULT_MIN_BATCH_SIZE", "DEFAULT_BATCH_SIZE_GROWTH_FACTOR"
|
| 353 |
+
]
|
| 354 |
+
},
|
| 355 |
+
{
|
| 356 |
+
"title": "OpenAI Settings",
|
| 357 |
+
"settings": [
|
| 358 |
+
"RAW_OPENAI_OUTPUT", "OPENAI_RESPONSE_ROLE", "OPENAI_SERVED_MODEL_NAME_OVERRIDE"
|
| 359 |
+
]
|
| 360 |
+
},
|
| 361 |
+
{
|
| 362 |
+
"title": "Serverless Settings",
|
| 363 |
+
"settings": [
|
| 364 |
+
"MAX_CONCURRENCY", "DISABLE_LOG_STATS", "DISABLE_LOG_REQUESTS"
|
| 365 |
+
]
|
| 366 |
+
}
|
| 367 |
+
]
|
| 368 |
+
},
|
| 369 |
+
"0.8.3": {
|
| 370 |
+
"imageName": "runpod/worker-v1-vllm:v2.3.0stable-cuda12.1.0",
|
| 371 |
+
"minimumCudaVersion": "12.1",
|
| 372 |
+
"categories": [
|
| 373 |
+
{
|
| 374 |
+
"title": "LLM Settings",
|
| 375 |
+
"settings": [
|
| 376 |
+
"TOKENIZER", "TOKENIZER_MODE", "SKIP_TOKENIZER_INIT", "TRUST_REMOTE_CODE",
|
| 377 |
+
"DOWNLOAD_DIR", "LOAD_FORMAT", "DTYPE", "KV_CACHE_DTYPE", "QUANTIZATION_PARAM_PATH",
|
| 378 |
+
"MAX_MODEL_LEN", "GUIDED_DECODING_BACKEND", "DISTRIBUTED_EXECUTOR_BACKEND",
|
| 379 |
+
"WORKER_USE_RAY", "RAY_WORKERS_USE_NSIGHT", "PIPELINE_PARALLEL_SIZE",
|
| 380 |
+
"TENSOR_PARALLEL_SIZE", "MAX_PARALLEL_LOADING_WORKERS", "ENABLE_PREFIX_CACHING",
|
| 381 |
+
"DISABLE_SLIDING_WINDOW", "NUM_LOOKAHEAD_SLOTS",
|
| 382 |
+
"SEED", "NUM_GPU_BLOCKS_OVERRIDE", "MAX_NUM_BATCHED_TOKENS", "MAX_NUM_SEQS",
|
| 383 |
+
"MAX_LOGPROBS", "DISABLE_LOG_STATS", "QUANTIZATION", "ROPE_SCALING", "ROPE_THETA",
|
| 384 |
+
"TOKENIZER_POOL_SIZE", "TOKENIZER_POOL_TYPE", "TOKENIZER_POOL_EXTRA_CONFIG",
|
| 385 |
+
"ENABLE_LORA", "MAX_LORAS", "MAX_LORA_RANK", "LORA_EXTRA_VOCAB_SIZE",
|
| 386 |
+
"LORA_DTYPE", "LONG_LORA_SCALING_FACTORS", "MAX_CPU_LORAS", "FULLY_SHARDED_LORAS",
|
| 387 |
+
"DEVICE", "SCHEDULER_DELAY_FACTOR", "ENABLE_CHUNKED_PREFILL", "SPECULATIVE_MODEL",
|
| 388 |
+
"NUM_SPECULATIVE_TOKENS", "SPECULATIVE_DRAFT_TENSOR_PARALLEL_SIZE",
|
| 389 |
+
"SPECULATIVE_MAX_MODEL_LEN", "SPECULATIVE_DISABLE_BY_BATCH_SIZE",
|
| 390 |
+
"NGRAM_PROMPT_LOOKUP_MAX", "NGRAM_PROMPT_LOOKUP_MIN", "SPEC_DECODING_ACCEPTANCE_METHOD",
|
| 391 |
+
"TYPICAL_ACCEPTANCE_SAMPLER_POSTERIOR_THRESHOLD", "TYPICAL_ACCEPTANCE_SAMPLER_POSTERIOR_ALPHA",
|
| 392 |
+
"MODEL_LOADER_EXTRA_CONFIG", "PREEMPTION_MODE", "PREEMPTION_CHECK_PERIOD",
|
| 393 |
+
"PREEMPTION_CPU_CAPACITY", "MAX_LOG_LEN", "DISABLE_LOGGING_REQUEST",
|
| 394 |
+
"ENABLE_AUTO_TOOL_CHOICE", "TOOL_CALL_PARSER"
|
| 395 |
+
]
|
| 396 |
+
},
|
| 397 |
+
{
|
| 398 |
+
"title": "Tokenizer Settings",
|
| 399 |
+
"settings": [
|
| 400 |
+
"TOKENIZER_NAME", "TOKENIZER_REVISION", "CUSTOM_CHAT_TEMPLATE"
|
| 401 |
+
]
|
| 402 |
+
},
|
| 403 |
+
{
|
| 404 |
+
"title": "System Settings",
|
| 405 |
+
"settings": [
|
| 406 |
+
"GPU_MEMORY_UTILIZATION", "MAX_PARALLEL_LOADING_WORKERS", "BLOCK_SIZE",
|
| 407 |
+
"SWAP_SPACE", "ENFORCE_EAGER", "MAX_SEQ_LEN_TO_CAPTURE", "DISABLE_CUSTOM_ALL_REDUCE"
|
| 408 |
+
]
|
| 409 |
+
},
|
| 410 |
+
{
|
| 411 |
+
"title": "Streaming Settings",
|
| 412 |
+
"settings": [
|
| 413 |
+
"DEFAULT_BATCH_SIZE", "DEFAULT_MIN_BATCH_SIZE", "DEFAULT_BATCH_SIZE_GROWTH_FACTOR"
|
| 414 |
+
]
|
| 415 |
+
},
|
| 416 |
+
{
|
| 417 |
+
"title": "OpenAI Settings",
|
| 418 |
+
"settings": [
|
| 419 |
+
"RAW_OPENAI_OUTPUT", "OPENAI_RESPONSE_ROLE", "OPENAI_SERVED_MODEL_NAME_OVERRIDE"
|
| 420 |
+
]
|
| 421 |
+
},
|
| 422 |
+
{
|
| 423 |
+
"title": "Serverless Settings",
|
| 424 |
+
"settings": [
|
| 425 |
+
"MAX_CONCURRENCY", "DISABLE_LOG_STATS", "DISABLE_LOG_REQUESTS"
|
| 426 |
+
]
|
| 427 |
+
}
|
| 428 |
+
]
|
| 429 |
+
},
|
| 430 |
+
"0.8.2": {
|
| 431 |
+
"imageName": "runpod/worker-v1-vllm:v2.2.0stable-cuda12.1.0",
|
| 432 |
+
"minimumCudaVersion": "12.1",
|
| 433 |
+
"categories": [
|
| 434 |
+
{
|
| 435 |
+
"title": "LLM Settings",
|
| 436 |
+
"settings": [
|
| 437 |
+
"TOKENIZER", "TOKENIZER_MODE", "SKIP_TOKENIZER_INIT", "TRUST_REMOTE_CODE",
|
| 438 |
+
"DOWNLOAD_DIR", "LOAD_FORMAT", "DTYPE", "KV_CACHE_DTYPE", "QUANTIZATION_PARAM_PATH",
|
| 439 |
+
"MAX_MODEL_LEN", "GUIDED_DECODING_BACKEND", "DISTRIBUTED_EXECUTOR_BACKEND",
|
| 440 |
+
"WORKER_USE_RAY", "RAY_WORKERS_USE_NSIGHT", "PIPELINE_PARALLEL_SIZE",
|
| 441 |
+
"TENSOR_PARALLEL_SIZE", "MAX_PARALLEL_LOADING_WORKERS", "ENABLE_PREFIX_CACHING",
|
| 442 |
+
"DISABLE_SLIDING_WINDOW", "NUM_LOOKAHEAD_SLOTS",
|
| 443 |
+
"SEED", "NUM_GPU_BLOCKS_OVERRIDE", "MAX_NUM_BATCHED_TOKENS", "MAX_NUM_SEQS",
|
| 444 |
+
"MAX_LOGPROBS", "DISABLE_LOG_STATS", "QUANTIZATION", "ROPE_SCALING", "ROPE_THETA",
|
| 445 |
+
"TOKENIZER_POOL_SIZE", "TOKENIZER_POOL_TYPE", "TOKENIZER_POOL_EXTRA_CONFIG",
|
| 446 |
+
"ENABLE_LORA", "MAX_LORAS", "MAX_LORA_RANK", "LORA_EXTRA_VOCAB_SIZE",
|
| 447 |
+
"LORA_DTYPE", "LONG_LORA_SCALING_FACTORS", "MAX_CPU_LORAS", "FULLY_SHARDED_LORAS",
|
| 448 |
+
"DEVICE", "SCHEDULER_DELAY_FACTOR", "ENABLE_CHUNKED_PREFILL", "SPECULATIVE_MODEL",
|
| 449 |
+
"NUM_SPECULATIVE_TOKENS", "SPECULATIVE_DRAFT_TENSOR_PARALLEL_SIZE",
|
| 450 |
+
"SPECULATIVE_MAX_MODEL_LEN", "SPECULATIVE_DISABLE_BY_BATCH_SIZE",
|
| 451 |
+
"NGRAM_PROMPT_LOOKUP_MAX", "NGRAM_PROMPT_LOOKUP_MIN", "SPEC_DECODING_ACCEPTANCE_METHOD",
|
| 452 |
+
"TYPICAL_ACCEPTANCE_SAMPLER_POSTERIOR_THRESHOLD", "TYPICAL_ACCEPTANCE_SAMPLER_POSTERIOR_ALPHA",
|
| 453 |
+
"MODEL_LOADER_EXTRA_CONFIG", "PREEMPTION_MODE", "PREEMPTION_CHECK_PERIOD",
|
| 454 |
+
"PREEMPTION_CPU_CAPACITY", "MAX_LOG_LEN", "DISABLE_LOGGING_REQUEST",
|
| 455 |
+
"ENABLE_AUTO_TOOL_CHOICE", "TOOL_CALL_PARSER"
|
| 456 |
+
]
|
| 457 |
+
},
|
| 458 |
+
{
|
| 459 |
+
"title": "Tokenizer Settings",
|
| 460 |
+
"settings": [
|
| 461 |
+
"TOKENIZER_NAME", "TOKENIZER_REVISION", "CUSTOM_CHAT_TEMPLATE"
|
| 462 |
+
]
|
| 463 |
+
},
|
| 464 |
+
{
|
| 465 |
+
"title": "System Settings",
|
| 466 |
+
"settings": [
|
| 467 |
+
"GPU_MEMORY_UTILIZATION", "MAX_PARALLEL_LOADING_WORKERS", "BLOCK_SIZE",
|
| 468 |
+
"SWAP_SPACE", "ENFORCE_EAGER", "MAX_SEQ_LEN_TO_CAPTURE", "DISABLE_CUSTOM_ALL_REDUCE"
|
| 469 |
+
]
|
| 470 |
+
},
|
| 471 |
+
{
|
| 472 |
+
"title": "Streaming Settings",
|
| 473 |
+
"settings": [
|
| 474 |
+
"DEFAULT_BATCH_SIZE", "DEFAULT_MIN_BATCH_SIZE", "DEFAULT_BATCH_SIZE_GROWTH_FACTOR"
|
| 475 |
+
]
|
| 476 |
+
},
|
| 477 |
+
{
|
| 478 |
+
"title": "OpenAI Settings",
|
| 479 |
+
"settings": [
|
| 480 |
+
"RAW_OPENAI_OUTPUT", "OPENAI_RESPONSE_ROLE", "OPENAI_SERVED_MODEL_NAME_OVERRIDE"
|
| 481 |
+
]
|
| 482 |
+
},
|
| 483 |
+
{
|
| 484 |
+
"title": "Serverless Settings",
|
| 485 |
+
"settings": [
|
| 486 |
+
"MAX_CONCURRENCY", "DISABLE_LOG_STATS", "DISABLE_LOG_REQUESTS"
|
| 487 |
+
]
|
| 488 |
+
}
|
| 489 |
+
]
|
| 490 |
+
},
|
| 491 |
+
"0.7.3": {
|
| 492 |
+
"imageName": "runpod/worker-v1-vllm:v2.1.0stable-cuda12.1.0",
|
| 493 |
+
"minimumCudaVersion": "12.1",
|
| 494 |
+
"categories": [
|
| 495 |
+
{
|
| 496 |
+
"title": "LLM Settings",
|
| 497 |
+
"settings": [
|
| 498 |
+
"TOKENIZER", "TOKENIZER_MODE", "SKIP_TOKENIZER_INIT", "TRUST_REMOTE_CODE",
|
| 499 |
+
"DOWNLOAD_DIR", "LOAD_FORMAT", "DTYPE", "KV_CACHE_DTYPE", "QUANTIZATION_PARAM_PATH",
|
| 500 |
+
"MAX_MODEL_LEN", "GUIDED_DECODING_BACKEND", "DISTRIBUTED_EXECUTOR_BACKEND",
|
| 501 |
+
"WORKER_USE_RAY", "RAY_WORKERS_USE_NSIGHT", "PIPELINE_PARALLEL_SIZE",
|
| 502 |
+
"TENSOR_PARALLEL_SIZE", "MAX_PARALLEL_LOADING_WORKERS", "ENABLE_PREFIX_CACHING",
|
| 503 |
+
"DISABLE_SLIDING_WINDOW", "NUM_LOOKAHEAD_SLOTS",
|
| 504 |
+
"SEED", "NUM_GPU_BLOCKS_OVERRIDE", "MAX_NUM_BATCHED_TOKENS", "MAX_NUM_SEQS",
|
| 505 |
+
"MAX_LOGPROBS", "DISABLE_LOG_STATS", "QUANTIZATION", "ROPE_SCALING", "ROPE_THETA",
|
| 506 |
+
"TOKENIZER_POOL_SIZE", "TOKENIZER_POOL_TYPE", "TOKENIZER_POOL_EXTRA_CONFIG",
|
| 507 |
+
"ENABLE_LORA", "MAX_LORAS", "MAX_LORA_RANK", "LORA_EXTRA_VOCAB_SIZE",
|
| 508 |
+
"LORA_DTYPE", "LONG_LORA_SCALING_FACTORS", "MAX_CPU_LORAS", "FULLY_SHARDED_LORAS",
|
| 509 |
+
"DEVICE", "SCHEDULER_DELAY_FACTOR", "ENABLE_CHUNKED_PREFILL", "SPECULATIVE_MODEL",
|
| 510 |
+
"NUM_SPECULATIVE_TOKENS", "SPECULATIVE_DRAFT_TENSOR_PARALLEL_SIZE",
|
| 511 |
+
"SPECULATIVE_MAX_MODEL_LEN", "SPECULATIVE_DISABLE_BY_BATCH_SIZE",
|
| 512 |
+
"NGRAM_PROMPT_LOOKUP_MAX", "NGRAM_PROMPT_LOOKUP_MIN", "SPEC_DECODING_ACCEPTANCE_METHOD",
|
| 513 |
+
"TYPICAL_ACCEPTANCE_SAMPLER_POSTERIOR_THRESHOLD", "TYPICAL_ACCEPTANCE_SAMPLER_POSTERIOR_ALPHA",
|
| 514 |
+
"MODEL_LOADER_EXTRA_CONFIG", "PREEMPTION_MODE", "PREEMPTION_CHECK_PERIOD",
|
| 515 |
+
"PREEMPTION_CPU_CAPACITY", "MAX_LOG_LEN", "DISABLE_LOGGING_REQUEST",
|
| 516 |
+
"ENABLE_AUTO_TOOL_CHOICE", "TOOL_CALL_PARSER"
|
| 517 |
+
]
|
| 518 |
+
},
|
| 519 |
+
{
|
| 520 |
+
"title": "Tokenizer Settings",
|
| 521 |
+
"settings": [
|
| 522 |
+
"TOKENIZER_NAME", "TOKENIZER_REVISION", "CUSTOM_CHAT_TEMPLATE"
|
| 523 |
+
]
|
| 524 |
+
},
|
| 525 |
+
{
|
| 526 |
+
"title": "System Settings",
|
| 527 |
+
"settings": [
|
| 528 |
+
"GPU_MEMORY_UTILIZATION", "MAX_PARALLEL_LOADING_WORKERS", "BLOCK_SIZE",
|
| 529 |
+
"SWAP_SPACE", "ENFORCE_EAGER", "MAX_SEQ_LEN_TO_CAPTURE", "DISABLE_CUSTOM_ALL_REDUCE"
|
| 530 |
+
]
|
| 531 |
+
},
|
| 532 |
+
{
|
| 533 |
+
"title": "Streaming Settings",
|
| 534 |
+
"settings": [
|
| 535 |
+
"DEFAULT_BATCH_SIZE", "DEFAULT_MIN_BATCH_SIZE", "DEFAULT_BATCH_SIZE_GROWTH_FACTOR"
|
| 536 |
+
]
|
| 537 |
+
},
|
| 538 |
+
{
|
| 539 |
+
"title": "OpenAI Settings",
|
| 540 |
+
"settings": [
|
| 541 |
+
"RAW_OPENAI_OUTPUT", "OPENAI_RESPONSE_ROLE", "OPENAI_SERVED_MODEL_NAME_OVERRIDE"
|
| 542 |
+
]
|
| 543 |
+
},
|
| 544 |
+
{
|
| 545 |
+
"title": "Serverless Settings",
|
| 546 |
+
"settings": [
|
| 547 |
+
"MAX_CONCURRENCY", "DISABLE_LOG_STATS", "DISABLE_LOG_REQUESTS"
|
| 548 |
+
]
|
| 549 |
+
}
|
| 550 |
+
]
|
| 551 |
+
},
|
| 552 |
+
"0.6.6": {
|
| 553 |
+
"imageName": "runpod/worker-v1-vllm:v1.8.0stable-cuda12.1.0",
|
| 554 |
+
"minimumCudaVersion": "12.1",
|
| 555 |
+
"categories": [
|
| 556 |
+
{
|
| 557 |
+
"title": "LLM Settings",
|
| 558 |
+
"settings": [
|
| 559 |
+
"TOKENIZER", "TOKENIZER_MODE", "SKIP_TOKENIZER_INIT", "TRUST_REMOTE_CODE",
|
| 560 |
+
"DOWNLOAD_DIR", "LOAD_FORMAT", "DTYPE", "KV_CACHE_DTYPE", "QUANTIZATION_PARAM_PATH",
|
| 561 |
+
"MAX_MODEL_LEN", "GUIDED_DECODING_BACKEND", "DISTRIBUTED_EXECUTOR_BACKEND",
|
| 562 |
+
"WORKER_USE_RAY", "RAY_WORKERS_USE_NSIGHT", "PIPELINE_PARALLEL_SIZE",
|
| 563 |
+
"TENSOR_PARALLEL_SIZE", "MAX_PARALLEL_LOADING_WORKERS", "ENABLE_PREFIX_CACHING",
|
| 564 |
+
"DISABLE_SLIDING_WINDOW", "NUM_LOOKAHEAD_SLOTS",
|
| 565 |
+
"SEED", "NUM_GPU_BLOCKS_OVERRIDE", "MAX_NUM_BATCHED_TOKENS", "MAX_NUM_SEQS",
|
| 566 |
+
"MAX_LOGPROBS", "DISABLE_LOG_STATS", "QUANTIZATION", "ROPE_SCALING", "ROPE_THETA",
|
| 567 |
+
"TOKENIZER_POOL_SIZE", "TOKENIZER_POOL_TYPE", "TOKENIZER_POOL_EXTRA_CONFIG",
|
| 568 |
+
"ENABLE_LORA", "MAX_LORAS", "MAX_LORA_RANK", "LORA_EXTRA_VOCAB_SIZE",
|
| 569 |
+
"LORA_DTYPE", "LONG_LORA_SCALING_FACTORS", "MAX_CPU_LORAS", "FULLY_SHARDED_LORAS",
|
| 570 |
+
"DEVICE", "SCHEDULER_DELAY_FACTOR", "ENABLE_CHUNKED_PREFILL", "SPECULATIVE_MODEL",
|
| 571 |
+
"NUM_SPECULATIVE_TOKENS", "SPECULATIVE_DRAFT_TENSOR_PARALLEL_SIZE",
|
| 572 |
+
"SPECULATIVE_MAX_MODEL_LEN", "SPECULATIVE_DISABLE_BY_BATCH_SIZE",
|
| 573 |
+
"NGRAM_PROMPT_LOOKUP_MAX", "NGRAM_PROMPT_LOOKUP_MIN", "SPEC_DECODING_ACCEPTANCE_METHOD",
|
| 574 |
+
"TYPICAL_ACCEPTANCE_SAMPLER_POSTERIOR_THRESHOLD", "TYPICAL_ACCEPTANCE_SAMPLER_POSTERIOR_ALPHA",
|
| 575 |
+
"MODEL_LOADER_EXTRA_CONFIG", "PREEMPTION_MODE", "PREEMPTION_CHECK_PERIOD",
|
| 576 |
+
"PREEMPTION_CPU_CAPACITY", "MAX_LOG_LEN", "DISABLE_LOGGING_REQUEST",
|
| 577 |
+
"ENABLE_AUTO_TOOL_CHOICE", "TOOL_CALL_PARSER"
|
| 578 |
+
]
|
| 579 |
+
},
|
| 580 |
+
{
|
| 581 |
+
"title": "Tokenizer Settings",
|
| 582 |
+
"settings": [
|
| 583 |
+
"TOKENIZER_NAME", "TOKENIZER_REVISION", "CUSTOM_CHAT_TEMPLATE"
|
| 584 |
+
]
|
| 585 |
+
},
|
| 586 |
+
{
|
| 587 |
+
"title": "System Settings",
|
| 588 |
+
"settings": [
|
| 589 |
+
"GPU_MEMORY_UTILIZATION", "MAX_PARALLEL_LOADING_WORKERS", "BLOCK_SIZE",
|
| 590 |
+
"SWAP_SPACE", "ENFORCE_EAGER", "MAX_SEQ_LEN_TO_CAPTURE", "DISABLE_CUSTOM_ALL_REDUCE"
|
| 591 |
+
]
|
| 592 |
+
},
|
| 593 |
+
{
|
| 594 |
+
"title": "Streaming Settings",
|
| 595 |
+
"settings": [
|
| 596 |
+
"DEFAULT_BATCH_SIZE", "DEFAULT_MIN_BATCH_SIZE", "DEFAULT_BATCH_SIZE_GROWTH_FACTOR"
|
| 597 |
+
]
|
| 598 |
+
},
|
| 599 |
+
{
|
| 600 |
+
"title": "OpenAI Settings",
|
| 601 |
+
"settings": [
|
| 602 |
+
"RAW_OPENAI_OUTPUT", "OPENAI_RESPONSE_ROLE", "OPENAI_SERVED_MODEL_NAME_OVERRIDE"
|
| 603 |
+
]
|
| 604 |
+
},
|
| 605 |
+
{
|
| 606 |
+
"title": "Serverless Settings",
|
| 607 |
+
"settings": [
|
| 608 |
+
"MAX_CONCURRENCY", "DISABLE_LOG_STATS", "DISABLE_LOG_REQUESTS"
|
| 609 |
+
]
|
| 610 |
+
}
|
| 611 |
+
]
|
| 612 |
+
},
|
| 613 |
+
"0.7.0": {
|
| 614 |
+
"imageName": "runpod/worker-v1-vllm:v1.9.0stable-cuda12.1.0",
|
| 615 |
+
"minimumCudaVersion": "12.1",
|
| 616 |
+
"categories": [
|
| 617 |
+
{
|
| 618 |
+
"title": "LLM Settings",
|
| 619 |
+
"settings": [
|
| 620 |
+
"TOKENIZER", "TOKENIZER_MODE", "SKIP_TOKENIZER_INIT", "TRUST_REMOTE_CODE",
|
| 621 |
+
"DOWNLOAD_DIR", "LOAD_FORMAT", "DTYPE", "KV_CACHE_DTYPE", "QUANTIZATION_PARAM_PATH",
|
| 622 |
+
"MAX_MODEL_LEN", "GUIDED_DECODING_BACKEND", "DISTRIBUTED_EXECUTOR_BACKEND",
|
| 623 |
+
"WORKER_USE_RAY", "RAY_WORKERS_USE_NSIGHT", "PIPELINE_PARALLEL_SIZE",
|
| 624 |
+
"TENSOR_PARALLEL_SIZE", "MAX_PARALLEL_LOADING_WORKERS", "ENABLE_PREFIX_CACHING",
|
| 625 |
+
"DISABLE_SLIDING_WINDOW", "NUM_LOOKAHEAD_SLOTS",
|
| 626 |
+
"SEED", "NUM_GPU_BLOCKS_OVERRIDE", "MAX_NUM_BATCHED_TOKENS", "MAX_NUM_SEQS",
|
| 627 |
+
"MAX_LOGPROBS", "DISABLE_LOG_STATS", "QUANTIZATION", "ROPE_SCALING", "ROPE_THETA",
|
| 628 |
+
"TOKENIZER_POOL_SIZE", "TOKENIZER_POOL_TYPE", "TOKENIZER_POOL_EXTRA_CONFIG",
|
| 629 |
+
"ENABLE_LORA", "MAX_LORAS", "MAX_LORA_RANK", "LORA_EXTRA_VOCAB_SIZE",
|
| 630 |
+
"LORA_DTYPE", "LONG_LORA_SCALING_FACTORS", "MAX_CPU_LORAS", "FULLY_SHARDED_LORAS",
|
| 631 |
+
"DEVICE", "SCHEDULER_DELAY_FACTOR", "ENABLE_CHUNKED_PREFILL", "SPECULATIVE_MODEL",
|
| 632 |
+
"NUM_SPECULATIVE_TOKENS", "SPECULATIVE_DRAFT_TENSOR_PARALLEL_SIZE",
|
| 633 |
+
"SPECULATIVE_MAX_MODEL_LEN", "SPECULATIVE_DISABLE_BY_BATCH_SIZE",
|
| 634 |
+
"NGRAM_PROMPT_LOOKUP_MAX", "NGRAM_PROMPT_LOOKUP_MIN", "SPEC_DECODING_ACCEPTANCE_METHOD",
|
| 635 |
+
"TYPICAL_ACCEPTANCE_SAMPLER_POSTERIOR_THRESHOLD", "TYPICAL_ACCEPTANCE_SAMPLER_POSTERIOR_ALPHA",
|
| 636 |
+
"MODEL_LOADER_EXTRA_CONFIG", "PREEMPTION_MODE", "PREEMPTION_CHECK_PERIOD",
|
| 637 |
+
"PREEMPTION_CPU_CAPACITY", "MAX_LOG_LEN", "DISABLE_LOGGING_REQUEST",
|
| 638 |
+
"ENABLE_AUTO_TOOL_CHOICE", "TOOL_CALL_PARSER"
|
| 639 |
+
]
|
| 640 |
+
},
|
| 641 |
+
{
|
| 642 |
+
"title": "Tokenizer Settings",
|
| 643 |
+
"settings": [
|
| 644 |
+
"TOKENIZER_NAME", "TOKENIZER_REVISION", "CUSTOM_CHAT_TEMPLATE"
|
| 645 |
+
]
|
| 646 |
+
},
|
| 647 |
+
{
|
| 648 |
+
"title": "System Settings",
|
| 649 |
+
"settings": [
|
| 650 |
+
"GPU_MEMORY_UTILIZATION", "MAX_PARALLEL_LOADING_WORKERS", "BLOCK_SIZE",
|
| 651 |
+
"SWAP_SPACE", "ENFORCE_EAGER", "MAX_SEQ_LEN_TO_CAPTURE", "DISABLE_CUSTOM_ALL_REDUCE"
|
| 652 |
+
]
|
| 653 |
+
},
|
| 654 |
+
{
|
| 655 |
+
"title": "Streaming Settings",
|
| 656 |
+
"settings": [
|
| 657 |
+
"DEFAULT_BATCH_SIZE", "DEFAULT_MIN_BATCH_SIZE", "DEFAULT_BATCH_SIZE_GROWTH_FACTOR"
|
| 658 |
+
]
|
| 659 |
+
},
|
| 660 |
+
{
|
| 661 |
+
"title": "OpenAI Settings",
|
| 662 |
+
"settings": [
|
| 663 |
+
"RAW_OPENAI_OUTPUT", "OPENAI_RESPONSE_ROLE", "OPENAI_SERVED_MODEL_NAME_OVERRIDE"
|
| 664 |
+
]
|
| 665 |
+
},
|
| 666 |
+
{
|
| 667 |
+
"title": "Serverless Settings",
|
| 668 |
+
"settings": [
|
| 669 |
+
"MAX_CONCURRENCY", "DISABLE_LOG_STATS", "DISABLE_LOG_REQUESTS"
|
| 670 |
+
]
|
| 671 |
+
}
|
| 672 |
+
]
|
| 673 |
+
},
|
| 674 |
+
"0.6.4": {
|
| 675 |
+
"imageName": "runpod/worker-v1-vllm:v1.7.0stable-cuda12.1.0",
|
| 676 |
+
"minimumCudaVersion": "12.1",
|
| 677 |
+
"categories": [
|
| 678 |
+
{
|
| 679 |
+
"title": "LLM Settings",
|
| 680 |
+
"settings": [
|
| 681 |
+
"TOKENIZER", "TOKENIZER_MODE", "SKIP_TOKENIZER_INIT", "TRUST_REMOTE_CODE",
|
| 682 |
+
"DOWNLOAD_DIR", "LOAD_FORMAT", "DTYPE", "KV_CACHE_DTYPE", "QUANTIZATION_PARAM_PATH",
|
| 683 |
+
"MAX_MODEL_LEN", "GUIDED_DECODING_BACKEND", "DISTRIBUTED_EXECUTOR_BACKEND",
|
| 684 |
+
"WORKER_USE_RAY", "RAY_WORKERS_USE_NSIGHT", "PIPELINE_PARALLEL_SIZE",
|
| 685 |
+
"TENSOR_PARALLEL_SIZE", "MAX_PARALLEL_LOADING_WORKERS", "ENABLE_PREFIX_CACHING",
|
| 686 |
+
"DISABLE_SLIDING_WINDOW", "NUM_LOOKAHEAD_SLOTS",
|
| 687 |
+
"SEED", "NUM_GPU_BLOCKS_OVERRIDE", "MAX_NUM_BATCHED_TOKENS", "MAX_NUM_SEQS",
|
| 688 |
+
"MAX_LOGPROBS", "DISABLE_LOG_STATS", "QUANTIZATION", "ROPE_SCALING", "ROPE_THETA",
|
| 689 |
+
"TOKENIZER_POOL_SIZE", "TOKENIZER_POOL_TYPE", "TOKENIZER_POOL_EXTRA_CONFIG",
|
| 690 |
+
"ENABLE_LORA", "MAX_LORAS", "MAX_LORA_RANK", "LORA_EXTRA_VOCAB_SIZE",
|
| 691 |
+
"LORA_DTYPE", "LONG_LORA_SCALING_FACTORS", "MAX_CPU_LORAS", "FULLY_SHARDED_LORAS",
|
| 692 |
+
"DEVICE", "SCHEDULER_DELAY_FACTOR", "ENABLE_CHUNKED_PREFILL", "SPECULATIVE_MODEL",
|
| 693 |
+
"NUM_SPECULATIVE_TOKENS", "SPECULATIVE_DRAFT_TENSOR_PARALLEL_SIZE",
|
| 694 |
+
"SPECULATIVE_MAX_MODEL_LEN", "SPECULATIVE_DISABLE_BY_BATCH_SIZE",
|
| 695 |
+
"NGRAM_PROMPT_LOOKUP_MAX", "NGRAM_PROMPT_LOOKUP_MIN", "SPEC_DECODING_ACCEPTANCE_METHOD",
|
| 696 |
+
"TYPICAL_ACCEPTANCE_SAMPLER_POSTERIOR_THRESHOLD", "TYPICAL_ACCEPTANCE_SAMPLER_POSTERIOR_ALPHA",
|
| 697 |
+
"MODEL_LOADER_EXTRA_CONFIG", "PREEMPTION_MODE", "PREEMPTION_CHECK_PERIOD",
|
| 698 |
+
"PREEMPTION_CPU_CAPACITY", "MAX_LOG_LEN", "DISABLE_LOGGING_REQUEST",
|
| 699 |
+
"ENABLE_AUTO_TOOL_CHOICE", "TOOL_CALL_PARSER"
|
| 700 |
+
]
|
| 701 |
+
},
|
| 702 |
+
{
|
| 703 |
+
"title": "Tokenizer Settings",
|
| 704 |
+
"settings": [
|
| 705 |
+
"TOKENIZER_NAME", "TOKENIZER_REVISION", "CUSTOM_CHAT_TEMPLATE"
|
| 706 |
+
]
|
| 707 |
+
},
|
| 708 |
+
{
|
| 709 |
+
"title": "System Settings",
|
| 710 |
+
"settings": [
|
| 711 |
+
"GPU_MEMORY_UTILIZATION", "MAX_PARALLEL_LOADING_WORKERS", "BLOCK_SIZE",
|
| 712 |
+
"SWAP_SPACE", "ENFORCE_EAGER", "MAX_SEQ_LEN_TO_CAPTURE", "DISABLE_CUSTOM_ALL_REDUCE"
|
| 713 |
+
]
|
| 714 |
+
},
|
| 715 |
+
{
|
| 716 |
+
"title": "Streaming Settings",
|
| 717 |
+
"settings": [
|
| 718 |
+
"DEFAULT_BATCH_SIZE", "DEFAULT_MIN_BATCH_SIZE", "DEFAULT_BATCH_SIZE_GROWTH_FACTOR"
|
| 719 |
+
]
|
| 720 |
+
},
|
| 721 |
+
{
|
| 722 |
+
"title": "OpenAI Settings",
|
| 723 |
+
"settings": [
|
| 724 |
+
"RAW_OPENAI_OUTPUT", "OPENAI_RESPONSE_ROLE", "OPENAI_SERVED_MODEL_NAME_OVERRIDE"
|
| 725 |
+
]
|
| 726 |
+
},
|
| 727 |
+
{
|
| 728 |
+
"title": "Serverless Settings",
|
| 729 |
+
"settings": [
|
| 730 |
+
"MAX_CONCURRENCY", "DISABLE_LOG_STATS", "DISABLE_LOG_REQUESTS"
|
| 731 |
+
]
|
| 732 |
+
}
|
| 733 |
+
]
|
| 734 |
+
},
|
| 735 |
+
"0.6.3": {
|
| 736 |
+
"imageName": "runpod/worker-v1-vllm:v1.6.0stable-cuda12.1.0",
|
| 737 |
+
"minimumCudaVersion": "12.1",
|
| 738 |
+
"categories": [
|
| 739 |
+
{
|
| 740 |
+
"title": "LLM Settings",
|
| 741 |
+
"settings": [
|
| 742 |
+
"TOKENIZER", "TOKENIZER_MODE", "SKIP_TOKENIZER_INIT", "TRUST_REMOTE_CODE",
|
| 743 |
+
"DOWNLOAD_DIR", "LOAD_FORMAT", "DTYPE", "KV_CACHE_DTYPE", "QUANTIZATION_PARAM_PATH",
|
| 744 |
+
"MAX_MODEL_LEN", "GUIDED_DECODING_BACKEND", "DISTRIBUTED_EXECUTOR_BACKEND",
|
| 745 |
+
"WORKER_USE_RAY", "RAY_WORKERS_USE_NSIGHT", "PIPELINE_PARALLEL_SIZE",
|
| 746 |
+
"TENSOR_PARALLEL_SIZE", "MAX_PARALLEL_LOADING_WORKERS", "ENABLE_PREFIX_CACHING",
|
| 747 |
+
"DISABLE_SLIDING_WINDOW", "NUM_LOOKAHEAD_SLOTS",
|
| 748 |
+
"SEED", "NUM_GPU_BLOCKS_OVERRIDE", "MAX_NUM_BATCHED_TOKENS", "MAX_NUM_SEQS",
|
| 749 |
+
"MAX_LOGPROBS", "DISABLE_LOG_STATS", "QUANTIZATION", "ROPE_SCALING", "ROPE_THETA",
|
| 750 |
+
"TOKENIZER_POOL_SIZE", "TOKENIZER_POOL_TYPE", "TOKENIZER_POOL_EXTRA_CONFIG",
|
| 751 |
+
"ENABLE_LORA", "MAX_LORAS", "MAX_LORA_RANK", "LORA_EXTRA_VOCAB_SIZE",
|
| 752 |
+
"LORA_DTYPE", "LONG_LORA_SCALING_FACTORS", "MAX_CPU_LORAS", "FULLY_SHARDED_LORAS",
|
| 753 |
+
"DEVICE", "SCHEDULER_DELAY_FACTOR", "ENABLE_CHUNKED_PREFILL", "SPECULATIVE_MODEL",
|
| 754 |
+
"NUM_SPECULATIVE_TOKENS", "SPECULATIVE_DRAFT_TENSOR_PARALLEL_SIZE",
|
| 755 |
+
"SPECULATIVE_MAX_MODEL_LEN", "SPECULATIVE_DISABLE_BY_BATCH_SIZE",
|
| 756 |
+
"NGRAM_PROMPT_LOOKUP_MAX", "NGRAM_PROMPT_LOOKUP_MIN", "SPEC_DECODING_ACCEPTANCE_METHOD",
|
| 757 |
+
"TYPICAL_ACCEPTANCE_SAMPLER_POSTERIOR_THRESHOLD", "TYPICAL_ACCEPTANCE_SAMPLER_POSTERIOR_ALPHA",
|
| 758 |
+
"MODEL_LOADER_EXTRA_CONFIG", "PREEMPTION_MODE", "PREEMPTION_CHECK_PERIOD",
|
| 759 |
+
"PREEMPTION_CPU_CAPACITY", "MAX_LOG_LEN", "DISABLE_LOGGING_REQUEST",
|
| 760 |
+
"ENABLE_AUTO_TOOL_CHOICE", "TOOL_CALL_PARSER"
|
| 761 |
+
]
|
| 762 |
+
},
|
| 763 |
+
{
|
| 764 |
+
"title": "Tokenizer Settings",
|
| 765 |
+
"settings": [
|
| 766 |
+
"TOKENIZER_NAME", "TOKENIZER_REVISION", "CUSTOM_CHAT_TEMPLATE"
|
| 767 |
+
]
|
| 768 |
+
},
|
| 769 |
+
{
|
| 770 |
+
"title": "System Settings",
|
| 771 |
+
"settings": [
|
| 772 |
+
"GPU_MEMORY_UTILIZATION", "MAX_PARALLEL_LOADING_WORKERS", "BLOCK_SIZE",
|
| 773 |
+
"SWAP_SPACE", "ENFORCE_EAGER", "MAX_SEQ_LEN_TO_CAPTURE", "DISABLE_CUSTOM_ALL_REDUCE"
|
| 774 |
+
]
|
| 775 |
+
},
|
| 776 |
+
{
|
| 777 |
+
"title": "Streaming Settings",
|
| 778 |
+
"settings": [
|
| 779 |
+
"DEFAULT_BATCH_SIZE", "DEFAULT_MIN_BATCH_SIZE", "DEFAULT_BATCH_SIZE_GROWTH_FACTOR"
|
| 780 |
+
]
|
| 781 |
+
},
|
| 782 |
+
{
|
| 783 |
+
"title": "OpenAI Settings",
|
| 784 |
+
"settings": [
|
| 785 |
+
"RAW_OPENAI_OUTPUT", "OPENAI_RESPONSE_ROLE", "OPENAI_SERVED_MODEL_NAME_OVERRIDE"
|
| 786 |
+
]
|
| 787 |
+
},
|
| 788 |
+
{
|
| 789 |
+
"title": "Serverless Settings",
|
| 790 |
+
"settings": [
|
| 791 |
+
"MAX_CONCURRENCY", "DISABLE_LOG_STATS", "DISABLE_LOG_REQUESTS"
|
| 792 |
+
]
|
| 793 |
+
}
|
| 794 |
+
]
|
| 795 |
+
}
|
| 796 |
+
},
|
| 797 |
+
"schema": {
|
| 798 |
+
"TOKENIZER": {
|
| 799 |
+
"env_var_name": "TOKENIZER",
|
| 800 |
+
"value": "",
|
| 801 |
+
"title": "Tokenizer",
|
| 802 |
+
"description": "Name or path of the Hugging Face tokenizer to use.",
|
| 803 |
+
"required": false,
|
| 804 |
+
"type": "text"
|
| 805 |
+
},
|
| 806 |
+
"TOKENIZER_MODE": {
|
| 807 |
+
"env_var_name": "TOKENIZER_MODE",
|
| 808 |
+
"value": "auto",
|
| 809 |
+
"title": "Tokenizer Mode",
|
| 810 |
+
"description": "The tokenizer mode.",
|
| 811 |
+
"required": false,
|
| 812 |
+
"type": "select",
|
| 813 |
+
"options": [
|
| 814 |
+
{ "value": "auto", "label": "auto" },
|
| 815 |
+
{ "value": "slow", "label": "slow" }
|
| 816 |
+
]
|
| 817 |
+
},
|
| 818 |
+
"SKIP_TOKENIZER_INIT": {
|
| 819 |
+
"env_var_name": "SKIP_TOKENIZER_INIT",
|
| 820 |
+
"value": false,
|
| 821 |
+
"title": "Skip Tokenizer Init",
|
| 822 |
+
"description": "Skip initialization of tokenizer and detokenizer.",
|
| 823 |
+
"required": false,
|
| 824 |
+
"type": "toggle"
|
| 825 |
+
},
|
| 826 |
+
"TRUST_REMOTE_CODE": {
|
| 827 |
+
"env_var_name": "TRUST_REMOTE_CODE",
|
| 828 |
+
"value": false,
|
| 829 |
+
"title": "Trust Remote Code",
|
| 830 |
+
"description": "Trust remote code from Hugging Face.",
|
| 831 |
+
"required": false,
|
| 832 |
+
"type": "toggle"
|
| 833 |
+
},
|
| 834 |
+
"DOWNLOAD_DIR": {
|
| 835 |
+
"env_var_name": "DOWNLOAD_DIR",
|
| 836 |
+
"value": "",
|
| 837 |
+
"title": "Download Directory",
|
| 838 |
+
"description": "Directory to download and load the weights.",
|
| 839 |
+
"required": false,
|
| 840 |
+
"type": "text"
|
| 841 |
+
},
|
| 842 |
+
"LOAD_FORMAT": {
|
| 843 |
+
"env_var_name": "LOAD_FORMAT",
|
| 844 |
+
"value": "auto",
|
| 845 |
+
"title": "Load Format",
|
| 846 |
+
"description": "The format of the model weights to load.",
|
| 847 |
+
"required": false,
|
| 848 |
+
"type": "select",
|
| 849 |
+
"options": [
|
| 850 |
+
{ "value": "auto", "label": "auto" },
|
| 851 |
+
{ "value": "pt", "label": "pt" },
|
| 852 |
+
{ "value": "safetensors", "label": "safetensors" },
|
| 853 |
+
{ "value": "npcache", "label": "npcache" },
|
| 854 |
+
{ "value": "dummy", "label": "dummy" },
|
| 855 |
+
{ "value": "tensorizer", "label": "tensorizer" },
|
| 856 |
+
{ "value": "bitsandbytes", "label": "bitsandbytes" }
|
| 857 |
+
]
|
| 858 |
+
},
|
| 859 |
+
"DTYPE": {
|
| 860 |
+
"env_var_name": "DTYPE",
|
| 861 |
+
"value": "auto",
|
| 862 |
+
"title": "Data Type",
|
| 863 |
+
"description": "Data type for model weights and activations.",
|
| 864 |
+
"required": false,
|
| 865 |
+
"type": "select",
|
| 866 |
+
"options": [
|
| 867 |
+
{ "value": "auto", "label": "auto" },
|
| 868 |
+
{ "value": "half", "label": "half" },
|
| 869 |
+
{ "value": "float16", "label": "float16" },
|
| 870 |
+
{ "value": "bfloat16", "label": "bfloat16" },
|
| 871 |
+
{ "value": "float", "label": "float" },
|
| 872 |
+
{ "value": "float32", "label": "float32" }
|
| 873 |
+
]
|
| 874 |
+
},
|
| 875 |
+
"KV_CACHE_DTYPE": {
|
| 876 |
+
"env_var_name": "KV_CACHE_DTYPE",
|
| 877 |
+
"value": "auto",
|
| 878 |
+
"title": "KV Cache Data Type",
|
| 879 |
+
"description": "Data type for KV cache storage.",
|
| 880 |
+
"required": false,
|
| 881 |
+
"type": "select",
|
| 882 |
+
"options": [
|
| 883 |
+
{ "value": "auto", "label": "auto" },
|
| 884 |
+
{ "value": "fp8", "label": "fp8" }
|
| 885 |
+
]
|
| 886 |
+
},
|
| 887 |
+
"QUANTIZATION_PARAM_PATH": {
|
| 888 |
+
"env_var_name": "QUANTIZATION_PARAM_PATH",
|
| 889 |
+
"value": "",
|
| 890 |
+
"title": "Quantization Param Path",
|
| 891 |
+
"description": "Path to the JSON file containing the KV cache scaling factors.",
|
| 892 |
+
"required": false,
|
| 893 |
+
"type": "text"
|
| 894 |
+
},
|
| 895 |
+
"MAX_MODEL_LEN": {
|
| 896 |
+
"env_var_name": "MAX_MODEL_LEN",
|
| 897 |
+
"value": "",
|
| 898 |
+
"title": "Max Model Length",
|
| 899 |
+
"description": "Model context length.",
|
| 900 |
+
"required": false,
|
| 901 |
+
"type": "number"
|
| 902 |
+
},
|
| 903 |
+
"GUIDED_DECODING_BACKEND": {
|
| 904 |
+
"env_var_name": "GUIDED_DECODING_BACKEND",
|
| 905 |
+
"value": "outlines",
|
| 906 |
+
"title": "Guided Decoding Backend",
|
| 907 |
+
"description": "Which engine will be used for guided decoding by default.",
|
| 908 |
+
"required": false,
|
| 909 |
+
"type": "select",
|
| 910 |
+
"options": [
|
| 911 |
+
{ "value": "outlines", "label": "outlines" },
|
| 912 |
+
{ "value": "lm-format-enforcer", "label": "lm-format-enforcer" }
|
| 913 |
+
]
|
| 914 |
+
},
|
| 915 |
+
"DISTRIBUTED_EXECUTOR_BACKEND": {
|
| 916 |
+
"env_var_name": "DISTRIBUTED_EXECUTOR_BACKEND",
|
| 917 |
+
"value": "",
|
| 918 |
+
"title": "Distributed Executor Backend",
|
| 919 |
+
"description": "Backend to use for distributed serving.",
|
| 920 |
+
"required": false,
|
| 921 |
+
"type": "select",
|
| 922 |
+
"options": [
|
| 923 |
+
{ "value": "ray", "label": "ray" },
|
| 924 |
+
{ "value": "mp", "label": "mp" }
|
| 925 |
+
]
|
| 926 |
+
},
|
| 927 |
+
"WORKER_USE_RAY": {
|
| 928 |
+
"env_var_name": "WORKER_USE_RAY",
|
| 929 |
+
"value": false,
|
| 930 |
+
"title": "Worker Use Ray",
|
| 931 |
+
"description": "Deprecated, use --distributed-executor-backend=ray.",
|
| 932 |
+
"required": false,
|
| 933 |
+
"type": "toggle"
|
| 934 |
+
},
|
| 935 |
+
"RAY_WORKERS_USE_NSIGHT": {
|
| 936 |
+
"env_var_name": "RAY_WORKERS_USE_NSIGHT",
|
| 937 |
+
"value": false,
|
| 938 |
+
"title": "Ray Workers Use Nsight",
|
| 939 |
+
"description": "If specified, use nsight to profile Ray workers.",
|
| 940 |
+
"required": false,
|
| 941 |
+
"type": "toggle"
|
| 942 |
+
},
|
| 943 |
+
"PIPELINE_PARALLEL_SIZE": {
|
| 944 |
+
"env_var_name": "PIPELINE_PARALLEL_SIZE",
|
| 945 |
+
"value": 1,
|
| 946 |
+
"title": "Pipeline Parallel Size",
|
| 947 |
+
"description": "Number of pipeline stages.",
|
| 948 |
+
"required": false,
|
| 949 |
+
"type": "number"
|
| 950 |
+
},
|
| 951 |
+
"TENSOR_PARALLEL_SIZE": {
|
| 952 |
+
"env_var_name": "TENSOR_PARALLEL_SIZE",
|
| 953 |
+
"value": 1,
|
| 954 |
+
"title": "Tensor Parallel Size",
|
| 955 |
+
"description": "Number of tensor parallel replicas.",
|
| 956 |
+
"required": false,
|
| 957 |
+
"type": "number"
|
| 958 |
+
},
|
| 959 |
+
"MAX_PARALLEL_LOADING_WORKERS": {
|
| 960 |
+
"env_var_name": "MAX_PARALLEL_LOADING_WORKERS",
|
| 961 |
+
"value": "",
|
| 962 |
+
"title": "Max Parallel Loading Workers",
|
| 963 |
+
"description": "Load model sequentially in multiple batches.",
|
| 964 |
+
"required": false,
|
| 965 |
+
"type": "number"
|
| 966 |
+
},
|
| 967 |
+
"ENABLE_PREFIX_CACHING": {
|
| 968 |
+
"env_var_name": "ENABLE_PREFIX_CACHING",
|
| 969 |
+
"value": false,
|
| 970 |
+
"title": "Enable Prefix Caching",
|
| 971 |
+
"description": "Enables automatic prefix caching.",
|
| 972 |
+
"required": false,
|
| 973 |
+
"type": "toggle"
|
| 974 |
+
},
|
| 975 |
+
"DISABLE_SLIDING_WINDOW": {
|
| 976 |
+
"env_var_name": "DISABLE_SLIDING_WINDOW",
|
| 977 |
+
"value": false,
|
| 978 |
+
"title": "Disable Sliding Window",
|
| 979 |
+
"description": "Disables sliding window, capping to sliding window size.",
|
| 980 |
+
"required": false,
|
| 981 |
+
"type": "toggle"
|
| 982 |
+
},
|
| 983 |
+
"USE_V2_BLOCK_MANAGER": {
|
| 984 |
+
"env_var_name": "USE_V2_BLOCK_MANAGER",
|
| 985 |
+
"value": false,
|
| 986 |
+
"title": "Use V2 Block Manager",
|
| 987 |
+
"description": "Use BlockSpaceMangerV2.",
|
| 988 |
+
"required": false,
|
| 989 |
+
"type": "toggle"
|
| 990 |
+
},
|
| 991 |
+
"NUM_LOOKAHEAD_SLOTS": {
|
| 992 |
+
"env_var_name": "NUM_LOOKAHEAD_SLOTS",
|
| 993 |
+
"value": 0,
|
| 994 |
+
"title": "Num Lookahead Slots",
|
| 995 |
+
"description": "Experimental scheduling config necessary for speculative decoding.",
|
| 996 |
+
"required": false,
|
| 997 |
+
"type": "number"
|
| 998 |
+
},
|
| 999 |
+
"SEED": {
|
| 1000 |
+
"env_var_name": "SEED",
|
| 1001 |
+
"value": 0,
|
| 1002 |
+
"title": "Seed",
|
| 1003 |
+
"description": "Random seed for operations.",
|
| 1004 |
+
"required": false,
|
| 1005 |
+
"type": "number"
|
| 1006 |
+
},
|
| 1007 |
+
"NUM_GPU_BLOCKS_OVERRIDE": {
|
| 1008 |
+
"env_var_name": "NUM_GPU_BLOCKS_OVERRIDE",
|
| 1009 |
+
"value": "",
|
| 1010 |
+
"title": "Num GPU Blocks Override",
|
| 1011 |
+
"description": "If specified, ignore GPU profiling result and use this number of GPU blocks.",
|
| 1012 |
+
"required": false,
|
| 1013 |
+
"type": "number"
|
| 1014 |
+
},
|
| 1015 |
+
"MAX_NUM_BATCHED_TOKENS": {
|
| 1016 |
+
"env_var_name": "MAX_NUM_BATCHED_TOKENS",
|
| 1017 |
+
"value": "",
|
| 1018 |
+
"title": "Max Num Batched Tokens",
|
| 1019 |
+
"description": "Maximum number of batched tokens per iteration.",
|
| 1020 |
+
"required": false,
|
| 1021 |
+
"type": "number"
|
| 1022 |
+
},
|
| 1023 |
+
"MAX_NUM_SEQS": {
|
| 1024 |
+
"env_var_name": "MAX_NUM_SEQS",
|
| 1025 |
+
"value": 256,
|
| 1026 |
+
"title": "Max Num Seqs",
|
| 1027 |
+
"description": "Maximum number of sequences per iteration.",
|
| 1028 |
+
"required": false,
|
| 1029 |
+
"type": "number"
|
| 1030 |
+
},
|
| 1031 |
+
"MAX_LOGPROBS": {
|
| 1032 |
+
"env_var_name": "MAX_LOGPROBS",
|
| 1033 |
+
"value": 20,
|
| 1034 |
+
"title": "Max Logprobs",
|
| 1035 |
+
"description": "Max number of log probs to return when logprobs is specified in SamplingParams.",
|
| 1036 |
+
"required": false,
|
| 1037 |
+
"type": "number"
|
| 1038 |
+
},
|
| 1039 |
+
"DISABLE_LOG_STATS": {
|
| 1040 |
+
"env_var_name": "DISABLE_LOG_STATS",
|
| 1041 |
+
"value": false,
|
| 1042 |
+
"title": "Disable Log Stats",
|
| 1043 |
+
"description": "Disable logging statistics.",
|
| 1044 |
+
"required": false,
|
| 1045 |
+
"type": "toggle"
|
| 1046 |
+
},
|
| 1047 |
+
"QUANTIZATION": {
|
| 1048 |
+
"env_var_name": "QUANTIZATION",
|
| 1049 |
+
"value": "",
|
| 1050 |
+
"title": "Quantization",
|
| 1051 |
+
"description": "Method used to quantize the weights.\nif the `Load Format` is 'bitsandbytes' then `Quantization` will be forced to 'bitsandbytes'",
|
| 1052 |
+
"required": false,
|
| 1053 |
+
"type": "select",
|
| 1054 |
+
"options": [
|
| 1055 |
+
{ "value": "None", "label": "None" },
|
| 1056 |
+
{ "value": "awq", "label": "AWQ" },
|
| 1057 |
+
{ "value": "squeezellm", "label": "SqueezeLLM" },
|
| 1058 |
+
{ "value": "gptq", "label": "GPTQ" },
|
| 1059 |
+
{ "value": "bitsandbytes", "label": "bitsandbytes" }
|
| 1060 |
+
]
|
| 1061 |
+
},
|
| 1062 |
+
"ROPE_SCALING": {
|
| 1063 |
+
"env_var_name": "ROPE_SCALING",
|
| 1064 |
+
"value": "",
|
| 1065 |
+
"title": "RoPE Scaling",
|
| 1066 |
+
"description": "RoPE scaling configuration in JSON format.",
|
| 1067 |
+
"required": false,
|
| 1068 |
+
"type": "text"
|
| 1069 |
+
},
|
| 1070 |
+
"ROPE_THETA": {
|
| 1071 |
+
"env_var_name": "ROPE_THETA",
|
| 1072 |
+
"value": "",
|
| 1073 |
+
"title": "RoPE Theta",
|
| 1074 |
+
"description": "RoPE theta. Use with rope_scaling.",
|
| 1075 |
+
"required": false,
|
| 1076 |
+
"type": "number"
|
| 1077 |
+
},
|
| 1078 |
+
"TOKENIZER_POOL_SIZE": {
|
| 1079 |
+
"env_var_name": "TOKENIZER_POOL_SIZE",
|
| 1080 |
+
"value": 0,
|
| 1081 |
+
"title": "Tokenizer Pool Size",
|
| 1082 |
+
"description": "Size of tokenizer pool to use for asynchronous tokenization.",
|
| 1083 |
+
"required": false,
|
| 1084 |
+
"type": "number"
|
| 1085 |
+
},
|
| 1086 |
+
"TOKENIZER_POOL_TYPE": {
|
| 1087 |
+
"env_var_name": "TOKENIZER_POOL_TYPE",
|
| 1088 |
+
"value": "ray",
|
| 1089 |
+
"title": "Tokenizer Pool Type",
|
| 1090 |
+
"description": "Type of tokenizer pool to use for asynchronous tokenization.",
|
| 1091 |
+
"required": false,
|
| 1092 |
+
"type": "text"
|
| 1093 |
+
},
|
| 1094 |
+
"TOKENIZER_POOL_EXTRA_CONFIG": {
|
| 1095 |
+
"env_var_name": "TOKENIZER_POOL_EXTRA_CONFIG",
|
| 1096 |
+
"value": "",
|
| 1097 |
+
"title": "Tokenizer Pool Extra Config",
|
| 1098 |
+
"description": "Extra config for tokenizer pool.",
|
| 1099 |
+
"required": false,
|
| 1100 |
+
"type": "text"
|
| 1101 |
+
},
|
| 1102 |
+
"ENABLE_LORA": {
|
| 1103 |
+
"env_var_name": "ENABLE_LORA",
|
| 1104 |
+
"value": false,
|
| 1105 |
+
"title": "Enable LoRA",
|
| 1106 |
+
"description": "If True, enable handling of LoRA adapters.",
|
| 1107 |
+
"required": false,
|
| 1108 |
+
"type": "toggle"
|
| 1109 |
+
},
|
| 1110 |
+
"MAX_LORAS": {
|
| 1111 |
+
"env_var_name": "MAX_LORAS",
|
| 1112 |
+
"value": 1,
|
| 1113 |
+
"title": "Max LoRAs",
|
| 1114 |
+
"description": "Max number of LoRAs in a single batch.",
|
| 1115 |
+
"required": false,
|
| 1116 |
+
"type": "number"
|
| 1117 |
+
},
|
| 1118 |
+
"MAX_LORA_RANK": {
|
| 1119 |
+
"env_var_name": "MAX_LORA_RANK",
|
| 1120 |
+
"value": 16,
|
| 1121 |
+
"title": "Max LoRA Rank",
|
| 1122 |
+
"description": "Max LoRA rank.",
|
| 1123 |
+
"required": false,
|
| 1124 |
+
"type": "number"
|
| 1125 |
+
},
|
| 1126 |
+
"LORA_EXTRA_VOCAB_SIZE": {
|
| 1127 |
+
"env_var_name": "LORA_EXTRA_VOCAB_SIZE",
|
| 1128 |
+
"value": 256,
|
| 1129 |
+
"title": "LoRA Extra Vocab Size",
|
| 1130 |
+
"description": "Maximum size of extra vocabulary for LoRA adapters.",
|
| 1131 |
+
"required": false,
|
| 1132 |
+
"type": "number"
|
| 1133 |
+
},
|
| 1134 |
+
"LORA_DTYPE": {
|
| 1135 |
+
"env_var_name": "LORA_DTYPE",
|
| 1136 |
+
"value": "auto",
|
| 1137 |
+
"title": "LoRA Data Type",
|
| 1138 |
+
"description": "Data type for LoRA.",
|
| 1139 |
+
"required": false,
|
| 1140 |
+
"type": "select",
|
| 1141 |
+
"options": [
|
| 1142 |
+
{ "value": "auto", "label": "auto" },
|
| 1143 |
+
{ "value": "float16", "label": "float16" },
|
| 1144 |
+
{ "value": "bfloat16", "label": "bfloat16" },
|
| 1145 |
+
{ "value": "float32", "label": "float32" }
|
| 1146 |
+
]
|
| 1147 |
+
},
|
| 1148 |
+
"LONG_LORA_SCALING_FACTORS": {
|
| 1149 |
+
"env_var_name": "LONG_LORA_SCALING_FACTORS",
|
| 1150 |
+
"value": "",
|
| 1151 |
+
"title": "Long LoRA Scaling Factors",
|
| 1152 |
+
"description": "Specify multiple scaling factors for LoRA adapters.",
|
| 1153 |
+
"required": false,
|
| 1154 |
+
"type": "text"
|
| 1155 |
+
},
|
| 1156 |
+
"MAX_CPU_LORAS": {
|
| 1157 |
+
"env_var_name": "MAX_CPU_LORAS",
|
| 1158 |
+
"value": "",
|
| 1159 |
+
"title": "Max CPU LoRAs",
|
| 1160 |
+
"description": "Maximum number of LoRAs to store in CPU memory.",
|
| 1161 |
+
"required": false,
|
| 1162 |
+
"type": "number"
|
| 1163 |
+
},
|
| 1164 |
+
"FULLY_SHARDED_LORAS": {
|
| 1165 |
+
"env_var_name": "FULLY_SHARDED_LORAS",
|
| 1166 |
+
"value": false,
|
| 1167 |
+
"title": "Fully Sharded LoRAs",
|
| 1168 |
+
"description": "Enable fully sharded LoRA layers.",
|
| 1169 |
+
"required": false,
|
| 1170 |
+
"type": "toggle"
|
| 1171 |
+
},
|
| 1172 |
+
"DEVICE": {
|
| 1173 |
+
"env_var_name": "DEVICE",
|
| 1174 |
+
"value": "auto",
|
| 1175 |
+
"title": "Device",
|
| 1176 |
+
"description": "Device type for vLLM execution.",
|
| 1177 |
+
"required": false,
|
| 1178 |
+
"type": "select",
|
| 1179 |
+
"options": [
|
| 1180 |
+
{ "value": "auto", "label": "auto" },
|
| 1181 |
+
{ "value": "cuda", "label": "cuda" },
|
| 1182 |
+
{ "value": "neuron", "label": "neuron" },
|
| 1183 |
+
{ "value": "cpu", "label": "cpu" },
|
| 1184 |
+
{ "value": "openvino", "label": "openvino" },
|
| 1185 |
+
{ "value": "tpu", "label": "tpu" },
|
| 1186 |
+
{ "value": "xpu", "label": "xpu" }
|
| 1187 |
+
]
|
| 1188 |
+
},
|
| 1189 |
+
"SCHEDULER_DELAY_FACTOR": {
|
| 1190 |
+
"env_var_name": "SCHEDULER_DELAY_FACTOR",
|
| 1191 |
+
"value": 0.0,
|
| 1192 |
+
"title": "Scheduler Delay Factor",
|
| 1193 |
+
"description": "Apply a delay before scheduling next prompt.",
|
| 1194 |
+
"required": false,
|
| 1195 |
+
"type": "number"
|
| 1196 |
+
},
|
| 1197 |
+
"ENABLE_CHUNKED_PREFILL": {
|
| 1198 |
+
"env_var_name": "ENABLE_CHUNKED_PREFILL",
|
| 1199 |
+
"value": false,
|
| 1200 |
+
"title": "Enable Chunked Prefill",
|
| 1201 |
+
"description": "Enable chunked prefill requests.",
|
| 1202 |
+
"required": false,
|
| 1203 |
+
"type": "toggle"
|
| 1204 |
+
},
|
| 1205 |
+
"SPECULATIVE_MODEL": {
|
| 1206 |
+
"env_var_name": "SPECULATIVE_MODEL",
|
| 1207 |
+
"value": "",
|
| 1208 |
+
"title": "Speculative Model",
|
| 1209 |
+
"description": "The name of the draft model to be used in speculative decoding.",
|
| 1210 |
+
"required": false,
|
| 1211 |
+
"type": "text"
|
| 1212 |
+
},
|
| 1213 |
+
"NUM_SPECULATIVE_TOKENS": {
|
| 1214 |
+
"env_var_name": "NUM_SPECULATIVE_TOKENS",
|
| 1215 |
+
"value": "",
|
| 1216 |
+
"title": "Num Speculative Tokens",
|
| 1217 |
+
"description": "The number of speculative tokens to sample from the draft model.",
|
| 1218 |
+
"required": false,
|
| 1219 |
+
"type": "number"
|
| 1220 |
+
},
|
| 1221 |
+
"SPECULATIVE_DRAFT_TENSOR_PARALLEL_SIZE": {
|
| 1222 |
+
"env_var_name": "SPECULATIVE_DRAFT_TENSOR_PARALLEL_SIZE",
|
| 1223 |
+
"value": "",
|
| 1224 |
+
"title": "Speculative Draft Tensor Parallel Size",
|
| 1225 |
+
"description": "Number of tensor parallel replicas for the draft model.",
|
| 1226 |
+
"required": false,
|
| 1227 |
+
"type": "number"
|
| 1228 |
+
},
|
| 1229 |
+
"SPECULATIVE_MAX_MODEL_LEN": {
|
| 1230 |
+
"env_var_name": "SPECULATIVE_MAX_MODEL_LEN",
|
| 1231 |
+
"value": "",
|
| 1232 |
+
"title": "Speculative Max Model Length",
|
| 1233 |
+
"description": "The maximum sequence length supported by the draft model.",
|
| 1234 |
+
"required": false,
|
| 1235 |
+
"type": "number"
|
| 1236 |
+
},
|
| 1237 |
+
"SPECULATIVE_DISABLE_BY_BATCH_SIZE": {
|
| 1238 |
+
"env_var_name": "SPECULATIVE_DISABLE_BY_BATCH_SIZE",
|
| 1239 |
+
"value": "",
|
| 1240 |
+
"title": "Speculative Disable by Batch Size",
|
| 1241 |
+
"description": "Disable speculative decoding if the number of enqueue requests is larger than this value.",
|
| 1242 |
+
"required": false,
|
| 1243 |
+
"type": "number"
|
| 1244 |
+
},
|
| 1245 |
+
"NGRAM_PROMPT_LOOKUP_MAX": {
|
| 1246 |
+
"env_var_name": "NGRAM_PROMPT_LOOKUP_MAX",
|
| 1247 |
+
"value": "",
|
| 1248 |
+
"title": "Ngram Prompt Lookup Max",
|
| 1249 |
+
"description": "Max size of window for ngram prompt lookup in speculative decoding.",
|
| 1250 |
+
"required": false,
|
| 1251 |
+
"type": "number"
|
| 1252 |
+
},
|
| 1253 |
+
"NGRAM_PROMPT_LOOKUP_MIN": {
|
| 1254 |
+
"env_var_name": "NGRAM_PROMPT_LOOKUP_MIN",
|
| 1255 |
+
"value": "",
|
| 1256 |
+
"title": "Ngram Prompt Lookup Min",
|
| 1257 |
+
"description": "Min size of window for ngram prompt lookup in speculative decoding.",
|
| 1258 |
+
"required": false,
|
| 1259 |
+
"type": "number"
|
| 1260 |
+
},
|
| 1261 |
+
"SPEC_DECODING_ACCEPTANCE_METHOD": {
|
| 1262 |
+
"env_var_name": "SPEC_DECODING_ACCEPTANCE_METHOD",
|
| 1263 |
+
"value": "rejection_sampler",
|
| 1264 |
+
"title": "Speculative Decoding Acceptance Method",
|
| 1265 |
+
"description": "Specify the acceptance method for draft token verification in speculative decoding.",
|
| 1266 |
+
"required": false,
|
| 1267 |
+
"type": "select",
|
| 1268 |
+
"options": [
|
| 1269 |
+
{ "value": "rejection_sampler", "label": "rejection_sampler" },
|
| 1270 |
+
{ "value": "typical_acceptance_sampler", "label": "typical_acceptance_sampler" }
|
| 1271 |
+
]
|
| 1272 |
+
},
|
| 1273 |
+
"TYPICAL_ACCEPTANCE_SAMPLER_POSTERIOR_THRESHOLD": {
|
| 1274 |
+
"env_var_name": "TYPICAL_ACCEPTANCE_SAMPLER_POSTERIOR_THRESHOLD",
|
| 1275 |
+
"value": "",
|
| 1276 |
+
"title": "Typical Acceptance Sampler Posterior Threshold",
|
| 1277 |
+
"description": "Set the lower bound threshold for the posterior probability of a token to be accepted.",
|
| 1278 |
+
"required": false,
|
| 1279 |
+
"type": "number"
|
| 1280 |
+
},
|
| 1281 |
+
"TYPICAL_ACCEPTANCE_SAMPLER_POSTERIOR_ALPHA": {
|
| 1282 |
+
"env_var_name": "TYPICAL_ACCEPTANCE_SAMPLER_POSTERIOR_ALPHA",
|
| 1283 |
+
"value": "",
|
| 1284 |
+
"title": "Typical Acceptance Sampler Posterior Alpha",
|
| 1285 |
+
"description": "A scaling factor for the entropy-based threshold for token acceptance.",
|
| 1286 |
+
"required": false,
|
| 1287 |
+
"type": "number"
|
| 1288 |
+
},
|
| 1289 |
+
"MODEL_LOADER_EXTRA_CONFIG": {
|
| 1290 |
+
"env_var_name": "MODEL_LOADER_EXTRA_CONFIG",
|
| 1291 |
+
"value": "",
|
| 1292 |
+
"title": "Model Loader Extra Config",
|
| 1293 |
+
"description": "Extra config for model loader.",
|
| 1294 |
+
"required": false,
|
| 1295 |
+
"type": "text"
|
| 1296 |
+
},
|
| 1297 |
+
"PREEMPTION_MODE": {
|
| 1298 |
+
"env_var_name": "PREEMPTION_MODE",
|
| 1299 |
+
"value": "",
|
| 1300 |
+
"title": "Preemption Mode",
|
| 1301 |
+
"description": "If 'recompute', the engine performs preemption-aware recomputation. If 'save', the engine saves activations into the CPU memory as preemption happens.",
|
| 1302 |
+
"required": false,
|
| 1303 |
+
"type": "text"
|
| 1304 |
+
},
|
| 1305 |
+
"PREEMPTION_CHECK_PERIOD": {
|
| 1306 |
+
"env_var_name": "PREEMPTION_CHECK_PERIOD",
|
| 1307 |
+
"value": 1.0,
|
| 1308 |
+
"title": "Preemption Check Period",
|
| 1309 |
+
"description": "How frequently the engine checks if a preemption happens.",
|
| 1310 |
+
"required": false,
|
| 1311 |
+
"type": "number"
|
| 1312 |
+
},
|
| 1313 |
+
"PREEMPTION_CPU_CAPACITY": {
|
| 1314 |
+
"env_var_name": "PREEMPTION_CPU_CAPACITY",
|
| 1315 |
+
"value": 2,
|
| 1316 |
+
"title": "Preemption CPU Capacity",
|
| 1317 |
+
"description": "The percentage of CPU memory used for the saved activations.",
|
| 1318 |
+
"required": false,
|
| 1319 |
+
"type": "number"
|
| 1320 |
+
},
|
| 1321 |
+
"MAX_LOG_LEN": {
|
| 1322 |
+
"env_var_name": "MAX_LOG_LEN",
|
| 1323 |
+
"value": "",
|
| 1324 |
+
"title": "Max Log Length",
|
| 1325 |
+
"description": "Max number of characters or ID numbers being printed in log.",
|
| 1326 |
+
"required": false,
|
| 1327 |
+
"type": "number"
|
| 1328 |
+
},
|
| 1329 |
+
"DISABLE_LOGGING_REQUEST": {
|
| 1330 |
+
"env_var_name": "DISABLE_LOGGING_REQUEST",
|
| 1331 |
+
"value": false,
|
| 1332 |
+
"title": "Disable Logging Request",
|
| 1333 |
+
"description": "Disable logging requests.",
|
| 1334 |
+
"required": false,
|
| 1335 |
+
"type": "toggle"
|
| 1336 |
+
},
|
| 1337 |
+
"TOKENIZER_NAME": {
|
| 1338 |
+
"env_var_name": "TOKENIZER_NAME",
|
| 1339 |
+
"value": "",
|
| 1340 |
+
"title": "Tokenizer Name",
|
| 1341 |
+
"description": "Tokenizer repo to use a different tokenizer than the model's default",
|
| 1342 |
+
"required": false,
|
| 1343 |
+
"type": "text"
|
| 1344 |
+
},
|
| 1345 |
+
"TOKENIZER_REVISION": {
|
| 1346 |
+
"env_var_name": "TOKENIZER_REVISION",
|
| 1347 |
+
"value": "",
|
| 1348 |
+
"title": "Tokenizer Revision",
|
| 1349 |
+
"description": "Tokenizer revision to load",
|
| 1350 |
+
"required": false,
|
| 1351 |
+
"type": "text"
|
| 1352 |
+
},
|
| 1353 |
+
"CUSTOM_CHAT_TEMPLATE": {
|
| 1354 |
+
"env_var_name": "CUSTOM_CHAT_TEMPLATE",
|
| 1355 |
+
"value": "",
|
| 1356 |
+
"title": "Custom Chat Template",
|
| 1357 |
+
"description": "Custom chat jinja template",
|
| 1358 |
+
"required": false,
|
| 1359 |
+
"type": "text"
|
| 1360 |
+
},
|
| 1361 |
+
"GPU_MEMORY_UTILIZATION": {
|
| 1362 |
+
"env_var_name": "GPU_MEMORY_UTILIZATION",
|
| 1363 |
+
"value": "0.95",
|
| 1364 |
+
"title": "GPU Memory Utilization",
|
| 1365 |
+
"description": "Sets GPU VRAM utilization",
|
| 1366 |
+
"required": false,
|
| 1367 |
+
"type": "number"
|
| 1368 |
+
},
|
| 1369 |
+
"BLOCK_SIZE": {
|
| 1370 |
+
"env_var_name": "BLOCK_SIZE",
|
| 1371 |
+
"value": "16",
|
| 1372 |
+
"title": "Block Size",
|
| 1373 |
+
"description": "Token block size for contiguous chunks of tokens",
|
| 1374 |
+
"required": false,
|
| 1375 |
+
"type": "number"
|
| 1376 |
+
},
|
| 1377 |
+
"SWAP_SPACE": {
|
| 1378 |
+
"env_var_name": "SWAP_SPACE",
|
| 1379 |
+
"value": "4",
|
| 1380 |
+
"title": "Swap Space",
|
| 1381 |
+
"description": "CPU swap space size (GiB) per GPU",
|
| 1382 |
+
"required": false,
|
| 1383 |
+
"type": "number"
|
| 1384 |
+
},
|
| 1385 |
+
"ENFORCE_EAGER": {
|
| 1386 |
+
"env_var_name": "ENFORCE_EAGER",
|
| 1387 |
+
"value": false,
|
| 1388 |
+
"title": "Enforce Eager",
|
| 1389 |
+
"description": "Always use eager-mode PyTorch. If False (0), will use eager mode and CUDA graph in hybrid for maximal performance and flexibility",
|
| 1390 |
+
"required": false,
|
| 1391 |
+
"type": "toggle"
|
| 1392 |
+
},
|
| 1393 |
+
"MAX_SEQ_LEN_TO_CAPTURE": {
|
| 1394 |
+
"env_var_name": "MAX_SEQ_LEN_TO_CAPTURE",
|
| 1395 |
+
"value": "8192",
|
| 1396 |
+
"title": "CUDA Graph Max Content Length",
|
| 1397 |
+
"description": "Maximum context length covered by CUDA graphs. If a sequence has context length larger than this, we fall back to eager mode",
|
| 1398 |
+
"required": false,
|
| 1399 |
+
"type": "number"
|
| 1400 |
+
},
|
| 1401 |
+
"DISABLE_CUSTOM_ALL_REDUCE": {
|
| 1402 |
+
"env_var_name": "DISABLE_CUSTOM_ALL_REDUCE",
|
| 1403 |
+
"value": false,
|
| 1404 |
+
"title": "Disable Custom All Reduce",
|
| 1405 |
+
"description": "Enables or disables custom all reduce",
|
| 1406 |
+
"required": false,
|
| 1407 |
+
"type": "toggle"
|
| 1408 |
+
},
|
| 1409 |
+
"DEFAULT_BATCH_SIZE": {
|
| 1410 |
+
"env_var_name": "DEFAULT_BATCH_SIZE",
|
| 1411 |
+
"value": "50",
|
| 1412 |
+
"title": "Default Final Batch Size",
|
| 1413 |
+
"description": "Default and Maximum batch size for token streaming to reduce HTTP calls",
|
| 1414 |
+
"required": false,
|
| 1415 |
+
"type": "number"
|
| 1416 |
+
},
|
| 1417 |
+
"DEFAULT_MIN_BATCH_SIZE": {
|
| 1418 |
+
"env_var_name": "DEFAULT_MIN_BATCH_SIZE",
|
| 1419 |
+
"value": "1",
|
| 1420 |
+
"title": "Default Starting Batch Size",
|
| 1421 |
+
"description": "Batch size for the first request, which will be multiplied by the growth factor every subsequent request",
|
| 1422 |
+
"required": false,
|
| 1423 |
+
"type": "number"
|
| 1424 |
+
},
|
| 1425 |
+
"DEFAULT_BATCH_SIZE_GROWTH_FACTOR": {
|
| 1426 |
+
"env_var_name": "DEFAULT_BATCH_SIZE_GROWTH_FACTOR",
|
| 1427 |
+
"value": "3",
|
| 1428 |
+
"title": "Default Batch Size Growth Factor",
|
| 1429 |
+
"description": "Growth factor for dynamic batch size",
|
| 1430 |
+
"required": false,
|
| 1431 |
+
"type": "number"
|
| 1432 |
+
},
|
| 1433 |
+
"RAW_OPENAI_OUTPUT": {
|
| 1434 |
+
"env_var_name": "RAW_OPENAI_OUTPUT",
|
| 1435 |
+
"value": true,
|
| 1436 |
+
"title": "Raw OpenAI Output",
|
| 1437 |
+
"description": "Raw OpenAI output instead of just the text",
|
| 1438 |
+
"required": false,
|
| 1439 |
+
"type": "toggle"
|
| 1440 |
+
},
|
| 1441 |
+
"OPENAI_RESPONSE_ROLE": {
|
| 1442 |
+
"env_var_name": "OPENAI_RESPONSE_ROLE",
|
| 1443 |
+
"value": "assistant",
|
| 1444 |
+
"title": "OpenAI Response Role",
|
| 1445 |
+
"description": "Role of the LLM's Response in OpenAI Chat Completions",
|
| 1446 |
+
"required": false,
|
| 1447 |
+
"type": "text"
|
| 1448 |
+
},
|
| 1449 |
+
"OPENAI_SERVED_MODEL_NAME_OVERRIDE": {
|
| 1450 |
+
"env_var_name": "OPENAI_SERVED_MODEL_NAME_OVERRIDE",
|
| 1451 |
+
"value": "",
|
| 1452 |
+
"title": "OpenAI Served Model Name Override",
|
| 1453 |
+
"description": "Overrides the name of the served model from model repo/path to specified name, which you will then be able to use the value for the `model` parameter when making OpenAI requests",
|
| 1454 |
+
"required": false,
|
| 1455 |
+
"type": "text"
|
| 1456 |
+
},
|
| 1457 |
+
"MAX_CONCURRENCY": {
|
| 1458 |
+
"env_var_name": "MAX_CONCURRENCY",
|
| 1459 |
+
"value": "300",
|
| 1460 |
+
"title": "Max Concurrency",
|
| 1461 |
+
"description": "Max concurrent requests per worker. vLLM has an internal queue, so you don't have to worry about limiting by VRAM, this is for improving scaling/load balancing efficiency",
|
| 1462 |
+
"required": false,
|
| 1463 |
+
"type": "number"
|
| 1464 |
+
},
|
| 1465 |
+
"MODEL_REVISION": {
|
| 1466 |
+
"env_var_name": "MODEL_REVISION",
|
| 1467 |
+
"value": "",
|
| 1468 |
+
"title": "Model Revision",
|
| 1469 |
+
"description": "Model revision (branch) to load",
|
| 1470 |
+
"required": false,
|
| 1471 |
+
"type": "text"
|
| 1472 |
+
},
|
| 1473 |
+
"BASE_PATH": {
|
| 1474 |
+
"env_var_name": "BASE_PATH",
|
| 1475 |
+
"value": "/runpod-volume",
|
| 1476 |
+
"title": "Base Path",
|
| 1477 |
+
"description": "Storage directory for Huggingface cache and model",
|
| 1478 |
+
"required": false,
|
| 1479 |
+
"type": "text"
|
| 1480 |
+
},
|
| 1481 |
+
"DISABLE_LOG_REQUESTS": {
|
| 1482 |
+
"env_var_name": "DISABLE_LOG_REQUESTS",
|
| 1483 |
+
"value": true,
|
| 1484 |
+
"title": "Disable Log Requests",
|
| 1485 |
+
"description": "Enables or disables vLLM request logging",
|
| 1486 |
+
"required": false,
|
| 1487 |
+
"type": "toggle"
|
| 1488 |
+
},
|
| 1489 |
+
"ENABLE_AUTO_TOOL_CHOICE": {
|
| 1490 |
+
"env_var_name": "ENABLE_AUTO_TOOL_CHOICE",
|
| 1491 |
+
"value": false,
|
| 1492 |
+
"title": "Enable Auto Tool Choice",
|
| 1493 |
+
"description": "Enables or disables auto tool choice",
|
| 1494 |
+
"required": false,
|
| 1495 |
+
"type": "toggle"
|
| 1496 |
+
},
|
| 1497 |
+
"TOOL_CALL_PARSER": {
|
| 1498 |
+
"env_var_name": "TOOL_CALL_PARSER",
|
| 1499 |
+
"value": "",
|
| 1500 |
+
"title": "Tool Call Parser",
|
| 1501 |
+
"description": "Tool call parser",
|
| 1502 |
+
"required": false,
|
| 1503 |
+
"type": "select",
|
| 1504 |
+
"options": [
|
| 1505 |
+
{ "value": "", "label": "None" },
|
| 1506 |
+
{ "value": "hermes", "label": "Hermes" },
|
| 1507 |
+
{ "value": "mistral", "label": "Mistral" },
|
| 1508 |
+
{ "value": "llama3_json", "label": "Llama3 JSON" },
|
| 1509 |
+
{ "value": "pythonic", "label": "Pythonic" },
|
| 1510 |
+
{ "value": "internlm", "label": "InternLM" }
|
| 1511 |
+
]
|
| 1512 |
+
}
|
| 1513 |
+
}
|
| 1514 |
+
}
|