چیت‌شیت

مقایسه‌ی پلتفرم‌های ابری مدیریت‌شده و خودمیزبان

Managed Platforms and Self-Hosting Compared

انتخاب ابربزرگ، پلتفرم استنتاج یا موتور خودمیزبان. قیمت‌گذاری، تعیین اندازه و کاهش شروع سرد.

  • ۱۰ بخش
  • ۴ درس مرتبط
  • کد و دستورها عیناً از دوره‌ی اصلی
فهرست مطالب
  1. مقایسه‌ی رو‌در‌روی سه ابربزرگ (Hyperscaler)
  2. مقایسه‌ی پلتفرم‌های استنتاج رو‌در‌رو
  3. چه زمانی از ابربزرگ‌ها استفاده کنیم؟
  4. چه زمانی از پلتفرم‌ها یا میزبان اختصاصی استفاده کنیم؟
  5. انتخاب موتور خودمیزبان
  6. شروع سرد یک مدل 70B (بر حسب ثانیه)
  7. اجرای مدل‌ها در کد
  8. عیب‌یابی
  9. پرسش و پاسخ
  10. واژه‌نامه

مقایسه‌ی رو‌در‌روی سه ابربزرگ (Hyperscaler)

مقایسه
شاخصBedrockAzure OpenAIVertex AI
استراتژیمارکت‌پلیس مدل‌هامدل‌های اختصاصی OpenAIتمرکز اول روی Gemini
کاتالوگClaude، Llama، Titan، Mistral، CohereGPT، سری o، DALL·E، WhisperGemini به همراه Model Garden
میانه TTFTحدود 75 میلی‌ثانیه تقاضامحور (on-demand)حدود 50 میلی‌ثانیه با PTU60 میلی‌ثانیه در main.py
ظرفیت اختصاصیProvisioned Throughput، 21 تا 50 دلار بر ساعتPTU، تا 70 درصد صرفه‌جوییبه ازای هر SKU جیمینای
نقطه سر‌به‌سرحدود نصف حداکثر بهره‌وری (Peak)حدود 40 تا 60 درصد بهره‌وری پایدارکمتر به‌صورت عمومی اعلام شده
تفکیک هزینه‌هاApplication Inference Profileهادامنه‌ها (Scopes)، تگ‌ها، رزروهای PTUپروژه‌ی مجزا برای هر تیم، خروجی BigQuery
انطباق (Compliance)قراردادهای BAA، اندپوینت‌های VPC، گاردریل‌هاHIPAA، SOC 2، ISO 27001HIPAA، GDPR، اقامت داده به تفکیک منطقه

مقایسه‌ی پلتفرم‌های استنتاج رو‌در‌رو

مقایسه
شاخصFireworksTogetherBasetenModal
تمرکز بهینه‌سازیتاخیرتنوع و گستردگی کاتالوگکیفیت در رده‌ی سازمانیتجربه‌ی توسعه‌دهنده (DX) بومی پایتون
مدل هزینه‌ایبر حسب توکنبر حسب توکنبر حسب دقیقهبر حسب ثانیه
تعرفه در main.py0.90 دلار به ازای هر 1 میلیون توکن خروجی0.88 دلار به ازای هر 1 میلیون توکن خروجی0.55 دلار بر دقیقه0.48 دلار بر دقیقه
کف رزرو شدهنداردندارد1440 دقیقه بر روز60 دقیقه بر روز
شروع سرد در main.py1.5 ثانیه2.0 ثانیه5.0 ثانیه2.5 ثانیه
نکته‌ی کلیدیلایه‌ی پردازش دسته‌ای حدود 50٪ ارزان‌تر از سرورلسبیش از 200 مدلTruss، SOC 2 Type II@modal.function(gpu="A100")

چه زمانی از ابربزرگ‌ها استفاده کنیم؟

مفهوم‌ها
Bedrock
نیاز به Claude، Llama و سایر مدل‌ها در قالب یک API و یک سیستم IAM یکپارچه.
Bedrock
نیاز به تفکیک هزینه به ازای هر تیم، محصول یا قابلیت بدون پس‌پردازش.
Azure OpenAI
نیاز به مدل‌های GPT و رسیدن تاخیر صدک 99 (P99 TTFT) به زیر 100 میلی‌ثانیه با PTU.
Vertex AI
نیاز به پنجره بافت 1 میلیون توکنی Gemini یا ورودی‌های چندحالته.
دو ارائه‌دهنده
اجرای تمام فراخوانی‌های حیاتی محصول روی دو ابربزرگ.
جفت رایج
Claude از Bedrock، مدل GPT از Azure OpenAI، پشت یک گیت‌وی واحد.

