1. Xác định kết quả trước khi chọn GPU
Hãy chọn một mẫu đi xuyên qua toàn bộ ứng dụng của bạn. Với suy luận, hãy bắt đầu từ vài đầu vào đại diện và một định dạng đầu ra mong đợi. Với việc tinh chỉnh mô hình, hãy chuẩn bị một lần chạy ngắn đọc dữ liệu, thực hiện cập nhật và ghi ra checkpoint. Mục đích là kiểm tra toàn bộ đường đi trước khi giao cho nó khối lượng cuối cùng.
Lấy một ví dụ minh họa: bạn muốn phân loại tài liệu. Hãy chuẩn bị mười hai tài liệu đã được định danh, gồm nhiều độ dài khác nhau và một trường hợp mà chương trình phải từ chối một cách gọn gàng. Đặt ra các danh mục được phép và nơi lưu kết quả. Mười hai mã định danh phải xuất hiện đúng một lần trong bản tổng kết, kèm kết quả được chấp nhận hoặc một lỗi rõ ràng. Kịch bản này cần được điều chỉnh cho ứng dụng của bạn; nó không giả định bất kỳ mô hình hay thông lượng cụ thể nào.
Cuộn bảng để xem tất cả các cột.| Điểm cần kiểm tra | Tiêu chí đã chuẩn bị trước khi chạy |
|---|---|
| Đầu vào | 12 mã định danh duy nhất; tệp đọc được; có một trường hợp không hợp lệ được dự trù. |
| Kết quả | Mỗi tài liệu được chấp nhận ứng với một danh mục được phép; không có mã định danh nào bị bịa ra. |
| Thất bại | Mỗi tài liệu bị từ chối đều có một lý do đi kèm; không có sự biến mất âm thầm. |
| Kết thúc thử nghiệm | Chấp nhận + từ chối = 12; báo cáo và kết quả được xem lại từ một bản sao. |
2. Chọn backend, bộ nhớ và gói dịch vụ
Hãy bắt đầu từ các thư viện của dự án. Một phụ thuộc CUDA sẽ hướng bạn tới chuỗi NVIDIA; một gói MI300X đòi hỏi phải xem xét hỗ trợ ROCm, đặc biệt là hỗ trợ cho các tiện ích mở rộng. Công cụ chọn chính thức của PyTorch phân biệt hệ điều hành và nền tảng tính toán: sao chép lệnh từ máy khác không phải là kiểm tra tương thích.
Tiếp theo, hãy so sánh bộ nhớ cần cho một tác vụ đại diện: trọng số, đầu vào, các phép tính trung gian và trạng thái riêng của phương pháp bạn dùng. Kích thước tệp mô hình là chưa đủ. Nếu bạn chưa biết mức đỉnh, hãy giữ điểm này làm mục tiêu của lần chạy thử, đừng khẳng định rằng một mô hình sẽ vừa chỉ dựa trên số tham số của nó.
Hãy chọn 3, 7 hoặc 30 ngày và từ 1 đến 10 lô. Mỗi lô chứa một GPU, riêng B200 chứa hai. Nhiều GPU không tự động chia tải chương trình và cũng không hợp nhất bộ nhớ của chúng. Hãy dự trù thời gian cho cài đặt, kiểm tra, tính toán và xuất kết quả; mười hai tài liệu của lần chạy thử dùng để kiểm tra quy trình, chứ không phải để dự đoán máy móc thời lượng của toàn bộ chiến dịch.
3. Chuẩn bị một thư mục tồn tại qua việc đổi máy
Hãy tập hợp phiên bản mã nguồn, các phụ thuộc, tham chiếu dữ liệu và mô hình, các tham số và lệnh khởi chạy. Nêu rõ cách cung cấp các quyền truy cập cần thiết một cách riêng biệt. Một đường dẫn tới thư mục cá nhân của bạn không phải là quy trình chuyển tệp: hãy thay các giả định ngầm bằng tham số và kiểm tra đường dẫn từ thư mục dự án.
Bản chuẩn bị Ubuntu, PyTorch, Blender hoặc tùy chỉnh mà bạn chọn trong cấu hình thể hiện nhu cầu của bạn. Nó không chứng minh rằng dự án, các tiện ích mở rộng hay giấy phép của bạn đã được cài đặt. Hãy mô tả những gì cần có, rồi kiểm tra môi trường thực tế nhận được trước khi bắt đầu xử lý.
Với lô tài liệu của chúng ta, hãy giữ một đầu vào thử nghiệm bất biến, một tệp tham số và một thư mục kết quả riêng cho mỗi lần chạy. Cũng hãy viết rõ cách xem lại bản tổng kết. Thư mục này không cần cồng kềnh; nó phải ngăn việc thành công phụ thuộc vào một ô bị bỏ quên, một terminal cũ hay một tệp chưa được sao chép.
projet/
README.md # cài đặt, khởi chạy, kiểm tra
requirements-rebuild.txt # các phụ thuộc và nguồn gốc được ghi lại
config/pilote.json # tham số không chứa bí mật
data/pilote/ # 12 đầu vào được phép
src/ # ứng dụng của bạn
runs/ # một thư mục con cho mỗi lần chạy4. Đọc lại lệnh rồi làm theo các bước của dịch vụ
Bản tóm tắt phải khớp với lựa chọn của bạn: mẫu, thời lượng, số lô, tổng số card, cách chuẩn bị và số tiền USD. Tổng cộng là giá mỗi lô cho thời lượng đó, nhân với số lô. Giá lô B200 đã bao gồm hai card của nó: đừng nhân thêm lần nữa với số GPU.
Với đơn hàng đầu tiên, hãy tạo tài khoản bằng tên, họ, email và mật khẩu. Nếu bạn đã có tài khoản, hãy đăng nhập; nếu bạn đã đăng nhập, thông tin sẽ được điền sẵn. Tài khoản cho phép bạn xem lại các đơn hàng và số dư từ trình duyệt khác. Quy trình không yêu cầu thủ tục KYC hay giấy tờ tùy thân.
Để thanh toán bằng crypto, hãy dùng tài sản, mạng, địa chỉ, số tiền và hạn chót hiển thị cho khoản thanh toán tương ứng. Sau khi chuyển, « Tôi đã thanh toán » sẽ ghi nhận báo cáo của bạn. Nó không xác nhận đã nhận tiền cũng không xác nhận đã bàn giao. Số dư USD đủ cũng có thể thanh toán toàn bộ tiền thuê. Sau đó, hãy làm theo thông tin chuẩn bị và quyền truy cập thực tế được cung cấp.
5. Kiểm tra khởi chạy trước khối lượng cuối cùng
Khi tài nguyên được bàn giao, hãy xác định trình thông dịch thực sự được dùng và môi trường đã tải. Chạy chẩn đoán tối thiểu trước ứng dụng của bạn. Một lần import PyTorch thành công không chứng minh có tính toán GPU; một phép tính đơn giản thành công không xác nhận mọi tiện ích mở rộng của mô hình. Thư mục chẩn đoán mô tả tiến trình này và cung cấp một tài nguyên có thể tải xuống.
Sau đó chạy thử nghiệm của bạn trong một thư mục đầu ra mới. Với tài liệu, hãy kiểm tra các mã định danh, danh mục, số lần thành công và các trường hợp từ chối mong đợi. Xem xét nhiều kết quả cùng đầu vào của chúng: một đầu ra đúng cú pháp vẫn có thể sai với mục đích sử dụng. Chỉ chuyển sang toàn bộ tập dữ liệu sau khi đã ghi lại những gì được chấp nhận và những gì còn phải sửa.
Nếu khởi chạy thất bại, hãy ghi lại lỗi đầu tiên và bước đã đạt được. Kiểm tra trình thông dịch trước khi cài lại; kiểm tra đường dẫn trước khi sao chép lại; kiểm tra kích thước đầu vào trước khi tăng batch. Chỉ thay đổi một yếu tố mỗi lần. Nếu tiến trình kéo dài, hãy tổ chức theo dõi nó tách biệt khỏi kết nối tương tác dùng để khởi động.
6. Thu thập bằng chứng dùng được và quyết định bước tiếp theo
Sao chép kết quả và bản tổng kết của chúng sang một vị trí bạn kiểm soát, rồi đọc lại bản sao đó. Kiểm tra rằng nó chứa các tham số và tham chiếu cần thiết để hiểu kết quả. Đừng coi một tệp nằm trong môi trường tính toán là bản sao lưu duy nhất của bạn. Hãy thực hiện kiểm tra này trong giai đoạn thử nghiệm, đừng chờ đến hạn thuê.
Với huấn luyện, hãy thêm một bài kiểm tra khôi phục trong tiến trình mới. Dự án nhỏ Kernodeck minh họa một phương pháp trên CPU; ứng dụng của bạn vẫn phải đánh giá các trạng thái, độ chính xác và dữ liệu của riêng nó. Với tài liệu độc lập, việc khôi phục thay vào đó là xác định những phần đã xong và những phần cần xử lý lại.
Quyết định cuối cùng của bạn có thể là khởi chạy khối lượng dự kiến, sửa môi trường hoặc xem lại cấu hình. Hãy lưu quyết định này cùng lý do. Một giai đoạn thử nghiệm phát hiện ra sự không tương thích là hữu ích: nó biến một vấn đề mơ hồ thành một điều kiện cụ thể cần giải quyết trước khi dấn thân vào nhiều tính toán hơn.