Lei Yang1 Mengyin Liu1,2 Jia Wang1 Hangyu Guo1 Liang Zhao1 Zheng Ge1
Kang an1 Binxing Jiao1 Qi Han1 Daxin Jiang1 Siqi Shen2 Xiangyu Zhang1
(WIP: Paper, Dataset coming soon)
TL;DR: An interactive tool that efficiently annotates on-policy alignment data for LLMs and agents via a token-level locate--correct--continue loop, automatically capturing fine-grained supervision.
Contributions of this paper:
We present onPanda, an interactive tool for efficiently annotating LLM alignment data and agent trajectories. onPanda adopts token-level correction as its core interaction: while reading a model response, the annotator locates the first inappropriate token and either picks a substitute from the model's candidate tokens or types the correct text via free-form editing. The system then truncates everything after that position and continues generation from the corrected prefix, repeating this locate-correct-continue loop until a satisfactory response is obtained. This mechanism lets annotators precisely steer model outputs at low cost: experiments show that onPanda reduces annotation time by 52% over manual post-editing. Since the vast majority of tokens in the final response are generated by the model itself, the resulting data largely preserves the model's sampling distribution and is well suited for constructing on-policy SFT and preference data. Furthermore, the token-level corrections recorded during annotation provide fine-grained supervision with precise positions and naturally paired positive--negative samples. onPanda also connects to external tools and harnesses, enabling interactive trajectory annotation in realistic environments. In addition, we release Panda-CVL, a multimodal dataset annotated with onPanda, together with a benchmark for token-level correction.
Annotating an agent trajectory with onPanda. Reasoning and tool-call arguments remain editable at token level. Corrected tool calls can be executed in the connected environment, and the resulting trajectory continues from the corrected context.
panda.json example