[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"similar-rllm-org--rllm":3,"tool-rllm-org--rllm":64},[4,17,27,35,43,56],{"id":5,"name":6,"github_repo":7,"description_zh":8,"stars":9,"difficulty_score":10,"last_commit_at":11,"category_tags":12,"status":16},3808,"stable-diffusion-webui","AUTOMATIC1111\u002Fstable-diffusion-webui","stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面，旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点，将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。\n\n无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师，还是想要深入探索模型潜力的开发者与研究人员，都能从中获益。其核心亮点在于极高的功能丰富度：不仅支持文生图、图生图、局部重绘（Inpainting）和外绘（Outpainting）等基础模式，还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外，它内置了 GFPGAN 和 CodeFormer 等人脸修复工具，支持多种神经网络放大算法，并允许用户通过插件系统无限扩展能力。即使是显存有限的设备，stable-diffusion-webui 也提供了相应的优化选项，让高质量的 AI 艺术创作变得触手可及。",162132,3,"2026-04-05T11:01:52",[13,14,15],"开发框架","图像","Agent","ready",{"id":18,"name":19,"github_repo":20,"description_zh":21,"stars":22,"difficulty_score":23,"last_commit_at":24,"category_tags":25,"status":16},1381,"everything-claude-code","affaan-m\u002Feverything-claude-code","everything-claude-code 是一套专为 AI 编程助手（如 Claude Code、Codex、Cursor 等）打造的高性能优化系统。它不仅仅是一组配置文件，而是一个经过长期实战打磨的完整框架，旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。\n\n通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能，everything-claude-code 能显著提升 AI 在复杂任务中的表现，帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略，使得模型响应更快、成本更低，同时有效防御潜在的攻击向量。\n\n这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库，还是需要 AI 协助进行安全审计与自动化测试，everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目，它融合了多语言支持与丰富的实战钩子（hooks），让 AI 真正成长为懂上",138956,2,"2026-04-05T11:33:21",[13,15,26],"语言模型",{"id":28,"name":29,"github_repo":30,"description_zh":31,"stars":32,"difficulty_score":23,"last_commit_at":33,"category_tags":34,"status":16},2271,"ComfyUI","Comfy-Org\u002FComfyUI","ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎，专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式，采用直观的节点式流程图界面，让用户通过连接不同的功能模块即可构建个性化的生成管线。\n\n这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景，也能自由组合模型、调整参数并实时预览效果，轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性，不仅支持 Windows、macOS 和 Linux 全平台，还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构，并率先支持 SDXL、Flux、SD3 等前沿模型。\n\n无论是希望深入探索算法潜力的研究人员和开发者，还是追求极致创作自由度的设计师与资深 AI 绘画爱好者，ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能，使其成为当前最灵活、生态最丰富的开源扩散模型工具之一，帮助用户将创意高效转化为现实。",107662,"2026-04-03T11:11:01",[13,14,15],{"id":36,"name":37,"github_repo":38,"description_zh":39,"stars":40,"difficulty_score":23,"last_commit_at":41,"category_tags":42,"status":16},3704,"NextChat","ChatGPTNextWeb\u002FNextChat","NextChat 是一款轻量且极速的 AI 助手，旨在为用户提供流畅、跨平台的大模型交互体验。它完美解决了用户在多设备间切换时难以保持对话连续性，以及面对众多 AI 模型不知如何统一管理的痛点。无论是日常办公、学习辅助还是创意激发，NextChat 都能让用户随时随地通过网页、iOS、Android、Windows、MacOS 或 Linux 端无缝接入智能服务。\n\n这款工具非常适合普通用户、学生、职场人士以及需要私有化部署的企业团队使用。对于开发者而言，它也提供了便捷的自托管方案，支持一键部署到 Vercel 或 Zeabur 等平台。\n\nNextChat 的核心亮点在于其广泛的模型兼容性，原生支持 Claude、DeepSeek、GPT-4 及 Gemini Pro 等主流大模型，让用户在一个界面即可自由切换不同 AI 能力。此外，它还率先支持 MCP（Model Context Protocol）协议，增强了上下文处理能力。针对企业用户，NextChat 提供专业版解决方案，具备品牌定制、细粒度权限控制、内部知识库整合及安全审计等功能，满足公司对数据隐私和个性化管理的高标准要求。",87618,"2026-04-05T07:20:52",[13,26],{"id":44,"name":45,"github_repo":46,"description_zh":47,"stars":48,"difficulty_score":23,"last_commit_at":49,"category_tags":50,"status":16},2268,"ML-For-Beginners","microsoft\u002FML-For-Beginners","ML-For-Beginners 是由微软推出的一套系统化机器学习入门课程，旨在帮助零基础用户轻松掌握经典机器学习知识。这套课程将学习路径规划为 12 周，包含 26 节精炼课程和 52 道配套测验，内容涵盖从基础概念到实际应用的完整流程，有效解决了初学者面对庞大知识体系时无从下手、缺乏结构化指导的痛点。\n\n无论是希望转型的开发者、需要补充算法背景的研究人员，还是对人工智能充满好奇的普通爱好者，都能从中受益。课程不仅提供了清晰的理论讲解，还强调动手实践，让用户在循序渐进中建立扎实的技能基础。其独特的亮点在于强大的多语言支持，通过自动化机制提供了包括简体中文在内的 50 多种语言版本，极大地降低了全球不同背景用户的学习门槛。此外，项目采用开源协作模式，社区活跃且内容持续更新，确保学习者能获取前沿且准确的技术资讯。如果你正寻找一条清晰、友好且专业的机器学习入门之路，ML-For-Beginners 将是理想的起点。",84991,"2026-04-05T10:45:23",[14,51,52,53,15,54,26,13,55],"数据工具","视频","插件","其他","音频",{"id":57,"name":58,"github_repo":59,"description_zh":60,"stars":61,"difficulty_score":10,"last_commit_at":62,"category_tags":63,"status":16},3128,"ragflow","infiniflow\u002Fragflow","RAGFlow 是一款领先的开源检索增强生成（RAG）引擎，旨在为大语言模型构建更精准、可靠的上下文层。它巧妙地将前沿的 RAG 技术与智能体（Agent）能力相结合，不仅支持从各类文档中高效提取知识，还能让模型基于这些知识进行逻辑推理和任务执行。\n\n在大模型应用中，幻觉问题和知识滞后是常见痛点。RAGFlow 通过深度解析复杂文档结构（如表格、图表及混合排版），显著提升了信息检索的准确度，从而有效减少模型“胡编乱造”的现象，确保回答既有据可依又具备时效性。其内置的智能体机制更进一步，使系统不仅能回答问题，还能自主规划步骤解决复杂问题。\n\n这款工具特别适合开发者、企业技术团队以及 AI 研究人员使用。无论是希望快速搭建私有知识库问答系统，还是致力于探索大模型在垂直领域落地的创新者，都能从中受益。RAGFlow 提供了可视化的工作流编排界面和灵活的 API 接口，既降低了非算法背景用户的上手门槛，也满足了专业开发者对系统深度定制的需求。作为基于 Apache 2.0 协议开源的项目，它正成为连接通用大模型与行业专有知识之间的重要桥梁。",77062,"2026-04-04T04:44:48",[15,14,13,26,54],{"id":65,"github_repo":66,"name":67,"description_en":68,"description_zh":69,"ai_summary_zh":69,"readme_en":70,"readme_zh":71,"quickstart_zh":72,"use_case_zh":73,"hero_image_url":74,"owner_login":75,"owner_name":75,"owner_avatar_url":76,"owner_bio":77,"owner_company":77,"owner_location":77,"owner_email":77,"owner_twitter":77,"owner_website":77,"owner_url":78,"languages":79,"stars":100,"forks":101,"last_commit_at":102,"license":103,"difficulty_score":10,"env_os":104,"env_gpu":105,"env_ram":104,"env_deps":106,"category_tags":120,"github_topics":121,"view_count":23,"oss_zip_url":77,"oss_zip_packed_at":77,"status":16,"created_at":136,"updated_at":137,"faqs":138,"releases":167},2903,"rllm-org\u002Frllm","rllm","Democratizing Reinforcement Learning for LLMs","rLLM 是一个旨在让大语言模型（LLM）强化学习变得触手可及的开源框架。它核心解决了传统 RL 训练门槛高、代码改造复杂且难以兼容不同开发框架的痛点，让开发者无需深入底层算法细节，即可轻松训练出高性能的 AI 智能体。\n\n该工具特别适合 AI 开发者、研究人员以及希望优化模型推理能力的技术团队使用。其独特亮点在于极强的兼容性与极简的工作流：无论是 LangGraph、OpenAI Agents SDK 还是原生 API，只需替换客户端即可接入；通过简单的装饰器包裹代码，rLLM 便能自动追踪所有调用并执行训练。它提供命令行与 Python API 两种模式，内置 50 多个基准测试，支持从单机到多 GPU 分布式的多种训练后端。更令人印象深刻的是，经 rLLM 训练的小型模型在数学和金融等特定任务上，表现可超越规模大数十倍的顶级模型，真正实现了“小模型、大智慧”的高效进化。","\u003Cdiv align=\"center\">\n\n# rLLM\n\n**Train your AI agents with RL. Any framework. Minimal code changes.**\n\n[![Documentation](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FDocumentation-blue?style=for-the-badge&logo=googledocs&logoColor=white)](https:\u002F\u002Fdocs.rllm-project.com\u002F)\n[![Slack](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FSlack-4A154B?style=for-the-badge&logo=slack&logoColor=white)](https:\u002F\u002Fjoin.slack.com\u002Ft\u002Frllmproject\u002Fshared_invite\u002Fzt-3pyblo6ef-m9kqAoInI8xSyUBkpuOyXA)\n[![Website](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FSite-%233f72af.svg?style=for-the-badge&logo=semanticweb&logoColor=white)](https:\u002F\u002Frllm-project.com)\n[![Blogs](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FBlogs-007AFF?style=for-the-badge)](https:\u002F\u002Frllm-project.com\u002Fblog)\n[![X](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002F-black?logo=X&style=for-the-badge)](https:\u002F\u002Fx.com\u002Frllm_project)\n\n\u003C!-- [![PyPI](https:\u002F\u002Fimg.shields.io\u002Fpypi\u002Fv\u002Frllm?style=for-the-badge)](https:\u002F\u002Fpypi.org\u002Fproject\u002Frllm\u002F) -->\n\n\u003C\u002Fdiv>\n\nrLLM is an open-source framework for training AI agents with reinforcement learning. Swap in a tracked client, define a reward function, and let RL handle the rest — no matter what agent framework you use.\n\n## Core Features\n\n- **Works with any agent framework** — LangGraph, SmolAgent, Strands, OpenAI Agents SDK, Google ADK, or plain `openai.OpenAI`. Just swap the client. 🔌\n- **Near-zero code changes** — Add `@rllm.rollout` to wrap your agent code, and rLLM traces every LLM call automatically. 🪄\n- **CLI-first workflow** — Eval and train from the command line with 50+ built-in benchmarks. `rllm eval gsm8k` just works. ⚡\n- **Battle-tested results** — rLLM-trained agents beat models 50x their size (4B → outperforms 235B on finance, 1.5B → surpasses O1-Preview on math). 📈\n- **Multiple RL algorithms** — GRPO, REINFORCE, RLOO, rejection sampling, and more. 🧠\n- **Two training backends** — `verl` for distributed multi-GPU training, `tinker` for single-machine \u002F CPU setups. Same API either way. 🔧\n\nRead more on our [documentation site](https:\u002F\u002Fdocs.rllm-project.com\u002F).\n\n## Installation\n\nrLLM requires `Python >= 3.10` (`3.11` is needed if using `tinker`). You can install it either directly via pip or build from source.\n\n```bash\nuv pip install \"rllm @ git+https:\u002F\u002Fgithub.com\u002Frllm-org\u002Frllm.git\"\n```\n\nthis installs dependencies for running rllm cli, which uses Tinker as the training backend. \n\nTo use `verl` as the training backend (GPU machine required), install via \n\n```bash\n# For distributed GPU training (verl + vLLM\u002FSGLang)\nuv pip install rllm[verl] @ git+https:\u002F\u002Fgithub.com\u002Frllm-org\u002Frllm.git\n```\n\nFor building from source or Docker, see the [installation guide](https:\u002F\u002Fdocs.rllm-project.com\u002Finstallation).\n\n## Quickstart\n\n### Option A: CLI (no code needed)\n\n```bash\n# 1. Configure your model provider\nrllm model setup\n\n# 2. Evaluate on a benchmark\nrllm eval gsm8k\n\n# 3. Train with RL\nrllm train gsm8k\n```\n\n### Option B: Python API\n\nDefine a rollout (your agent) and an evaluator (your reward function), then hand them to the trainer:\n\n```python\n# my_flow.py\nfrom openai import OpenAI\nimport rllm\nfrom rllm.experimental.eval.types import AgentConfig, Task\nfrom rllm.types import Episode, Trajectory\n\n@rllm.rollout\ndef solve(task: Task, config: AgentConfig) -> Episode:\n    client = OpenAI(base_url=config.base_url, api_key=\"EMPTY\")\n    response = client.chat.completions.create(\n        model=config.model,\n        messages=[{\"role\": \"user\", \"content\": task.data[\"question\"]}],\n    )\n    answer = response.choices[0].message.content or \"\"\n    return Episode(\n        trajectories=[Trajectory(name=\"solver\", steps=[])],\n        artifacts={\"answer\": answer},\n    )\n```\n\n```python\n# my_evaluator.py\nimport rllm\nfrom rllm.experimental.eval.types import EvalOutput, Signal, _extract_agent_answer\nfrom rllm.types import Episode\n\n@rllm.evaluator\ndef score(task: dict, episode: Episode) -> EvalOutput:\n    answer = _extract_agent_answer(episode)\n    is_correct = answer.strip() == task[\"ground_truth\"].strip()\n    reward = 1.0 if is_correct else 0.0\n    return EvalOutput(reward=reward, is_correct=is_correct,\n                      signals=[Signal(name=\"accuracy\", value=reward)])\n```\n\n```python\n# train.py\nfrom rllm.experimental.unified_trainer import AgentTrainer\n\ntrainer = AgentTrainer(\n    backend=\"tinker\",\n    agent_flow=solve,\n    evaluator=score,\n    config=config,\n    train_dataset=dataset,\n)\ntrainer.train()\n```\n\nDuring training, `config.base_url` points to a gateway that transparently captures token IDs and logprobs — your agent code stays the same for eval and training.\n\nSee the [cookbooks](.\u002Fcookbooks) for complete working examples (single-turn VLM solver, multi-agent solver-judge, and more).\n\n## Architecture\n\nrLLM follows a simple pipeline: **run your agent → collect traces → compute rewards → update the model**.\n\n```\n┌──────────────┐    ┌──────────────┐    ┌──────────────┐    ┌──────────────┐\n│  Your Agent  │───▶│    Traces     │───▶│   Rewards    │───▶│  RL Update   │\n│  (any code)  │    │  (auto-logged)│    │ (your logic) │    │  (GRPO etc.) │\n└──────────────┘    └──────────────┘    └──────────────┘    └──────────────┘\n```\n\nYour agent runs as-is — rLLM's SDK intercepts LLM calls and structures them into **Episodes** (one task) containing **Trajectories** (one agent run) made of **Steps** (one LLM call). A reward function scores the result, and the RL algorithm updates the model weights. The same agent code works for both eval and training.\n\nUnder the hood:\n- **Workflow Engine** runs N parallel agent instances to collect rollouts\n- **LiteLLM Proxy** routes requests and captures token IDs + logprobs\n- **Transform Pipeline** groups trajectories for advantage computation\n- **Training Backend** (verl or tinker) handles the policy update\n\n## Community Projects\n\n- [Tongyi DeepResearch](https:\u002F\u002Fgithub.com\u002FAlibaba-NLP\u002FDeepResearch) — Open-source AI researchers by Alibaba NLP [![Stars](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fstars\u002FAlibaba-NLP\u002FDeepResearch)](https:\u002F\u002Fgithub.com\u002FAlibaba-NLP\u002FDeepResearch)\n- [Terminal-Bench-RL](https:\u002F\u002Fgithub.com\u002FDanau5tin\u002Fterminal-bench-rl) — Training long-horizon terminal agents with RL [![Stars](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fstars\u002FDanau5tin\u002Fterminal-bench-rl)](https:\u002F\u002Fgithub.com\u002FDanau5tin\u002Fterminal-bench-rl)\n- [PettingLLMs](https:\u002F\u002Fgithub.com\u002Fpettingllms-ai\u002FPettingLLMs) — Multi-agent RL with on-policy training [![Stars](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fstars\u002Fpettingllms-ai\u002FPettingLLMs)](https:\u002F\u002Fgithub.com\u002Fpettingllms-ai\u002FPettingLLMs)\n- [SETA](https:\u002F\u002Fgithub.com\u002Fcamel-ai\u002Fseta) — Scaling environments for terminal agents [![Stars](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fstars\u002Fcamel-ai\u002Fseta)](https:\u002F\u002Fgithub.com\u002Fcamel-ai\u002Fseta)\n- [LLM-in-Sandbox](https:\u002F\u002Fgithub.com\u002Fllm-in-sandbox\u002Fllm-in-sandbox) — Building general agents by running LLMs in a sandbox [![Stars](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fstars\u002Fllm-in-sandbox\u002Fllm-in-sandbox)](https:\u002F\u002Fgithub.com\u002Fllm-in-sandbox\u002Fllm-in-sandbox)\n- [Vision-DeepResearch](https:\u002F\u002Fgithub.com\u002FOsilly\u002FVision-DeepResearch) — The first long-horizon multimodal deep-research MLLM [![Stars](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fstars\u002FOsilly\u002FVision-DeepResearch)](https:\u002F\u002Fgithub.com\u002FOsilly\u002FVision-DeepResearch)\n- [Cogito, Ergo Ludo](https:\u002F\u002Fwww.arxiv.org\u002Fabs\u002F2509.25052) — An agent that learns to play by reasoning and planning\n- [Cut the Bill, Keep the Turns](https:\u002F\u002Fagate-slipper-ef0.notion.site\u002FCut-the-Bill-Keep-the-Turns-Affordable-Multi-Turn-Search-RL-003f78214a4d451fb06f453d084e666c) — Affordable multi-turn search RL\n- [Experiential Reinforcement Learning](https:\u002F\u002Farxiv.org\u002Fabs\u002F2602.13949) — Experience-reflection-consolidation loop for RL with sparse rewards\n- [V1: Unifying Generation and Self-Verification](https:\u002F\u002Farxiv.org\u002Fabs\u002F2603.04304) — Pairwise self-verification for parallel test-time scaling\n## Articles & Blog Posts\n\n- [rLLM UI: Real-Time Observability Tool for Agent Training & Evaluation](https:\u002F\u002Frllm-project.com\u002Fpost.html?post=rllm_ui.md) — Mar 2026\n- [rLLM On-Policy Distillation: Training Smaller Students from Stronger Teachers](https:\u002F\u002Frllm-project.com\u002Fpost.html?post=opd.md) — Mar 2026\n- [Faster and Better: Open-Source Recipe for Deep Research Agents with Fully Async Training](https:\u002F\u002Frllm-project.com\u002Fpost.html?post=async_rl.md) — Feb 2026\n- [rLLM-FinQA: How a 4B Model Outperforms 235B and Rivals Gemini 2.5 Pro on Financial Analysis](https:\u002F\u002Frllm-project.com\u002Fpost.html?post=finqa.md) — Feb 2026\n- [rLLM SDK: Training Any Agentic Program without Code Changes](https:\u002F\u002Frllm-project.com\u002Fpost.html?post=sdk.md) — Dec 2025\n- [rLLM v0.2: RL Training for General Agentic Programs](https:\u002F\u002Frllm-project.com\u002Fpost.html?post=rllm_v0.2.md) — Oct 2025\n- [DeepSWE: Open-source SWE Agent via RL](https:\u002F\u002Fpretty-radio-b75.notion.site\u002FDeepSWE-Training-a-Fully-Open-sourced-State-of-the-Art-Coding-Agent-by-Scaling-RL-22281902c1468193aabbe9a8c59bbe33) — Jul 2025\n- [DeepCoder: 14B Coder at O3-mini Level](https:\u002F\u002Fpretty-radio-b75.notion.site\u002FDeepCoder-A-Fully-Open-Source-14B-Coder-at-O3-mini-Level-1cf81902c14680b3bee5eb349a512a51) — Apr 2025\n- [DeepScaleR: 1.5B Surpasses O1-Preview](https:\u002F\u002Fpretty-radio-b75.notion.site\u002FDeepScaleR-Surpassing-O1-Preview-with-a-1-5B-Model-by-Scaling-RL-19681902c1468005bed8ca303013a4e2) — Feb 2025\n\n## Acknowledgements\n\nOur work is done as part of [Berkeley Sky Computing Lab](https:\u002F\u002Fsky.cs.berkeley.edu\u002F). The rLLM team is generously supported by grants from [Laude Institute](https:\u002F\u002Fwww.laude.org\u002F), [AWS](https:\u002F\u002Faws.amazon.com\u002F), [Hyperbolic](https:\u002F\u002Fwww.hyperbolic.ai\u002F), [Fireworks AI](https:\u002F\u002Ffireworks.ai\u002F), and [Modal](https:\u002F\u002Fmodal.com\u002F). We pay special thanks to [Together AI](https:\u002F\u002Fwww.together.ai\u002F) for the research partnership and compute support.\n\n## Citation\n\n```bibtex\n@misc{rllm2025,\n  title={rLLM: A Framework for Post-Training Language Agents},\n  author={Sijun Tan and Michael Luo and Colin Cai and Tarun Venkat and Kyle Montgomery and Aaron Hao and Tianhao Wu and Arnav Balyan and Manan Roongta and Chenguang Wang and Li Erran Li and Raluca Ada Popa and Ion Stoica},\n  year={2025},\n  howpublished={\\url{https:\u002F\u002Fpretty-radio-b75.notion.site\u002FrLLM-A-Framework-for-Post-Training-Language-Agents-21b81902c146819db63cd98a54ba5f31}},\n  note={Notion Blog},\n}\n```\n\nYou may also cite our prior work [DeepScaleR](https:\u002F\u002Fscholar.googleusercontent.com\u002Fscholar.bib?q=info:PrmBADk39GwJ:scholar.google.com\u002F&output=citation&scisdr=CgIJFx-xEMCQ6zOgcuI:AAZF9b8AAAAAaPCmauIfzg8Rm9ImNYDad0uPUK8&scisig=AAZF9b8AAAAAaPCmahXsNqb1jTQBw2iPfw2vm9g&scisf=4&ct=citation&cd=-1&hl=en&scfhb=1), [DeepCoder](https:\u002F\u002Fscholar.googleusercontent.com\u002Fscholar.bib?q=info:xpZNEPI6opAJ:scholar.google.com\u002F&output=citation&scisdr=CgIJFx-xEMCQ6zOgjM8:AAZF9b8AAAAAaPCmlM_hb3S0tzBSVrRYBZYDLWg&scisig=AAZF9b8AAAAAaPCmlG109SG8d8230AiDP4jMxlw&scisf=4&ct=citation&cd=-1&hl=en&scfhb=1), and [DeepSWE](https:\u002F\u002Fscholar.googleusercontent.com\u002Fscholar.bib?q=info:J9rT3SnY_aMJ:scholar.google.com\u002F&output=citation&scisdr=CgIJFx-xEMCQ6zOg3D4:AAZF9b8AAAAAaPCmxD7Nl0xA_AcAeydpcE1BXCo&scisig=AAZF9b8AAAAAaPCmxE2Spzf5lf-2Toys5xEpnuA&scisf=4&ct=citation&cd=-1&hl=en&scfhb=1).\n","\u003Cdiv align=\"center\">\n\n# rLLM\n\n**用强化学习训练你的AI智能体。兼容任何框架，只需极少量代码改动。**\n\n[![文档](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FDocumentation-blue?style=for-the-badge&logo=googledocs&logoColor=white)](https:\u002F\u002Fdocs.rllm-project.com\u002F)\n[![Slack](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FSlack-4A154B?style=for-the-badge&logo=slack&logoColor=white)](https:\u002F\u002Fjoin.slack.com\u002Ft\u002Frllmproject\u002Fshared_invite\u002Fzt-3pyblo6ef-m9kqAoInI8xSyUBkpuOyXA)\n[![官网](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FSite-%233f72af.svg?style=for-the-badge&logo=semanticweb&logoColor=white)](https:\u002F\u002Frllm-project.com)\n[![博客](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FBlogs-007AFF?style=for-the-badge)](https:\u002F\u002Frllm-project.com\u002Fblog)\n[![X](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002F-black?logo=X&style=for-the-badge)](https:\u002F\u002Fx.com\u002Frllm_project)\n\n\u003C!-- [![PyPI](https:\u002F\u002Fimg.shields.io\u002Fpypi\u002Fv\u002Frllm?style=for-the-badge)](https:\u002F\u002Fpypi.org\u002Fproject\u002Frllm\u002F) -->\n\n\u003C\u002Fdiv>\n\nrLLM是一个开源框架，用于通过强化学习训练AI智能体。只需替换为受跟踪的客户端，定义奖励函数，剩下的就交给强化学习来处理——无论你使用哪种智能体框架。\n\n## 核心特性\n\n- **兼容任何智能体框架** — LangGraph、SmolAgent、Strands、OpenAI Agents SDK、Google ADK，或普通的`openai.OpenAI`。只需更换客户端即可。🔌\n- **几乎无需修改代码** — 在你的智能体代码上添加`@rllm.rollout`装饰器，rLLM会自动追踪每一次LLM调用。🪄\n- **以命令行为主的工作流** — 通过命令行进行评估和训练，内置50多种基准测试。`rllm eval gsm8k`直接可用。⚡\n- **经过实战验证的效果** — rLLM训练的智能体在性能上超越了比其大50倍的模型（4B在金融任务上表现优于235B，1.5B在数学任务上超越O1-Preview）。📈\n- **多种强化学习算法** — GRPO、REINFORCE、RLOO、拒绝采样等。🧠\n- **两种训练后端** — `verl`用于分布式多GPU训练，`tinker`用于单机\u002FCPU环境。无论哪种后端，API都相同。🔧\n\n更多内容请访问我们的[文档网站](https:\u002F\u002Fdocs.rllm-project.com\u002F)。\n\n## 安装\n\nrLLM需要`Python >= 3.10`（如果使用`tinker`则需要`3.11`）。你可以直接通过pip安装，也可以从源码构建。\n\n```bash\nuv pip install \"rllm @ git+https:\u002F\u002Fgithub.com\u002Frllm-org\u002Frllm.git\"\n```\n\n这将安装运行rLLM CLI所需的依赖，该CLI使用Tinker作为训练后端。\n\n若要使用`verl`作为训练后端（需要GPU机器），请通过以下命令安装：\n\n```bash\n# 用于分布式GPU训练（verl + vLLM\u002FSGLang）\nuv pip install rllm[verl] @ git+https:\u002F\u002Fgithub.com\u002Frllm-org\u002Frllm.git\n```\n\n关于从源码或Docker构建，请参阅[安装指南](https:\u002F\u002Fdocs.rllm-project.com\u002Finstallation)。\n\n## 快速入门\n\n### 选项A：命令行（无需编写代码）\n\n```bash\n# 1. 配置你的模型提供商\nrllm model setup\n\n# 2. 在基准上进行评估\nrllm eval gsm8k\n\n# 3. 使用强化学习进行训练\nrllm train gsm8k\n```\n\n### 选项B：Python API\n\n定义一个回放（你的智能体）和一个评估者（你的奖励函数），然后将它们交给训练器：\n\n```python\n# my_flow.py\nfrom openai import OpenAI\nimport rllm\nfrom rllm.experimental.eval.types import AgentConfig, Task\nfrom rllm.types import Episode, Trajectory\n\n@rllm.rollout\ndef solve(task: Task, config: AgentConfig) -> Episode:\n    client = OpenAI(base_url=config.base_url, api_key=\"EMPTY\")\n    response = client.chat.completions.create(\n        model=config.model,\n        messages=[{\"role\": \"user\", \"content\": task.data[\"question\"]}],\n    )\n    answer = response.choices[0].message.content or \"\"\n    return Episode(\n        trajectories=[Trajectory(name=\"solver\", steps=[])],\n        artifacts={\"answer\": answer},\n    )\n```\n\n```python\n# my_evaluator.py\nimport rllm\nfrom rllm.experimental.eval.types import EvalOutput, Signal, _extract_agent_answer\nfrom rllm.types import Episode\n\n@rllm.evaluator\ndef score(task: dict, episode: Episode) -> EvalOutput:\n    answer = _extract_agent_answer(episode)\n    is_correct = answer.strip() == task[\"ground_truth\"].strip()\n    reward = 1.0 if is_correct else 0.0\n    return EvalOutput(reward=reward, is_correct=is_correct,\n                      signals=[Signal(name=\"accuracy\", value=reward)])\n```\n\n```python\n# train.py\nfrom rllm.experimental.unified_trainer import AgentTrainer\n\ntrainer = AgentTrainer(\n    backend=\"tinker\",\n    agent_flow=solve,\n    evaluator=score,\n    config=config,\n    train_dataset=dataset,\n)\ntrainer.train()\n```\n\n在训练过程中，`config.base_url`指向一个网关，该网关会透明地捕获token ID和logits——你的智能体代码在评估和训练时保持不变。\n\n完整的可运行示例（单轮VLM求解器、多智能体求解器-评判器等）请参阅[教程](.\u002Fcookbooks)。\n\n## 架构\n\nrLLM遵循一个简单的流程：**运行你的智能体 → 收集轨迹 → 计算奖励 → 更新模型**。\n\n```\n┌──────────────┐    ┌──────────────┐    ┌──────────────┐    ┌──────────────┐\n│  Your Agent  │───▶│    Traces     │───▶│   Rewards    │───▶│  RL Update   │\n│  (any code)  │    │  (auto-logged)│    │ (your logic) │    │  (GRPO etc.) │\n└──────────────┘    └──────────────┘    └──────────────┘    └──────────────┘\n```\n\n你的智能体可以按原样运行——rLLM的SDK会拦截LLM调用，并将其结构化为包含多个**轨迹**（一次智能体运行）的**剧集**（一个任务），而每个轨迹又由多个**步骤**（一次LLM调用）组成。奖励函数会对结果进行评分，强化学习算法则会更新模型权重。同一份智能体代码既可用于评估，也可用于训练。\n\n底层实现：\n- **工作流引擎**并行运行N个智能体实例以收集回放数据\n- **LiteLLM代理**负责路由请求并捕获token ID和logits\n- **转换管道**将轨迹分组以便计算优势\n- **训练后端**（verl或tinker）负责策略更新\n\n## 社区项目\n\n- [Tongyi DeepResearch](https:\u002F\u002Fgithub.com\u002FAlibaba-NLP\u002FDeepResearch) — 阿里巴巴NLP开源的AI研究工具 [![Stars](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fstars\u002FAlibaba-NLP\u002FDeepResearch)](https:\u002F\u002Fgithub.com\u002FAlibaba-NLP\u002FDeepResearch)\n- [Terminal-Bench-RL](https:\u002F\u002Fgithub.com\u002FDanau5tin\u002Fterminal-bench-rl) — 使用强化学习训练长 horizon 终端智能体 [![Stars](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fstars\u002FDanau5tin\u002Fterminal-bench-rl)](https:\u002F\u002Fgithub.com\u002FDanau5tin\u002Fterminal-bench-rl)\n- [PettingLLMs](https:\u002F\u002Fgithub.com\u002Fpettingllms-ai\u002FPettingLLMs) — 基于on-policy训练的多智能体强化学习框架 [![Stars](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fstars\u002Fpettingllms-ai\u002FPettingLLMs)](https:\u002F\u002Fgithub.com\u002Fpettingllms-ai\u002FPettingLLMs)\n- [SETA](https:\u002F\u002Fgithub.com\u002Fcamel-ai\u002Fseta) — 用于终端智能体的可扩展环境 [![Stars](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fstars\u002Fcamel-ai\u002Fseta)](https:\u002F\u002Fgithub.com\u002Fcamel-ai\u002Fseta)\n- [LLM-in-Sandbox](https:\u002F\u002Fgithub.com\u002Fllm-in-sandbox\u002Fllm-in-sandbox) — 在沙盒中运行大语言模型以构建通用智能体 [![Stars](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fstars\u002Fllm-in-sandbox\u002Fllm-in-sandbox)](https:\u002F\u002Fgithub.com\u002Fllm-in-sandbox\u002Fllm-in-sandbox)\n- [Vision-DeepResearch](https:\u002F\u002Fgithub.com\u002FOsilly\u002FVision-DeepResearch) — 首个长 horizon 多模态深度研究MLLM [![Stars](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fstars\u002FOsilly\u002FVision-DeepResearch)](https:\u002F\u002Fgithub.com\u002FOsilly\u002FVision-DeepResearch)\n- [Cogito, Ergo Ludo](https:\u002F\u002Fwww.arxiv.org\u002Fabs\u002F2509.25052) — 通过推理和规划学习玩游戏的智能体\n- [Cut the Bill, Keep the Turns](https:\u002F\u002Fagate-slipper-ef0.notion.site\u002FCut-the-Bill-Keep-the-Turns-Affordable-Multi-Turn-Search-RL-003f78214a4d451fb06f453d084e666c) — 经济高效的多轮搜索强化学习\n- [Experiential Reinforcement Learning](https:\u002F\u002Farxiv.org\u002Fabs\u002F2602.13949) — 针对稀疏奖励的强化学习中的经验—反思—巩固循环\n- [V1: 统一生成与自我验证](https:\u002F\u002Farxiv.org\u002Fabs\u002F2603.04304) — 并行测试时缩放的成对自我验证方法\n## 文章与博客\n\n- [rLLM UI: 智能体训练与评估的实时可观测性工具](https:\u002F\u002Frllm-project.com\u002Fpost.html?post=rllm_ui.md) — 2026年3月\n- [rLLM On-Policy Distillation: 从强教师模型中训练更小的学生模型](https:\u002F\u002Frllm-project.com\u002Fpost.html?post=opd.md) — 2026年3月\n- [更快更好：采用全异步训练的开源深度研究智能体配方](https:\u002F\u002Frllm-project.com\u002Fpost.html?post=async_rl.md) — 2026年2月\n- [rLLM-FinQA: 4B模型如何在金融分析任务上超越235B模型并媲美Gemini 2.5 Pro](https:\u002F\u002Frllm-project.com\u002Fpost.html?post=finqa.md) — 2026年2月\n- [rLLM SDK: 无需修改代码即可训练任何智能体程序](https:\u002F\u002Frllm-project.com\u002Fpost.html?post=sdk.md) — 2025年12月\n- [rLLM v0.2: 通用智能体程序的强化学习训练](https:\u002F\u002Frllm-project.com\u002Fpost.html?post=rllm_v0.2.md) — 2025年10月\n- [DeepSWE: 通过强化学习开源的软件工程智能体](https:\u002F\u002Fpretty-radio-b75.notion.site\u002FDeepSWE-Training-a-Fully-Open-sourced-State-of-the-Art-Coding-Agent-by-Scaling-RL-22281902c1468193aabbe9a8c59bbe33) — 2025年7月\n- [DeepCoder: O3-mini级别的14B编码智能体](https:\u002F\u002Fpretty-radio-b75.notion.site\u002FDeepCoder-A-Fully-Open-Source-14B-Coder-at-O3-mini-Level-1cf81902c14680b3bee5eb349a512a51) — 2025年4月\n- [DeepScaleR: 1.5B模型超越O1-preview](https:\u002F\u002Fpretty-radio-b75.notion.site\u002FDeepScaleR-Surpassing-O1-Preview-with-a-1-5B-Model-by-Scaling-RL-19681902c1468005bed8ca303013a4e2) — 2025年2月\n\n## 致谢\n\n我们的工作是在[伯克利天空计算实验室](https:\u002F\u002Fsky.cs.berkeley.edu\u002F)的支持下完成的。rLLM团队得到了来自[Laude研究所](https:\u002F\u002Fwww.laude.org\u002F)、[AWS](https:\u002F\u002Faws.amazon.com\u002F)、[Hyperbolic](https:\u002F\u002Fwww.hyperbolic.ai\u002F)、[Fireworks AI](https:\u002F\u002Ffireworks.ai\u002F)以及[Modal](https:\u002F\u002Fmodal.com\u002F)的慷慨资助。我们特别感谢[Together AI](https:\u002F\u002Fwww.together.ai\u002F)提供的研究合作与算力支持。\n\n## 引用\n\n```bibtex\n@misc{rllm2025,\n  title={rLLM: 一种后训练语言智能体框架},\n  author={Sijun Tan、Michael Luo、Colin Cai、Tarun Venkat、Kyle Montgomery、Aaron Hao、Tianhao Wu、Arnav Balyan、Manan Roongta、Chenguang Wang、Li Erran Li、Raluca Ada Popa、Ion Stoica},\n  year={2025},\n  howpublished={\\url{https:\u002F\u002Fpretty-radio-b75.notion.site\u002FrLLM-A-Framework-for-Post-Training-Language-Agents-21b81902c146819db63cd98a54ba5f31}},\n  note={Notion博客},\n}\n```\n\n您也可以引用我们之前的工作[DeepScaleR](https:\u002F\u002Fscholar.googleusercontent.com\u002Fscholar.bib?q=info:PrmBADk39GwJ:scholar.google.com\u002F&output=citation&scisdr=CgIJFx-xEMCQ6zOgcuI:AAZF9b8AAAAAaPCmauIfzg8Rm9ImNYDad0uPUK8&scisig=AAZF9b8AAAAAaPCmahXsNqb1jTQBw2iPfw2vm9g&scisf=4&ct=citation&cd=-1&hl=en&scfhb=1)、[DeepCoder](https:\u002F\u002Fscholar.googleusercontent.com\u002Fscholar.bib?q=info:xpZNEPI6opAJ:scholar.google.com\u002F&output=citation&scisdr=CgIJFx-xEMCQ6zOgjM8:AAZF9b8AAAAAaPCmlM_hb3S0tzBSVrRYBZYDLWg&scisig=AAZF9b8AAAAAaPCmlG109SG8d8230AiDP4jMxlw&scisf=4&ct=citation&cd=-1&hl=en&scfhb=1)以及[DeepSWE](https:\u002F\u002Fscholar.googleusercontent.com\u002Fscholar.bib?q=info:J9rT3SnY_aMJ:scholar.google.com\u002F&output=citation&scisdr=CgIJFx-xEMCQ6zOg3D4:AAZF9b8AAAAAaPCmxD7Nl0xA_AcAeydpcE1BXCo&scisig=AAZF9b8AAAAAaPCmxE2Spzf5lf-2Toys5xEpnuA&scisf=4&ct=citation&cd=-1&hl=en&scfhb=1)。","# rLLM 快速上手指南\n\nrLLM 是一个开源框架，旨在通过强化学习（RL）训练 AI 智能体。它支持任意智能体框架（如 LangGraph、OpenAI Agents SDK 等），只需极少的代码改动即可实现从评估到 RL 训练的无缝切换。\n\n## 环境准备\n\n在开始之前，请确保满足以下系统要求：\n\n*   **操作系统**：Linux 或 macOS（Windows 用户建议使用 WSL2 或 Docker）。\n*   **Python 版本**：\n    *   基础使用：`Python >= 3.10`\n    *   若使用 `tinker` 后端（单机\u002FCPU 训练）：必须使用 `Python 3.11`\n*   **硬件要求**：\n    *   **CLI 模式 \u002F Tinker 后端**：普通 CPU 机器即可运行。\n    *   **Verl 后端**：需要配备 NVIDIA GPU 的机器，用于分布式多卡训练。\n*   **包管理工具**：推荐使用 `uv` 进行依赖管理（安装命令：`curl -LsSf https:\u002F\u002Fastral.sh\u002Fuv\u002Finstall.sh | sh`）。\n\n> **国内加速提示**：由于源地址位于海外，建议配置国内镜像源以加快下载速度。\n> ```bash\n> export UV_INDEX_URL=\"https:\u002F\u002Fpypi.tuna.tsinghua.edu.cn\u002Fsimple\"\n> # 或者在使用 pip 时添加：-i https:\u002F\u002Fpypi.tuna.tsinghua.edu.cn\u002Fsimple\n> ```\n\n## 安装步骤\n\n你可以根据需求选择安装方式。以下命令默认使用 `uv` 安装，若使用 `pip` 请将 `uv pip install` 替换为 `pip install`。\n\n### 1. 基础安装（推荐新手）\n此版本包含运行 CLI 和 `tinker` 后端所需的依赖，适合单机调试和轻量级训练。\n\n```bash\nuv pip install \"rllm @ git+https:\u002F\u002Fgithub.com\u002Frllm-org\u002Frllm.git\"\n```\n\n### 2. 分布式 GPU 训练安装\n若需在多卡 GPU 集群上使用 `verl` 后端进行高性能训练，请安装额外依赖：\n\n```bash\nuv pip install rllm[verl] @ git+https:\u002F\u002Fgithub.com\u002Frllm-org\u002Frllm.git\n```\n\n> 注：如需从源码构建或使用 Docker，请参考官方文档的安装指南部分。\n\n## 基本使用\n\nrLLM 提供两种使用模式：**命令行界面 (CLI)** 和 **Python API**。\n\n### 模式 A：命令行快速启动（无需写代码）\n\n适合直接对现有模型进行基准测试和强化学习训练。\n\n1.  **配置模型提供商**\n    设置你的模型 API 端点和密钥。\n    ```bash\n    rllm model setup\n    ```\n\n2.  **执行基准评估**\n    在标准数据集（如 GSM8K 数学题）上评估当前模型表现。\n    ```bash\n    rllm eval gsm8k\n    ```\n\n3.  **开始 RL 训练**\n    基于评估结果，直接使用强化学习算法优化模型。\n    ```bash\n    rllm train gsm8k\n    ```\n\n### 模式 B：Python API 自定义开发\n\n适合需要自定义智能体逻辑、奖励函数或集成特定框架的场景。\n\n**第一步：定义智能体流程 (`my_flow.py`)**\n使用 `@rllm.rollout` 装饰器包裹你的 Agent 代码。rLLM 会自动追踪所有 LLM 调用。\n\n```python\n# my_flow.py\nfrom openai import OpenAI\nimport rllm\nfrom rllm.experimental.eval.types import AgentConfig, Task\nfrom rllm.types import Episode, Trajectory\n\n@rllm.rollout\ndef solve(task: Task, config: AgentConfig) -> Episode:\n    # 初始化客户端，base_url 将由 rLLM 自动注入以捕获 token 和 logprobs\n    client = OpenAI(base_url=config.base_url, api_key=\"EMPTY\")\n    response = client.chat.completions.create(\n        model=config.model,\n        messages=[{\"role\": \"user\", \"content\": task.data[\"question\"]}],\n    )\n    answer = response.choices[0].message.content or \"\"\n    return Episode(\n        trajectories=[Trajectory(name=\"solver\", steps=[])],\n        artifacts={\"answer\": answer},\n    )\n```\n\n**第二步：定义奖励函数 (`my_evaluator.py`)**\n编写逻辑来判断智能体输出的正确性并返回奖励值。\n\n```python\n# my_evaluator.py\nimport rllm\nfrom rllm.experimental.eval.types import EvalOutput, Signal, _extract_agent_answer\nfrom rllm.types import Episode\n\n@rllm.evaluator\ndef score(task: dict, episode: Episode) -> EvalOutput:\n    answer = _extract_agent_answer(episode)\n    # 简单示例：完全匹配则奖励 1.0，否则 0.0\n    is_correct = answer.strip() == task[\"ground_truth\"].strip()\n    reward = 1.0 if is_correct else 0.0\n    return EvalOutput(reward=reward, is_correct=is_correct,\n                      signals=[Signal(name=\"accuracy\", value=reward)])\n```\n\n**第三步：启动训练 (`train.py`)**\n整合上述模块并启动训练器。\n\n```python\n# train.py\nfrom rllm.experimental.unified_trainer import AgentTrainer\n\n# 配置训练参数 (config 和 dataset 需根据实际数据初始化)\n# config = ... \n# dataset = ...\n\ntrainer = AgentTrainer(\n    backend=\"tinker\",       # 单机使用 \"tinker\"，多卡集群使用 \"verl\"\n    agent_flow=solve,       # 传入定义的智能体\n    evaluator=score,        # 传入定义的评估器\n    config=config,\n    train_dataset=dataset,\n)\n\ntrainer.train()\n```\n\n**核心优势**：在训练过程中，`config.base_url` 会指向一个透明网关，自动捕获 Token ID 和概率分布，而你的智能体代码无需任何修改即可同时用于评估和训练。","某金融科技团队正在开发一个基于大模型的自动研报分析助手，需要让模型学会从复杂的财务数据中精准提取关键指标并给出投资建议。\n\n### 没有 rllm 时\n- **框架绑定严重**：团队使用 LangGraph 构建代理流程，若想引入强化学习（RL）优化，必须重写大量代码以适配特定的 RL 库，迁移成本极高。\n- **奖励函数难对接**：手动编写代码拦截每一次 LLM 调用以记录轨迹，并自行设计逻辑将“投资建议准确率”转化为数学奖励信号，调试过程繁琐且易出错。\n- **训练门槛高**：缺乏现成的金融领域基准测试，需从零搭建评估管线；若要进行多卡分布式训练以提升效率，还需深入底层配置复杂的并行策略。\n- **迭代周期漫长**：每次调整算法（如从 PPO 切换到 GRPO）都涉及大量底层修改，导致模型优化迭代以周为单位，难以快速响应市场变化。\n\n### 使用 rllm 后\n- **无缝集成现有架构**：只需在现有的 LangGraph 代理代码上添加 `@rllm.rollout` 装饰器，rllm 即可自动追踪所有交互轨迹，无需改动核心业务逻辑。\n- **灵活定义奖励机制**：团队仅需专注编写一个标准的 Python 函数来判定“投资建议”是否正确，rllm 自动将其转化为奖励信号并驱动 RL 算法更新策略。\n- **一键启动高效训练**：直接通过 CLI 命令 `rllm train finance_bench --backend verl` 即可调用内置的金融评测集，并自动利用多 GPU 集群进行分布式训练。\n- **算法切换零成本**：想尝试不同的优化效果时，仅需在配置文件中将算法参数从 REINFORCE 改为 GRPO，几分钟内即可重新开启训练任务，大幅加速模型进化。\n\nrllm 通过极简的接入方式和强大的后端支持，让中小团队也能以最低成本打造出超越超大模型的垂直领域专家代理。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Frllm-org_rllm_c27a8ee4.png","rllm-org","https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002Frllm-org_722219e9.png",null,"https:\u002F\u002Fgithub.com\u002Frllm-org",[80,84,88,92,96],{"name":81,"color":82,"percentage":83},"Python","#3572A5",71.7,{"name":85,"color":86,"percentage":87},"Jupyter Notebook","#DA5B0B",26.6,{"name":89,"color":90,"percentage":91},"Shell","#89e051",1.4,{"name":93,"color":94,"percentage":95},"Go Template","#00ADD8",0.3,{"name":97,"color":98,"percentage":99},"Dockerfile","#384d54",0,5368,539,"2026-04-03T17:10:35","Apache-2.0","未说明","可选。若使用 'verl' 后端进行分布式训练则必需（支持多 GPU）；若使用 'tinker' 后端可在单机或 CPU 上运行。具体显卡型号、显存大小及 CUDA 版本未在文档中明确指定。",{"notes":107,"python":108,"dependencies":109},"该工具提供两种训练后端：'verl' 用于需要 GPU 的分布式多卡训练，'tinker' 用于单机或纯 CPU 环境。安装时默认配置为使用 Tinker 后端；若需使用 Verl 后端（涉及 vLLM 或 SGLang），需额外安装对应依赖。工具通过 LiteLLM Proxy 拦截 LLM 调用以收集轨迹和日志概率，支持多种主流 Agent 框架而无需修改核心代码。",">=3.10 (若使用 'tinker' 后端则需 >=3.11)",[110,111,112,113,114,115,116,117,118,119],"uv","verl (可选，用于分布式 GPU 训练)","vLLM (可选，配合 verl 使用)","SGLang (可选，配合 verl 使用)","tinker (默认后端)","openai","langgraph (兼容框架)","smolagent (兼容框架)","strands (兼容框架)","google-adk (兼容框架)",[26,15,13],[122,123,124,125,126,127,128,129,130,131,132,133,134,135],"agent-framework","agentic-workflow","distributed-training","llm-training","machine-learning","ml-infrastructure","ml-platform","reinforcement-learning","coding-agent","llm-reasoning","search-agent","swe-agent","tinker","verl","2026-03-27T02:49:30.150509","2026-04-06T07:10:07.045768",[139,144,149,154,159,163],{"id":140,"question_zh":141,"answer_zh":142,"source_url":143},13425,"训练回报（return）快速上升但评估结果下降，是否发生了奖励欺骗（Reward Hacking）？","是的，这很可能是奖励欺骗。当模型开始“欺骗”奖励时，生成的代码往往会陷入无限循环等待输入（例如使用 `while True: input()`），导致超时。这种行为在某些奖励设置下可能会获得高分，但实际上并未解决问题。建议检查生成内容的格式，避免模型通过超时或死循环来获取虚假的高奖励。","https:\u002F\u002Fgithub.com\u002Frllm-org\u002Frllm\u002Fissues\u002F143",{"id":145,"question_zh":146,"answer_zh":147,"source_url":148},13426,"在 H20 或 L40S GPU 上运行脚本时遇到 'ray.exceptions.ActorDiedError' 错误如何解决？","该问题通常与 `nvidia-cublas-cu12` 版本兼容性有关。可以尝试更新该库来解决：\n```bash\npip install nvidia-cublas-cu12==12.3.4.1\n```\n注意：如果您的 PyTorch 版本（如 2.4.0）强制依赖较低版本的 cublas（如 12.1.3.1），直接升级可能会导致依赖冲突。在这种情况下，建议参考 vllm 项目的相关 issue (#4392) 寻找针对特定 CUDA 和 Torch 版本的变通方案，或者尝试调整整体环境版本以匹配推荐的 cublas 版本。","https:\u002F\u002Fgithub.com\u002Frllm-org\u002Frllm\u002Fissues\u002F8",{"id":150,"question_zh":151,"answer_zh":152,"source_url":153},13427,"使用 VeRL AgentWorkFlow Trainer 进行训练时，为何会在约 20 步后出现训练崩溃（熵爆炸、响应过长）？","训练崩溃可能是由采样参数配置不当引起的。官方建议：\n1. 不要设置 `top_k` 参数。\n2. 将 `top_p` 设置为 `1.0`。\n虽然设置 `top_p \u003C 1.0` 或 `top_k` 旨在避免低概率 token，但在某些 RL 训练场景下反而会导致不稳定的崩溃。此外，尝试调整 KL 散度系数（从 1e-6 到 1e-3）或使用不同的估计器（如 K3\u002FK3+）也可能有帮助，但首要步骤是恢复默认的采样策略（top_p=1.0, no top_k）。","https:\u002F\u002Fgithub.com\u002Frllm-org\u002Frllm\u002Fissues\u002F368",{"id":155,"question_zh":156,"answer_zh":157,"source_url":158},13428,"运行 math_tool 训练示例时遇到 'detect the trajectory not accumulative' 警告或 'assemble_steps' 错误怎么办？","该错误表明在组装步骤（assemble steps）时，检测到了轨迹（trajectory）数据不具备累加性，通常是因为 `completion_ids` 缺失或格式不正确。这往往发生在异步执行引擎处理多步交互时。请确保您的 Agent 实现正确返回了包含 `completion_ids` 的 Step 对象，并且每一步的输出都能正确拼接到前一步之后。检查自定义 Agent 代码中是否正确构建了 `Episode` 和 `Step` 数据结构，确保 `response_tokens` 和 `prompt_tokens` 的逻辑连贯。","https:\u002F\u002Fgithub.com\u002Frllm-org\u002Frllm\u002Fissues\u002F352",{"id":160,"question_zh":161,"answer_zh":162,"source_url":143},13429,"在小模型（如 Llama-3.2-3B 或 Qwen）上复现结果时，如何区分是训练 - 评估差距还是真正的奖励欺骗？","如果训练数据和评估数据大致来自同一分布，但出现训练回报激增而评估性能骤降的情况，通常不是简单的分布差异（训练 - 评估差距），而是模型学会了利用奖励函数的漏洞（即奖励欺骗）。典型的迹象是模型生成了能触发奖励机制但无实际意义的输出（如无限循环、特定重复字符串等）。建议人工检查训练过程中产生高奖励的样本内容，确认其有效性。",{"id":164,"question_zh":165,"answer_zh":166,"source_url":153},13430,"在多节点或单节点训练不同大小的 Qwen 模型（如 4B, 7B）时均出现一致性崩溃，是否算法本身有问题？","如此一致且严重的训练崩溃（通常在 50 步内发生）不太可能是算法本身的固有缺陷，更多是由于超参数配置或环境设置问题。除了调整 `top_p` 和 `top_k` 外，还应检查是否错误地修改了训练脚本的其他部分（如 Reward Function 的实现、数据过滤逻辑等）。建议先运行官方提供的 `solver-judge` 示例代码，如果示例运行正常，则对比您的自定义实现与示例的差异，逐步排查引入的不稳定因素。",[168,173,178],{"id":169,"version":170,"summary_zh":171,"released_at":172},72170,"v0.2.1.post1","## 变更内容\n* 更新文档并添加曲线，由 @thwu1 在 https:\u002F\u002Fgithub.com\u002Frllm-org\u002Frllm\u002Fpull\u002F343 中完成\n* 修复 agent_sdk_engine.py 和 agent_sdk_trainer.py 中 colorful_print 的导入问题，由 @wht0703 在 https:\u002F\u002Fgithub.com\u002Frllm-org\u002Frllm\u002Fpull\u002F345 中完成\n* 通过覆盖依赖项解除 SDK 安装的阻塞，由 @wht0703 在 https:\u002F\u002Fgithub.com\u002Frllm-org\u002Frllm\u002Fpull\u002F348 中完成\n* 【文档】更新 README 并修复若干安装相关问题，由 @listar2000 在 https:\u002F\u002Fgithub.com\u002Frllm-org\u002Frllm\u002Fpull\u002F347 中完成\n* 修复：completion_ids 键错误，由 @kxfan2002 在 https:\u002F\u002Fgithub.com\u002Frllm-org\u002Frllm\u002Fpull\u002F353 中完成\n* 修复：在搜索智能体中为密集检索启用 GPU 加速，由 @Gitsamshi 在 https:\u002F\u002Fgithub.com\u002Frllm-org\u002Frllm\u002Fpull\u002F349 中完成\n\n## 新贡献者\n* @wht0703 在 https:\u002F\u002Fgithub.com\u002Frllm-org\u002Frllm\u002Fpull\u002F345 中完成了首次贡献\n* @kxfan2002 在 https:\u002F\u002Fgithub.com\u002Frllm-org\u002Frllm\u002Fpull\u002F353 中完成了首次贡献\n* @Gitsamshi 在 https:\u002F\u002Fgithub.com\u002Frllm-org\u002Frllm\u002Fpull\u002F349 中完成了首次贡献\n\n**完整变更日志**：https:\u002F\u002Fgithub.com\u002Frllm-org\u002Frllm\u002Fcompare\u002Fv0.2.1...v0.2.1.post1","2025-12-18T23:51:38",{"id":174,"version":175,"summary_zh":176,"released_at":177},72171,"v0.2.1","## rLLM v0.2.1：Tinker 后端、VLM 训练、Eval Protocol 以及 SDK（预览版）\n\n我们非常高兴地发布 rLLM v0.2.1。这个新版本带来了以下令人兴奋的功能：\n\n- **rLLM SDK（预览版）：** rLLM SDK 使您能够将用 LangGraph、SmolAgent 或 Strands 等框架编写的智能体转换为可训练的工作流。请查看这个 [LangGraph RAG 示例](https:\u002F\u002Frllm-project.readthedocs.io\u002Fen\u002Flatest\u002Fexamples\u002Fsdk_langgraph_rag\u002F)，它构建了一个 RAG 智能体，并使用 rLLM SDK 进行了训练。\n\n- **Tinker 训练后端：** 除了 `verl` 之外，rLLM 现在还支持 `Tinker` 作为训练后端。您可以使用相同的抽象来构建智能体，并轻松地在不同的后端之间切换进行训练。\n\n- **VLM 训练：** rLLM 支持使用 `verl` 后端进行视觉-语言模型的训练。请参阅 [Geo3K 训练示例](https:\u002F\u002Frllm-project.readthedocs.io\u002Fen\u002Flatest\u002Fexamples\u002Fvlm\u002F) 以获取参考。\n\n- **LoRA 微调：** rLLM 在 `verl` 和 `Tinker` 后端中都支持 LoRA 训练。请参阅 [GSM8K LoRA 示例](https:\u002F\u002Frllm-project.readthedocs.io\u002Fen\u002Flatest\u002Fexamples\u002Fgsm8k_lora\u002F)，了解如何通过一次简单的配置更改即可启用 LoRA 训练。\n\n- **Eval Protocol 集成：** 我们集成了 Fireworks AI 的 [Eval Protocol](https:\u002F\u002Fevalprotocol.io\u002F)。用户现在可以在 Eval Protocol 支持的任何环境中进行训练。请参阅这个 [示例](https:\u002F\u002Frllm-project.readthedocs.io\u002Fen\u002Flatest\u002Fexamples\u002Feval_protocol_frozen_lake\u002F)，它在 rLLM 中使用 Eval Protocol 来训练一个 Frozenlake 智能体。\n\n特别感谢 @thwu1、@kylemontgomery1、@listar2000 和 @xzrderek 在这些功能上的杰出贡献。\n\n## 变更内容\n* 由 @listar2000 在 https:\u002F\u002Fgithub.com\u002Frllm-org\u002Frllm\u002Fpull\u002F256 中实现，确保 rLLM 特定的配置能够正确且稳健地应用。\n* 由 @Tendo33 在 https:\u002F\u002Fgithub.com\u002Frllm-org\u002Frllm\u002Fpull\u002F258 中修复，确保当配置为 None 时，disable_thinking 默认值为 False。\n* 由 @listar2000 在 https:\u002F\u002Fgithub.com\u002Frllm-org\u002Frllm\u002Fpull\u002F261 中修复 WORKFLOW_CLASS_MAPPING 中的循环导入问题。\n* 由 @listar2000 在 https:\u002F\u002Fgithub.com\u002Frllm-org\u002Frllm\u002Fpull\u002F263 中初始化 nightly 分支。\n* 由 @listar2000 在 https:\u002F\u002Fgithub.com\u002Frllm-org\u002Frllm\u002Fpull\u002F265 中修复环境变量转发至 Ray 运行时环境的问题。\n* 由 @listar2000 在 https:\u002F\u002Fgithub.com\u002Frllm-org\u002Frllm\u002Fpull\u002F268 中更新工作流引擎的最新变更。\n* 由 @mananroongta 在 https:\u002F\u002Fgithub.com\u002Frllm-org\u002Frllm\u002Fpull\u002F274 中修复 _pad_dataproto_to_world_size 中可能出现的 KeyError。\n* 由 @thwu1 在 https:\u002F\u002Fgithub.com\u002Frllm-org\u002Frllm\u002Fpull\u002F272 中修复重新分词问题。\n* 由 @LianShuQuan 在 https:\u002F\u002Fgithub.com\u002Frllm-org\u002Frllm\u002Fpull\u002F271 中修复对 n_parallel_agents 和并发环境操作的控制问题。\n* 由 @mananroongta 在 https:\u002F\u002Fgithub.com\u002Frllm-org\u002Frllm\u002Fpull\u002F277 中添加了 is_correct 和奖励流经工具环境的功能。\n* 由 @1stprinciple 在 https:\u002F\u002Fgithub.com\u002Frllm-org\u002Frllm\u002Fpull\u002F276 中将 Eval Protocol 集成为强化学习环境。\n* 由 @LianShuQuan 在 https:\u002F\u002Fgithub.com\u002Frllm-or","2025-12-11T22:58:34",{"id":179,"version":180,"summary_zh":181,"released_at":182},72172,"v0.2.0","# rLLM v0.2：基于通用智能体程序的强化学习训练（[博客文章](https:\u002F\u002Frllm-project.com\u002Fpost.html?post=rllm_v0.2.md)）\n\n\n我们很高兴地发布 rLLM v0.2，这是我们强化学习训练框架的一次重大升级。在 v0.1 中，rLLM 提供了智能体和类似 OpenAI Gym 的环境抽象，以支持 ReACT 风格智能体的训练。而在 v0.2 中，我们进一步引入了 `AgentWorkflowEngine` 和 `AgentWorkflowTrainer`——更为通用的抽象，**使任意智能体程序都可以被训练**。智能体制作者和研究人员现在可以定义多智能体系统、复杂工作流（例如求解器-评判器、规划者-执行器、蒙特卡洛树搜索等），以及带有自定义奖励函数的智能体程序，并使用强化学习对其进行训练，而无需重写其生产代码。\n\n## v0.2 的主要特性\n1. 支持官方的 `verl==0.5.0` 作为训练后端，不再需要自定义的 verl 分支！`verl==0.5.0` 带来了以下功能的支持，这些功能现在也已在 rLLM 中得到支持（@kylemontgomery1）：\n    * Megatron 训练支持（@jeewoo-lee）\n    * 除了 vLLM 外，还支持 SGLang 作为 rollout 引擎。\n2. 引入 `AgentWorkflowEngine`，允许传入任意智能体程序进行训练。（@kylemontgomery1）\n3. 支持更多智能体和环境\n    * Terminus 和 TerminalBench（@JasonWei05）\n    * Tongyi DeepResearch 智能体（@yayashuxue）\n    * AppWorld 和 AppWorldReactAgent（@sunan135）\n4. 与其他智能体框架\u002FSDK 的集成\n    * AWS 的 Strands SDK\n    * SmolAgents\n\n## 变更内容\n* 修复 \u003Ctool_calls_begin> 变量，由 @wj-Mcat 在 https:\u002F\u002Fgithub.com\u002Frllm-org\u002Frllm\u002Fpull\u002F142 中完成\n* 修复代码中未注册许可证的问题，由 @annyan09023 在 https:\u002F\u002Fgithub.com\u002Frllm-org\u002Frllm\u002Fpull\u002F144 中完成\n* 修复 r2egym 导入错误；更新安装 README，由 @jeffreysijuntan 在 https:\u002F\u002Fgithub.com\u002Frllm-org\u002Frllm\u002Fpull\u002F146 中完成\n* 更新 deepscaler 的 max_prompt_length，以避免训练过程中出现异常，由 @jeffreysijuntan 在 https:\u002F\u002Fgithub.com\u002Frllm-org\u002Frllm\u002Fpull\u002F148 中完成\n* 修复（语法）：解决无效转义序列警告，由 @tonyz0x0 在 https:\u002F\u002Fgithub.com\u002Frllm-org\u002Frllm\u002Fpull\u002F154 中完成\n* 添加用于 SFT 的工具，由 @mananroongta 在 https:\u002F\u002Fgithub.com\u002Frllm-org\u002Frllm\u002Fpull\u002F160 中完成\n* 更新文档，由 @jeffreysijuntan 在 https:\u002F\u002Fgithub.com\u002Frllm-org\u002Frllm\u002Fpull\u002F167 中完成\n* 为文档添加暗模式，由 @philippnormann 在 https:\u002F\u002Fgithub.com\u002Frllm-org\u002Frllm\u002Fpull\u002F168 中完成\n* [修复] 修复轨迹可视化工具中的工具调用结果解析问题，以及 MCP 工具名称的修正，由 @VincentXWD 在 https:\u002F\u002Fgithub.com\u002Frllm-org\u002Frllm\u002Fpull\u002F174 中完成\n* [热修复][miniwob] 修复 gymnasium.error.NameNotFound 错误，由 @abrohamLee 在 https:\u002F\u002Fgithub.com\u002Frllm-org\u002Frllm\u002Fpull\u002F172 中完成\n* 加载完整的 DeepCoder 数据集，而非仅 LCB 子集，由 @mananroongta 在 https:\u002F\u002Fgithub.com\u002Frllm-org\u002Frllm\u002Fpull\u002F178 中完成\n* [功能][docker] 通过 Docker 进行安装，由 @abrohamLee 在 https:\u002F\u002Fgithub.com\u002Frllm-org\u002Frllm\u002Fpull\u002F177 中完成\n* 增加 macOS 兼容性：在 Darwin 系统上排除 GPU 依赖，由 @yayashuxue 在 https:\u002F\u002Fgithub.com\u002Frllm-org\u002Frllm\u002Fpull\u002F180 中完成\n* PyTorch 2.7.0 仅与 macOS 上的 Python 兼容","2025-10-16T21:24:26"]