چه زمانی از پلتفرم‌ها یا میزبان اختصاصی استفاده کنیم؟

مفهوم‌ها
سیلیکون اختصاصی
تاخیر بسیار حیاتی است. Groq انتخاب اصلی برای ایجنت‌های صوتی است.
Fireworks
نیاز به تاخیر پایین و اجرای LoRA با تعرفه مدل پایه.
Together
دسترسی به جدیدترین مدل‌های متن‌باز ظرف چند روز پس از انتشار.
Baseten
مدل فاین‌تیون‌شده، GPU اختصاصی، و گواهی‌های SOC 2 و HIPAA.
Modal
تیم شما با پایتون کد می‌زند و صورت‌حساب ثانیه‌ای می‌خواهد.
Replicate
سرو مدل‌های تصویر، ویدیو و صوت با پرداخت به ازای هر پیش‌بینی.
Anyscale
استنتاج تنها یک نود در یک گراف بزرگ‌تر Ray است.
خودمیزبان
اقامت داده، فاین‌تیون اختصاصی، کاهش هزینه در مقیاس بالا، یا عدم وجود مدل میزبانی‌شده.

انتخاب موتور خودمیزبان

گام‌به‌گام
  1. سخت‌افزار CPUاستفاده از llama.cpp؛ هیچ موتور دیگری روی CPU توان رقابت با آن را ندارد.
  2. سخت‌افزار AMDاستفاده از vLLM با ROCm؛ ابزار TRT-LLM فقط مخصوص انویدیا است.
  3. سخت‌افزار Blackwellپیشتازی TRT-LLM روی B200/GB200؛ سپس vLLM و SGLang.
  4. مقیاس 1 کاربراستفاده از Ollama؛ یک دستور، دریافت توکن اول در چند ثانیه.
  5. مقیاس 10 تا 100 کاربراستفاده از vLLM روی یک GPU تکی.
  6. مقیاس 100 تا 10 هزار کاربراستفاده از پشته‌ی عملیاتی vLLM یا SGLang.
  7. بار کاری ایجنتی یا با پیشوند سنگیناستفاده از توجه رادیکس در SGLang.
  8. پایپ‌لاین توسعهمحیط Dev با Ollama، محیط Staging با llama.cpp، محیط Prod با vLLM. تبدیل GGUF به safetensors.

شروع سرد یک مدل 70B (بر حسب ثانیه)

مقایسه
مرحلهخام (بدون بهینه‌سازی)ایمیج ازپیش‌آمادهاستریمر مدلاسنپ‌شات GPU
تخصیص نود (node provision)50.050.050.00.5
دریافت ایمیج (image pull)180.00.0180.00.0
انتقال وزن‌ها به حافظه HBM75.075.035.00.0
راه‌اندازی موتور20.020.020.02.0
اولین پاس رو به جلو (forward)3.03.03.00.5
ابزارهیچ‌کدامBottlerocket، EC2NodeClassRun:ai Model Streamerچک‌پوینت‌های Modal
دستاوردمجموع 328 ثانیه2 تا 4 دقیقه صرفه‌جوییحدود 2 برابر سرعت بارگذاری وزن‌هاراه‌اندازی مجدد 10 برابر سریع‌تر

اجرای مدل‌ها در کد

کار و کد
وظیفهکد
هزینه و TTFT به ازای هر ابربزرگsimulate(tokens_in_per_day, tokens_out_per_day, sla_ttft_ms, use_ptu)
بررسی نقطه سر‌به‌سر Azure PTUbreak_even_demo()
حداقل هزینه برای پیاده‌سازی دو ارائه‌دهندهlock_in_cost()
هزینه روزانه برای یک ارائه‌دهندهcost_per_day(v, tokens_per_day, predictions_per_day)
مقایسه هزینه بر حسب توکن در برابر بر حسب دقیقهutilization_breakeven()
شروع سرد برای پشته‌ی کاهش تاخیرtotal_for_stack({"pre_seeded", "streamer"})
نقطه سر‌به‌سر استخر نمونه‌های آمادهwarm_pool_break_even(gpu_hourly=4.50, cold_seconds=328, sla_tolerated_drops_per_day=5)
موتور مناسب سخت‌افزار، مقیاس و بار کاریpick_engine(hardware, scale, workload)

عیب‌یابی

