Sobes.tech
Middle — Senior

Τι είναι το συνεχές batching και πώς υλοποιείται στο vLLM/TGI;

sobes.tech AI

Απάντηση από AI

Η συνεχής παρτίδα είναι μια τεχνική επεξεργασίας αιτημάτων σε ένα μοντέλο μηχανικής μάθησης, όπου τα εισερχόμενα αιτήματα inference συλλέγονται συνεχώς και δυναμικά σε παρτίδες, ώστε να αξιοποιούνται στο έπακρο οι υπολογιστικοί πόροι και να μειώνεται η καθυστέρηση. Αντί να περιμένει κανείς ένα σταθερό χρόνο ή μια σταθερή ποσότητα αιτημάτων, το σύστημα διαμορφώνει συνεχώς παρτίδες από τα εισερχόμενα αιτήματα και τα επεξεργάζεται.

Στο vLLM και TGI (Text Generation Inference), η συνεχής παρτίδα υλοποιείται μέσω ασύγχρονης αναμονής και δυναμικής διαμόρφωσης παρτίδων. Για παράδειγμα, όταν φτάσει ένα αίτημα, τοποθετείται σε ουρά, και ο μηχανισμός προσπαθεί να διαμορφώσει μια παρτίδα από πολλά αιτήματα, χωρίς να καθυστερεί υπερβολικά το πρώτο. Αν δεν υπάρχουν νέα αιτήματα, η παρτίδα ξεκινά με ό,τι υπάρχει. Αυτό επιτρέπει την ταυτόχρονη επεξεργασία πολλών αιτημάτων, αποδοτικά χρησιμοποιώντας την GPU και ελαχιστοποιώντας την καθυστέρηση.

Περίπου, λειτουργεί ως εξής:

  • Τα αιτήματα φτάνουν στην ουρά.
  • Το σύστημα περιμένει μέχρι να επιτευχθεί το μέγιστο μέγεθος παρτίδας ή να λήξει ο χρόνος αναμονής.
  • Διαμορφώνεται μια παρτίδα και αποστέλλεται στο μοντέλο.
  • Τα αποτελέσματα διανέμονται πίσω στα αιτήματα.

Αυτή η προσέγγιση είναι ιδιαίτερα χρήσιμη για μετασχηματιστές, όπου η επεξεργασία σε παρτίδες είναι πολύ πιο αποδοτική σε σύγκριση με μεμονωμένα αιτήματα.