Короткий ответ:
🥇 Для GPU-сервинга с OpenAI-совместимым API: vLLM — проект позиционируется как high-throughput и memory-efficient inference/serving engine для LLM и даёт HTTP server, совместимый с OpenAI Completions и Chat Completions API.
🥈 Для самого простого локального запуска: Ollama — самый прямой путь к локальному API и простому workflow; по умолчанию локальный API использует http://localhost:11434/api.
🥉 Для CPU, GGUF и лёгкого self-hosting: llama.cpp — fast, lightweight, pure C/C++ HTTP server для F16 и quantized моделей на CPU и GPU, с OpenAI-compatible и Anthropic Messages-compatible режимами.
Если вам нужен практический вывод в одну строку: для новых GPU-установок разумно сначала смотреть на vLLM или SGLang, для простого локального старта — на Ollama, для CPU/GGUF — на llama.cpp. TGI сегодня стоит держать скорее как legacy-вариант для существующих инсталляций, потому что официальный репозиторий и документация прямо отмечают maintenance mode.
Как отбирали
- Задача: выбрать inference-серверы именно для локальных моделей, а не desktop-клиенты, облачные API или UI-оболочки.
- Аудитория: разработчики, MLOps-инженеры, исследователи и команды, которым нужен локальный server layer для LLM.
- Дата среза: 2026-08-15.
- Критерии допуска: официальный проект с документацией или репозиторием; явный server/use case для локального inference; подтверждённый API или режим serving.
- Критерии исключения: desktop-приложения без фокуса на server layer; managed cloud endpoints; проекты без подтверждённой документации в source pack.
- Способ проверки: сверили официальные репозитории и документацию из source pack; собственные latency/throughput-бенчмарки в этот материал не включали.
- Партнёрские отношения: в предоставленном source pack не заявлены.
Редакционное ограничение: здесь нет синтетического сравнения производительности на одинаковом железе. Для vLLM, SGLang, TensorRT-LLM и TGI релизы и матрицы совместимости меняются быстро, поэтому перед внедрением сверяйте текущие release notes и документацию для конкретной версии.
Сводная таблица
| Название | Кому подходит | Ключевая фишка | Цена | Недостаток | Ссылка |
|---|---|---|---|---|---|
| vLLM | GPU-optimized OpenAI-compatible serving для локальных LLM | High-throughput и memory-efficient engine плюс HTTP server для OpenAI Completions и Chat Completions | В source pack не проверялась; смотрите официальный проект | --api-key не покрывает все endpoints; /invocations остаётся без аутентификации |
→ Официальный проект |
| Ollama | Самый простой локальный workflow и локальный API | Простой локальный API; по умолчанию база http://localhost:11434/api |
В source pack не проверялась; смотрите официальный проект | OpenAI compatibility частичная; Responses API поддерживается только в non-stateful варианте | → Официальный проект |
| llama.cpp | CPU-first и GGUF-quantized локальный inference | Lightweight C/C++ HTTP server для F16 и quantized моделей на CPU и GPU | В source pack не проверялась; смотрите официальный проект | Больше ручной настройки и проверки совместимости | → Обзор на COMRAD404 |
| SGLang | High-throughput multi-GPU и multimodal serving | Поддержка OpenAI-Compatible APIs, Ollama API, Offline Engine API и Native API | В source pack не проверялась; смотрите официальный проект | Setup сложнее; FlashInfer требует sm75+ | → Официальный проект |
| TensorRT-LLM | NVIDIA GPU-ориентированный serving с упором на оптимизацию | trtllm-serve запускает OpenAI-compatible server |
В source pack не проверялась; смотрите официальный проект | NVIDIA-centric; TensorRT backend удалён, актуальный execution backend — PyTorch | → Официальный проект |
| Text Generation Inference (TGI) | Существующие Hugging Face/TGI deployment | Подходит как совместимый экосистемный вариант для уже работающих инсталляций | В source pack не проверялась; смотрите официальный проект | Проект находится в maintenance mode | → Официальный проект |
vLLM
- Кому подходит: если вам нужен OpenAI-compatible HTTP layer поверх локальной GPU-модели и вы целитесь в высокий throughput.
- Сильная сторона: проект описывает себя как high-throughput и memory-efficient inference/serving engine для LLM. В документации есть HTTP server, совместимый с OpenAI Completions и Chat Completions API, а в
RELEASE.mdотдельно указана регулярность релизов примерно раз в две недели. - Ограничение: защита через
--api-keyпокрывает только OpenAI-compatible/v1endpoints и связанные/v2//inference, но не все остальные endpoints;/invocationsостаётся без аутентификации. Для production нужен дополнительный hardening. - Цена: в source pack не проверялась; смотрите официальный проект (срез 2026-08-15).
- Ссылка: → Официальный проект
Ollama
- Кому подходит: если вам нужен самый простой локальный workflow с pull/run моделей и локальным API без долгого разворачивания серверного стека.
- Сильная сторона: документация явно разделяет локальный API и cloud API: локально по умолчанию используется
http://localhost:11434/api, для cloud —https://ollama.com/api. Для быстрого старта это один из самых понятных вариантов в подборке. - Ограничение: OpenAI compatibility у Ollama частичная: поддерживаются chat completions, completions, models, embeddings и responses, но Responses API работает только в non-stateful варианте. Плюс сама документация отмечает, что API не является строго версионированным, хотя ожидается обратная совместимость и deprecations публикуются в release notes.
- Цена: в source pack не проверялась; смотрите официальный проект (срез 2026-08-15).
- Ссылка: → Официальный проект
llama.cpp
- Кому подходит: если у вас CPU-first сценарий, GGUF-стек или вам нужен очень лёгкий локальный сервер для F16 и quantized моделей.
- Сильная сторона: server в llama.cpp описан как fast, lightweight, pure C/C++ HTTP server для F16 и quantized моделей на GPU и CPU. Он поддерживает OpenAI-compatible chat completions, responses и embeddings, а также Anthropic Messages-compatible chat completions. В примерах используется адрес
127.0.0.1:8080. - Ограничение: возможностей много, но в практическом разворачивании обычно больше ручной настройки и проверки совместимости, чем в максимально упрощённых локальных оболочках. Если вам нужен отдельный разбор этого стека, смотрите карточку llama.cpp на COMRAD404.
- Цена: в source pack не проверялась; смотрите официальный проект (срез 2026-08-15).
- Ссылка: → Полный обзор
SGLang
- Кому подходит: если вы строите high-throughput multi-GPU или multimodal serving и вам нужен более широкий набор API-режимов.
- Сильная сторона: SGLang описан как high-performance serving framework для large language и multimodal models с упором на low-latency и high-throughput inference. В Basic Usage перечислены OpenAI-Compatible APIs, Ollama API, Offline Engine API и Native API.
- Ограничение: setup сложнее, чем у максимально простых локальных вариантов. Отдельно учитывайте, что по документации FlashInfer поддерживает только
sm75и выше. - Цена: в source pack не проверялась; смотрите официальный проект (срез 2026-08-15).
- Ссылка: → Официальный проект
TensorRT-LLM
- Кому подходит: если у вас NVIDIA-centric стек и вы хотите OpenAI-compatible server в экосистеме TensorRT-LLM.
- Сильная сторона: quick start прямо указывает, что
trtllm-serveзапускает OpenAI-compatible server. Это делает проект понятным кандидатом для тех, кто строит локальный serving вокруг NVIDIA GPU. - Ограничение: релизные заметки фиксируют важное изменение: TensorRT backend удалён, и PyTorch теперь является единственным execution backend. Это нужно учитывать при миграции старых инструкций и существующих инсталляций.
- Цена: в source pack не проверялась; смотрите официальный проект (срез 2026-08-15).
- Ссылка: → Официальный проект
Text Generation Inference (TGI)
- Кому подходит: прежде всего тем, у кого уже есть Hugging Face/TGI deployment или совместимая внутренняя инфраструктура.
- Сильная сторона: TGI остаётся понятным экосистемным вариантом для legacy-сценариев, где важнее не новый старт с нуля, а совместимость с уже работающей установкой.
- Ограничение: официальный репозиторий и документация отмечают maintenance mode. Более того, документация прямо направляет пользователей к альтернативным движкам вроде vLLM, SGLang и llama.cpp, поэтому для новых локальных инсталляций это уже не базовый выбор.
- Цена: в source pack не проверялась; смотрите официальный проект (срез 2026-08-15).
- Ссылка: → Официальный проект
Как выбрать: по железу, API и уровню внедрения
По железу
- CPU или GGUF: начинайте с llama.cpp. Это профильный вариант для лёгкого локального inference, особенно если вы работаете с quantized-моделями или компактными сборками после дистилляции моделей.
- GPU-serving общего назначения: в первую очередь смотрите на vLLM и SGLang. Оба проекта прямо позиционируются как serving-движки с акцентом на производительность.
- NVIDIA-centric стек: TensorRT-LLM стоит проверять отдельно, особенно если вы хотите остаться в этом GPU-контуре и готовы учитывать актуальный backend-статус из release notes.
- Нужен минимум трения на локальной машине: Ollama обычно проще всего поднять и подключить к локальному workflow.
По API-совместимости
- Нужен OpenAI-style клиентский путь: в короткий список попадают vLLM, llama.cpp, TensorRT-LLM и SGLang.
- Нужна совместимость с Ollama API: смотрите на Ollama и SGLang, потому что документация SGLang отдельно перечисляет такой тип API.
- Нужен Anthropic Messages-compatible режим: из проверенных источников это явно заявлено для llama.cpp.
- Важно помнить: наличие отметки OpenAI-compatible не означает полную drop-in совместимость со всеми клиентами и всеми endpoint-ами. Это прямо отмечено среди неопределённостей source pack.
По уровню внедрения
- Новый локальный проект: если вы не хотите начинать с legacy-стека, выбирайте между Ollama, llama.cpp, vLLM и SGLang по железу и API.
- Существующий TGI deployment: TGI можно оставлять как совместимый вариант, но план миграции теперь выглядит разумным, потому что проект в maintenance mode.
- Если вам пока нужен не сервер, а настольный клиент: сначала посмотрите лучшие инструменты для локального запуска моделей и сравнение LM Studio vs Jan.ai. Это другой уровень стека, и его часто путают с inference-сервером.
Практический вердикт
Если вы выбираете один сервер на старт и не хотите ошибиться по классу решения, логика обычно такая: Ollama — для простого локального API, llama.cpp — для CPU/GGUF и лёгкого self-hosting, vLLM — для GPU-serving с OpenAI-style интерфейсом, SGLang — когда нужен более широкий API-слой и multimodal/multi-GPU контур, TensorRT-LLM — когда вы уже сознательно идёте в NVIDIA-centric стек. TGI я бы не брал как первый выбор для новой локальной установки без сильной причины.
Практический лимит этой подборки: без собственных тестов на вашем железе нельзя честно назвать один сервер «лучшим вообще». Здесь есть только надёжный shortlist по документации и текущему статусу проектов на 2026-08-15.
Кого не включили и почему
Поимённый список исключений здесь сознательно ограничен: в source pack проверены только шесть семейств серверов. Поэтому ниже — классы решений, которые мы не смешивали с inference-серверами.
- Desktop GUI для локальных моделей: исключили, потому что это подборка про server layer, а не про интерфейсы для чата и загрузки моделей.
- Managed cloud endpoints: не соответствуют критерию локального inference.
- Неподтверждённые форки и экспериментальные обёртки: не прошли критерий проверяемости по официальной документации в source pack.
- Серверы без подтверждённого HTTP/API-слоя в проверенных источниках: не вошли, потому что в этой подборке нужен именно практический serving endpoint.
Как выбрать самостоятельно
- На каком железе вы реально будете запускаться: CPU, mixed CPU/GPU или NVIDIA GPU?
- Нужен ли вам именно OpenAI-compatible API, или достаточно локального собственного API?
- Нужен ли multimodal serving или хватит текстового LLM-сервера?
- Насколько критична простота первого запуска по сравнению с гибкостью и ручной настройкой?
- Вы запускаете новый проект или поддерживаете существующий стек, например TGI?
Источники
- GitHub – vllm-project/vllm
- vLLM OpenAI-Compatible Server
- vLLM Security
- vllm-project/vllm RELEASE.md
- Ollama API Introduction
- Ollama OpenAI Compatibility
- llama.cpp server README
- TensorRT-LLM Quick Start Guide
- TensorRT-LLM Release Notes
- SGLang Documentation
- SGLang Basic Usage
- SGLang Installation
- GitHub – huggingface/text-generation-inference
- TGI Documentation
Вопросы и ответы
Какой inference-сервер проще всего поднять локально?
Если смотреть только на текущий source pack, самый низкий порог входа у Ollama. Если же вам нужен больший контроль над CPU/GGUF-стеком, тогда логичнее смотреть на llama.cpp.
Что выбрать для CPU и квантованных моделей?
llama.cpp — самый очевидный кандидат в этой подборке. Его server прямо описан как lightweight HTTP server для F16 и quantized моделей на CPU и GPU.
Можно ли считать OpenAI-compatible полной гарантией совместимости?
Нет. В source pack отдельно отмечено, что API-совместимость не означает полную drop-in совместимость со всеми клиентами и всеми endpoint-ами. Проверяйте именно те методы, которые использует ваше приложение.
Подходит ли vLLM для production без дополнительной защиты?
Не стоит считать это самоочевидным. Документация по безопасности прямо говорит, что --api-key в vLLM не покрывает все endpoints, а /invocations остаётся без аутентификации, поэтому нужен дополнительный hardening.
Стоит ли начинать новый проект с TGI?
Скорее нет, если у вас нет причины держаться за существующий стек. И репозиторий, и документация TGI подтверждают maintenance mode и указывают на альтернативы вроде vLLM, SGLang и llama.cpp.