π RLM: Π Π΅ΠΊΡΡΡΠΈΠ²Π½ΡΠ΅ ΡΠ·ΡΠΊΠΎΠ²ΡΠ΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ β ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈΠ½ΡΠ΅ΡΠ΅Π½ΡΠ° ΡΠ΅ΡΠ΅Π· Π΄Π΅ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡΠΈΡ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ°
ΠΡΠ°ΡΠΊΠΈΠΉ ΠΎΠ±Π·ΠΎΡ
Alexander Zhang ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ RLM (Recursive Language Models) β ΡΡΡΠ°ΡΠ΅Π³ΠΈΡ ΠΈΠ½ΡΠ΅ΡΠ΅Π½ΡΠ°, ΠΏΡΠΈ ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΌΠΎΠ΄Π΅Π»Ρ ΡΠ΅ΠΊΡΡΡΠΈΠ²Π½ΠΎ Π΄Π΅ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡΡΠ΅Ρ Π½Π΅ Π·Π°Π΄Π°ΡΡ, Π° ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡ. Π ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΠΎΡ Π°Π³Π΅Π½ΡΠΎΠ², Π³Π΄Π΅ ΡΡ Π΅ΠΌΡ Π·Π°Π΄Π°ΡΡ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊ, Π·Π΄Π΅ΡΡ ΠΌΠΎΠ΄Π΅Π»Ρ ΡΠ°ΠΌΠ° ΡΠ΅ΡΠ°Π΅Ρ, ΠΊΠ°ΠΊ βΡΠΈΡΠ°ΡΡβ Π΄Π»ΠΈΠ½Π½ΡΠΉ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡ ΡΠ΅ΡΠ΅Π· REPL-ΡΡΠ΅Π΄Ρ. Π Π΅Π·ΡΠ»ΡΡΠ°ΡΡ: +34 ΠΏΡΠ½ΠΊΡΠ° (~114%) Π½Π°Π΄ GPT-5 ΠΏΡΠΈ ΡΠΎΠΉ ΠΆΠ΅ ΡΡΠΎΠΈΠΌΠΎΡΡΠΈ Π½Π° 132K ΡΠΎΠΊΠ΅Π½ΠΎΠ².
π ΠΡΠΈΠ³ΠΈΠ½Π°Π»: RLMs: Why Scale Test-Time Compute If You Can Scale Context? β alexzhang13.github.io
ποΈ ΠΠ»ΡΡΠ΅Π²ΡΠ΅ ΠΈΠ΄Π΅ΠΈ
- ΠΠΎΠ½ΡΠ΅ΠΊΡΡΠ½ΠΎ-ΠΎΡΠΈΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Π½Π°Ρ, Π° Π½Π΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ½ΠΎ-ΠΎΡΠΈΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Π½Π°Ρ Π΄Π΅ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡΠΈΡ: RLM Π΄Π΅Π»Π΅Π³ΠΈΡΡΠ΅Ρ ΠΌΠΎΠ΄Π΅Π»ΠΈ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ ΡΠΈΡΠ°ΡΡ ΠΈ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡ, Π²ΠΌΠ΅ΡΡΠΎ ΡΠΎΠ³ΠΎ ΡΡΠΎΠ±Ρ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π» Π³ΡΠ°Ρ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ².
- ΠΠΎΡΠ½Π΅Π²Π°Ρ ΠΌΠΎΠ΄Π΅Π»Ρ Π½Π΅ Π²ΠΈΠ΄ΠΈΡ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡ: ΡΡΠΎ ΠΏΡΠΈΠ½ΡΠΈΠΏΠΈΠ°Π»ΡΠ½ΠΎ β ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠ°Π΅Ρ βcontext rotβ (Π΄Π΅Π³ΡΠ°Π΄Π°ΡΠΈΡ Π²Π½ΠΈΠΌΠ°Π½ΠΈΡ Π½Π° Π΄Π»ΠΈΠ½Π½ΡΡ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ°Ρ ) ΠΈ Π·Π°ΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΌΠΎΠ΄Π΅Π»Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΡΠ΅ΡΠ΅Π· ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ.
- RLM β Π°Π³Π΅Π½Ρ: Π°Π³Π΅Π½ΡΡ Π΄Π΅ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡΡΡΡ Π·Π°Π΄Π°ΡΡ, RLM Π΄Π΅ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡΡΠ΅Ρ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡ. ΠΡΠΎ Π½Π΅ βΠΏΡΠΎΡΡΠΌΠΌΠΈΡΠΎΠ²Π°Π» ΠΈ ΠΏΠ΅ΡΠ΅Π΄Π°Π» Π΄Π°Π»ΡΡΠ΅β β ΠΌΠΎΠ΄Π΅Π»Ρ Π°Π΄Π°ΠΏΡΠΈΠ²Π½ΠΎ Π²ΡΠ±ΠΈΡΠ°Π΅Ρ ΡΡΡΠ°ΡΠ΅Π³ΠΈΡ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ.
- ΠΠ°ΡΡΡΠ°Π±ΠΈΡΡΠ΅ΠΌΠΎΡΡΡ ΠΊΠ°ΠΊ ΡΠ²ΠΎΠΉΡΡΠ²ΠΎ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ: Π΅ΡΠ»ΠΈ frontier-ΠΌΠΎΠ΄Π΅Π»Ρ Π·Π°Π²ΡΡΠ° Π²ΠΎΠ·ΡΠΌΡΡ 10M ΡΠΎΠΊΠ΅Π½ΠΎΠ², RLM ΡΠΌΠΎΠΆΠ΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΡΠΎ 100M.
π‘ ΠΠ΄Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ (Use Cases)
- Π‘Π²Π΅ΡΡ Π΄Π»ΠΈΠ½Π½ΡΠ΅ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΡ: Π°Π½Π°Π»ΠΈΠ· Π³ΠΈΠ³Π°Π½ΡΡΠΊΠΈΡ Π»ΠΎΠ³ΠΎΠ², ΠΊΠΎΠ΄-Π±Π°Π·, Π΄Π°ΡΠ°ΡΠ΅ΡΠΎΠ², Π³Π΄Π΅ Π½ΠΈ ΠΎΠ΄Π½Π° ΠΌΠΎΠ΄Π΅Π»Ρ Π½Π΅ ΡΠΏΡΠ°Π²Π»ΡΠ΅ΡΡΡ Ρ ΠΏΠΎΠ»Π½ΠΎΠΉ Π·Π°Π³ΡΡΠ·ΠΊΠΎΠΉ.
- ΠΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π½ΡΠ΅ Π·Π°ΠΏΡΠΎΡΡ: βΡΠΊΠΎΠ»ΡΠΊΠΎ Π·Π°ΠΏΠΈΡΠ΅ΠΉ ΡΠ΄ΠΎΠ²Π»Π΅ΡΠ²ΠΎΡΡΡΡ ΡΡΠ»ΠΎΠ²ΠΈΡ Xβ ΠΏΠΎ Π²ΡΠ΅ΠΌΡ ΠΊΠΎΡΠΏΡΡΡ β Π·Π°Π΄Π°ΡΠ°, Π³Π΄Π΅ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ½ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ ΠΏΡΠΎΡΠ΅Π΄Π°Π΅Ρ ΠΏΠ΅ΡΠ²ΡΠΌ.
- Multi-hop ΡΠ°ΡΡΡΠΆΠ΄Π΅Π½ΠΈΡ Π½Π° Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°Ρ : ΠΏΠΎΠΈΡΠΊ ΠΎΡΠ²Π΅ΡΠ°, ΡΡΠ΅Π±ΡΡΡΠ΅Π³ΠΎ ΡΠ²ΡΠ·Π°ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠΎΠ² ΡΡΠ΅Π΄ΠΈ ΡΡΡΡΡ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΎΠ².
- ΠΠΎΠ΄Π°Π»ΡΠ½ΠΎ-Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΡΠΉ Π°Π½Π°Π»ΠΈΠ·: ΡΠ΅ΠΎΡΠ΅ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π»ΡΠ±ΠΎΠΉ ΠΌΠΎΠ΄Π°Π»ΡΠ½ΠΎΡΡΠΈ (ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ, Π°ΡΠ΄ΠΈΠΎ), Π·Π°Π³ΡΡΠΆΠ°Π΅ΠΌΠΎΠΉ Π² ΠΏΠ°ΠΌΡΡΡ REPL.
π§© Π‘ΡΡΡΠΊΡΡΡΠ° ΠΎΡΠΈΠ³ΠΈΠ½Π°Π»Π°
- Introduction
- Background & Context
- What Makes RLM Unique
- Implementation
- Emergent Strategies
- Experiment 1 β OOLONG Benchmark
- Experiment 2 β BrowseComp-Plus
- Limitations
- Future Directions
π§ ΠΡΠ½ΠΎΠ²Π½Π°Ρ ΡΠ°ΡΡΡ
ΠΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΈ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡ
ΠΡΠΎΠ±Π»Π΅ΠΌΠ° Π΄Π»ΠΈΠ½Π½ΡΡ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠΎΠ² Ρ ΠΎΡΠΎΡΠΎ ΠΈΠ·Π²Π΅ΡΡΠ½Π°: Π΄Π°ΠΆΠ΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ Ρ Π³ΠΈΠ³Π°Π½ΡΡΠΊΠΈΠΌΠΈ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ½ΡΠΌΠΈ ΠΎΠΊΠ½Π°ΠΌΠΈ ΡΡΡΠ°Π΄Π°ΡΡ ΠΎΡ βcontext rotβ β Π΄Π΅Π³ΡΠ°Π΄Π°ΡΠΈΠΈ ΠΊΠ°ΡΠ΅ΡΡΠ²Π° ΠΎΡΠ²Π΅ΡΠΎΠ² Ρ ΡΠΎΡΡΠΎΠΌ ΠΎΠ±ΡΡΠΌΠ° Π²Ρ ΠΎΠ΄Π½ΡΡ Π΄Π°Π½Π½ΡΡ . Π’ΡΠ°Π΄ΠΈΡΠΈΠΎΠ½Π½ΡΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΡ Π²ΠΊΠ»ΡΡΠ°ΡΡ:
- RAG: ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΡΠΉ ΠΏΠΎΠΈΡΠΊ ΡΠ΅Π»Π΅Π²Π°Π½ΡΠ½ΡΡ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠΎΠ², Π½ΠΎ ΡΠ΅ΡΡΠ΅ΡΡΡ Π³Π»ΠΎΠ±Π°Π»ΡΠ½Π°Ρ ΡΡΡΡΠΊΡΡΡΠ°.
- ΠΠ³Π΅Π½ΡΡ (ReAct): Π΄Π΅ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡΠΈΡ Π·Π°Π΄Π°ΡΠΈ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊΠΎΠΌ ΡΠ΅ΡΠ΅Π· ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ, Π½ΠΎ ΡΡ Π΅ΠΌΠ° ΠΆΡΡΡΠΊΠ°Ρ ΠΈ Π½Π΅ Π°Π΄Π°ΠΏΡΠΈΡΡΠ΅ΡΡΡ ΠΊ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΡ.
- Π‘ΡΠΌΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΡ: ΡΠΆΠ°ΡΠΈΠ΅ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ°, Π½ΠΎ Ρ ΠΏΠΎΡΠ΅ΡΠ΅ΠΉ Π΄Π΅ΡΠ°Π»Π΅ΠΉ.
RLM ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅Ρ ΠΏΡΠΈΠ½ΡΠΈΠΏΠΈΠ°Π»ΡΠ½ΠΎ ΠΈΠ½ΠΎΠΉ ΠΏΡΡΡ: Π½ΠΈ ΠΎΠ΄Π½ΠΎΠΌΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠΌΡ Π²ΡΠ·ΠΎΠ²Ρ LM Π½Π΅ Π½ΡΠΆΠ½ΠΎ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ ΠΎΠ³ΡΠΎΠΌΠ½ΡΠΉ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡ. ΠΠΌΠ΅ΡΡΠΎ ΡΡΠΎΠ³ΠΎ ΠΌΠΎΠ΄Π΅Π»Ρ ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ Π΄Π»Ρ ΡΠ΅ΠΊΡΡΡΠΈΠ²Π½ΠΎΠ³ΠΎ Π²ΡΠ·ΠΎΠ²Π° ΡΠ°ΠΌΠΎΠΉ ΡΠ΅Π±Ρ Π½Π° ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°Ρ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ°.
Π§ΡΠΎ Π΄Π΅Π»Π°Π΅Ρ RLM ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΌ
ΠΠ²ΡΠΎΡ Π²ΡΠ΄Π΅Π»ΡΠ΅Ρ ΡΡΠΈ ΠΊΠ»ΡΡΠ΅Π²ΡΡ ΠΎΡΠ»ΠΈΡΠΈΡ:
-
ΠΠΎΠ½ΡΠ΅ΠΊΡΡΠ½ΠΎ-ΠΎΡΠΈΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Π½Π°Ρ Π΄Π΅ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡΠΈΡ: Π°Π³Π΅Π½ΡΡ Π΄Π΅ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡΡΡΡ Π·Π°Π΄Π°ΡΡ (ΡΠ΅Π»ΠΎΠ²Π΅ΠΊ ΡΠ΅ΡΠ°Π΅Ρ, ΠΊΠ°ΠΊΠΈΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ Π½ΡΠΆΠ½Ρ); RLM Π΄Π΅ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡΡΠ΅Ρ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡ (ΠΌΠΎΠ΄Π΅Π»Ρ ΡΠ΅ΡΠ°Π΅Ρ, ΠΊΠ°ΠΊ Π΅Π³ΠΎ ΡΠΈΡΠ°ΡΡ).
-
ΠΠ·ΠΎΠ»ΠΈΡΠΎΠ²Π°Π½Π½Π°Ρ ΡΡΠ΅Π΄Π°: ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠ΅ΠΊΡΡΡΠΈΠ²Π½ΡΠΉ Π²ΡΠ·ΠΎΠ² ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎΠ΅ REPL-ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΠ΅ β Π½Π΅Ρ ΡΡΠ΅ΡΠ΅ΠΊ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ, Π½Π΅Ρ ΠΏΡΡΠ°Π½ΠΈΡΡ ΠΌΠ΅ΠΆΠ΄Ρ ΡΡΠΎΠ²Π½ΡΠΌΠΈ.
-
ΠΠΌΠ΅ΡΠ΄ΠΆΠ΅Π½ΡΠ½ΡΠ΅ ΡΡΡΠ°ΡΠ΅Π³ΠΈΠΈ: ΠΌΠΎΠ΄Π΅Π»Ρ ΡΠ°ΠΌΠ° βΠΏΡΠΈΠ΄ΡΠΌΡΠ²Π°Π΅Ρβ ΠΊΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠΎΠΌ β peeking, grepping, partition+map β Π±Π΅Π· ΡΠ²Π½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΡΠΈΡ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠΉ.
Π Π΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ
RLM β ΡΡΠΎ ΡΠΎΠ½ΠΊΠ°Ρ ΠΎΠ±ΡΡΡΠΊΠ° Π²ΠΎΠΊΡΡΠ³ LM. Π‘ ΡΠΎΡΠΊΠΈ Π·ΡΠ΅Π½ΠΈΡ API: rlm.completion(messages) β ΠΏΡΡΠΌΠ°Ρ Π·Π°ΠΌΠ΅Π½Π° gpt5.completion(messages).
Π¦ΠΈΠΊΠ» ΡΠ°Π±ΠΎΡΡ:
1. ΠΠΎΡΠ½Π΅Π²Π°Ρ ΠΌΠΎΠ΄Π΅Π»Ρ ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ Π·Π°ΠΏΡΠΎΡ q ΠΈ ΡΠΊΠ°Π·Π°Π½ΠΈΠ΅, ΡΡΠΎ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡ Π² ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ REPL
2. ΠΠΎΠ΄Π΅Π»Ρ Π²ΡΠ²ΠΎΠ΄ΠΈΡ ΠΊΠΎΠ΄ Π΄Π»Ρ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ Ρ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠΎΠΌ:
- peek(ctx, n) β ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ ΠΏΠ΅ΡΠ²ΡΠ΅ N ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ²
- grep(ctx, pattern) β ΠΏΠΎΠΈΡΠΊ ΠΏΠΎ regex
- rlm_call(subquery, ctx_subset) β ΡΠ΅ΠΊΡΡΡΠΈΠ²Π½ΡΠΉ Π²ΡΠ·ΠΎΠ²
3. REPL Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ ΠΊΠΎΠ΄ ΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ (ΡΡΠ΅ΡΡΠ½Π½ΡΠΉ) Π²ΡΠ²ΠΎΠ΄
4. ΠΠΎΠ²ΡΠΎΡΡΡΡ ΡΠ°Π³ΠΈ 2-3 ΠΏΠΎΠΊΠ° ΠΌΠΎΠ΄Π΅Π»Ρ Π½Π΅ Π²ΡΠ²Π΅Π΄Π΅Ρ FINAL(answer)
ΠΠ»ΡΡΠ΅Π²ΡΠ΅ ΠΏΡΠΈΠΌΠΈΡΠΈΠ²Ρ REPL-ΡΡΠ΅Π΄Ρ:
peek(ctx, n)β ΠΏΠΎΠ΄ΡΠΌΠΎΡΡΠ΅ΡΡ Π½Π°ΡΠ°Π»ΠΎ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ°grep(ctx, pattern)β ΡΠΈΠ»ΡΡΡΠ°ΡΠΈΡ ΠΏΠΎ regexpartition(ctx, n)β ΡΠ°Π·Π±ΠΈΠ΅Π½ΠΈΠ΅ Π½Π° N ΡΠ°ΡΡΠ΅ΠΉrlm_call(query, ctx_subset)β ΡΠ΅ΠΊΡΡΡΠΈΠ²Π½ΡΠΉ LM-Π²ΡΠ·ΠΎΠ² Π½Π°Π΄ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠΎΠΌ
Π€ΠΎΡΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅: Π½Π°Π΄ ΡΡΠ΅Π΄ΠΎΠΉ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ , ΠΏΠΎΡΠΎΠΆΠ΄Π°ΡΡΠΈΠΉ ΠΈΠ·ΠΎΠ»ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΠΏΠΎΠ΄-RLM-ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡ Ρ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠΌ Π·Π°ΠΏΡΠΎΡΠΎΠΌ , ΡΡΠ°Π½ΡΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠΎΠΌ ΠΈ ΠΈΠ·ΠΎΠ»ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ ΡΡΠ΅Π΄ΠΎΠΉ .
ΠΠΌΠ΅ΡΠ΄ΠΆΠ΅Π½ΡΠ½ΡΠ΅ ΡΡΡΠ°ΡΠ΅Π³ΠΈΠΈ
ΠΠ²ΡΠΎΡ Π½Π°Π±Π»ΡΠ΄Π°Π», ΠΊΠ°ΠΊ ΠΌΠΎΠ΄Π΅Π»ΠΈ ΡΠΏΠΎΠ½ΡΠ°Π½Π½ΠΎ Π²ΡΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΡΠ΅ΡΠΊΠΈΠ΅ ΠΏΠ°ΡΡΠ΅ΡΠ½Ρ:
Peeking (ΠΏΠΎΠ΄Π³Π»ΡΠ΄ΡΠ²Π°Π½ΠΈΠ΅): ΠΊΠΎΡΠ½Π΅Π²Π°Ρ ΠΌΠΎΠ΄Π΅Π»Ρ Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°Π΅Ρ ΠΏΠ΅ΡΠ²ΡΠ΅ N ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ°, ΡΡΠΎΠ±Ρ ΠΎΡΠ΅Π½ΠΈΡΡ Π΅Π³ΠΎ ΡΡΡΡΠΊΡΡΡΡ (JSON? Π»ΠΎΠ³? ΡΠ΅ΠΊΡΡ?) ΠΈ Π²ΡΠ±ΡΠ°ΡΡ ΡΡΡΠ°ΡΠ΅Π³ΠΈΡ.
Grepping (ΠΏΠΎΠΈΡΠΊ ΠΏΠΎ ΡΠ°Π±Π»ΠΎΠ½Π°ΠΌ): ΠΌΠΎΠ΄Π΅Π»Ρ ΠΏΡΠ΅Π΄ΠΏΠΎΡΠΈΡΠ°Π΅Ρ regex ΡΠ΅ΠΌΠ°Π½ΡΠΈΡΠ΅ΡΠΊΠΎΠΌΡ ΠΏΠΎΠΈΡΠΊΡ β ΡΠΎΡΠ½ΡΠ΅ ΡΠΎΠ²ΠΏΠ°Π΄Π΅Π½ΠΈΡ Π½Π°Π΄ΡΠΆΠ½Π΅Π΅ Π΄Π»Ρ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π½ΡΡ
Π·Π°ΠΏΡΠΎΡΠΎΠ² Π²ΡΠΎΠ΄Π΅ βΡΠΊΠΎΠ»ΡΠΊΠΎ Π·Π°ΠΏΠΈΡΠ΅ΠΉ ΡΠΎΠ΄Π΅ΡΠΆΠ°Ρ Xβ.
Partition + Map: ΠΌΠΎΠ΄Π΅Π»Ρ ΡΠ°Π·Π±ΠΈΠ²Π°Π΅Ρ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡ Π½Π° ΡΠ°ΡΡΠΈ ΠΈ Π·Π°ΠΏΡΡΠΊΠ°Π΅Ρ ΡΠ΅ΠΊΡΡΡΠΈΠ²Π½ΡΠ΅ Π²ΡΠ·ΠΎΠ²Ρ Π΄Π»Ρ ΡΠ΅ΠΌΠ°Π½ΡΠΈΡΠ΅ΡΠΊΠΎΠΉ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ° (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΊΠ»Π°ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ Π·Π°ΠΏΠΈΡΠ΅ΠΉ). ΠΡΠΎ ΠΊΠ»Π°ΡΡΠΈΡΠ΅ΡΠΊΠΈΠΉ map-reduce, Π½ΠΎ orchestration ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ Π½Π° ΡΡΠΎΡΠΎΠ½Π΅ LM.
Summarization: ΠΎΠ±ΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ΄ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ² ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ° Π΄Π»Ρ ΠΏΡΠΈΠ½ΡΡΠΈΡ ΡΠ΅ΡΠ΅Π½ΠΈΡ ΠΊΠΎΡΠ½Π΅Π²ΠΎΠΉ ΠΌΠΎΠ΄Π΅Π»ΡΡ β ΠΌΠΎΠ΄Π΅Π»Ρ ΡΠ°ΠΌΠ° ΡΠ΅ΡΠ°Π΅Ρ, ΡΡΠΎ ΡΡΠΌΠΌΠΈΡΠΎΠ²Π°ΡΡ.
Long-input, long-output: ΡΡΡΠΈΠ½Π½ΡΠ΅ Π²ΡΡΠΈΡΠ»ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ Π·Π°Π΄Π°ΡΠΈ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π½ΠΈΠ΅ git diff) Π΄Π΅Π»Π΅Π³ΠΈΡΡΡΡΡΡ REPL-ΠΊΠΎΠ΄Ρ, Π° Π½Π΅ ΡΠ΅ΡΠ°ΡΡΡΡ ΠΌΠΎΠ΄Π΅Π»ΡΡ βΠ²ΡΡΡΠ½ΡΡβ.
ΠΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½Ρ 1 β OOLONG Benchmark
ΠΠ°Π΄Π°ΡΠ°: ΠΎΡΠ²Π΅ΡΡ Π½Π° Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π½ΡΠ΅ Π·Π°ΠΏΡΠΎΡΡ ΠΏΠΎ ΡΠΏΠΈΡΠΊΡ ΠΈΠ· ~3000β6000 ΡΡΡΠΎΠΊ Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠΌΠΈ ID ΠΈ Π½Π΅ΡΠ°Π·ΠΌΠ΅ΡΠ΅Π½Π½ΡΠΌΠΈ ΡΡΡΠ½ΠΎΡΡΡΠΌΠΈ. ΠΡΠ΅Π½ΠΈΠ²Π°Π»ΠΈΡΡ Π·Π°ΠΏΡΠΎΡΡ Ρ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠΎΠΌ >128K ΡΠΎΠΊΠ΅Π½ΠΎΠ².
Π Π΅Π·ΡΠ»ΡΡΠ°ΡΡ ΠΏΡΠΈ 132K ΡΠΎΠΊΠ΅Π½ΠΎΠ²:
- RLM(GPT-5-mini) ΠΏΡΠ΅Π²Π·ΠΎΡΡΠ» GPT-5 Π½Π° 34+ ΠΏΡΠ½ΠΊΡΠ° (ΠΏΡΠΈΡΠΎΡΡ ~114%)
- Π‘ΡΠΎΠΈΠΌΠΎΡΡΡ API-Π·Π°ΠΏΡΠΎΡΠ° β ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ ΡΠ° ΠΆΠ΅
Π Π΅Π·ΡΠ»ΡΡΠ°ΡΡ ΠΏΡΠΈ 263K ΡΠΎΠΊΠ΅Π½ΠΎΠ²:
- RLM(GPT-5-mini) ΠΏΡΠ΅Π²Π·ΠΎΡΡΠ» GPT-5 Π½Π° 15+ ΠΏΡΠ½ΠΊΡΠΎΠ² (ΠΏΡΠΈΡΠΎΡΡ ~49%)
- ΠΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ GPT-5-mini ΡΠΏΠ°Π»Π° ΡΠΈΠ»ΡΠ½Π΅Π΅, ΡΠ΅ΠΌ Ρ GPT-5 β βcontext rotβ ΠΏΠΎΡΠ°ΠΆΠ°Π΅Ρ ΠΌΠ΅Π½ΡΡΠΈΠ΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ ΡΠΈΠ»ΡΠ½Π΅Π΅
ΠΠ±Π»ΡΡΠΈΡ: REPL-ΡΡΠ΅Π΄Π° Π±Π΅Π· ΡΠ΅ΠΊΡΡΡΠΈΠ²Π½ΡΡ Π²ΡΠ·ΠΎΠ²ΠΎΠ² ΠΏΠΎΠΊΠ°Π·Π°Π»Π° ΠΏΠ°Π΄Π΅Π½ΠΈΠ΅ ~10%, ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠΆΠ΄Π°Ρ Π²Π°ΠΆΠ½ΠΎΡΡΡ ΠΈΠΌΠ΅Π½Π½ΠΎ ΡΠ΅ΠΊΡΡΡΠΈΠΈ Π΄Π»Ρ ΡΠ΅ΠΌΠ°Π½ΡΠΈΡΠ΅ΡΠΊΠΈΡ ΠΏΠΎΠ΄Π·Π°Π΄Π°Ρ.
ΠΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½Ρ 2 β BrowseComp-Plus
ΠΠ°Π΄Π°ΡΠ°: multi-hop Π·Π°ΠΏΡΠΎΡΡ, ΡΡΠ΅Π±ΡΡΡΠΈΠ΅ Π°ΡΡΠΎΡΠΈΠ°ΡΠΈΠΈ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΎΠ² ΡΡΠ΅Π΄ΠΈ ~100K Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΎΠ² (~5K ΡΠ»ΠΎΠ² Π² ΡΡΠ΅Π΄Π½Π΅ΠΌ). ΠΡΠ²Π΅Ρ Π΅ΡΡΡ Π² ΠΊΠΎΡΠΏΡΡΠ΅, Π½ΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ Π΅Π³ΠΎ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΡΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ²ΡΠ·Π°Π² ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠΎΠ².
Π Π΅Π·ΡΠ»ΡΡΠ°ΡΡ:
- RLM(GPT-5) β Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΡΠΉ ΠΌΠ΅ΡΠΎΠ΄, ΡΠΎΡ ΡΠ°Π½ΠΈΠ²ΡΠΈΠΉ 100% ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ ΠΏΡΠΈ ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ Π΄ΠΎ 1000 Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΎΠ²
- ΠΠ°Π·ΠΎΠ²Π°Ρ GPT-5 ΠΏΠΎΠΊΠ°Π·Π°Π»Π° ΡΠ²Π½ΠΎΠ΅ ΠΏΠ°Π΄Π΅Π½ΠΈΠ΅ Ρ ΡΠΎΡΡΠΎΠΌ ΡΠΈΡΠ»Π° Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΎΠ² β Π½ΠΈ ΠΏΠΎΠ»Π½ΡΠΉ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡ, Π½ΠΈ ΡΡΠ΅ΡΠ΅Π½ΠΈΠ΅, Π½ΠΈ BM25 Π½Π΅ ΠΏΠΎΠΌΠΎΠ³Π»ΠΈ
- ReAct + BM25 ΡΡΡΡΠΏΠΈΠ» RLM ΠΈ ΠΏΠΎ ΠΊΠ°ΡΠ΅ΡΡΠ²Ρ, ΠΈ ΠΏΠΎ ΡΡΠΎΠΈΠΌΠΎΡΡΠΈ
ΠΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ
- Π‘ΠΊΠΎΡΠΎΡΡΡ: ΡΠ΅ΠΊΡΡΡΠΈΠ²Π½ΡΠ΅ Π²ΡΠ·ΠΎΠ²Ρ Π±Π»ΠΎΠΊΠΈΡΡΡΡΠΈΠ΅, Π±Π΅Π· ΠΏΡΠ΅ΡΠΈΠΊΡΠ½ΠΎΠ³ΠΎ ΠΊΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ. ΠΠ°ΠΏΡΠΎΡ ΠΌΠΎΠΆΠ΅Ρ Π·Π°Π½ΠΈΠΌΠ°ΡΡ ΠΎΡ ΡΠ΅ΠΊΡΠ½Π΄ Π΄ΠΎ ΠΌΠΈΠ½ΡΡ.
- Π‘ΡΠΎΠΈΠΌΠΎΡΡΡ: Π½Π΅Ρ Π³Π°ΡΠ°Π½ΡΠΈΠΉ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π½Π°Π΄ ΠΎΠ±ΡΠΈΠΌ Π±ΡΠ΄ΠΆΠ΅ΡΠΎΠΌ API ΠΈΠ»ΠΈ Π²ΡΠ΅ΠΌΠ΅Π½Π΅ΠΌ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ.
- ΠΠ»ΡΠ±ΠΈΠ½Π° ΡΠ΅ΠΊΡΡΡΠΈΠΈ: Π²ΡΠ΅ ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΡ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Ρ Π³Π»ΡΠ±ΠΈΠ½ΠΎΠΉ 1; Π±ΠΎΠ»ΡΡΠ°Ρ Π³Π»ΡΠ±ΠΈΠ½Π° β ΠΎΡΠΊΡΡΡΡΠΉ Π²ΠΎΠΏΡΠΎΡ.
- ΠΠ΅ΡΠ΅ΡΠΌΠΈΠ½ΠΈΠ·ΠΌ: ΠΌΠΎΠ΄Π΅Π»Ρ ΠΌΠΎΠΆΠ΅Ρ Π²ΡΠ±ΡΠ°ΡΡ Π½Π΅ΠΎΠΏΡΠΈΠΌΠ°Π»ΡΠ½ΡΡ ΡΡΡΠ°ΡΠ΅Π³ΠΈΡ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ Ρ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠΎΠΌ.
ΠΠ°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΠ°Π·Π²ΠΈΡΠΈΡ
- ΠΡΠΈΠ½Ρ ΡΠΎΠ½Π½ΡΠ΅ Π²ΡΠ·ΠΎΠ²Ρ: ΡΠ°ΡΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΠΈΠ²Π°Π½ΠΈΠ΅ ΡΠ΅ΠΊΡΡΡΠΈΠ²Π½ΡΡ ΠΏΠΎΠ΄-Π·Π°ΠΏΡΠΎΡΠΎΠ² Π΄Π»Ρ ΡΡΠΊΠΎΡΠ΅Π½ΠΈΡ.
- RL-ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ ΡΡΠ°Π΅ΠΊΡΠΎΡΠΈΠΉ: ΠΎΠ±ΡΡΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π²ΡΠ±ΠΈΡΠ°ΡΡ ΠΎΠΏΡΠΈΠΌΠ°Π»ΡΠ½ΡΠ΅ ΡΡΡΠ°ΡΠ΅Π³ΠΈΠΈ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ Ρ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠΎΠΌ ΡΠ΅ΡΠ΅Π· reinforcement learning.
- ΠΠΎΠ»ΡΡΠ°Ρ Π³Π»ΡΠ±ΠΈΠ½Π° ΡΠ΅ΠΊΡΡΡΠΈΠΈ: ΠΈΠ΅ΡΠ°ΡΡ ΠΈΡΠ΅ΡΠΊΠ°Ρ Π΄Π΅ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡΠΈΡ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ° Π½Π° ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΡΡΠΎΠ²Π½Π΅ΠΉ.
- ΠΡΠΎΡΡ-ΠΌΠΎΠ΄Π°Π»ΡΠ½ΠΎΡΡΡ: ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ RLM ΠΊ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ°ΠΌ ΠΈΠ· ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ, Π°ΡΠ΄ΠΈΠΎ, Π²ΠΈΠ΄Π΅ΠΎ.
π οΈ Π’Π΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΈΠ΅ Π΄Π΅ΡΠ°Π»ΠΈ ΠΈ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ
ΠΠ°Π·ΠΎΠ²Π°Ρ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ° RLM:
# ΠΡΠ΅Π²Π΄ΠΎΠΊΠΎΠ΄ ΡΠΈΠΊΠ»Π° RLM (ΠΎΠ΄ΠΈΠ½ ΡΠ°Π³)
def rlm_step(model, query, env):
# model Π½Π΅ Π²ΠΈΠ΄ΠΈΡ env.ctx Π½Π°ΠΏΡΡΠΌΡΡ β ΡΠΎΠ»ΡΠΊΠΎ ΡΠ΅ΡΠ΅Π· ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ
response = model.completion(
messages=[{
"role": "user",
"content": f"Query: {query}\nContext is in variable 'ctx'. Use tools to explore it."
}],
tools=[
peek_tool, # peek(ctx, n) -> first n chars
grep_tool, # grep(ctx, pattern) -> matching lines
rlm_tool, # rlm_call(subquery, ctx_fragment) -> FINAL answer
final_tool, # FINAL(answer) -> Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΠ΅
],
environment=env # Python REPL Ρ ctx Π² ΠΏΠ°ΠΌΡΡΠΈ
)
if response.is_final:
return response.answer
# ΠΡΠΏΠΎΠ»Π½ΠΈΡΡ ΠΊΠΎΠ΄ Π² REPL, ΠΏΠΎΠ»ΡΡΠΈΡΡ Π²ΡΠ²ΠΎΠ΄
output = env.execute(response.code)
# ΠΠ΅ΡΠ΅Π΄Π°ΡΡ Π²ΡΠ²ΠΎΠ΄ ΠΎΠ±ΡΠ°ΡΠ½ΠΎ ΠΌΠΎΠ΄Π΅Π»ΠΈ (Ρ ΡΡΠ΅ΡΠ΅Π½ΠΈΠ΅ΠΌ)
return rlm_step(model, query, env.feed(output))ΠΠ»ΡΡΠ΅Π²ΠΎΠΉ ΠΏΡΠΈΠ½ΡΠΈΠΏ: rlm_tool ΡΠΎΠ·Π΄Π°ΡΡ ΠΈΠ·ΠΎΠ»ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡ RLM β Π½ΠΎΠ²ΡΠΉ env ΡΠΎ ΡΠ²ΠΎΠΈΠΌ ctx, Π½ΠΎΠ²ΡΠΉ ΡΠΈΠΊΠ», Π½ΠΈΠΊΠ°ΠΊΠΎΠ³ΠΎ ΡΠ°Π·Π΄Π΅Π»Π΅Π½ΠΈΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ Ρ ΡΠΎΠ΄ΠΈΡΠ΅Π»Π΅ΠΌ.
# Π£ΠΏΡΠΎΡΡΠ½Π½Π°Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ rlm_tool
def rlm_call(subquery, ctx_fragment):
sub_env = Environment(ctx=ctx_fragment) # ΠΈΠ·ΠΎΠ»ΠΈΡΠΎΠ²Π°Π½Π½Π°Ρ ΡΡΠ΅Π΄Π°
return rlm_step(model, subquery, sub_env)βοΈ ΠΠ»ΡΡΡ ΠΈ ΠΠΈΠ½ΡΡΡ
| π ΠΠ»ΡΡΡ | π ΠΠΈΠ½ΡΡΡ |
|---|---|
| ΠΠΎΠ½ΡΠ΅ΠΊΡΡΠ½ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ ΠΊΠΎΡΠ½Π΅Π²ΠΎΠΉ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π½Π΅ ΠΏΠ΅ΡΠ΅Π³ΡΡΠΆΠ°Π΅ΡΡΡ β Π·Π°ΡΠΈΡΠ° ΠΎΡ context rot | ΠΠ»ΠΎΠΊΠΈΡΡΡΡΠΈΠ΅ Π²ΡΠ·ΠΎΠ²Ρ β ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎ, ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ Π±Π΅Π· ΠΏΡΠ΅ΡΠΈΠΊΡΠ½ΠΎΠ³ΠΎ ΠΊΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ |
| ΠΠΎΠ΄Π΅Π»Ρ Π°Π΄Π°ΠΏΡΠΈΠ²Π½ΠΎ Π²ΡΠ±ΠΈΡΠ°Π΅Ρ ΡΡΡΠ°ΡΠ΅Π³ΠΈΡ ΡΡΠ΅Π½ΠΈΡ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ° | ΠΠ΅Ρ Π³Π°ΡΠ°Π½ΡΠΈΠΉ ΠΏΠΎ ΡΡΠΎΠΈΠΌΠΎΡΡΠΈ ΠΈ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ |
| ΠΠΎΠ΄Π°Π»ΡΠ½Π°Ρ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΡ β ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π»ΡΠ±ΡΠΌ ΡΠΈΠΏΠΎΠΌ Π΄Π°Π½Π½ΡΡ | ΠΠ»ΡΠ±ΠΈΠ½Π° ΡΠ΅ΠΊΡΡΡΠΈΠΈ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π° 1 Π² ΡΠ΅ΠΊΡΡΠΈΡ ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠ°Ρ |
| ΠΠ°ΡΡΡΠ°Π±ΠΈΡΡΠ΅ΡΡΡ Ρ ΡΠ»ΡΡΡΠ΅Π½ΠΈΠ΅ΠΌ Π±Π°Π·ΠΎΠ²ΡΡ ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ | ΠΠ΅ΠΎΠΏΡΠΈΠΌΠ°Π»ΡΠ½Π°Ρ ΡΡΡΠ°ΡΠ΅Π³ΠΈΡ ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠ²Π΅ΡΡΠΈ ΠΊ ΠΏΠ»ΠΎΡ ΠΈΠΌ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ°ΠΌ |
| ΠΡΠΎΡΡΠ°Ρ Π·Π°ΠΌΠ΅Π½Π° ΠΎΠ±ΡΡΠ½ΠΎΠ³ΠΎ completion-Π²ΡΠ·ΠΎΠ²Π° | Π’ΡΠ΅Π±ΡΠ΅Ρ REPL-ΡΡΠ΅Π΄Ρ Ρ ΠΈΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ ΠΊΠΎΠ΄Π° |
π Π‘Π²ΡΠ·ΠΈ
- RLM (Recursive Language Model) β ΡΠ΅ΡΠΌΠΈΠ½ Π² Π³Π»ΠΎΡΡΠ°ΡΠΈΠΈ.
- Context Window β ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° βcontext rotβ, ΠΊΠΎΡΠΎΡΡΡ RLM ΡΠ΅ΡΠ°Π΅Ρ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ½ΠΎ.
- Agent β Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Π½ΡΠΉ ΠΏΠΎΠ΄Ρ ΠΎΠ΄: Π΄Π΅ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡΠΈΡ Π·Π°Π΄Π°ΡΠΈ Π²ΠΌΠ΅ΡΡΠΎ Π΄Π΅ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡΠΈΠΈ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ°.
- Inference β RLM ΠΊΠ°ΠΊ ΡΠ²ΠΎΠ»ΡΡΠΈΡ ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΈΠ½ΡΠ΅ΡΠ΅Π½ΡΠ° (ΠΏΠΎΡΠ»Π΅ CoT ΠΈ ReAct).
Π’Π΅Π³ΠΈ: ai inference context rlm techreview