VortexRT is a Python library for AI model inference. Give it a model name, it detects the task, picks the best engine for your hardware, installs missing dependencies, and runs inference.
from vortexrt import VortexRT
vrt = VortexRT()
llm = vrt.load("Qwen/Qwen2.5-1.5B-Instruct")
result = vrt.predict(llm.id, {"prompt": "Explain quantum computing"})
Engines
VortexRT is built on 7 open-source inference engines. Each engine is independently licensed and can be used in any other project.
| Engine | License | Specialisation | % of Tasks |
|---|---|---|---|
| Transformers | Apache 2.0 | Text, classification, QA, NER, embeddings, TTS, ASR | 45% |
| Diffusers | Apache 2.0 | Text-to-image, image-to-image | 10% |
| ONNX Runtime | MIT | Custom ONNX, audio, TTS, ASR, DirectML | 15% |
| vLLM | Apache 2.0 | High-throughput LLM (PagedAttention) | 10% |
| vLLM-Omni | Apache 2.0 | Accelerated image/video (DiT, Cache-DiT) | 10% |
| llama.cpp | MIT | GGUF LLMs on CPU | 5% |
| Stable Diffusion.cpp | MIT | GGUF diffusion on CPU/GPU | 5% |
All engines are open source and permissible for commercial use. Our library is MIT licensed — compatible with all of them.
Hardware Support
| NVIDIA CUDA | AMD ROCm | Intel XPU/Arc | CPU Only | Apple MPS | |
|---|---|---|---|---|---|
| Transformers | ✓ | ✓ | ✓ | ✓ | ✓ |
| Diffusers | ✓ | — | — | ✓ | ✓ |
| ONNX Runtime | ✓ CUDA EP | ✓ ROCm EP | ✓ OpenVINO EP | ✓ | ✓ CoreML |
| vLLM | ✓ | ✓ | ✓ | ✓ (slow) | — |
| vLLM-Omni | ✓ | ✓ | ✓ | — | — |
| llama.cpp | ✓ Vulkan | ✓ Vulkan | ✓ Vulkan | ✓ | ✓ Metal |
| diffusion-gguf | ✓ Vulkan | ✓ Vulkan | ✓ Vulkan | ✓ | — |
Yes, it works on AMD, Intel, and CPU. The library automatically detects your hardware and picks the best available engine. If vLLM isn't available (no NVIDIA GPU), it falls back to Transformers for text and Diffusers for images.
Video Generation
Video generation is registered as a task (text-to-video) but
requires a video-capable model and engine. vLLM-Omni supports DiT-based
video models (Sora-style, CogVideo, etc.) when installed with a
compatible GPU.
Installation
pip install vortexrt
Installs the core engines (Transformers, Diffusers, ONNX Runtime) and all dependencies automatically. For niche engines:
pip install "vortexrt[all]"
Quick Start
Text Generation
from vortexrt import VortexRT
vrt = VortexRT()
llm = vrt.load("Qwen/Qwen2.5-1.5B-Instruct")
result = vrt.predict(llm.id, {"prompt": "Explain AI in one sentence."})
print(result.data["generated_text"])
# → "AI is the simulation of human intelligence by machines..."
print(f"Engine: {result.engine} Time: {result.timing.total_ms:.0f}ms")
print(f"Tokens: {result.usage}")
Chat (Multi-turn)
chat = vrt.chat(llm.id, system="You are a Python expert. Keep replies short.")
reply = chat.send("How do I sort a dict by value?")
print(reply.data["generated_text"])
# Stream token by token
for token in chat.stream("Show me a one-line example"):
print(token, end="", flush=True)
chat.reset() # clear history
Image Generation
img = vrt.load("runwayml/stable-diffusion-v1-5")
result = vrt.predict(img.id, {
"prompt": "A mountain lake at sunrise",
"num_inference_steps": 20,
"save_to": True, # auto-saves to Desktop
"show_progress": True, # live progress bar
})
print(result.data["saved_path"])
Multiple Models on One Port
vrt.load("Qwen/Qwen2.5-1.5B-Instruct")
vrt.load("runwayml/stable-diffusion-v1-5")
vrt.serve() # → http://localhost:8000
Engine Control
# Let the system choose (recommended)
vrt.load("model")
# Force a specific engine
vrt.load("model", engine="transformers")
# With optimizations
vrt.load("model", quantize="int8", torch_dtype="bfloat16")
# See what engine will be chosen
vrt.routing_table()
Authentication
Gated models (Llama, FLUX, Gemma) need a HuggingFace token:
from vortexrt import set_token
set_token("hf_...")
REST API
vrt.serve() # http://localhost:8000
| Method | Endpoint | Description |
|---|---|---|
GET |
/v1/health |
Health + hardware + available engines |
GET |
/v1/engines |
Engine routing table |
GET |
/v1/models |
All loaded models |
POST |
/v1/models/load |
Load a model |
POST |
/v1/models/{id}/predict |
Inference (returns timing + usage) |
POST |
/v1/models/{id}/stream |
SSE token stream |
POST |
/v1/models/{id}/chat |
Multi-turn chat |
DELETE |
/v1/models/{id} |
Unload |
License
MIT — see LICENSE.
Built on Apache 2.0 and MIT licensed engines. All third-party engines remain under their original licenses.
Metadata
Release files for vortexrt 0.3.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| vortexrt-0.3.1.tar.gz | 51.1 kB | Without provenance | Details for vortexrt-0.3.1.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| vortexrt-0.3.1-py3-none-any.whl | Python 3 | none | any | Details for vortexrt-0.3.1-py3-none-any.whl |
Total release size: 112.3 kB
Release files / vortexrt-0.3.1.tar.gz
| Download URL | vortexrt-0.3.1.tar.gz |
|---|---|
| Size | 51.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
fabe25a89c68fca1a5ba6d4fd6f92c712ee3965715a9a7754970b3daaaa6b4e1
|
|
BLAKE2b-256 checksum How to use checksums |
c1cab8da5371b2bd9d73f0df3adcc9b2c0e80d26e7fc103d8a18b7894f19cb45
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.10
|
Release files / vortexrt-0.3.1-py3-none-any.whl
| Download URL | vortexrt-0.3.1-py3-none-any.whl |
|---|---|
| Size | 61.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
fde73c72517afb81d1d0588c57599163c522e5005d26251f3315865644c0bfaa
|
|
BLAKE2b-256 checksum How to use checksums |
14e7936dc52dd933225f37dbcbcf949ab207e3737b9595d607d826278fb8fb94
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.10
|
Security for vortexrt 0.3.1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.