RayPPOTrainer._dump_generations() missing gts argument in _train_step call

オープン 初心者向け
#492 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

メンテナーはふだん 3 日以内に返信

@yunkai-yyk がすでに取り組んでいます。

2026年2月18日 から。

  • #493 @yunkai-yyk による — オープン
  • #528 @Alexi5000 による — オープン

評価

難易度
1/5
見積もり時間
1時間未満
初心者へのやさしさ
68/100
issue の種類
バグ
明瞭さ
明確に書かれている
活発さ
停滞
技術スタック
python

調査の方向性

agentlightning/verl/trainer.py を開き、RayPPOTrainer._train_step と _dump_generations を調べます。rollout_data_dir を設定した状態で再現し、その後、issue に記載されているとおり、呼び出しが必須の gts 引数を満たすようにします。トレーニングが引数不足の TypeError を発生させずにロールアウト生成のダンプ手順まで到達すれば完了です。

索引モデルが issue の本文から書いたものです。

説明

bug v0.x verl

Bug Report

Describe the bug

In agentlightning/verl/trainer.py, _train_step calls _dump_generations without passing the required gts argument, causing a TypeError at runtime when trainer.rollout_data_dir is set.

Error message

File "agentlightning/verl/trainer.py", line 421, in _train_step
    self._dump_generations(
TypeError: RayPPOTrainer._dump_generations() missing 1 required positional argument: 'gts'

Steps to Reproduce

  1. Set rollout_data_dir in the trainer config
  2. Run training — the error is triggered at the rollout generation dump step

Root Cause

_dump_generations is defined with gts as a required positional argument:

def _dump_generations(self, inputs, outputs, gts, scores, reward_extra_infos_dict, dump_path):

But the call site in _train_step does not pass gts:

self._dump_generations(
    inputs=inputs,
    outputs=outputs,
    scores=scores,
    reward_extra_infos_dict=reward_extra_infos_dict,
    dump_path=rollout_data_dir,
)

Suggested Fix

Either pass gts=None at the call site, or give gts a default value of None in the function signature to make it optional when ground truth is unavailable.

Environment

  • Version: v0.3.0
  • File: agentlightning/verl/trainer.py
  • Class: RayPPOTrainer
主要言語
Python
スター
18.9k
フォーク
1.7k
平均マージ
4日 11時間
マージ済み PR(30日)
9

環境構築

このプロジェクトには開発コンテナ、Dockerfile、コントリビューションガイドがありません。まず README を読み、一般的な手順ははじめてのコントリビューションガイドを参照してください。

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

microsoft/agent-lightning のほかの issue

microsoft/agent-lightning の issue をすべて見る

似ている issue

Python の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。