Dynamic Batching Cho Inference – Tối Ưu Throughput Và Latency
Dynamic batching gom nhiều request riêng lẻ thành một batch để tận dụng GPU parallelism.
Tiến độ của tôi ở bài này
Điểm và code bạn nộp được lưu vào tài khoản sau khi chấm bài.
Đang tải điểm của bạn…
Kiến thức và chủ đề
Kiến thức tiên quyết: model-serving-api-schema-validation.
Nội dung đề bài
Mục tiêu kiến thức
Dynamic batching gom nhiều request riêng lẻ thành một batch để tận dụng GPU parallelism.
Yêu cầu
class DynamicBatcher:
def __init__(self, max_batch_size: int = 32, max_wait_ms: float = 10.0):
pass
def add_request(self, request_id: str, data: list) -> None:
pass
def get_batch(self) -> list[dict]:
# Returns list of {request_id, data} ready to process
# Returns empty if no pending requests
pass
def get_stats(self) -> dict:
# Returns {'total_requests', 'total_batches', 'avg_batch_size'}
passInput
- Lớp DynamicBatcher(max_batch_size, max_wait_ms): Khởi tạo đối tượng với các tham số, trọng số hoặc cấu hình tương ứng.
Output
- Các phương thức của DynamicBatcher: Trả về kết quả tính toán hoặc cập nhật trạng thái nội bộ của đối tượng.
Ràng buộc
- Thời gian chạy tối đa: 3000ms.
- Giới hạn bộ nhớ: 256MB.
- Dữ liệu đầu vào hợp lệ theo đúng kiểu dữ liệu và miền giá trị được mô tả.
Ví dụ 1
Input
batcher = DynamicBatcher(max_batch_size=4)
for i in range(6):
batcher.add_request(f'req-{i}', [i, i + 1])
batch1 = batcher.get_batch()
batch2 = batcher.get_batch()
batch3 = batcher.get_batch()
Output
[]
Giải thích
Hàm/lớp được gọi với các tham số mẫu trên và trả về kết quả số học / kích thước tensor tương ứng theo đúng thiết kế.
Ví dụ 2
Input
batcher = DynamicBatcher(max_batch_size=10)
batcher.add_request('a', [1])
batch = batcher.get_batch()
batch2 = batcher.get_batch()
Output
[]
Giải thích
Hàm/lớp được gọi với các tham số mẫu trên và trả về kết quả số học / kích thước tensor tương ứng theo đúng thiết kế.
Gợi ý và lời giải chỉ mở sau khi bạn bấm Nộp bài. Giáo viên và quản trị viên mở được ngay.
Góp ý & báo lỗi bài tập
Đề bài chưa rõ, test có vấn đề hay bạn có ý tưởng giúp bài tốt hơn? Gửi cho đội ngũ AI Empire nhé — mỗi góp ý đều được đọc.