عیب‌یابی
  • تاخیر P99 TTFT روی حالت تقاضامحور بالای 100 میلی‌ثانیه می‌رود

    علت
    ترافیک در ظرفیت اشتراکی با سایر کاربران رقابت می‌کند
    راه‌حل
    خرید PTU یا Provisioned Throughput
  • صورت‌حساب PTU در ترافیک پایین بالا است

    علت
    هزینه ظرفیت رزرو شده در زمان بیکاری نیز پرداخت می‌شود
    راه‌حل
    رزرو فقط در بهره‌وری مداوم حدود 40 تا 60 درصد
  • هزینه Bedrock با ترافیک مشابه 4 برابر شده

    علت
    هزینه‌ها به تفکیک ویژگی مشخص نشده‌اند
    راه‌حل
    هدایت فراخوانی‌ها از طریق Application Inference Profileها
  • نبود هزینه به ازای هر درخواست در Azure

    علت
    تگ‌ها از گروه‌های منابع (Resource Groups) خوانده می‌شوند
    راه‌حل
    متریک‌های سفارشی Application Insights یا هدرهای گیت‌وی
  • قطعی محصول هنگام خرابی یک ارائه‌دهنده

    علت
    وابستگی انحصاری به یک ارائه‌دهنده
    راه‌حل
    استفاده از حداقل دو ارائه‌دهنده پشت یک گیت‌وی واحد
  • توکن اول 3 تا 8 دقیقه طول می‌کشد

    علت
    شروع سرد خام مدل 70B پس از کاهش مقیاس به صفر
    راه‌حل
    ترکیب ایمیج ازپیش‌آماده، استریمر و اسنپ‌شات
  • بازیابی اسنپ‌شات روی نود جدید با خطا مواجه می‌شود

    علت
    اسنپ‌شات‌ها وابسته به توپولوژی دقیق GPU هستند
    راه‌حل
    ایجاد چک‌پوینت مجدد روی SKU جدید
  • پروژه‌ی جدید از TGI استفاده می‌کند

    علت
    قرار گرفتن در وضعیت نگهداری از 11 دسامبر 2025
    راه‌حل
    تغییر به vLLM یا SGLang به صورت پیش‌فرض

پرسش و پاسخ

پرسش و پاسخ
چرا Bedrock حدود 25 میلی‌ثانیه کندتر است؟
استفاده از ظرفیت تقاضامحور اشتراکی؛ PTUهای Azure پردازنده‌های گرافیکی را اختصاصی شما رزرو می‌کنند.
چه زمانی مدل دقیقه‌ای از توکنی به‌صرفه‌تر است؟
مستندات می‌گویند بالاتر از 30٪ بهره‌وری پایدار؛ main.py نشان می‌دهد در سیستم دقایق رزرو شده به 60 تا 70٪ نیاز است.
چه زمانی استخر نمونه‌های آماده اجباری است؟
معمولاً وقتی صدک 99 زمان تا توکن اول (P99 TTFT) در مدل‌های بالای 70B زیر 60 ثانیه خواسته شود.
هزینه استخر نمونه‌های آماده چقدر است؟
پنج محصول با یک نسخه‌ی آماده ماهانه 3,600 ساعت-GPU مصرف می‌کنند.
چرا مهاجرت زنده توکن‌ها را جابجا می‌کند؟
ورودی در حد کیلوبایت است اما کش کلید-مقدار چندین گیگابایت؛ محاسبه مجدد ارزان‌تر تمام می‌شود.
چرا نباید از Ollama در محیط عملیاتی استفاده کرد؟
15 تا 30 درصد کندتر از llama.cpp و تا 3 برابر افت عملکرد زیر بار محیط عملیاتی.

واژه‌نامه

اصطلاح‌ها
PTU
واحد نرخ پردازش پیش‌بینی‌شده؛ GPUهای استنتاج رزرو شده با هزینه ساعتی.
BAA
توافق‌نامه شراکت تجاری؛ الزامی برای داده‌های سلامت (PHI)، توسط هر سه ارائه می‌شود.
Application Inference Profile
پروفایل برچسب‌دار Bedrock با امکان تفکیک هزینه در CloudWatch.
Truss
مانیفست پلتفرم Baseten برای وابستگی‌ها، سکرت‌ها و پیکربندی سرو.
FireAttention
کرنل اختصاصی اتنشن در Fireworks.
RayTurbo
موتور انحصاری استنتاج بر بستر Ray در Anyscale.
min_workers
حداقل نمونه‌های فعال سرورلس؛ min_workers=1 یعنی یک استخر نمونه‌های آماده.
GGUF
فرمت وزن‌های llama.cpp با نسخه‌های کوانتیزه‌شده K-quant یکپارچه.