explaingit

lee101/omniserve

Analysis updated 2026-05-18

0PythonAudience · developerComplexity · 5/5LicenseSetup · hard

TLDR

A server that runs many AI models (image, video, LoRA, chat) on one GPU, loading and swapping them automatically as requests arrive.

Mindmap

mindmap
  root((omniserve))
    What it does
      Serves many model types
      Auto loads on demand
      Evicts least used models
    Tech stack
      Python
      PyTorch
      vLLM
      Cog
    Use cases
      Self hosted GPU serving
      Custom LoRA swapping
      OpenAI compatible API
    Audience
      Developers
      GPU hosts

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Host several AI models (chat, image, video) on one GPU box instead of paying for separate endpoints for each.

USE CASE 2

Swap in custom LoRA fine-tunes on the fly without restarting the server.

USE CASE 3

Deploy a self-hosted OpenAI-compatible endpoint for existing chat or image generation tools.

USE CASE 4

Run a priced API where paying customers get GPU priority over free users.

What is it built with?

PythonPyTorchvLLMDiffusersCogCUDA

How does it compare?

lee101/omniserve0xallam/my-recipe0xhassaan/nn-from-scratch
Stars00
LanguagePythonPythonPython
Last pushed2022-11-22
MaintenanceDormant
Setup difficultyhardmoderatemoderate
Complexity5/52/54/5
Audiencedevelopergeneraldeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · hard Time to first run · 1h+

Requires a GPU with enough VRAM for the chosen models, CUDA setup is not optional.

Use freely for any purpose, including commercial use, as long as you keep the copyright notice.

In plain English

Omniserve is a server that runs many different AI models on a single GPU at once. Instead of setting up one endpoint per model, like some hosting services do, or running everything with no server discipline, like some open source image tools do, omniserve tries to combine both: it can serve image generators, video generators, LoRA adapters, and chat style language models from the same machine, loading and unloading them automatically based on demand. When a request comes in for a model that is not currently loaded, omniserve loads it, and when GPU memory runs low it removes the least recently used model to make room, checking first whether there is even enough space for the new one. Idle models are put to sleep, meaning their data moves out of GPU memory but can be woken back up in seconds, rather than being fully unloaded and reloaded from scratch. LoRA adapters, which are small add-on files that customize a model's behavior, can be attached to any request by name or by web link, and are only downloaded once across a group of machines. The server speaks the same API format as OpenAI's services, covering chat, text completion, image generation, audio speech, and audio transcription, so tools already built for that format should work with little change. Requests can be tagged with priority tiers such as paid, subscriber, free, or background, and the GPU is allocated to higher tiers first, with protections so a low priority request cannot bump a paying customer's model too soon. Setup is done with a Python package install and a command line tool, and the project can also be packaged as a Cog container for one click GPU deployment, including a ready made deploy button for the app.nz hosting service. The project includes tests that can run without a GPU. It is released under the Apache-2.0 license, which allows free use, modification, and commercial use as long as the license and copyright notice are kept.

Copy-paste prompts

Prompt 1
Help me install omniserve and start it with a single preloaded chat model.
Prompt 2
Show me how to send an image generation request to omniserve using curl.
Prompt 3
Explain how to add my own custom model to omniserve's catalog with a JSON config.
Prompt 4
Walk me through deploying omniserve as a Cog container to a GPU host.
Prompt 5
Help me set priority tiers so paid requests never get evicted by free ones.

Frequently asked questions

What is omniserve?

A server that runs many AI models (image, video, LoRA, chat) on one GPU, loading and swapping them automatically as requests arrive.

What language is omniserve written in?

Mainly Python. The stack also includes Python, PyTorch, vLLM.

What license does omniserve use?

Use freely for any purpose, including commercial use, as long as you keep the copyright notice.

How hard is omniserve to set up?

Setup difficulty is rated hard, with roughly 1h+ to a first successful run.

Who is omniserve for?

Mainly developer.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.