برای نوتبوک، تحلیل داده و آزمایش مدل، در سرویس GPU ساعتی برنامه Jupyter را انتخاب کنید. این محیط با هاست وب پایتون و VPS کامل فرق دارد: دسترسی از HTTPS برنامه است، دیسک محلی موقت است و انتشار پورت دلخواه بهصورت عمومی تضمین نمیشود.
پیشنیاز و انتخاب کارت
ابتدا نیاز VRAM مدل، RAM دادهها و فضای مدل و checkpoint را جدا حساب کنید. اندازه فایل مدل بهتنهایی مصرف VRAM آموزش را مشخص نمیکند؛ optimizer، batch و نوع محاسبات هم مؤثرند. فقط کارت و قالب سازگار قابل انتخاب در صفحه سفارش را مبنا بگیرید. نرخ ساعتی و اعتبار شروع جاری را پیش از ثبت بررسی کنید؛ برای ظرفیت ناموجود زمان قطعی وعده داده نمیشود.
۱. ورود به محیط
- کارت و Jupyter را انتخاب و درخواست را ثبت کنید؛ وضعیت تخصیص و آمادهشدن برنامه را در کنسول دنبال کنید.
- پس از تحویل، دکمه باز کردن Jupyter را از همان صفحه سرویس بزنید تا مسیر HTTPS صحیح باز شود.
- اگر Jupyter توکن خواست، توکن معرفیشده برای برنامه را وارد کنید؛ توکن با رمز حساب سرورنت یکسان نیست. توکن دروازه و ورود برنامه نیز ممکن است نقش متفاوتی داشته باشند؛ از مقادیر همان پنل استفاده کنید.
- در فایلبراوزر Jupyter پوشه پروژه بسازید، داده را Upload و یک نوتبوک Python باز کنید.
۲. CUDA را بررسی و یک checkpoint کوچک بسازید
این نمونه یک گام آموزشی کوچک برای بررسی محیط است؛ بنچمارک و آموزش مدل کاربردی نیست. اگر CUDA در دسترس نباشد، متوقف میشود تا اجرای ناخواسته روی CPU پنهان نماند.
from pathlib import Path
import torch
if not torch.cuda.is_available():
raise RuntimeError("CUDA is unavailable; check the assigned GPU and environment")
print(torch.cuda.get_device_name(0))
model = torch.nn.Linear(8, 1).cuda()
optimizer = torch.optim.Adam(model.parameters(), lr=0.001)
x, y = torch.randn(16, 8, device="cuda"), torch.randn(16, 1, device="cuda")
optimizer.zero_grad()
loss = torch.nn.functional.mse_loss(model(x), y)
loss.backward()
optimizer.step()
torch.save({"step": 1, "model": model.state_dict(),
"optimizer": optimizer.state_dict()}, "checkpoint.pt")
print(Path("checkpoint.pt").stat().st_size)۳. فایل و checkpoint را بیرون محیط نگه دارید
نوتبوک را با Save ذخیره کنید. سپس در فایلبراوزر روی فایل ipynb و checkpoint.pt راستکلیک و Download را انتخاب کنید. ذخیره نوتبوک فقط روی دیسک محیط، بکاپ خارجی نیست. برای کار طولانی، checkpoint را در فاصلههای مشخص به فضای ذخیرهسازی خارجی با دسترسی خصوصی منتقل کنید و پیش از ادامه، بازیابی یک نمونه را امتحان کنید. فقط checkpoint مورد اعتماد را بارگذاری کنید؛ اجرای نوتبوک یا بارگذاری فایل مدل ناشناس میتواند کد اجرا کند.
خطاهای رایج و مرز دسترسی
- CUDA unavailable: برنامه و کارت تخصیصیافته را بررسی و خروجی تشخیصی غیرمحرمانه را در تیکت بفرستید. نصب تصادفی چند نسخه CUDA راهحل قابل اتکا نیست.
- Out of memory: batch، اندازه ورودی یا مدل را کاهش دهید؛ نیاز حافظه آموزش را با inference یکی نگیرید.
- قطع اتصال مرورگر: از صفحه سرویس دوباره وارد شوید و وضعیت kernel و آخرین checkpoint را بررسی کنید. قطع مرورگر اثبات توقف kernel یا صورتحساب نیست.
- FastAPI یا worker: اجرای uvicorn روی یک پورت داخلی به معنی دسترسی عمومی HTTPS نیست. مسیر بیرونی و timeout را پیش از طراحی برنامه با پشتیبانی بررسی کنید.
- فضای دیسک: خروجی و checkpointهای قدیمی را فقط پس از تأیید نسخه بیرونی پاک کنید؛ ماندگاری داده پس از ایجاد مجدد محیط تضمین نمیشود.
پایان کار و انتخاب محصول مناسب
پس از دریافت فایلها، از پنل توقف یا لغو را انجام دهید و وضعیت نهایی را ببینید. برای وباپ Django یا Flask، هاست پایتون را بررسی کنید؛ برای کنترل کامل سیستمعامل و پورتها، سرور مجازی ساعتی گزینه دیگری است. برای تولید تصویر با بسته آماده، راهنمای ComfyUI را بخوانید.
نمونه با API معمول PyTorch نوشته شده است؛ اجرای آن روی یک GPU زنده و انتقال checkpoint به فضای خارجی در این راهنما آزموده نشده و زمان یا هزینهای برای آن ادعا نمیشود. مرجع رابط فایل: مستندات JupyterLab.
دیدگاهها ۰
هنوز دیدگاهی ثبت نشده؛ اولین نفر باشید!