SLCA-GRPO: Resolving Cross-Segment Credit Misattribution in Tool-Calling RL
Organizations: Peking University · Shenzhen University · Tencent PCG QQ Team
Abstract
Tool-calling agents produce heterogeneous outputs, interleaving structured tool invocations with user-facing natural language summaries. This output heterogeneity presents a structural failure mode in standard on-policy Reinforcement Learning (RL): algorithms like GRPO indiscriminately broadcast a homogeneous trajectory-level scalar advantage to all tokens. Consequently, gradient noise from summary generation leaks into tool-decision tokens, causing cross-segment credit misattribution and brittle optimization. In this work, we propose SLCA-GRPO, a framework incorporating Segment-Locked Credit Assignment (SLCA). To enable scalable exploration without costly real APIs and stable training, we first construct the Schema-Guided LLM Simulator (SGLS) as foundational training infrastructure. Building on this, SLCA decouples advantage estimation at the structural segment level within a single group of rollouts, without requiring additional rollouts from intermediate states. Supported by Hierarchical Rewards (HierR), SLCA routes execution advantages to tool tokens and preference advantages to summary tokens, eliminating advantage contamination (the dominant cross-segment credit misattribution channel) within each policy update. On a 7B backbone, SLCA-GRPO accelerates convergence and outperforms standard GRPO, ToolPO, and RLTR by +2.53 pp on in-domain evaluation, +1.36 pp on the Berkeley Function-Calling Leaderboard (BFCL), and +9.15 pp on -Bench under the same training budgets, achieving higher accuracy with reduced tool redundancy and costs.
Figures & tables
| Method | Name F1 | ArgMatch | Process | Success |
|---|---|---|---|---|
| Qwen2.5-3B-Instruct | ||||
| Original | 0.5207 | 0.5073 | 0.5174 | 0.3816 |
| SFT | 0.7685 .0069 | 0.7132 .0239 | 0.7401 .0050 | 0.6500 .0089 |
| SFT+GRPO | 0.8910 .0087 | 0.8072 .0154 | 0.8577 .0057 | 0.7412 .0115 |
| RLTR | 0.7598 .0149 | 0.6353 .0229 | 0.6924 .0162 | 0.6627 .0151 |
| ToolPO | 0.8050 .0142 | 0.7769 .0160 | 0.8368 .0141 | 0.5128 .0145 |
| Toucan-Test | BFCL | -Bench | ||
|---|---|---|---|---|
| Setting | Process | Success | Acc | Pass 1 |
| SLCA -GRPO | 0.8766 .0045 | 0.7913 .0105 | 0.6977 .0047 | 0.4102 .0101 |
| w/o SLCA | 0.8667 .0061 | 0.7660 .0127 | 0.6841 .0011 | 0.3187 .0297 |
| w/o SGLS | 0.8787 .0051 | 0.7802 .0112 | 0.6875 .0048 | 0.3619 .0195 |
| w/o HierR | 0.8521 .0083 | 0.7344 .0121 | 0.6907 .0046 | 0.3450 .0144 |
Appendix figures & tables30 assets
Supplementary material from the paper’s appendix.
Appendix
| Parameter | Value |
|---|---|
| Model Specification | |
| Model | GPT-OSS-120B |
| Parameters | 120B |
| Serving Framework | vLLM (OpenAI-compatible API) |
| Decoding | |
| Temperature | 0.0 (fully greedy / deterministic) |
| Rating | Raw Score ( ) | Normalized S_{{\color[rgb]{0.3711,0.6406,0.3047}\mathrm{summary}}} |
|---|---|---|
| very poor | 1 | 0.00 |
| poor | 2 | 0.25 |
| acceptable | 3 | 0.50 |
| good | 4 | 0.75 |
| excellent | 5 | 1.00 |
| Model Backbone | Ours Std ( ) | Baseline Std ( ) | Improvement ( ) |
|---|---|---|---|
| Qwen2.5-3B-Instruct | 0.156 | 0.209 | 25.0% |
| Qwen2.5-7B-Instruct | 0.094 | 0.108 | 13.1% |
| Qwen3-8B-Base | 0.312 | 0.320 | 2.5% |
| Fine-Tuning Hyperparameters | RL Hyperparameters | ||
| Parameter | Value | Parameter | Value |
| Hardware Resources | 8 H20 GPUs | Hardware Resources | 32 H20 (4 Nodes) |
| Optimizer | AdamW | Precision | bfloat16 |
| Total Batch Size | 32 | Total Batch Size | 128 |
| Per-Device Batch | 1 | Mini-batch Size | 32 |
| Grad Accumulation | 4 | Rollout Group Size ( ) | 16 |
| Parameter | Value |
|---|---|
| vLLM Deployment | |
| Tensor-Parallel Size (TP) | 8 |
| Max Model Length | 32,768 |
| GPU Memory Utilization | 0.86 |
| Max Concurrent Sequences | 300 |
| Precision (dtype) | bfloat16 |
| Method | Toucan Succ. (%) | BFCL Acc. (%) | -Bench Pass 1 (%) |
|---|---|---|---|
| SFT+GRPO (w/o SLCA) | 75.74 1.47 | 68.08 0.36 | 32.74 2.66 |
| SLCA -GRPO | 78.57 1.15 | 69.32 0.56 | 39.90 1.46 |
| +2.83 | +1.24 | +7.16 |
| Condition | Toucan Succ. (%) | BFCL Acc. (%) | -Bench Pass 1 (%) |
|---|---|---|---|
| ToolPO, LLM-judge | 20.00 1.36 | 24.59 0.87 | 30.44 2.15 |
| ToolPO, reference rule | 77.35 1.19 | 68.86 0.43 | 34.18 2.42 |
| Unified GRPO | 76.60 1.27 | 68.41 0.11 | 31.87 2.97 |
| SLCA -GRPO | 79.13 1.05 | 69.77 0.47 | 41.02 1.01 |
| Parameter | Value |
|---|---|
| tau2 package | v0.2.1.dev0 (from @v0.2.0 tag) |
| Evaluation framework | evalscope 1.3.0 |
| Task split | airline, retail, telecom (all 3 official domains) |
| Dataset source | evalscope/tau2-bench-data (ModelScope) |
| Task filtering | LLMGTAgent.check_valid_task() |
| Aggregation | mean_and_pass_hat_k (built-in) |
| Parameter | Value |
|---|---|
| Evaluation framework | evalscope 1.3.0 |
| Evaluation mode | is_fc_model=True |
| Temperature | 0 (greedy) |
| Max tokens | 8192 |
| parallel_tool_calls | True |
| underscore_to_dot | True |
| Parameter | Value |
|---|---|
| Dataset | tool_call_rl_40k_v1.parquet (4,000 held-out) |
| Agent loop max turns | 10 |
| Temperature | 0.0 (greedy) |
| Max tokens | 12,288 |
| Top- | 1.0 |
| Concurrency | 256 |
| Candidate Size ( ) | Original | 20 | 50 | 100 | 150 |
|---|---|---|---|---|---|
| Valid Samples | 3,991 | 3,980 | 3,882 | 2,607 | 443 |
| Avg. Tokens | 943 | 4,614 | 11,064 | 17,177 | 23,635 |
| Std. Dev. | 1,114 | 3,679 | 5,256 | 1,550 | 733 |
| Skip Rate | 0.2% | 0.5% | 2.9% | 34.8% | 88.9% |
| Candidate Size ( ) | Original | 20 | 50 | 100 | 150 |
|---|---|---|---|---|---|
| Valid Samples | 3,991 | 3,959 | 3,793 | 3,023 | 2,034 |
| Avg. Tokens | 943 | 3,693 | 8,522 | 14,483 | 20,609 |
| Std. Dev. | 1,114 | 2,735 | 3,806 | 2,595 | 1,719 |
| Skip Rate | 0.2% | 1.0% | 5.2% | 24.4% | 49.2% |
| Method | Name F1 | ArgMatch | Parallel | Process | Summary | Success |
|---|---|---|---|---|---|---|
| Qwen2.5-3B-Instruct | ||||||
| Original | 0.5207 | 0.5073 | 0.5412 | 0.5174 | 0.3477 | 0.3816 |
| SFT | 0.7685 .0069 | 0.7132 .0239 | 0.7772 .0071 | 0.7401 .0050 | 0.5512 .0047 | 0.6500 .0089 |
| SFT+GRPO | 0.8910 .0087 | 0.8072 .0154 | 0.9176 .0080 | 0.8577 .0057 | 0.7842 .0122 | 0.7412 .0115 |
| RLTR | 0.7598 .0149 | 0.6353 .0229 | 0.6729 .0098 | 0.6924 .0162 | – | 0.6627 .0151 |
| ToolPO | 0.8050 .0142 | 0.7769 .0160 | 0.8946 .0137 | 0.8368 .0141 | 0.6189 .0117 | 0.5128 .0145 |
| Condition | No-call (%) | Process | Toucan (%) | Summary | BFCL (%) | (%) |
|---|---|---|---|---|---|---|
| SFT | – | 0.8094 0.0082 | 72.14 0.87 | 0.6346 0.0054 | 67.89 0.28 | 32.54 1.92 |
| Unified GRPO | 0.6 | 0.8667 0.0061 | 76.60 1.27 | 0.8241 0.0108 | 68.41 0.11 | 31.87 2.97 |
| (except omission penalty episodes) | 0.5 | 0.8748 0.0061 | 78.72 1.22 | 0.6512 0.0208 | 69.44 0.55 | 36.24 1.58 |
| (including omission penalty episodes) | 14.2 | 0.7506 0.0227 | 67.54 1.94 | 0.5587 0.0248 | 61.53 1.74 | 29.44 2.28 |
| SLCA -GRPO | 0.4 | 0.8766 0.0045 | 79.13 1.05 | 0.8450 0.0087 | 69.77 0.47 | 41.02 1.01 |
| RLTR | – | 0.7022 0.0143 | 65.45 1.68 | – | 63.11 0.62 | 33.72 2.38 |
| Method | Overall Acc | AST Live | AST Non-Live | Multi-Turn |
|---|---|---|---|---|
| Qwen2.5-3B-Instruct | ||||
| Original | 0.4225 | 0.5174 | 0.5139 | 0.0271 |
| SFT | 0.6163 .0026 | 0.6862 .0022 | 0.8104 .0043 | 0.0867 .0100 |
| SFT+GRPO | 0.6321 .0032 | 0.6936 .0030 | 0.8583 .0087 | 0.0600 .0033 |
| RLTR | 0.5838 .0065 | 0.6136 .0074 | 0.8275 .0044 | 0.0494 .0100 |
| ToolPO | 0.6095 .0086 | 0.6477 .0108 | 0.8325 .0139 | 0.0961 .0067 |
| Method | Overall Pass 1 | Airline | Retail | Telecom |
|---|---|---|---|---|
| Qwen2.5-3B-Instruct | ||||
| Original | 0.2324 | 0.3810 | 0.1481 | 0.2692 |
| SFT | 0.2705 .0236 | 0.1364 .0227 | 0.3966 .0259 | 0.1954 .0217 |
| SFT+GRPO | 0.3454 .0257 | 0.2576 .0131 | 0.4598 .0217 | 0.2644 .0348 |
| RLTR | 0.2850 .0291 | 0.2727 .0227 | 0.3649 .0303 | 0.2098 .0303 |
| ToolPO | 0.2355 .0226 | 0.1288 .0262 | 0.3678 .0263 | 0.1437 .0179 |
| Weights | |||||||
|---|---|---|---|---|---|---|---|
| Config | BFCL Acc (%) | Pass 1 (%) | |||||
| Default (SLCA) | 0.10 | 0.25 | 0.15 | 0.20 | 0.30 | 69.77 0.47 | 41.02 1.01 |
| Uniform (SLCA) | 0.20 | 0.20 | 0.20 | 0.20 | 0.20 | 69.18 0.55 | 38.62 1.86 |
| Value-heavy (SLCA) | 0.05 | 0.20 | 0.20 | 0.35 | 0.20 | 69.44 0.48 | 39.35 1.73 |
| w/o HierR | — | 69.07 0.46 | 34.50 1.44 | ||||
| GRPO (unified adv.) | same as Default | 68.41 0.11 | 31.87 2.97 | ||||
| Reward ratio | Toucan Success@0.9 (%) | BFCL Acc. (%) | -Bench Pass 1 (%) |
|---|---|---|---|
| Unified | 76.60 1.27 | 68.41 0.11 | 31.87 2.97 |
| Unified | 77.54 1.24 | 68.83 0.31 | 34.62 2.71 |
| Unified | 77.88 1.30 | 68.95 0.36 | 35.24 2.58 |
| Unified | 77.02 1.41 | 68.60 0.44 | 32.90 2.88 |
| SLCA -GRPO | 79.13 1.05 | 69.77 0.47 | 41.02 1.01 |
| Condition | Tool tokens | Summary tokens | Toucan (%) | BFCL (%) | (%) |
|---|---|---|---|---|---|
| Both closed (SLCA) | 79.13 1.05 | 69.77 0.47 | 41.02 1.01 | ||
| open | 77.21 1.24 | 68.72 0.29 | 33.95 2.71 | ||
| open | 79.02 1.12 | 69.84 0.44 | 41.36 1.24 | ||
| Both open | 78.30 1.09 | 69.30 0.41 | 37.42 2.10 | ||
| Unified (joint normalization) | joint normalized reward | joint normalized reward | 76.60 1.27 | 68.41 0.11 | 31.87 2.97 |
| Effect | Toucan | BFCL | -Bench |
|---|---|---|---|
| Close | 1.32 | 0.80 | 5.51 |
| Open | 0.49 | 0.33 | 1.91 |
| Interaction | 1.20 | 0.51 | 3.13 |
| Method | Toucan-Test | BFCL | -Bench | |||
|---|---|---|---|---|---|---|
| Name F1 | ArgMatch | Process | Success | Acc | Pass 1 | |
| Qwen2.5-3B-Instruct | ||||||
| SLCA -GRPO | 0.9006 .0087 | 0.8092 .0112 | 0.8625 .0049 | 0.7647 .0093 | 0.6361 .0052 | 0.3563 .0091 |
| w/o SLCA | 0.8910 .0087 | 0.8072 .0154 | 0.8577 .0057 | 0.7412 .0115 | 0.6321 .0032 | 0.3454 .0257 |
| w/o SGLS | 0.8927 .0075 | 0.7982 .0109 | 0.8559 .0050 | 0.7584 .0101 | 0.6304 .0048 | 0.2995 .0182 |
| w/o HierR | 0.8399 .0084 | 0.7850 .0161 | 0.8264 .0075 | 0.6552 .0107 | 0.5993 .0046 | 0.3152 .0145 |
| Candidate Tool Set Size ( ) | |||||
| Method | Original | 20 | 50 | 100 | 150 |
| Hard-Negative Sampling Qwen2.5-3B-Instruct | |||||
| SFT+GRPO | 0.7412 | 0.3400 | 0.2921 | 0.2662 | 0.2285 |
| Ours | 0.7647 | 0.3584 | 0.3209 | 0.2865 | 0.2510 |
| Random Sampling Qwen2.5-3B-Instruct | |||||
| SFT+GRPO | 0.7412 | 0.6399 | 0.5701 | 0.4950 | 0.4360 |
| Method | Toucan Succ. (%) | BFCL Acc. (%) | -Bench Pass 1 (%) |
|---|---|---|---|
| SFT+GRPO (w/o SLCA) | 73.51 1.45 | 66.28 0.32 | 25.54 2.13 |
| SLCA -GRPO | 76.43 1.21 | 67.61 0.51 | 30.18 1.76 |
| +2.92 | +1.33 | +4.64 |