基于 DSPy 和 Modal 的安全云端沙箱递归语言模型框架,支持长上下文代码与文档处理,提供 Web UI、CLI、HTTP API、WebSocket 和 MCP Server 多种接口。
项目概述#
Fleet-RLM 是一个基于 DSPy 声明式编程框架和 Modal 云端沙箱的递归语言模型(RLM)实现。项目源自 MIT/Stanford 的 RLM 学术研究(arXiv:2512.24601),由 Qredence 组织维护,当前版本 v0.4.8,拥有 422+ commits 的活跃开发状态。
核心特性#
Web UI 交互(fleet web)
- 浏览器内与 RLM 驱动的 agent 对话
- 运行时配置(LM / Modal)可在 UI 中直接设置
- 访问地址:http://localhost:8000
安全沙箱执行
- 基于 Modal 的云端沙箱,支持安全代码执行
- 递归长上下文任务处理,突破模型上下文窗口限制
- 适用于不可信代码的隔离运行环境
文档分析能力
- PDF 摄入(MarkItDown + pypdf 回退方案)
- 大型文档智能处理
执行可观测性
- 执行事件和轨迹的流式输出
- WebSocket 执行流 (
/api/v1/ws/execution) - 实时监控 agent 执行过程
多接口支持
- CLI:
fleet/fleet-rlm/rlm-modal命令 - HTTP API:FastAPI REST 服务
- MCP Server:
fleet-rlm serve-mcp --transport stdio(支持 Claude Desktop 集成) - WebSocket:实时聊天和执行流
多租户持久化
- Neon 数据库 + RLS(Row-Level Security)行级隔离
- 支持租户感知的 run/step/artifact/memory 持久化
架构设计#
采用四层架构:
| 层级 | 核心模块 | 职责 |
|---|---|---|
| Orchestration | react/agent.py, streaming.py, tools*.py | ReAct 循环编排、工具调度、轨迹与流事件生成 |
| Execution | core/interpreter.py, driver.py, driver_factories.py | Modal 远程代码执行、执行配置、沙箱协议处理 |
| Service | server/routers/*, deps.py, config.py | HTTP/WebSocket 传输、认证、运行时设置、会话生命周期 |
| Persistence | db/*, migrations/ | 租户感知持久化、RLS 隔离 |
安装与快速开始#
推荐方式(CLI 工具):
uv tool install fleet-rlm
fleet web
常规安装:
uv pip install fleet-rlm
fleet web
从源码运行:
uv sync --extra dev --extra server
uv run fleet web
其他命令示例:
fleet-rlm run-basic --question "What are the first 12 Fibonacci numbers?"
fleet-rlm serve-api --port 8000
fleet-rlm serve-mcp --transport stdio
fleet-rlm chat
典型应用场景#
- 长上下文代码任务:处理超出模型上下文窗口的代码分析/生成
- 文档智能处理:大型 PDF 文档的摄入和分析
- AI Agent 开发:构建具有递归委托能力的智能体
- 安全代码执行:在隔离沙箱中运行不可信代码
- MCP 集成:作为 MCP 服务器集成到 Claude Desktop 等客户端
关键依赖#
- DSPy 3.1.3(声明式 LM 编程框架)
- Modal 1.3.2+(云端沙箱)
- FastAPI + Uvicorn(HTTP 服务)
- WebSockets(实时通信)
- SQLModel + SQLAlchemy + asyncpg(数据库)
- LiteLLM(多模型支持)
- pgvector(向量存储)
开源协议#
MIT License
运行时配置项#
- LM(语言模型)设置
- Modal secrets 配置
- 认证模式(Dev vs Entra)
- Neon DB 连接