Этот репозиторий содержит серию примеров Bentoml Projects, демонстрирующих, как развернуть различные модели в семействе стабильной диффузии (SD), который специализируется на создании и манипулировании изображений или видеоклипов на основе текстовых подсказок.
Смотрите здесь полный список примеров Bentoml Projects.
В следующем руководстве используется SDXL Turbo в качестве примера.
Если вы хотите проверить услугу локально, мы рекомендуем вам использовать графический процессор NVIDIA не менее 12 ГБ VRAM.
git clone https://github.com/bentoml/BentoDiffusion.git
cd BentoDiffusion/sdxl-turbo
# Recommend Python 3.11
pip install -r requirements.txt Мы определили сервис Bentoml в service.py . Запустите bentoml serve в вашем каталоге проекта, чтобы начать службу.
$ bentoml serve .
2024 - 01 - 18 T18 : 31 : 49 + 0800 [ INFO ] [ cli ] Starting production HTTP BentoServer from "service:SDXLTurboService" listening on http : // localhost : 3000 ( Press CTRL + C to quit )
Loading pipeline components ...: 100 %Сервер теперь активен на http: // localhost: 3000. Вы можете взаимодействовать с ним, используя пользовательский интерфейс Swagger или другими способами.
Загрязнение
curl -X ' POST '
' http://localhost:3000/txt2img '
-H ' accept: image/* '
-H ' Content-Type: application/json '
-d ' {
"prompt": "A cinematic shot of a baby racoon wearing an intricate italian priest robe.",
"num_inference_steps": 1,
"guidance_scale": 0
} 'Python Client
import bentoml
with bentoml . SyncHTTPClient ( "http://localhost:3000" ) as client :
result = client . txt2img (
prompt = "A cinematic shot of a baby racoon wearing an intricate italian priest robe." ,
num_inference_steps = 1 ,
guidance_scale = 0.0
)Подробные объяснения кода обслуживания см. Стабильную диффузию XL Turbo.
После того, как сервис будет готов, вы можете развернуть приложение в Bentocloud для лучшего управления и масштабируемости. Зарегистрируйтесь, если у вас нет учетной записи Bentocloud.
Убедитесь, что вы вошли в Bentocloud, затем запустите следующую команду, чтобы развернуть ее.
bentoml deploy .После того, как приложение будет запущено на Bentocloud, вы можете получить к нему доступ через открытый URL.
ПРИМЕЧАНИЕ . Для пользовательского развертывания в вашей собственной инфраструктуре используйте Bentoml для создания изображения, соответствующего OCI.
Чтобы развернуть другую диффузионную модель, перейдите к соответствующим подкатариям этого репозитория.