BentoML
BentoML является современной open-source платформой для создания, доставки и масштабирования AI-приложений. Она устраняет разрыв между экспериментами в ML и продакшн-развертыванием, позволяя за минуты упаковать любую модель из любого фреймворка в готовый к продакшну API-сервис. Запускайте BentoML в GPU-облаке Clore.ai для экономичного хостинга AI-приложений.
Что такое BentoML?
BentoML упрощает превращение обученной модели в масштабируемый API-сервис:
Независим от фреймворка: PyTorch, TensorFlow, JAX, scikit-learn, HuggingFace, XGBoost, LightGBM и другие
Bento: Самодостаточный, воспроизводимый артефакт (модель + код + зависимости)
Runner: Масштабируемый модуль инференса модели с автоматическим батчингом
Service: HTTP/gRPC-сервис в стиле FastAPI
BentoCloud: Опциональная управляемая платформа развертывания
Сначала Docker: Любой Bento можно контейнеризировать одной командой
Ключевые возможности:
Адаптивный микробатчинг для оптимизации пропускной способности
Встроенная валидация входа/выхода с Pydantic
OpenAPI-спецификация генерируется автоматически
Метрики Prometheus встроены
Поддержка потоковой передачи ответа (LLM)
Предварительные требования
VRAM GPU
8 ГБ
16–24 ГБ
GPU
Любой NVIDIA
RTX 4090 / A100
ОЗУ
8 ГБ
16 ГБ
Хранилище
20 ГБ
40 ГБ
Python
3.9+
3.11+
Шаг 1 — Арендуйте GPU на Clore.ai
Войдите в маркетплейсе clore.ai.
Нажмите Маркетплейс и выберите GPU-инстанс с ≥ 16 ГБ VRAM.
Установите Docker-образ: мы будем использовать пользовательскую сборку (см. Шаг 2).
Откройте порты:
22(SSH) и3000(сервис BentoML).Нажмите Аренда.
Шаг 2 — Dockerfile
У BentoML нет официального GPU Docker-образа, поэтому мы собираем свой:
Сборка и отправка
Соберите образ и отправьте его в свой аккаунт Docker Hub (замените YOUR_DOCKERHUB_USERNAME на ваше фактическое имя пользователя):
Шаг 3 — Подключение по SSH
Проверьте BentoML:
Шаг 4 — Ваш первый сервис BentoML
Простой текстовый классификатор
Создайте файл сервиса:
Запустите сервис
Шаг 5 — Доступ к сервису
Откройте автоматически сгенерированный Swagger UI:
Или протестируйте через curl:
Ожидаемый ответ:
Шаг 6 — Сервис классификации изображений
Сервис модели компьютерного зрения
Проверьте с помощью изображения:
Шаг 7 — Сервис потоковой передачи LLM
Для языковых моделей с потоковыми ответами:
Шаг 8 — Сохраните и соберите Bento
Один Bento — это упакованный, воспроизводимый артефакт:
bentofile.yaml
Мониторинг и метрики
BentoML предоставляет метрики Prometheus по адресу /metrics:
Основные метрики:
Конфигурация адаптивного батчинга
Устранение неполадок
Сервис не запускается
Решения:
Проверьте доступность CUDA:
python -c "import torch; print(torch.cuda.is_available())"Проверьте VRAM GPU:
nvidia-smiПроверьте, что загрузка модели завершена (ищите прогресс загрузки в логах)
Порт 3000 недоступен
Высокая задержка при первом запросе
Это нормально — первый запрос запускает загрузку модели (прогрев). Все последующие запросы будут быстрыми. Добавьте вызов endpoint для прогрева после запуска:
Ошибки импорта
Решение:
Рекомендации по GPU для Clore.ai
BentoML — это фреймворк для сервинга, поэтому требования к GPU полностью зависят от модели, которую вы развертываете. Вот чего ожидать для типичных нагрузок:
RTX 3090
24 ГБ
$0.07–0.21/ч
~80 ток/с
~4 изображ./мин
~400 запросов/с
RTX 4090
24 ГБ
$0.14–0.42/ч
~140 ток/с
~8 изображ./мин
~700 запросов/с
Рекомендации по вариантам использования:
Обслуживание API LLM (7B–13B): RTX 3090 ($0.07–0.21/час) — оптимальное соотношение цена/производительность
API генерации изображений: RTX 3090 или RTX 4090 в зависимости от требуемой пропускной способности
Большие модели (34B–70B Q4): A100 40GB (голое железо) — отлично подходит
Продакшн-сервинг нескольких моделей: A100 80GB для запаса по памяти
Полезные ресурсы
Последнее обновление
Это было полезно?