--- datasets: - PAPOGalaxy/PAPO_train license: mit pipeline_tag: image-text-to-text library_name: transformers --- # PAPO Model This is the official model for the paper [**Perception-Aware Policy Optimization for Multimodal Reasoning**](https://huggingface.co/papers/2507.06448). ## Abstract Reinforcement Learning with Verifiable Rewards (RLVR) has proven to be a highly effective strategy for endowing Large Language Models (LLMs) with robust multi-step reasoning abilities. However, its design and optimizations remain tailored to purely textual domains, resulting in suboptimal performance when applied to multimodal reasoning tasks. In particular, we observe that a major source of error in current multimodal reasoning lies in the perception of visual inputs. To address this bottleneck, we propose **Perception-Aware Policy Optimization (PAPO)**, a simple yet effective extension of GRPO that encourages the model to learn to perceive while learning to reason, entirely from internal supervision signals. Notably, PAPO does not rely on additional data curation, external reward models, or proprietary models. Specifically, we introduce the Implicit Perception Loss in the form of a KL divergence term to the GRPO objective, which, despite its simplicity, yields significant overall improvements (4.4%) on diverse multimodal benchmarks. The improvements are more pronounced, approaching 8.0%, on tasks with high vision dependency. We also observe a substantial reduction (30.5%) in perception errors, indicating improved perceptual capabilities with PAPO. We conduct comprehensive analysis of PAPO and identify a unique loss hacking issue, which we rigorously analyze and mitigate through a Double Entropy Loss. Overall, our work introduces a deeper integration of perception-aware supervision into RLVR learning objectives and lays the groundwork for a new RL framework that encourages visually grounded reasoning. **Project Page**: [https://mikewangwzhl.github.io/PAPO/](https://mikewangwzhl.github.io/PAPO/) **Code**: [https://github.com/mikewangwzhl/PAPO](https://github.com/mikewangwzhl/PAPO) ## Model Version PAPO (NO KL_ref) ## Usage This model is designed for multimodal reasoning tasks, taking both image and text inputs to generate text. You can load it using the `transformers` library. For detailed usage instructions, including how to prepare multimodal inputs, please refer to the official project page and code repository. ```python from transformers import AutoProcessor, AutoModelForCausalLM import torch model_id = "mikewangwzhl/PAPO-7B-NO-KL" # Or the specific model identifier on the Hub # Load processor and model processor = AutoProcessor.from_pretrained(model_id) model = AutoModelForCausalLM.from_pretrained(model_id, torch_dtype=torch.bfloat16) # Move model to appropriate device (e.g., GPU if available) if torch.cuda.is_available(): model = model.to("cuda") # Example of a text-only generation (if supported by the multimodal model) # For full multimodal usage, you would also prepare and pass image data. prompt = "Hello, what can you do?" messages = [{"role": "user", "content": prompt}] # Apply chat template and get input IDs input_ids = processor.apply_chat_template(messages, add_generation_prompt=True, return_tensors="pt") if torch.cuda.is_available(): input_ids = input_ids.to("cuda") # Generate a response output_ids = model.generate(input_ids, max_new_tokens=100) # Decode the generated text generated_text = processor.decode(output_ids[0], skip_special_tokens=True) print(generated_text) ```