Zing 论坛

正文

RLM Skill:把递归语言模型装进 Claude Code 的实战方案

一个将 Recursive Language Models 论文思想落地的 Claude Code 技能,通过 Python REPL 把大文件处理拆分成多个子 LLM 调用,让主模型始终保持轻量上下文。

Claude CodeRecursive Language Models大上下文处理多 Agent 协作Python REPL提示词缓存成本优化
发布时间 2026/04/25 05:42最近活动 2026/04/25 05:52预计阅读 3 分钟
RLM Skill:把递归语言模型装进 Claude Code 的实战方案
1

章节 01

RLM Skill导读:递归语言模型在Claude Code中的实战落地

RLM Skill是将Recursive Language Models论文思想落地的Claude Code技能,通过Python REPL将大文件处理拆分为多个子LLM调用,让主模型始终保持轻量上下文,解决大模型上下文退化问题,同时优化成本与处理效率。

2

章节 02

背景:大上下文模型的问题与论文思路

大上下文模型的隐性代价

当下大语言模型虽支持大上下文窗口,但存在"上下文退化"问题:信息干扰、细节淹没、推理质量下降。

论文思路

2026年1月Zhang、Kraska和Khattab在arXiv发表《Recursive Language Models》,提出拆分语义任务给多个廉价子LLM调用,主模型协调子任务以维持轻量上下文。

3

章节 03

项目概述:rlm-skill的核心设计

vladcioaba/rlm-skill是该思路的Claude Code落地实现,为轻量级Python REPL包装器,核心设计步骤:

  1. 用户指定文件/目录
  2. 启动持久化Python REPL会话绑定输入
  3. Claude编写代码切片、过滤、分块数据
  4. 通过llm_query_batch()并行发起子LLM调用
  5. 保存结果,主模型仅见元数据和有限stdout 此模式改变大文件处理方式,替代直接塞大文件进提示词的传统方法。
4

章节 04

技术实现细节:零依赖、并行与优化

零依赖运行时

纯标准库实现,仅依赖Anthropic HTTP API(通过urllib调用),克隆即用。

并行子调用

rlm_helper.pyllm_query_batch()默认支持20并发子调用(concurrent.futures异步),子调用用Haiku模型降低成本。

提示词缓存

默认开启系统提示词和共享前缀缓存,节省约10倍成本。

预算控制

内置调用次数和Token消耗的软警告/硬上限,防止尾部成本失控。

目录处理

智能遍历目录,忽略.git等无关目录,支持glob过滤。

5

章节 05

使用方式与工作流程

安装

运行./install.sh~/.claude/skills/创建符号链接。

使用示例

在Claude Code会话中输入:Summarize every error pattern in /var/log/big.log using the rlm skill.

自动流程

  1. 启动会话:rlm_repl.py start --input /var/log/big.log
  2. 迭代处理:rlm_repl.py exec --session执行分块与子调用
  3. 获取结果:FINAL_VAR("report")保存,rlm_repl.py final读取 过程对用户透明,Claude自动生成逻辑。
6

章节 06

适用场景与核心价值

适用场景

  • 日志分析:处理GB级日志,提取错误模式、统计指标
  • 代码审查:扫描大型代码库,识别问题或生成摘要
  • 文档处理:分析大量文档,提取结构化信息
  • 数据清洗:处理大型CSV/JSON,转换验证

核心价值

让主模型保持轻量上下文,避免退化;并行子调用提升效率;缓存与预算控制优化成本。

7

章节 07

总结与实现差异

实现差异

与论文参考代码的不同:

  • 子调用用Anthropic Messages API(默认Haiku)而非OpenAI/Fireworks
  • 用concurrent.futures实现并行而非论文异步模式
  • 默认开启提示词缓存
  • 仅支持深度1的递归(与论文一致)

总结

rlm-skill是论文思想的精巧落地,专注解决Claude Code中大文件处理问题,为日志分析、代码审查等场景提供优雅工作方式。