17 repository-uri
Grouping multiple model inference requests into a single hardware execution pass to maximize throughput.
Distinct from Request Batching: Focuses on GPU/NPU compute batching for model inference rather than general data operation or network request batching.
Explore 17 awesome GitHub repositories matching data & databases · Inference Batching. Refine with filters or upvote what's useful.
Acest proiect este un serviciu de embedding BERT de înaltă performanță și un server de inferență conceput pentru a mapa secvențele de text în vectori numerici de lungime fixă. Funcționează ca un microserviciu de învățare automată și server de model distribuit care decuplează gestionarea cererilor de calculul intensiv. Sistemul utilizează o infrastructură de mesagerie ZeroMQ pentru a oferi comunicare cu latență scăzută între clienții distribuiți și serverul de inferență. Încorporează procesarea în loturi pe partea de server și scalarea workload-ului GPU pentru a maximiza utilizarea hardware-ului și a gestiona volume mari de cereri. Platforma suportă infrastructura de căutare semantică prin generarea de embedding-uri cross-modale atât pentru text, cât și pentru imagini într-un spațiu vectorial partajat. Acest lucru permite căutarea cross-modală, clasarea relevanței conținutului și re-clasarea rezultatelor pe baza alinierii semantice între conținutul vizual și descrierile textuale. Serviciul poate fi implementat ca un microserviciu elastic accesibil prin protocoale gRPC, HTTP sau WebSocket, dispunând de streaming duplex non-blocant pentru gestionarea seturilor mari de date.
Groups individual requests into optimized batches to maximize GPU throughput during inference.
StreamDiffusion is an interactive generative AI framework and inference engine designed for the low-latency delivery of image and video streams. It provides a real-time Stable Diffusion pipeline for text-to-image and image-to-image generation, enabling the creation of continuous generative image streams with minimized computational delay. The framework optimizes throughput using a pre-computed cache engine and residual-based guidance approximation to reduce the number of required model passes. It further manages GPU load through similarity-based frame skipping, which avoids redundant computat
Implements batching of inference requests to maximize GPU throughput and minimize computational overhead.
FlexLLMGen is an inference engine and runtime designed to run large language models on a single GPU by combining weight compression with tensor offloading. It reduces model weight memory usage by approximately 70% through 4-bit quantization, and stores model parameters, attention cache, and hidden states across GPU, CPU, and disk to fit models larger than available GPU memory. The project distinguishes itself through a throughput-oriented batching approach that processes multiple generation requests together in large batches to maximize throughput on a single GPU. It also supports distributed
Processes multiple generation requests together in large batches to maximize throughput on a single GPU.
This project is an AI singing voice conversion system and vocal processor used for training generative voice models and converting vocal recordings or live input into a target voice. It functions as a VITS model trainer and a real-time voice changer that transforms vocal timbre and pitch to change the identity of a singer. The system provides a graphical management dashboard for controlling training hyperparameters and voice conversion presets. It supports low-latency audio streaming for live microphone input and employs pitch estimation to ensure precise matching between source and target vo
Implements grouping of multiple audio segments into single GPU execution passes to accelerate batch inference throughput.
KServe is a Kubernetes-native platform for deploying and serving machine learning models as scalable inference services. It supports both generative AI models, including large language models, and traditional predictive models from frameworks such as TensorFlow, PyTorch, Scikit-Learn, XGBoost, and ONNX. The platform manages the full lifecycle of model deployments, including revision tracking, canary rollouts, A/B testing, and automatic rollbacks, and provides serverless scale-to-zero capabilities for cost-efficient resource management. KServe distinguishes itself through a standardized infere
Groups multiple prediction requests into a single batch to improve throughput on GPU and CPU runtimes.
KServe is an open platform for deploying and serving generative and predictive AI models on Kubernetes. It defines inference services as custom resources with declarative YAML specifications, enabling a Kubernetes-native approach to model deployment and lifecycle management. The platform leverages Knative-based serverless scaling for automatic scale-to-zero and revision management, and supports a pluggable serving runtime architecture that maps model formats to containerized execution environments. KServe distinguishes itself through model-aware autoscaling that scales replicas based on token
Accumulates multiple prediction requests and processes them together to increase throughput.
Acest proiect este un ghid arhitectural MLOps și un framework pentru proiectarea și implementarea sistemelor de deep learning în medii de producție. Oferă o abordare structurată pentru implementarea inferenței modelelor, orchestrarea pipeline-urilor ML și crearea de arhitecturi de machine learning la nivel de producție. Proiectul se distinge printr-un accent pe deep learning distribuit și optimizarea AI la margine (edge AI). Acoperă metodologii pentru paralelizarea antrenării modelelor pe mai multe GPU-uri pentru a gestiona seturi mari de date și aplică tehnici precum cuantizarea și distilarea pentru a reduce dimensiunea modelului pentru hardware-ul embedded. Suprafața de capabilități se extinde la monitorizare și observabilitate, incluzând urmărirea performanței modelului, data drift-ul și metricile experimentelor. Abordează, de asemenea, orchestrarea fluxului de lucru al datelor, versionarea seturilor de date prin object stores și gestionarea cererilor de inferență de mare volum folosind batching adaptiv și orchestrare bazată pe containere.
Implements adaptive batching to maximize GPU throughput while maintaining latency limits for model inference.
exllamav2 este o bibliotecă de inferență de înaltă performanță concepută pentru a rula modele de limbaj mari local pe GPU-uri de consum. Oferă un runner accelerat prin GPU și instrumente de cuantizare pentru a permite execuția modelelor fără a depinde de servicii de calcul bazate pe cloud. Proiectul dispune de un utilitar de cuantizare care comprimă modelele în bitrate-uri mixte între doi și opt biți pentru a reduce cerințele de memorie video (VRAM). Se distinge printr-un generator de text batch care gestionează cererile grupate și deduplică datele din cache pentru a crește throughput-ul. Biblioteca acoperă o suprafață largă de capabilități, inclusiv streaming asincron de token-uri pentru output în timp real, execuție de kernel-uri GPU personalizate pentru operații de algebră liniară și maparea memoriei locale pentru acces cu latență scăzută la ponderile modelului.
Groups multiple model inference requests into a single hardware execution pass to maximize GPU throughput.
exllamav2 este un motor de inferență și framework de înaltă performanță pentru executarea modelelor de limbaj mari local pe GPU-uri de clasă consumer. Oferă un sistem complet pentru deployment-ul local al modelelor, incluzând un motor de inferență specializat și instrumente pentru cuantizarea modelelor. Proiectul dispune de un framework de inferență multi-GPU care distribuie sarcinile de lucru pe mai multe plăci grafice pentru a rula modele care depășesc capacitatea de memorie a unui singur dispozitiv. Include un cuantizator de modele GPU capabil să convertească modelele în formate de precizie mixtă între 2 și 8 biți pentru a echilibra utilizarea memoriei și acuratețea. Motorul suportă generarea de text cu throughput ridicat prin inferență paralelă bazată pe batch-uri și streaming asincron de output. Aceste capabilități sunt susținute de kernel-uri CUDA personalizate și deduplicarea cache-ului pentru a optimiza utilizarea hardware-ului și a reduce latența în timpul generării de token-uri.
Executes multiple text completion prompts simultaneously using batch-based parallel inference to maximize GPU utilization.
Acest proiect este un framework de servire a modelelor PyTorch conceput pentru a deploya și scala modele de machine learning în producție prin endpoint-uri de rețea scalabile. Funcționează ca un server de inferență de înaltă performanță, optimizator și manager al ciclului de viață al modelelor care gestionează încărcarea modelelor, batching-ul cererilor și accelerarea hardware. Sistemul se distinge prin capabilități avansate de orchestrare și optimizare, cum ar fi înlănțuirea mai multor modele în fluxuri de lucru secvențiale folosind grafuri de execuție și utilizarea batching-ului dinamic pentru a îmbunătăți throughput-ul și latența. Oferă suport specializat pentru AI generativ și modele de limbaj mari (LLM) prin batching continuu și paralelism tensorial. Ariile largi de capabilități includ gestionarea resurselor GPU pe diverse hardware-uri precum NVIDIA, AMD și Apple Silicon, precum și gestionarea cuprinzătoare a ciclului de viață al modelelor pentru înregistrare, versionare și scalarea worker-ilor. De asemenea, integrează instrumente de observabilitate pentru urmărirea stării sistemului și a performanței modelului prin metrici compatibile cu Prometheus. Serverul este gestionat printr-o interfață de linie de comandă utilizată pentru controlul ciclului de viață și configurarea parametrilor de runtime.
Groups multiple model inference requests into a single hardware execution pass to maximize GPU throughput.
tiny-llm is a large language model inference engine and transformer model implementation. It serves as a quantized model runtime and paged key-value cache manager, providing a specialized inference stack optimized for Apple Silicon. The system distinguishes itself through high-throughput execution techniques, including continuous batching and paged attention. It utilizes a paged memory system to eliminate fragmentation during token generation and employs on-the-fly dequantization of compressed weights to reduce the memory footprint during matrix multiplication. The project covers a broad ran
Groups multiple incoming requests into a single hardware execution pass to maximize throughput.
LitServe este un framework Python pentru servere de inferență AI și un framework de servire LLM conceput pentru inferență de înaltă concurență. Funcționează ca un server de model AI distribuit și un motor de inferență cu batching dinamic, oferind instrumentele necesare pentru a construi și găzdui servere personalizate care rulează modele AI. Framework-ul se distinge printr-o coadă de cereri cu batching dinamic care grupează cererile individuale de inferență în tensori unici pentru a maximiza throughput-ul GPU. Suportă scalarea GPU distribuită, permițând sarcinilor de lucru ale modelelor să fie distribuite pe mai multe acceleratoare hardware pentru a echilibra sarcinile de calcul și a crește capacitatea totală. Sistemul oferă o interfață wrapper de nivel înalt care decuplează preprocesarea și postprocesarea cererilor de logica de bază de execuție a modelului. Include, de asemenea, capabilități pentru streaming-ul modelelor în timp real pentru a livra output-uri incremental și utilizează o buclă de evenimente asincronă pentru a gestiona cererile de rețea concurente.
Groups multiple incoming AI requests into single batches to maximize GPU hardware utilization.
LightLLM is a high-performance serving framework for deploying and executing large language models. It functions as a multi-GPU inference engine and server capable of handling dense architectures, mixture-of-experts designs, and multimodal models that process both text and images. The system is distinguished by its specialized support for Mixture-of-Experts models using expert parallelism and fused kernels. It implements structured text generation through deterministic state machines and pushdown automata to enforce precise output formats. To optimize throughput, the framework employs specula
Merges new requests into active inference batches by calculating estimated token usage against hardware capacity.
WhisperLive is a real-time speech-to-text server that converts live audio streams into text using Whisper models. It functions as a backend service that receives microphone input via WebSockets and provides incremental transcriptions with word-level timestamps. The system utilizes a GPU-accelerated inference engine and a keyword-boosted transcription API to improve the recognition accuracy of domain-specific jargon, acronyms, and product names. It also includes a speaker diarization tool that clusters audio embeddings to identify and label different participants within a recording. Additiona
Groups multiple concurrent user audio segments into single GPU calls to maximize system throughput.
Lorax is a GPU-accelerated inference server and multi-adapter engine designed for serving large language models. It functions as a high-throughput system capable of deploying models via Kubernetes and managing the dynamic swapping of Low-Rank Adaptation adapters per request. The server distinguishes itself through multi-adapter dynamic batching, which allows requests using different adapter weights to be processed in a single GPU forward pass. It employs just-in-time adapter loading and weighted adapter merging to maximize throughput and enable multi-tasking without sacrificing performance.
Processes requests using different LoRA adapters in a single GPU forward pass to maximize throughput.
mini-sglang is a collection of tools for large language model inference, serving as an OpenAI-compatible inference server, a memory-efficient prefill engine, and a tensor parallelism runtime. It also functions as a local batch processing engine for offline benchmarking and ablation studies. The project focuses on acceleration and memory management through a KV cache manager that reuses precomputed caches for shared request prefixes. It handles large model workloads by distributing tasks across multiple GPUs and manages peak memory consumption by splitting long input sequences into smaller chu
Provides a local batch processing engine to maximize hardware utilization for offline benchmarking.
llm-d is a distributed serving framework designed for large language model inference. It functions as an inference orchestrator and gateway, providing a control plane for deploying model replicas and managing hardware accelerators. The system includes a batch inference scheduler and a cache manager to coordinate request flow and memory utilization. The project is distinguished by a disaggregated serving architecture that separates prefill and decode execution phases across specialized workers to maximize throughput. It employs a hardware-agnostic control plane and tiered cache offloading, mov
Manages large volumes of offline inference requests through queuing and flow control to maximize hardware utilization.