Skip to content

WaveSpeedAI/waverless

Repository files navigation

WaveSpeedAI Logo

Waverless

High-performance Serverless GPU task orchestration system

🌐 Visit wavespeed.ai📖 Documentation💬 Issues


Overview

Waverless is a high-performance Serverless GPU task orchestration system designed for AI inference and training workloads, powered by WaveSpeedAI.

Core Features

  • 🚀 Pull-based Architecture - Workers actively pull tasks for better load balancing and fault tolerance
  • 🔌 RunPod Compatible - Fully compatible with runpod-python SDK, no code modification needed
  • ☸️ Kubernetes Native - Built-in K8s application management, supports deploying GPU workloads via API
  • 📊 Multi-Endpoint Routing - Supports multiple independent task queues and worker pools
  • 🌐 Web Management Interface - React-based modern UI for visual deployment and monitoring
  • Auto Scaling - Automatically adjusts worker count based on queue depth

Quick Start

# Clone repository
git clone https://github.com/wavespeedai/waverless.git
cd waverless

# Deploy complete environment
./deploy.sh install

# Access Web UI
kubectl port-forward -n wavespeed svc/waverless-web-svc 3000:80
# Visit http://localhost:3000 (default: admin/admin)

For detailed deployment, configuration, and usage, see User Guide.

Architecture

┌─────────────┐         ┌──────────────────┐         ┌─────────────┐
│   Client    │ submit  │   Waverless      │  pull   │   Worker    │
│             ├────────>│   API Server     │<────────┤  (RunPod)   │
│  (V1 API)   │         │                  │         │ Endpoint: A │
└─────────────┘         │  - Task Queue    │         └─────────────┘
                        │  - Worker Mgmt   │
┌─────────────┐  API    │  - K8s Manager   │         ┌─────────────┐
│  Web UI     │ Request │                  │  pull   │   Worker    │
│(React+Nginx)├────────>│  Redis + MySQL   │<────────┤  (RunPod)   │
│             │         │                  │         │ Endpoint: B │
└─────────────┘         └──────────────────┘         └─────────────┘

See System Architecture for detailed design.

API Usage

Waverless provides RunPod-compatible V1/V2 APIs and K8s management APIs.

Quick Example:

# Submit task
curl -X POST http://localhost:8080/v1/wan22/run \
  -H "Content-Type: application/json" \
  -d '{"input": {"prompt": "a beautiful landscape"}}'

# Query status
curl http://localhost:8080/v1/status/{task_id}

See User Guide for complete API documentation and usage examples.

Documentation

Waverless documentation has been streamlined into 3 core documents:

Document Description Audience
User Guide Quick start, configuration, autoscaling, Web UI, and troubleshooting Users, Operators
Architecture System architecture, components, data models, statistics, and GPU tracking Architects, System Designers
Developer Guide Advanced topics, graceful shutdown, concurrency safety, task tracking internals Developers, Contributors

Quick Links by Role

New Users: Start with User Guide → Quick Start section

Operators: User Guide → Configuration & Troubleshooting sections

Developers: ArchitectureDeveloper Guide

Architects: Architecture for complete system design

License

MIT License

Contact

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •