Each trajectory interleaves text reasoning, latent-mode spans and tool calls (Python interpreter and web search) with their tool observations. The format matches what the hybrid agent generates at inference time. Version 2 uses the same annotation pipeline as HybridAgent-HybridSFT-v1, with a stronger labeling model (GPT-6.1-Sol).
{
"id": "0",
"system": "<system prompt of the hybrid trajectory format>",
"question": "...",
"num_rounds": 2,
"rounds": [
{
"assistant": "<think>...<latent>pseudo-text of the latent span</latent>...</think><python>...</python>",
"tool": "python",
"tool_result": "<result>...</result>"
},
{
"assistant": "<think>...</think><answer>\\boxed{...}</answer>",
"tool": null,
"tool_result": null
}
]
}
| Field | Description |
|---|---|
id | Trajectory ID |
system | System prompt that defines the hybrid trajectory format |
question | Input question |
num_rounds | Number of rounds in the trajectory |
rounds | List of rounds; each round has the fields below |
rounds[].assistant | Model output for the round (reasoning, latent spans, and a tool call or final answer) |
rounds[].tool | Tool called in the round: python, search, or null for the final round |
rounds[].tool_result | Tool observation wrapped in <result>...</result>, or null for the final round |
<latent>...</latent> marks the spans the agent reasons through in latent mode. The text inside each span is the supervision target for that span.
from datasets import load_dataset
ds = load_dataset("togethercomputer/HybridAgent-HybridSFT-v2", split="train")
git clone https://github.com/togethercomputer/HybridAgent.git && cd HybridAgent
MODEL=Qwen/Qwen3-8B-Base \
DATA=togethercomputer/HybridAgent-HybridSFT-v2 \
OUT=outputs/hybrid_sft \
bash scripts/run_hybrid_sft.sh all
@misc{zou2026hybridagent,
title={Hybrid Reasoning Agents},
author={Jiaru Zou and Yunzhe Qi and Sirui Chen and Federico Bianchi and Shang Zhu and Pan Lu and Jingrui He and James Zou},
year={2026},
eprint={2610.18861},
archivePrefix={arXiv},
primaryClass={cs.CL},
url={https://arxiv.org/abs/2610.18861},
}
Each trajectory interleaves text reasoning, latent-mode spans and tool calls (Python interpreter and web search) with their tool observations. The format matches what the hybrid agent generates at inference time. Version 2 uses the same annotation pipeline as HybridAgent-HybridSFT-v1, with a stronger labeling model (GPT-6.1-Sol).
{
"id": "0",
"system": "<system prompt of the hybrid trajectory format>",
"question": "...",
"num_rounds": 2,
"rounds": [
{
"assistant": "<think>...<latent>pseudo-text of the latent span</latent>...</think><python>...</python>",
"tool": "python",
"tool_result": "<result>...</result>"
},
{
"assistant": "<think>...</think><answer>\\boxed{...}</answer>",
"tool": null,
"tool_result": null
}
]
}
| Field | Description |
|---|---|
id | Trajectory ID |
system | System prompt that defines the hybrid trajectory format |
question | Input question |
num_rounds | Number of rounds in the trajectory |
rounds | List of rounds; each round has the fields below |
rounds[].assistant | Model output for the round (reasoning, latent spans, and a tool call or final answer) |
rounds[].tool | Tool called in the round: python, search, or null for the final round |
rounds[].tool_result | Tool observation wrapped in <result>...</result>, or null for the final round |
<latent>...</latent> marks the spans the agent reasons through in latent mode. The text inside each span is the supervision target for that span.
from datasets import load_dataset
ds = load_dataset("togethercomputer/HybridAgent-HybridSFT-v2", split="train")
git clone https://github.com/togethercomputer/HybridAgent.git && cd HybridAgent
MODEL=Qwen/Qwen3-8B-Base \
DATA=togethercomputer/HybridAgent-HybridSFT-v2 \
OUT=outputs/hybrid_sft \
bash scripts/run_hybrid_sft.sh all
@misc{zou2026hybridagent,
title={Hybrid Reasoning Agents},
author={Jiaru Zou and Yunzhe Qi and Sirui Chen and Federico Bianchi and Shang Zhu and Pan Lu and Jingrui He and James Zou},
year={2026},
eprint={2610.18861},
archivePrefix={arXiv},
primaryClass={cs.CL},
url={https://arxiv.org/abs/2610.18861},
}