For the complete documentation index, see llms.txt. This page is also available as Markdown.

Apprentissage par renforcement GSPO

Entraînez avec le RL GSPO (Group Sequence Policy Optimization) dans Unsloth.

Nous présentons GSPO, qui est une variante de GRPO créée par l’équipe Qwen chez Alibaba. Ils ont fait l’observation que lorsque GRPO prend des poids d’importance pour chaque jeton, alors qu’en réalité les avantages ne se mettent pas à l’échelle et ne changent pas avec chaque jeton. Cela a conduit à la création de GSPO, qui attribue désormais l’importance à la vraisemblance de la séquence plutôt qu’aux vraisemblances individuelles des jetons.

Activez GSPO dans Unsloth en définissant importance_sampling_level = "sequence" dans la configuration GRPO. La différence entre ces deux algorithmes peut être vue ci-dessous, à la fois à partir de l’article GSPO de Qwen et Alibaba :

Algorithme GRPO, source : Qwen
Algorithme GSPO, source : Qwen

Dans l’équation 1, on peut voir que les avantages mettent à l’échelle chacune des lignes dans les logprobs des jetons avant que ce tenseur ne soit sommé. Essentiellement, chaque jeton reçoit le même facteur d’échelle, bien que ce facteur ait été appliqué à l’ensemble de la séquence plutôt qu’à chaque jeton individuel. Un schéma simple de cela est présenté ci-dessous :

Rapport de logprob GRPO mis à l’échelle ligne par ligne avec les avantages

L’équation 2 montre que les rapports de logprob pour chaque séquence sont sommés et exponentiés après le calcul des rapports de logprob, et seuls les rapports de séquence résultants sont ensuite multipliés ligne par ligne par les avantages.

Rapport de séquence GSPO mis à l’échelle ligne par ligne avec les avantages

Activer GSPO est simple, tout ce que vous avez à faire est de définir le importance_sampling_level = "sequence" drapeau dans la configuration GRPO.

Mis à jour

Ce contenu vous a-t-il été utile ?