HƯỚNG DẪN KỸ THUẬT

Trộn liên tục

Continuous batching updates the active request set between generation iterations instead of holding one fixed batch until every request finishes.

Nghe hướng dẫn nàyAI thuật lại · ~2 min

Trên trang nàyĐọc trong 2 phút
  1. Tổng quan
  2. Lặn sâu
  3. Triển khai trong thế giới thực
  4. Tương lai của việc trộn liên tục
  5. Đưa nó vào thực tế
  6. Tiếp tục khám phá
  7. Câu hỏi thường gặp

Tổng quan

It can improve serving utilization, while capacity limits and scheduling policy still govern latency.

Lặn sâu

GPUs are fastest when they process many requests together in a batch. The naive approach, static batching, groups a fixed set of requests, runs them all to completion, then starts the next batch. The problem: language model outputs vary wildly in length, so short requests finish early and their slots sit idle while the batch waits for the longest one, wasting GPU cycles and delaying new arrivals. Continuous batching (also called in-flight or iteration-level batching, popularized by the Orca paper and used in vLLM, TensorRT-LLM, and TGI) operates at the granularity of a single decoding step. After each token is generated, finished sequences exit the batch and queued requests can be admitted when the scheduler has capacity. Iteration-level admission can improve utilization and reduce avoidable waiting compared with fixed batches; the measured effect depends on request lengths, capacity, and scheduling.

Triển khai trong thế giới thực

API trò chuyện thừa nhận tin nhắn của người dùng mới gửi vào lô đang chạy ngay lập tức thay vì xếp chúng vào hàng tiếp theo

Loại bỏ một câu trả lời ngắn đã hoàn thành giữa đợt và lấp đầy vị trí của nó để GPU không bao giờ nhàn rỗi chờ đợi trong một thế hệ dài

Kết hợp phân nhóm liên tục với PagedAttention của vLLM để chèn và xóa chuỗi với chi phí thấp ở mỗi bước giải mã

Dịch vụ hoàn thiện mã duy trì số lượng mã thông báo cao mỗi giây trong lưu lượng truy cập lớn, có độ dài thay đổi bằng cách giữ cho lô đầy đủ

Tương lai của việc trộn liên tục

Serving teams balance throughput with time to first token and time between generated tokens. Long prefill work can delay decoding unless the scheduler splits or otherwise manages it. Capacity budgets, request priorities, and fairness policies determine which work is admitted. Continuous batching can be combined with paged caches, chunked prefill, and speculative decoding, but each combination should be measured on the actual traffic and hardware.

Đưa nó vào thực tế

Tại sao nó quan trọng

  • Chi phí và ngân sách. Các quyết định về kiến ​​trúc sẽ thúc đẩy hiệu suất và chi phí vận hành trong nhiều năm.
  • Quyết định rõ ràng hơn. Giáo dục kỹ thuật giúp các nhóm chọn nhóm phù hợp chứ không chỉ nhóm mới nhất.
  • Kiểm soát chất lượng. Lựa chọn kỹ thuật tốt hơn làm giảm sự cố về độ tin cậy trong sản xuất.

coi chừng

  • Tối ưu hóa một điểm chuẩn có thể che giấu những điểm yếu của hệ thống rộng hơn.
  • Chi phí cơ sở hạ tầng và bảo trì thường được đánh giá thấp.
  • Khoảng cách về bảo mật và khả năng quan sát có thể tăng lên khi hệ thống trở nên phức tạp hơn.

Các bước tiếp theo

  1. Xác định các mục tiêu về độ trễ, chất lượng và chi phí trước khi triển khai.
  2. Điểm chuẩn trong điều kiện tải và dữ liệu thực tế.
  3. Giám sát thiết bị về lỗi, độ lệch và tác động của người dùng.
  4. Chuẩn bị đường dẫn khôi phục và ứng phó sự cố trước khi mở rộng quy mô.

Tiếp tục khám phá

Bản tin miễn phí

Nhận bản tóm tắt AI hàng ngày

Ba câu chuyện AI đã được xác minh vào mỗi buổi sáng các ngày trong tuần, được viết bằng tiếng Anh đơn giản. Miễn phí mãi mãi, không có quảng cáo.

Một email mỗi ngày trong tuần. Hủy đăng ký trong một cú nhấp chuột. Chúng tôi không bao giờ bán hoặc chia sẻ địa chỉ của bạn.

Tự kiểm tra

Take the Continuous Batching quiz

Phản hồi tức thì về mọi câu trả lời và chứng chỉ có thể chia sẻ với ID có thể xác minh sau khi bạn vượt qua khóa học.

Bắt đầu bài kiểm tra

Hỗ trợ giáo dục AI miễn phí. AI Understanding là tổ chức phi lợi nhuận 501(c)(3) — không bao giờ có quảng cáo, không có tường phí. Hãy quyên góp

Câu hỏi thường gặp

What is Continuous Batching?

Continuous batching updates the active request set between generation iterations instead of holding one fixed batch until every request finishes. It can improve serving utilization, while capacity limits and scheduling policy still govern latency.

Điểm yếu chính của việc phân nhóm tĩnh (cố định) để phục vụ LLM là gì?

Vì độ dài đầu ra khác nhau nên các chuỗi đã hoàn thành sẽ không hoạt động cho đến khi chuỗi chậm nhất hoàn thành, gây lãng phí chu kỳ GPU và trì hoãn các yêu cầu mới.

Việc phân nhóm liên tục thêm và xóa yêu cầu ở mức độ chi tiết nào?

Tính năng bó liên tục (cấp độ lặp) cập nhật tập hợp hoạt động sau mỗi bước giải mã, do đó, nó hoạt động theo từng mã thông báo thay vì theo toàn bộ yêu cầu.

A continuous-batching request finishes and frees capacity. What can the scheduler do next?

Iteration-level scheduling can refill available capacity subject to memory, token, and other limits.

Kỹ thuật nào kết hợp một cách tự nhiên với việc tạo khối liên tục để làm cho việc chèn/xóa các chuỗi trở nên rẻ tiền?

PagedAttention lưu trữ bộ nhớ đệm KV của mỗi chuỗi trong các khối độc lập, do đó, việc thêm hoặc xóa một chuỗi trong lúc đang thực hiện sẽ không làm ảnh hưởng đến bộ nhớ của người khác.

Bài nghiên cứu nào thường được ghi nhận là phổ biến việc phân nhóm cấp độ lặp (liên tục)?

Bài viết của Orca đã giới thiệu việc lập kế hoạch ở cấp độ lặp lại và ý tưởng này đã được áp dụng bởi các hệ thống phục vụ như vLLM, TGI và TensorRT-LLM.