Deploy any model on your own GPU.

Text, images, video and speech from Hugging Face, on vLLM, SGLang, vLLM-Omni or llama.cpp. Paste your own engine options, get an OpenAI-style endpoint with its own key and root SSH, and pay for the GPU by the hour, not per request.

What you can serve

One endpoint per model, in the shape OpenAI clients already speak. The engine runs in an Arrakis image built on its official release.

  • Text and vision

    Chat, completions, embeddings and speech to text on vLLM, SGLang or llama.cpp. Any model on Hugging Face, GGUF files at any quantization included.

    POST /v1/chat/completions
  • Images

    FLUX, Qwen-Image, Z-Image and more on vLLM-Omni or SGLang Diffusion. Text to image and image editing.

    POST /v1/images/generations
  • Video

    Wan 2.2 text to video and image to video, as jobs you start, check and download.

    POST /v1/videos
  • Speech and sound

    Qwen3-TTS and CosyVoice for speech, Stable Audio for sound and music, on vLLM-Omni.

    POST /v1/audio/speech

Popular image, video and speech models

The GPU memory each needs to serve, and the smallest GPU that holds it. For text models, see GPU requirements for open models; any other model, name it in the console.

ModelMakesWhat it doesGPU memoryEnginesDeploy
black-forest-labs/FLUX.1-schnellImagesFast text to image, 1 to 4 steps41 GB: one L40S, RTX 6000 Ada or RTX A6000, L40S from $0.44 per GPU-hourvLLM-Omni, SGLangDeploy
black-forest-labs/FLUX.1-devImagesText to image41 GB: one L40S, RTX 6000 Ada or RTX A6000, L40S from $0.44 per GPU-hourvLLM-Omni, SGLangDeploy
black-forest-labs/FLUX.2-klein-9BImagesText to image and editing42 GB: one L40S, RTX 6000 Ada or RTX A6000, L40S from $0.44 per GPU-hourvLLM-OmniDeploy
Qwen/Qwen-Image-2512ImagesText to image, strong at text in pictures70 GB: one H100 or A100, H100 from $2.07 per GPU-hourvLLM-Omni, SGLangDeploy
Qwen/Qwen-Image-Edit-2511ImagesImage editing70 GB: one H100 or A100, H100 from $2.07 per GPU-hourvLLM-Omni, SGLangDeploy
Tongyi-MAI/Z-Image-TurboImagesFast text to image, 8 steps25 GB: one RTX 5090, from $0.58 per GPU-hourvLLM-Omni, SGLangDeploy
Wan-AI/Wan2.2-T2V-A14B-DiffusersVideoText to video, 480p and 720p83 GB: one RTX PRO 6000, from $1.90 per GPU-hourvLLM-Omni, SGLangDeploy
Wan-AI/Wan2.2-I2V-A14B-DiffusersVideoImage to video83 GB: one RTX PRO 6000, from $1.90 per GPU-hourvLLM-Omni, SGLangDeploy
Wan-AI/Wan2.2-TI2V-5B-DiffusersVideoText or image to video, 720p, on one GPU28 GB: one RTX 5090, from $0.58 per GPU-hourvLLM-Omni, SGLangDeploy
Qwen/Qwen3-TTS-12Hz-1.7B-CustomVoiceSpeechText to speech, preset voices6.0 GB: one RTX 4090 or RTX 3090, RTX 3090 from $0.19 per GPU-hourvLLM-OmniDeploy
FunAudioLLM/Fun-CosyVoice3-0.5B-2512SpeechText to speech, voice cloning3.0 GB: one RTX 4090 or RTX 3090, RTX 3090 from $0.19 per GPU-hourvLLM-OmniDeploy
stabilityai/stable-audio-open-1.0Sound and musicSound effects and music8.0 GB: one RTX 4090 or RTX 3090, RTX 3090 from $0.19 per GPU-hourvLLM-OmniDeploy
lerobot/pi05_baseRobot policyVision-language-action policy (pi0.5)18 GB: one RTX 4090 or RTX 3090, RTX 3090 from $0.19 per GPU-hourvLLM-OmniDeploy
nvidia/GR00T-N1.7-3BRobot policyHumanoid robot policy9.0 GB: one RTX 4090 or RTX 3090, RTX 3090 from $0.19 per GPU-hourvLLM-OmniDeploy

Bring the options you tuned

Paste your flags, the whole command or a docker run line, with variables in front and JSON values in quotes. You choose them and keep them current; Arrakis keeps the address, port, key and model, and shows the start line before you rent.

Change them later without a new machine: over SSH, edit /etc/arrakis/serve and run arrakis-serve restart.

VLLM_USE_DEEP_GEMM=1 vllm serve Qwen/Qwen3-8B \
  --max-model-len 32768 --enable-prefix-caching \
  --speculative-config '{"method": "eagle3", "num_speculative_tokens": 3}'

Your options run. Nothing else does.

The machine is yours, with root SSH. What reaches it from Arrakis is checked first.

No shell, ever

Your options reach the engine word for word, as its argument list. Shell syntax is refused, never run.

A key on every request

A gate on the endpoint checks its API key before a request reaches the engine, which listens only inside the machine.

Only the GPUs you rent

Settings that choose a machine's GPUs are refused, so a machine never reaches another renter's.

Your token stays yours

Your Hugging Face token goes to the machine only. Arrakis never stores it.

Call it like any OpenAI-style API

Any OpenAI client works: set the base URL and the key. The console has code for each kind of model, a try for chat and pictures, and the engine's log.

from openai import OpenAI

client = OpenAI(base_url="http://<your endpoint>/v1", api_key="sk-...")
picture = client.images.generate(model="black-forest-labs/FLUX.1-schnell",
                                 prompt="a lighthouse at dawn", size="1024x1024",
                                 response_format="b64_json")

Questions about deploying models

The full guide: Deploy a model.

Can I run FLUX or Wan on my own GPU?
Yes. In the console's Models page, pick vLLM-Omni or SGLang, name the model as Hugging Face does (black-forest-labs/FLUX.1-dev or Wan-AI/Wan2.2-T2V-A14B-Diffusers), add a Hugging Face token for a gated model, and choose a GPU it fits on. The endpoint answers at /v1/images/generations or /v1/videos.
Which engine options can I use?
Any option your engine takes. You paste them, the engine reads them, and you keep them current with its releases. Arrakis keeps only where the engine listens, its key and the model, and refuses shell syntax and settings that choose GPUs.
Is it serverless?
No. Each model runs on a GPU of its own, charged by the hour from when the machine runs until you stop it or its removal time comes. Once it is loaded there are no cold starts, and no charge per picture, second or token.
How long until the endpoint answers?
Usually a few minutes: the machine starts, then the engine downloads the model and loads it. Large video models take longer. The console shows when it is ready, and the engine's log.
Can I change the options without a new machine?
Yes. Over SSH, edit /etc/arrakis/serve/command and run arrakis-serve restart. The endpoint keeps its address and its key.
What does it cost?
The hourly price of the GPU you choose, the same as renting it, from the cheapest machines listed now. Nothing per request.

Your model, your GPU, your options.