
Deploy LLM trên Serverless GPU: 5 nền tảng, giá thật, cold start thật
RunPod tính phí 2,72 $/giờ cho một chiếc A100 80GB. Endpoint của bạn nhận được mười hai request trước giờ ăn trưa. Chiếc GPU đó ngồi không 23 tiếng còn lại, và vẫn tính phí suốt thời gian ấy. Deploy LLM trên serverless GPU và bạn chỉ trả tiền khi có request đang chạy. Năm nền tảng làm được điều này. Họ tính phí theo năm đơn vị khác nhau. Không ai chuẩn hóa chúng.
Một GPU ngồi không tốn đúng bằng một GPU đang bận.
Những điểm chính
- Serverless GPU chỉ tính phí khi request đang chạy và scale về 0 giữa các request.
- Cloud Run chỉ có một GPU mỗi instance; model 70B cần nhiều GPU, nên serverless thường không host được chúng.
- Model weights nằm trong image, trên network volume, hoặc bị tải lại ở mỗi cold start.
- Cold start gồm ba thứ: khởi động container, tải weights, khởi tạo engine. Chỉ thứ đầu tiên là nhanh.
- Dưới khoảng 47.000 request mỗi ngày, scale-to-zero rẻ hơn một GPU thuê 24/7.
"Serverless GPU" thực sự có nghĩa gì với một LLM?
Nền tảng serverless GPU chạy container suy luận của bạn trên phần cứng GPU dùng chung, bật nó lên khi có request đến, và scale về 0 khi traffic dừng. Bạn trả tiền theo giây (hoặc theo phút, hoặc theo giờ, tùy nhà cung cấp) chỉ trong lúc container còn sống. Không hóa đơn cho thời gian rảnh. Không reserved instance.
Đơn vị tính phí khác nhau theo từng nhà cung cấp, đó là lý do phần tiếp theo chuẩn hóa mọi thứ về $/GPU-giờ.
Có hai ràng buộc khiến nhiều người bất ngờ. Thứ nhất, Google Cloud Run cho phép tối đa một GPU mỗi instance. Điều đó chặn trần VRAM của bạn ở đúng một card. Thứ hai, "serverless" không có nghĩa là trạng thái bền vững. Không có tiến trình sống lâu nào giữ weights của bạn trong RAM giữa các request. Khi container chết, mọi thứ trong bộ nhớ chết theo. Chính sự thật đó quyết định lựa chọn lưu trữ trong phần model weights bên dưới.
Serverless không có nghĩa là không có server. Nó có nghĩa là không có server giữa các request của bạn, và đó chính xác là nơi model weights của bạn biến mất.
Nên chọn nền tảng serverless GPU nào? (Giá 2026, đặt cạnh nhau)
Chúng tôi không bán nền tảng nào trong số này và không nhận doanh thu affiliate từ bất kỳ nền tảng nào. Trong bảy bài viết đang cạnh tranh cho truy vấn này và các biến thể gần của nó, bốn bài được xuất bản bởi chính công ty bán serverless GPU. Bảng này thì không.
Mọi mức giá được đọc trực tiếp từ trang pricing của chính các nhà cung cấp vào ngày 30-07-2026. Giá thay đổi; hãy kiểm tra lại trước khi cam kết.
| Nền tảng | Đơn vị công bố (nguyên văn của họ) | $/GPU-giờ (A100 80GB) | $/GPU-giờ (H100) | Credit miễn phí | Chọn nền tảng này nếu... |
|---|---|---|---|---|---|
| Modal | $0.000694/s | $2.50 | $3.95 | $30/tháng gói Starter | bạn muốn tính phí theo giây, build nhanh và GPU snapshots |
| RunPod | $2.72/hr | $2.72 | $4.55 | không công bố | bạn muốn menu GPU rộng nhất với giá theo giờ cố định |
| Beam | $0.000625/s | $2.25 | $3.55 | $30/tháng | bạn muốn không bị tính phí cho spin-up và tải image |
| Baseten | $0.06667/min | $4.00 | $6.50 | có, không công bố số tiền | bạn muốn inference được quản lý với tính phí theo compute đang chạy |
| Cloud Run | theo giây (L4 và RTX PRO 6000 Blackwell; không có A100/H100) | không công bố (không có A100) | không công bố (không có H100) | $300 credit GCP | bạn đã ở trên GCP và cần kiểm soát region EU/US |
Phép tính chuẩn hóa, hiển thị một lần để bạn tự kiểm tra: A100 80GB của Modal ở mức $0.000694/s nhân với 3600 giây bằng $2.4984/giờ. Beam: $0.000625 nhân 3600 bằng $2.25/giờ. Baseten: $0.06667/phút nhân 60 bằng $4.00/giờ. Chênh lệch 1,8 lần giữa Beam và Baseten cho cùng một chiếc A100 là thật, và nó trốn ngay trước mắt vì không ai công bố cùng một đơn vị.
Ba lưu ý. Trang giá của Beam nói rõ họ không tính phí cho spin-up máy chủ hay tải container image. FAQ về giá của Baseten trả lời "Tôi có phải trả phí thời gian rảnh trên Baseten không?" bằng "Không, bạn không phải trả phí thời gian rảnh," rồi nói thêm rằng thời gian tính phí là "thời gian model của bạn đang được deploy, scale lên hoặc xuống, hoặc đang tạo dự đoán", vậy nên đồng hồ đo đếm nhiều thứ hơn thời gian dự đoán, và đó là phần cần đưa vào ngân sách. RunPod công bố giá theo giờ và không có con số cold start nào trên trang pricing.
Nếu Modal là lựa chọn của bạn, chúng tôi đã viết một hướng dẫn Modal đầy đủ riêng.
Model của bạn có vừa không? VRAM, giới hạn một GPU và quota
Bạn có thể chạy model 70B trên serverless GPU không? Thường là không. Ở FP16, 70B cần ~140 GB VRAM. Cloud Run chặn ở một GPU mỗi instance (tối đa 96 GB trên RTX PRO 6000). Bài toán không khép lại được nếu không có lượng tử hóa (FP8/GGUF) hoặc một nền tảng đa GPU.
| GPU | VRAM | CPU / bộ nhớ tối thiểu | Trần model điển hình |
|---|---|---|---|
| L4 | 24 GB | 4 CPU / 16 GiB | 7B-13B (FP16), tối đa 30B khi lượng tử hóa |
| A100 80GB | 80 GB | tùy nền tảng | 30B-70B lượng tử hóa |
| H100 80GB | 80 GB | tùy nền tảng | 30B-70B lượng tử hóa |
| RTX PRO 6000 Blackwell | 96 GB | 20 CPU / 80 GiB | 70B ở FP8 |
Quota mặc định của Cloud Run là 3 GPU L4 mỗi region mỗi project (RTX PRO 6000 được cấp riêng, dưới dạng 3.000 milliGPU), trên sáu region L4: asia-southeast1, asia-south1, europe-west1, europe-west4, us-central1, us-east4. Đó là nửa Cloud Run của câu trả lời về data residency cho bất kỳ ai đang hỏi về serverless GPU ở châu Âu; Modal và RunPod ghi tài liệu các region EU của riêng họ, và phần FAQ có phần còn lại.
Bài hướng dẫn Cloud Run trên dev.to của Ismaili Simba (tháng 4 năm 2025) báo cáo rằng yêu cầu quota "có thể mất một thời gian (tối đa 5 ngày làm việc) để được phê duyệt," và rằng "các GPU L4 có trên Cloud Run có giới hạn 16GB RAM." Hãy tính trước độ trễ đó.
Để tính kích thước VRAM cho từng model, xem hướng dẫn yêu cầu VRAM của chúng tôi.
Model weights nằm ở đâu (và tốn bao nhiêu)?
Một thread Reddit từ tháng 11 năm 2024 vẫn còn nằm ở vị trí số 5 trên Google cho chính truy vấn này khi chúng tôi kiểm tra vào ngày 30-07-2026, hỏi nguyên văn:
"Tôi không thể tìm thấy mức giá cho việc lưu trữ model 80 gb… Giải pháp thay thế là gì nếu tôi không muốn tải model ở mỗi lần gọi api (pod được cấp phát khi gọi rồi đóng lại)? … Tại sao các nền tảng này không liệt kê chi phí lưu trữ model?"
Ba câu trả lời điểm thấp, không câu nào là câu trả lời. Khi chúng tôi chạy tìm kiếm này vào ngày 30-07-2026, top 10 kết quả vẫn bao gồm cái thread hai năm tuổi đó đang hỏi chi phí lưu trữ model là bao nhiêu. Không ai trong thread trả lời nó. Cả hai nền tảng đều công bố mức giá. Trên Modal là $0.09 mỗi GiB mỗi tháng với 1 TiB đầu tiên miễn phí, vậy checkpoint 80 GB đó tính phí $0.00. Trên RunPod là $0.07 mỗi GB mỗi tháng cho network storage dưới 1 TB, tức khoảng $5.60 một tháng cho cùng checkpoint đó.
| Vị trí đặt | Tác động cold start | Chi phí | Phải build lại để đổi model? | Phù hợp nhất cho |
|---|---|---|---|---|
| Nướng vào container image | Khởi động nhanh nhất | Image phình to (27B FP8 = hàng chục GB) | Có, build lại toàn bộ | Endpoint một model |
| Network volume bền vững | Nhanh (được cache trên host) | Modal $0.09/GiB/tháng, miễn phí 1 TiB; RunPod $0.07/GB/tháng dưới 1 TB | Không, đổi đường dẫn | Đa model hoặc thay đổi thường xuyên |
| Kéo từ Hugging Face khi khởi động | Chậm nhất: 26 giây+ cho 130 GB ở 5 GB/s | Miễn phí (băng thông HF) | Không | Chỉ để prototype |
Dòng thứ ba là chế độ hỏng hóc. Một bài đánh giá ServerlessLLM năm 2024 của TU München (arXiv 2411.15664) báo cáo LLaMA-2-70B (130 GB) cần hơn 26 giây để kéo ở 5 GB/s, cộng ~84 giây để tải lên 8 GPU, so với ~100 ms để sinh token. Những con số đó được trích dẫn trong bài đánh giá, không phải do bài đó đo.
Trang giá của RunPod có một mục Storage: disk container $0.10/GB/tháng, disk volume $0.10/GB/tháng khi chạy và $0.20/GB/tháng khi rảnh, network storage $0.07/GB/tháng dưới 1 TB và $0.05/GB/tháng trên mức đó, network storage hiệu năng cao $0.14/GB/tháng. Con số đó tồn tại. Nó chỉ không nằm cạnh các mức giá serverless theo GPU mà người đọc đang so sánh khi câu hỏi nảy ra, cũng không nằm trong luồng cấu hình endpoint. Một vấn đề về khả năng tìm thấy, không phải về sự che giấu, và đủ để giữ câu hỏi sống thêm hai năm.
# Point the Hugging Face cache at a mounted network volume
# so weights persist across cold starts (RunPod / Modal pattern)
export HF_HOME=/workspace/hf-cache
export TRANSFORMERS_CACHE=/workspace/hf-cache
export HF_HUB_ENABLE_HF_TRANSFER=1# Alternative: bake weights into the image at build time
FROM vllm/vllm-openai:latest
COPY ./model-weights /models/qwen3-27b-fp8
ENV MODEL_NAME=/models/qwen3-27b-fp8
# Downside: 30+ GB image, full rebuild to change modelsNếu bạn chưa chọn model, bảng tổng hợp open weights 2026 của chúng tôi tính kích thước từng lựa chọn cho việc deploy.
Triển khai: vLLM trên RunPod Serverless, từ đầu đến cuối
Sáu bước từ số 0 đến một endpoint gọi được. Đối chiếu từng bước với quy trình vLLM của RunPod (cập nhật ngày 22 tháng 6 năm 2026), bài đó không công bố giá.
-
Chọn model. Chọn một model open weights vừa với GPU của bạn (xem bảng VRAM ở trên). Nếu nó bị chặn trên Hugging Face, hãy tạo access token trước.
-
Tạo endpoint serverless. Trong console của RunPod, chọn Serverless, chọn worker template vLLM, và chọn hạng GPU.
-
Đặt các biến môi trường quan trọng.
MODEL_NAME=Qwen/Qwen3.6-27B-FP8
MAX_MODEL_LEN=32768
GPU_MEMORY_UTILIZATION=0.90
DTYPE=autoMODEL_NAME sai nghĩa là 404 khi khởi động. MAX_MODEL_LEN đặt quá cao so với VRAM nghĩa là OOM trước token đầu tiên. GPU_MEMORY_UTILIZATION trên 0.95 không để lại khoảng trống cho các đợt tăng KV-cache.
-
Đặt min/max workers và idle timeout. Min workers bằng 0 cho bạn scale-to-zero (và cold start). Min workers bằng 1 giết cold start nhưng tính phí liên tục. Phần cold start bên dưới đi qua đánh đổi đó.
-
Gắn network volume mà bạn đã quyết định trong phần model weights, hoặc chấp nhận phương án nướng vào image. Nếu bạn bỏ qua bước này, mỗi cold start sẽ tải lại checkpoint.
-
Bắn request đầu tiên. Đọc endpoint ID từ console và xác nhận token trả về.
curl -X POST "https://api.runpod.ai/v2/${ENDPOINT_ID}/runsync" \
-H "Authorization: Bearer ${RUNPOD_API_KEY}" \
-H "Content-Type: application/json" \
-d '{
"input": {
"messages": [{"role": "user", "content": "Explain cold starts in one sentence."}],
"max_tokens": 60
}
}'Nếu bạn đang cân nhắc chính engine phục vụ, chúng tôi đã so sánh vLLM và SGLang về throughput và độ trễ.
Gọi endpoint từ ứng dụng của bạn thế nào?
Mọi nền tảng trong danh sách rút gọn đều nói API tương thích OpenAI. Một đoạn Python chạy được ở mọi nơi. Đổi nhà cung cấp là một thay đổi base_url, không phải viết lại. Điều đó định nghĩa lại "nhà cung cấp nào" từ một quyết định lock-in thành một quyết định cấu hình.
import os
from openai import OpenAI
ENDPOINT_ID = os.environ["RUNPOD_ENDPOINT_ID"]
client = OpenAI(
base_url=f"https://api.runpod.ai/v2/{ENDPOINT_ID}/openai/v1",
api_key=os.environ["RUNPOD_API_KEY"],
)
response = client.chat.completions.create(
model="Qwen/Qwen3.6-27B-FP8",
messages=[{"role": "user", "content": "What is scale to zero?"}],
max_tokens=120,
)
print(response.choices[0].message.content)# Same code, different provider. One line changes.
ENDPOINT_ID = os.environ["RUNPOD_ENDPOINT_ID"]
PROVIDERS = {
"runpod": f"https://api.runpod.ai/v2/{ENDPOINT_ID}/openai/v1",
"modal": "https://your-app--your-func.modal.run/v1",
"beam": "https://your-beam-endpoint/v1",
}
client = OpenAI(base_url=PROVIDERS["modal"], api_key="your-key")Nếu mọi nhà cung cấp đều nói phương ngữ của OpenAI, "nhà cung cấp serverless GPU nào" không còn là một quyết định kiến trúc và trở thành một dòng cấu hình.
Khi bạn có nhiều endpoint, so sánh LLM gateway của chúng tôi bao quát routing và failover. Cho một thiết lập nhẹ hơn, proxy LiteLLM thêm retry và logging.
Cold start thực tế sẽ là bao nhiêu?
Với model 7B trên serverless GPU, hãy dự kiến 10 đến 30 giây cho một cold start thật (khởi động container cộng tải weights cộng khởi tạo engine), dựa trên báo cáo của người thực chiến. Tài liệu nhà cung cấp trích 1 đến 5 giây cho riêng việc khởi động container. Khoảng cách giữa hai con số đó là checkpoint của bạn đang băng qua mạng.
Trang sản phẩm của RunPod tuyên bố cold start FlashBoot dưới 200ms (tuyên bố của nhà cung cấp, không phải phép đo). Một người thực chiến trong r/LLMDevs báo cáo: "cold start theo kinh nghiệm của tôi không tuyệt lắm … tôi sẽ nói ~ 10 - 30 giây", nói thêm "dù phần lớn kinh nghiệm của tôi xoay quanh diffusion models." Cả hai đều đúng. Họ đo những thứ khác nhau.
Con số cold start là ba con số xếp chồng:
-
Khởi động container. Tài liệu của Modal: "Container khởi động trong khoảng một giây." Cloud Run: instance có driver cài sẵn "khởi động trong khoảng 5 giây."
-
Tải weights. Phần không ai quảng cáo. Một bài đánh giá ServerlessLLM năm 2024 của TU München (arXiv 2411.15664) đặt LLaMA-2-70B ở mức hơn 26 giây để kéo cộng ~84 giây để tải lên 8 GPU.
-
Khởi tạo engine. Graph capture và warm-up của vLLM. Logesh Umapathi đã đo Qwen3.6-27B-FP8 trên A100-80GB đi từ baseline 460 giây xuống 219 giây với eager mode, rồi ~70 giây với vLLM sleep mode cộng Modal GPU snapshots. Đó là 6,5 lần, công bố ngày 17 tháng 5 năm 2026.
| Nguồn | Đo cái gì | Con số | Ngày | Loại |
|---|---|---|---|---|
| Tài liệu Modal | Khởi động container | ~1s | hiện tại | Tài liệu nhà cung cấp |
| Tài liệu Cloud Run | Khởi động instance (driver cài sẵn) | ~5s | hiện tại | Tài liệu nhà cung cấp |
| Umapathi | Qwen3.6-27B-FP8, A100-80GB, cold start đầy đủ | 460s xuống 219s rồi ~70s | Tháng 5/2026 | Phép đo độc lập |
| Bài đánh giá ServerlessLLM của TU München (arXiv 2411.15664) | Kéo + tải LLaMA-2-70B, con số được trích dẫn không phải đo | 26s kéo + 84s tải | 2024 | Preprint arXiv (đánh giá) |
| Người thực chiến r/LLMDevs | 7B trên RunPod, request đầy đủ | ~10-30s | Tháng 12/2024 | Giai thoại (lưu ý diffusion) |
Cách diễn giải của chúng tôi về dữ liệu công bố: con số của nhà cung cấp đo container. Con số của người thực chiến đo toàn bộ request. Giữa hai chiếc đồng hồ bấm giờ đó là 80 GB weights đang băng qua mạng. Cột Loại chính là điểm mấu chốt.
Nên làm gì: vLLM sleep mode, GPU snapshots, và tinh chỉnh cửa sổ scaledown. Idle mặc định của Modal là 60 giây (cấu hình được từ 2 giây đến 20 phút). Một worker ấm giết cold start nhưng tính phí như luôn bật.
# Modal scaledown config (illustrative)
# A 60s window means you pay for 60 idle seconds per burst.
# A warm worker (min_containers=1) costs ~$2.50/hr on A100 80GB, 24/7.
@app.function(
gpu="A100",
scaledown_window=60, # seconds idle before shutdown
# min_containers=1, # uncomment to kill cold starts; costs $60/day
)Serverless GPU có rẻ hơn GPU chạy 24/7?
Serverless GPU rẻ hơn khi GPU của bạn ngồi không phần lớn thời gian trong ngày. Ở 3.000 request/ngày trung bình 2 giây mỗi request trên A100 80GB, serverless tốn khoảng $4.17/ngày so với $65.28/ngày cho một GPU thuê chạy 24/7. Điểm giao nhau là câu hỏi về duty cycle, không phải câu hỏi về sản lượng.
Giả định (của chúng tôi, nêu rõ để bạn tự chạy lại): A100 80GB ở mức $2.50/giờ của Modal, 2 giây thời gian GPU trung bình mỗi request, GPU thuê ở mức $2.72/giờ của RunPod chạy suốt ngày đêm, token API được host ở mức $0.40/1M token (mức giá công bố tầm trung), và ~1.000 token mỗi request.
| Request/ngày | Serverless (ước tính) | GPU thuê 24/7 | Token API được host | Rẻ nhất |
|---|---|---|---|---|
| 500 | $0.69 | $65.28 | $0.20 | Token API |
| 3,000 | $4.17 | $65.28 | $1.20 | Token API |
| 10,000 | $13.89 | $65.28 | $4.00 | Token API |
| 50,000 | $69.44 | $65.28 | $20.00 | Token API |
| 200,000 | $277.78 | $65.28 | $80.00 | GPU thuê |
Điểm giao nhau rơi vào khoảng 47.000 request/ngày. Dưới mức đó, serverless thắng. Token API được host đánh bại cả hai ở sản lượng thấp với model hàng hóa. Điểm hòa vốn không nằm ở việc bạn nhận bao nhiêu request. Nó nằm ở việc GPU của bạn dành bao nhiêu giờ để không làm gì.
Phân tích tháng 8 năm 2024 của BentoML đóng khung đánh đổi này tốt, dù các ví dụ giá của nó thuộc thời GPT-3.5-turbo và đã cũ hai năm.
Để biết token API được host tốn bao nhiêu ở sản lượng của bạn, xem so sánh giá LLM API của chúng tôi. Để cắt chi phí mỗi request ở phía inference, prompt caching thường tiết kiệm 30-60% cho context lặp lại.
# Break-even calculator: adjust these and re-run
REQUESTS_PER_DAY = 3000
SECONDS_PER_REQUEST = 2
SERVERLESS_RATE_HR = 2.50 # Modal A100 80GB
RENTED_RATE_HR = 2.72 # RunPod A100 80GB, 24/7
serverless_daily = REQUESTS_PER_DAY * SECONDS_PER_REQUEST / 3600 * SERVERLESS_RATE_HR
rented_daily = RENTED_RATE_HR * 24
print(f"Serverless: ${serverless_daily:.2f}/day")
print(f"Rented 24/7: ${rented_daily:.2f}/day")
print(f"Crossover: {int(RENTED_RATE_HR * 24 / (SECONDS_PER_REQUEST / 3600 * SERVERLESS_RATE_HR))} req/day")Khi nào serverless GPU là lựa chọn sai
- Traffic cao kéo dài. Qua ~47.000 request/ngày ở các mức giá này, duty cycle đảo ngược và GPU thuê rẻ hơn trên mỗi request.
- SLO dưới giây cứng nhắc trên đường dẫn cold. Không mẹo snapshot nào làm request đầu tiên tức thì. Giữ một worker ấm hoặc thuê cả máy.
- Model 70B+ cần nhiều GPU. Một GPU mỗi instance trên Cloud Run kết thúc cuộc hội thoại đó.
- Data residency nghiêm ngặt. Sáu region L4 là toàn bộ menu trên Cloud Run.
- Bài toán kinh tế mỗi request thua một worker slot bạn đã trả tiền. Nếu bạn có khoảng trống GPU thừa, thêm inference không tốn thêm gì.
Nếu GPU của bạn bận mười sáu tiếng mỗi ngày, serverless là lựa chọn đắt đỏ và ai nói ngược lại là đang bán serverless.
Cho con đường local-first, xem hướng dẫn công cụ LLM cục bộ của chúng tôi.
Về tác giả
Mert Batur là Co-Founder của Techsy.io, nơi đội ngũ ship các AI agent, hệ thống automation, và pipeline voice/SDR cho khách hàng B2B. Anh viết về stack công cụ LLM mà đội Techsy thực sự dùng trong production. Kết nối trên LinkedIn.
Câu hỏi thường gặp
Serverless GPU là gì?
Nền tảng serverless GPU chạy container model của bạn trên phần cứng dùng chung, scale về 0 giữa các request, và chỉ tính phí cho compute đang chạy. Bạn có một endpoint suy luận mà không phải quản lý một instance GPU bền vững. Đánh đổi là độ trễ cold start khi spin-up.
Chạy một LLM trên serverless GPU tốn bao nhiêu?
A100 80GB chạy ở mức $2.25/giờ trên Beam, $2.50/giờ trên Modal, $2.72/giờ trên RunPod (xác minh ngày 30-07-2026). Hóa đơn của bạn phụ thuộc vào duty cycle: 3.000 request/ngày ở 2 giây mỗi request tốn ~$4/ngày trên Modal. Lưu trữ thêm $0.09/GiB/tháng, với 1 TiB miễn phí.
Tôi có phải trả phí lưu trữ model weights không?
Có, nhưng rẻ. Modal tính $0.09/GiB/tháng với 1 TiB/tháng miễn phí, nên checkpoint 80 GB không tốn gì. Trang giá của RunPod liệt kê network storage ở mức $0.07/GB/tháng dưới 1 TB, khoảng $5.60/tháng cho cùng 80 GB đó.
Model có bị tải lại ở mỗi request không?
Chỉ khi không có gì được cache. Weights trên volume bền vững hoặc nướng vào image sẽ sống sót qua cold start. Trỏ cache Hugging Face vào ephemeral storage và model 130 GB sẽ tải lại ở mỗi lần spin-up. Đó là chế độ hỏng hóc cần tránh.
Cold start của model 7B mất bao lâu?
Dự kiến 10-30 giây cho một cold start thật, theo báo cáo của người thực chiến (r/LLMDevs, tháng 12/2024). Container khởi động trong 1-5 giây (tài liệu Modal, Cloud Run). Phần còn lại là tải weights và khởi tạo engine. Với snapshots và sleep mode, Umapathi đo ~70 giây cho model 27B, giảm từ 460 giây.
Có thể chạy model 70B trên serverless GPU không?
Thường là không. Model 70B ở FP16 cần ~140 GB VRAM. Cloud Run cho phép một GPU mỗi instance (tối đa 96 GB). Bạn sẽ cần lượng tử hóa FP8 để vừa trên một card 80 GB duy nhất, hoặc một nền tảng đa GPU. Hầu hết các bề mặt serverless chặn ở một GPU.
Serverless GPU có rẻ hơn thuê GPU 24/7?
Dưới ~47.000 request/ngày (ở 2 giây/request trên A100 80GB), có. Serverless chỉ tính phí giây đang chạy; GPU thuê tính phí 24 giờ bất kể. Trên mức đó, GPU thuê thắng. Token API được host đánh bại cả hai ở sản lượng thấp. Xem bảng hòa vốn ở trên.
Có thể triển khai LLM trên serverless GPU miễn phí không?
Modal cho $30/tháng credit miễn phí (gói Starter). Beam cho $30/tháng. Credit $300 tài khoản mới của GCP đủ cho việc dùng GPU Cloud Run. Đủ để prototype, không đủ để chạy traffic production. Không nền tảng nào có gói miễn phí vĩnh viễn cho GPU inference.
Nhà cung cấp serverless GPU nào có mặt ở châu Âu?
Cloud Run phục vụ GPU L4 ở europe-west1 (Bỉ) và europe-west4 (Hà Lan). Modal ghi tài liệu chọn region EU (eu-west, eu-north, eu-south) với giá gấp 1,5-1,75 lần mức cơ bản. RunPod nêu tên các data center châu Âu gồm EU-NL-1 và EU-FR-1. Hãy ghim region một cách tường minh; không nền tảng nào mặc định vào EU.
Có cần Docker để triển khai LLM trên serverless GPU không?
Không phải luôn luôn. RunPod cung cấp worker template vLLM dựng sẵn bỏ qua Docker. Modal build container từ một định nghĩa image Python trong code. Cho dependency tùy biến bạn sẽ viết Dockerfile. Cho serving vLLM tiêu chuẩn, con đường dựng sẵn chạy được trong vài phút.
Kết luận
Năm nền tảng, năm đơn vị tính phí, một bảng đã chuẩn hóa. Quyết định đơn giản hơn vẻ ngoài mà các trang nhà cung cấp tạo ra:
- Chọn GPU theo VRAM, không theo thương hiệu.
- Đặt weights trên volume, không phải trong image, trừ khi bạn không bao giờ đổi model.
- Dự kiến cold start 10-30 giây và lên kế hoạch quanh nó.
- Dưới ~47.000 request/ngày, scale-to-zero thắng về chi phí.
- Engine phục vụ đằng sau endpoint có thể thay thế;
base_urllà một dòng.
Bạn đã có một endpoint gọi được. Tiếp theo: cái gì đứng trước nó khi bạn cần routing và failover? So sánh LLM gateway của chúng tôi trả lời điều đó. Hoặc trao đổi về thiết lập của bạn với chúng tôi.