يحتوي هذا المستودع على سلسلة من مشاريع مثال Bentoml ، مما يوضح كيفية نشر نماذج مختلفة في عائلة الانتشار المستقر (SD) ، وهي متخصصة في توليد الصور أو مقاطع الفيديو على أساس المطالبات النصية.
انظر هنا للحصول على قائمة كاملة بمشاريع مثال Bentoml.
يستخدم الدليل التالي SDXL Turbo كمثال.
إذا كنت ترغب في اختبار الخدمة محليًا ، نوصيك باستخدام GPU 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
} 'عميل بيثون
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.
لنشر نموذج انتشار مختلف ، انتقل إلى الدلائل الفرعية المقابلة لهذا المستودع.