# SoL-Pi: Recursively Scaling Auto-Research Loops for Efficient Agent Harness

**Szerzők:** Sensen Gao et al. (NVIDIA Labs) · **Dátum:** 2026-09-17 · **arXiv:** [2609.20519v1](https://arxiv.org/abs/2609.20519) · **Terjedelem:** 15 oldal, 8 ábra, 4 tábla · **Kód:** [github.com/NVlabs/SoL-Pi](https://github.com/NVlabs/SoL-Pi) · **Project page:** [nvlabs.github.io/SoL-Pi](https://nvlabs.github.io/SoL-Pi/)

## Összegzés

A SoL-Pi egy RSI (Recursive Self-Improvement) ihletésű auto-research rendszer, amely a coding agent-ek harness-rétegén kutat új hatékonysági mechanizmusokat. 152 javasolt irányból, 500 végrehajtható környezetben, 3000+ futás és 60 000+ agent–környezet interakció után **négy mechanizmus** maradt életben, amelyek a teljes stack-ben kombinálva **44.7–49.0%-os token-csökkentést** és **~33%-os API költség-megtakarítást** érnek el az EdgeBench 51 feladatos benchmarkon, miközben a feladat-pontszám 93.7–106%-át tartják a Pi baseline-hoz képest. A kulcsszaktudás a "broad-to-deep funnel" architektúra: a keresési és a végső kiértékelési fázis szigorúan szét van választva, megelőzve a held-out overfitting-et. A paper a Hermes SOUL-ban is megjelenő SI-FMA (Ren et al. 2026) három szabályát közvetlenül alkalmazza: fast exploration in scaffold, governed critic, layered gating.

## 1. Háttér és motiváció

A coding agent-ek átmennek a "supervised code completion"-ról az "unattended, around-the-clock exploration"-re — hosszú trajektóriák reasoning, tool use és feedback hurokkal. A **token-hatékonyság first-order rendszer-kérdéssé** válik, mert:

- **Meglévő megoldások:** gyorsabb attention kernelek (FlashAttention-2), serving infra (PagedAttention), kvantálás (SmoothQuant, GPTQ), olcsóbb modellek (FrugalGPT, RouteLLM) — mind **modell- vagy infra-szintű**
- **A SoL-Pi ortogonális irányt** javasol: a **harness-réteg** optimalizálása, anélkül, hogy a modell-súlyokat módosítanánk

**A nehézség:** a harness-elemek (tool use, context management, verification, delegation, recovery, termination) szorosan összefonódnak — egy lokálisan jó változtatás downstream hibát okozhat, vagy a token-költséget későbbi fázisba tolhatja. A gyakorlatban a harness-fejlesztés **substantial human effort**-et igényel (hosszú trace-ek átvizsgálása, ismétlődő failure mode-ok azonosítása, kód-változtatások).

## 2. Módszertan

### 2.1 RSI-inspired auto-research loop

A SoL-Pi munkafolyamat (Figure 1(a)):
1. A research AI megfigyeli a base harness futtatási trace-eit
2. Javaslatokat tesz (candidate changes)
3. Teszteli prepared research environment-ekben
4. Capability + efficiency check-ek döntik el, mi marad meg
5. A fejlesztési eredmények vezérlik a következő iterációt

**Kritikus szabályok:**
- **Capability metric-ek, toleranciák és efficiency metric-ek** a keresés előtt rögzítve vannak, és **kívül esnek az optimalizáló AI kontrollján** — ne tudja "game-elni" a saját acceptance criteria-it
- **Két sequential gate:** minden capability metric a tolerancián belül marad, ÉS legalább egy efficiency metric javul
- **Pareto nondominated selection** a sikeres jelöltek közül
- **EdgeBench szigorúan a végső kiértékeléshez** van fenntartva — soha nem táplál vissza a keresésbe

### 2.2 Broad-to-deep funnel

**Két fázis:**
- **Outer stage:** 152 javasolt irány 6 proposal family-ben: context, progress, tools, delegation, prompt and policy, improvement and evaluation
- **Inner stage:** a kiválasztott irányok **független, disposable lineage-okban** fejlődnek — az egyik kudarca nem érinti a többit

**Iteratív implementációs loop (Ralph Loop alapú):**
- Propose → implement → run fixed experiment → inspect → retain/revise/discard
- Az implementer addig finomít, amíg egy explicit completion criterion teljesül
- Egy független reviewer ellenőrzi a futtatás előtt; sikertelen review → revise
- Minden iteráció több exploration trajectory-t hozhat

**Search scope:** 152 irány × ~500 environment × 3000+ futás × 60 000+ interakció

### 2.3 Search environment-ek

**535 végrehajtható environment:**
- **495 repository-derived:** GitHub issue + pre-fix repo állapot + offline dependencies; az accepted patch + change history a reference trajectory; pull request és regression test rejtve
- **40 verifier-driven synthetic:** Terminal-Bench-2 stílusú verifier; több valid megoldási út támogatott

**Kritikus:** Csak olyan environment-eket tartanak meg, ahol a teszt **a patch előtt elbukik, utána átmegy**.

### 2.4 A négy felfedezett mechanizmus

#### 1. Action Fusion
**Probléma:** a base Pi gyakran szerkeszt egy fájlt, majd külön parancsot ad ki a tesztelésre/futtatásra — két tool request, közte egy model round-trip.
**Megoldás:** a szerkesztés és a követő parancs **egyetlen tool request**-ben egyesül, és az eredmények egyetlen observation-ben jönnek vissza. Ez azonnal kiküszöböli az intermediate round-tripet.
**Előfeltétel:** a parancsok, amelyeknek a szerkesztés eredményét kell látniuk, külön maradnak.

#### 2. Online Context Compact
**Probléma:** a base Pi kontextusa folyamatosan nő, és a natív compaction nem elég gyakran fut, miközben a cache-write költség is számít.
**Megoldás:** az agent `update_plan`-nel követi a tervét. Minden plan-step completion boundary-nél a harness becsüli a hátralévő model request-eket (az eddigi step-ek request-száma + a befejezetlen step-ek száma × growth rate). A becslést összehasonlítja a cache-rewrite költségével (cost gate), ÉS figyelembe veszi a cache rewrite "unrecovered" költségét (későbbi compaction-öknek nagyobb megtakarítási küszöb kell). Ha a gate átmegy, a natív compaction lefut.

#### 3. ObservationPack
**Probléma:** nagy tool output-ok ismétlődnek későbbi request-ekben, pedig kevés releváns tartalom maradt bennük.
**Megoldás:** a 10 KiB-nél nagyobb output-okat lokálisan archiválja, és a **következő két provider request**-ben teljes egészében elküldi. A **harmadik request**-től kezdve egy **stabil handle**, az eredeti méret és egy rövid head+tail excerpt megy csak. Az eredeti pontos oldalak a handle-en keresztül retrieve-elhetők.

#### 4. Evidence-Preserving Reducer
**Probléma:** a build és test logok (≥4 KiB) tele vannak irreleváns részletekkel; de a tömörítés információ-veszteséggel jár.
**Megoldás:**
- Csak egy előre definiált parancs-készlet logjait tömöríti (file read és search eredményeket nem)
- Az eredeti output-ot archiválja
- Egy **olcsóbb modell** (GPT-5.6 Luna at high) kivonja a kulcs-bizonyítékot egy "receipt"-be
- Egy **determinisztikus verifier** ellenőrzi a receipt sémáját, source hash-ét, exit status-át, pontos idézeteket és méretét
- Ha a verifier elbukik, vagy credentials gyanúja merül fel, vagy nincs méret-csökkenés → fallback az eredeti log-ra
- A receipt marker-t az ObservationPack felismeri és **kihagyja** a duplikált feldolgozásból

### 2.5 Implementáció és backend setup

- Mind a négy mechanizmus a **Pi coding agent toolkit** (korábban pi-mono) kiterjesztése
- A kutatás **kizárólag GPT-5.6 Sol trajectory-kat** használt; a hold-out validáció **Opus 5**-ön is lefut, módosítás nélkül (transfer-teszt)
- Action Fusion: optional follow-up command a file-mutation tool-okhoz
- Online Context Compact: cache-cost gate a plan-step completion-nél + native compaction near context limit
- Evidence-Preserving Reducer: GPT-5.6 Luna at high
- EdgeBench 11 task = one-way acceptance of frozen candidates; 40 task = final held-out evaluation

## 3. Eredmények

### 3.1 EdgeBench fő eredmények (51 public task)

| Harness | Backend | Total tokens (B) | Cost ($) | Avg. Score | Token Eff. ($/score) |
|---------|---------|------------------|----------|------------|----------------------|
| EdgeBench official @2h | GPT-5.5 | — | — | 31.2 | — |
| Codex | GPT-5.6 Sol | 3.0537 | 1787 | 34.738 | 1.0086 |
| OpenSquilla | GPT-5.6 Sol | 1.3353 | 1243 | 24.506 | 0.9945 |
| Oh-My-Pi | GPT-5.6 Sol | 2.2235 | 1832 | 26.921 | 1.3347 |
| OpenCode | GPT-5.6 Sol | 2.5668 | 3422 | 29.552 | 2.2704 |
| Oh-My-Opencode | GPT-5.6 Sol | 2.5825 | 2678 | 38.523 | 1.3633 |
| Pi (baseline) | GPT-5.6 Sol | 2.1538 | 1339 | 44.833 | 0.5855 |
| **SoL-Pi [Efficiency]** | GPT-5.6 Sol | **1.0990** | **894** | 42.003 | **0.4174** |
| **SoL-Pi [Performance]** | GPT-5.6 Sol | 2.0224 | 1271 | **47.208** | 0.5280 |

- **SoL-Pi [Efficiency]:** 49.0%-kal kevesebb token, **33.2%-kal alacsonyabb költség**, 93.7%-os score retention
- **SoL-Pi [Performance]:** 5.3%-os score-emelkedés (44.8 → 47.2), 6.1%-os token-csökkentés, 9.8%-os token-eff-javulás

### 3.2 Cross-backend transfer (GPT-5.6 Sol → Opus 5)

A Pi-vel fejlesztett SoL-Pi **módosítás nélkül** átkerült Opus 5-re:

| Backend | Harness | Total tokens (B) | Cost ($) | Avg. Score | Token Eff. |
|---------|---------|------------------|----------|------------|------------|
| GPT-5.6 Sol | Pi | 2.1538 | 1339 | 44.833 | 0.5855 |
| GPT-5.6 Sol | SoL-Pi [Eff] | 1.0990 | 894 | 42.003 | 0.4174 |
| GPT-5.6 Sol | SoL-Pi [Perf] | 2.0224 | 1271 | 47.208 | 0.5280 |
| Opus 5 | Claude Code | 2.0045 | 2535 | 43.689 | 1.1377 |
| Opus 5 | Pi | 2.3697 | 1741 | 44.756 | 0.7625 |
| Opus 5 | **SoL-Pi [Eff]** | **1.3101** | **1158** | 42.224 | **0.5376** |
| Opus 5 | **SoL-Pi [Perf]** | 2.1016 | 1605 | **50.482** | 0.6235 |

- **Opus 5-ön:** 94.3% score retention, **44.7% token-csökkentés**, 33.5% költség-megtakarítás a Pi-hez képest
- **Meglepetés:** a Performance pont Opus 5-ön **50.482** score-t ér el (a SoL-Pi cross-backend is javít!)

### 3.3 Terminal-Bench 4 (63 CPU-only task) és IMO 2026

| Harness | Terminal-Bench 4 solved (of 63) | TB-4 total cost | TB-4 cost/solved | IMO 2026 passed (of 6) | IMO cost | IMO cost/passed |
|---------|-------------------------------|----------------|-----------------|----------------------|----------|-----------------|
| Codex | 18 | $272.35 | $15.13 | 5 | $114.47 | $22.89 |
| Pi | 18 | $286.45 | $15.91 | 3 | $75.95 | $25.32 |
| **SoL-Pi** | 15 | **$211.12** | **$14.07** | 3 | **$62.69** | **$20.90** |

- **TB-4:** 26.3% teljes költség-csökkentés Pi-hez képest, 11.6% cost/solved javulás (de 18→15 solved task, edge-case trade-off)
- **IMO 2026:** Lean 4-verified problem count azonos Pi-vel (3/6), de **legalacsonyabb cost/passed** ($20.90)

### 3.4 Efficient agent swarms (kernel-optimization benchmark)

- 2 órás futás, Anthropic's original performance take-home kernel
- Starter: 147 734 ciklus, nyolc speed threshold
- **3 konfiguráció:** 1× Codex single agent / Codex coordinator + 20× Pi baseline workers / Codex coordinator + 20× SoL-Pi workers
- Workers: GPT-5.6 Luna at xhigh, 5 csoport × 4 worker, shared evidence board

| Config | Final cycles | Cost |
|--------|--------------|------|
| Single Codex agent | 1333 | $39.20 |
| Pi baseline swarm (20 workers) | 1366 | $82.12 |
| **SoL-Pi swarm (20 workers)** | **1127** | $60.11 |

- **SoL-Pi swarm:** 26.8% API költség-csökkentés a Pi swarm-hoz képest, és a single agentnél is jobb minőséget ér el
- Az összes final candidate átmegy az official correctness check-en
- SoL-Pi swarm + single agent: 8/8 speed threshold; Pi baseline swarm: 7/8 (az utolsó <1363 ciklus küszöböt nem érte el)

### 3.5 A 4 mechanizmus önálló hozzájárulása

GPT-5.6 Sol backend:

| Config | Total tokens (B) | Cost ($) | Avg. Score | Token Eff. |
|--------|------------------|----------|------------|------------|
| Pi Baseline | 2.1538 | 1339 | 44.833 | 0.5855 |
| + Action Fusion | 1.8968 | 1235 | 46.664 | 0.5190 |
| + Online Context Compact | 1.2881 | 935 | 41.993 | 0.4365 |
| + Evidence-Preserving Reducer | 1.9375 | 1200 | 44.630 | 0.5274 |
| + ObservationPack | 2.0224 | 1271 | **47.208** | 0.5280 |
| **SoL-Pi [Efficiency] (mind a 4)** | **1.0990** | **894** | 42.003 | **0.4174** |

- **Minden mechanizmus csökkenti a token-számot** mindkét backend-en
- **GPT-5.6 Sol:** ObservationPack hozza a legmagasabb score-t (47.208)
- **Opus 5:** Action Fusion hozza a legmagasabb score-t (50.482)
- A teljes stack a legalacsonyabb token-költséget és a legjobb token-eff-t adja mindkét backend-en

**Cache-reuse trade-off (fontos!):** a kontextus-rövidítés csökkenti a prompt-cache reuse-t. A teljes stack GPT-5.6 Sol-on cache-read forgalmat 2.1326 B-ről 1.0605 B-re csökkenti, de cache-write 0.0141 B-ről 0.0316 B-re nő. A teljes költség így is $1339-ről $894-re esik.

### 3.6 Action Fusion esettanulmány (3.5 szekció)

A 27 iterációs lineage 4 fázisa:
1. **Oracle analysis** (panels d-f): repeated adjacent actions azonosítása, 11.5%-os token-redukció projection
2. **Baseline construction**: prompt-only triggering unreliable → tool schema extension a fused action-hoz, invalid call-mentes stabil baseline
3. **Prompt and tool-schema optimization**: trigger rate mint intermediate acceptance metric a task score mellett
4. **Final held-out validation**: a konfiguráció fagyasztása és elfogadása

## 4. Kapcsolódó munka (related work)

### 4.1 Agent harnesses és automated agent design
- **Meta-Harness** (arXiv:2603.28052) — végrehajtható harness program-keresés
- **Agentic Harness Engineering** (arXiv:2604.25850) — observability-vezérelt automatikus evolúció
- **Recursive Harness Self-Improvement (RHI)** (arXiv:2607.15524) — prompt-szintű iteratív finomítás egyedi task-okra
- **Code as agent harness** (arXiv:2605.18747), **Recursive agent harnesses** (arXiv:2606.13643)
- **GEPA** (ICLR 2026), **Automated Design of Agentic Systems** (ICLR 2025), **AFlow** (ICLR 2025), **AgentSquare** (ICLR 2025)
- **Gödel machines** (2007) — fully self-referential optimal universal self-improvers

### 4.2 Automated harness optimization
- **Rethinking the evaluation of harness evolution** (arXiv:2607.12227) — held-out overfitting figyelmeztetés
- **AutoHarness** (arXiv:2603.03329) — code harness automatikus szintézis
- **MemoHarness** (arXiv:2607.14159) — tapasztalatból tanuló harness

### 4.3 Context and token-efficient agents
- **LLM-as-Code** (arXiv:2606.15874) — végrehajtható kódba mozgatott control flow
- **AgentDiet** (FSE 2026) — trajectory reduction
- **ACON** (arXiv:2510.00615) — long-horizon kompresszió
- **Context-Folding** (arXiv:2510.11967), **AgentFold** (arXiv:2510.24699)
- **Context as a Tool** (ACL 2026)
- **Agentic Context Engineering (ACE)** (ICLR 2026)

## 5. Következtetések és korlátok

**Fő eredmények:**
- A 4-mechanizmus SoL-Pi stack **5.3–12.8%-os score-javulást** és **9.8–18.2%-os token-eff-javulást** ér el a best-performing single-mechanism konfigurációkhoz képest
- A teljes stack **44.7–49.0%-os token-forgalom csökkentést** és **~33%-os API költség-megtakarítást** hoz hasonló teljesítmény mellett
- A **cross-backend generalizáció** (GPT-5.6 Sol → Opus 5) működik módosítás nélkül

**Közeljövő kutatási irányok:**
1. **Pre-training the harness** — a harness-t "taníthatóvá" tenni sok feladaton való futtatással (hasonlóan a modell-pretraining-hez)
2. **Multi-backend training** — több LLM backend-en edzett harness robusztusabb lehet
3. **Recursive efficient improvement** — egy hatékonyabb harness alacsonyabb költséget jelent a következő harness-t fejlesztő auto-research-hez → "efficiency is both an outcome and a resource"
4. **Search coverage and cost** — a kontrollált skálázási törvények feltárása (breadth × depth × environment diversity)

**Korlátok:**
- A mai auto-research computational expensive — controlled comparisons fix budget alatt nehezek
- A harness-t egyetlen backend (GPT-5.6 Sol) trajectory-iből fejlesztették → Opus 5-ön a mechanizmusok ritkábban és kevésbé intenzíven aktiválódnak
- A 134-ből csak 51 EdgeBench task publikus → a teljes populáció kiértékelése nyitott kérdés

## A SI-FMA három szabály alkalmazása (Ren et al. 2026 §9.1)

A SoL-Pi a SI-FMA (Self-Improvements in Modern Agentic Systems: A Survey) három design szabályát közvetlenül alkalmazza:

| SI-FMA szabály | SoL-Pi megvalósítás |
|----------------|---------------------|
| 1. **Fast exploration a scaffoldban, lassú konszolidáció** | A harness (Σ) módosítása a cél; a modell-súlyok (θ) érintetlenek. A javasolt változtatások reverzibilisek, mielőtt a held-out validációra kerülnének. |
| 2. **The critic mint governed infrastructure** | Az EdgeBench acceptance criteria-k és capability toleranciák **fagyasztva vannak** mielőtt a research AI hozzáfér; az optimalizáló nem módosíthatja a saját acceptance szabályait. |
| 3. **Minden Σ-update layered gating-en megy át** | (a) Parse/lint a javasolt kód-változtatásra; (b) capability gate (minden metric a tolerancián belül); (c) efficiency gate (legalább egy metric javul); (d) Pareto nondominated selection; (e) held-out validation a freeze után, **soha nem visszacsatolva** a keresésbe. |

## Kulcs-idézetek

> "The lasting value of RSI may lie in a search process that scales across public environments to discover reusable improvements."

> "Held-out evidence is evaluated only after a candidate is frozen and never returns to search, preventing validation failures from being patched into task-specific solutions."

> "We reserve EdgeBench for final validation, keeping it isolated from the search process. The harness and acceptance rule are frozen before evaluation. Held-out results never feed back into the Auto-Research Loops: a failed validation rejects the candidate without triggering further optimization."

## Forrás

- Paper: <https://arxiv.org/abs/2609.20519>
- HTML (experimental): <https://arxiv.org/html/2609.20519v1>
- PDF: <https://arxiv.org/pdf/2609.20519>
- Code: <https://github.com/NVlabs/SoL-Pi>
- Project page: <https://nvlabs.github.io/SoL-Pi/>
- DOI: <https://doi.org/10.48550/arXiv.2609.20519>
- Submitter: Sensen Gao (NVlabs), 2026-09-17 14:58:29 UTC

## Kapcsolódó paper-ek a saját rendszerben

- **Ren et al. 2026, arXiv:2607.13104** — Self-Improvements in Modern Agentic Systems: A Survey (SI-FMA framework, §9.1) — a SoL-Pi a három szabály közvetlen alkalmazója
- **EdgeBench** (2026, edge-bench.org) — environment learning scaling laws; a SoL-Pi elsődleges benchmarkja
- **Pi: Coding Agent Toolkit** (github.com/earendil-works/pi) — a SoL-Pi base harness-e
- **Ralph Loop** (Anthropic Claude Code plugin) — iterative implementation loop alapja
- **Autoresearch** (Karpathy, github.com/karpathy/autoresearch) — az autoresearch cycle alapja
