ARTICLE DETAIL

资讯详情

深耕网站建设、视觉设计与SEO优化的一线实战洞察。

Reef Tinker 后端教程:如何在 CPU 机器上零 GPU 完成托管 LoRA 训练(完整指南)

Reef Tinker 后端教程:如何在 CPU 机器上零 GPU 完成托管 LoRA 训练(完整指南) Reef Tinker 后端教程如何在 CPU 机器上零 GPU 完成托管 LoRA 训练完整指南【免费下载链接】reefContinual learning infra for self-improving agents项目地址: https://gitcode.com/gh_mirrors/reef7/reefReef 是面向自我改进智能体self-improving agents的持续学习基础设施而它的Tinker 后端正是本教程的主角让你在一台没有任何 GPU 的普通 CPU 机器上通过 Tinker 的托管 API 完成完整的LoRA 训练闭环——推理采样、反馈收集、候选训练、版本发布与回滚全部由 Reef 掌控GPU 算力则在云端。本文将带你用不到 20 分钟完成安装 Reef Tinker 后端 → 写一份最小 YAML 配置 → 跑通4 次推理 1 次优化器步的冒烟测试 → 理解检查点与恢复机制。无需深度学习框架经验只要你会用 Python 和 YAML。为什么需要CPU 上跑 LoRA 训练传统强化学习/持续学习框架比如基于 Slime Ray 的 GPU 训练栈要求你自备 GPU 节点启动推理引擎、显存规划、权重同步……对只想验证一个学习算法、或在开发机上做编排的人来说门槛太高。Reef Tinker 后端reef/train/tinker_backend/换了一种思路职责由谁承担请求、反馈、候选选择、版本链Reef你的 CPU 机器LoRA 训练Adam 更新、采样Tinker 托管 API云端权重快照只保留一个tinker-checkpoint.json清单关键点Reef 侧不启动 Ray、不启动本地推理引擎模型权重也不下载到本地——SDK 只拉取 tokenizer 资源用于渲染提示词。你的 CPU 机器上甚至不需要装 GPU 驱动。一键安装Reef Tinker 后端的准备工作环境要求Linux 或 macOSPython 3.12一个有权限使用目标模型的 Tinker 账号训练消耗 Tinker 额度。# 克隆仓库 git clone https://gitcode.com/gh_mirrors/reef7/reef cd reef # 创建虚拟环境并安装tinker 是可选依赖组见 pyproject.toml uv venv --python 3.12 source .venv/bin/activate uv pip install -e .[tinker] -e ./third_party/reef-client注意两点安装的是 third_party/reef-client/ 客户端包冒烟脚本依赖它依赖组tinker在 pyproject.toml 中锁定tinkerSDK 与tinker-cookbook版本保证行为可复现。核心配置5 行 YAML 启用零 GPU LoRA 训练Reef 用一份 YAML 描述整个服务。官方的最小配置在 tutorials/tinker/serve.yaml核心内容如下schema-version: 2 inference: model-path: Qwen/Qwen3-8B # 远程模型标识符不会下载到本地 recipe: implementation: recipes.tttd.recipe:TTTDRecipe training: backend: tinker # ← 关键切换到 Tinker 训练后端 options: state-dir: ./work/tinker/tinker lora-rank: 32 learning-rate: 0.00004 kl-coef: 0.1只需三处决定training.backend: tinker——声明训练后端inference.model-path——选择你 Tinker 账号下可用的基座模型training.options.state-dir——一个持久化目录记录 Reef 最后一次提交的检查点重启后从这里续训。凭据通过环境变量TINKER_API_KEY注入可用api-key-env换其他变量名不要写进 YAML解析后的配置和检查点清单里都不含密钥。启动服务首次启动会创建初始 Tinker 检查点并下载 tokenizer耗时较长故官方把ready-timeout设为 600 秒export TINKER_API_KEYsk-... export REEF_TOKENreef-local export REEF_TINKER_STATE_DIR$PWD/work/tinker-smoke python -m reef serve -c tutorials/tinker/serve.yaml运行首次冒烟测试4 次推理 1 步 LoRA 训练服务就绪后/healthz返回 200在另一个终端运行官方冒烟脚本 tutorials/tinker/smoke.pypython tutorials/tinker/smoke.py它做的事非常轻但覆盖了完整链路对同一个 scenario 发起4 次短对话每次最多 32 个新 tokenReef 完整捕获每次采样的 token 与 log-prob依次上报合成奖励 0、1、2、3不是真实评价只为产生非零训练信号等待 Reef 用 Tinker 提交一个优化器步发布新版本。看到Committed one Tinker update for ...就说明你的 CPU 机器已经完成了第一轮推理 → 反馈 → LoRA 训练 → 版本发布闭环。进阶视野持续学习在 Reef 上长什么样冒烟测试只是机制验证。当真正的学习算法如 TTTD、OpenClaw-RL 等 recipe跑在 Reef 上时你会看到接受会话数、能力率等指标随训练轮次持续上升——这正是自我改进智能体的含义模型版本不断被训练、评估、发布或回滚且整个过程对 CPU 端透明。工作原理检查点、候选与恢复3 个要点每个候选独立开会话新候选从在位者incumbent的权重和 Adam 优化器状态分叉出一个独立的 Tinker 训练会话被拒绝的候选不需要撤销任何在位模型改动。清单而非权重Reef 发布的是小型本地工件tinker-checkpoint.json指向远端的训练状态与 sampler 检查点。因此回滚/恢复仍需原 Tinker 账号对远端检查点有访问权本地磁盘清理不会删除远端文件。保守但正确的恢复一次不确定的 API 结果可能留下无引用的远端检查点并消耗额度重试会从同一在位检查点新开干净会话绝不会把可能已生效的梯度应用两次——牺牲一点吞吐换取正确性。此外Tinker 后端要求样本零过期max_staleness必须为 0见 reef/train/tinker_backend/config.py只有精确版本的样本被接纳避免陈旧策略污染 LoRA 更新。组合玩法本地 SGLang 推理 远程 Tinker 训练如果你有一台带 GPU 的机器想跑推理但训练仍想托管Reef 支持inference.backend: sglangtraining.backend: tinker的混合拓扑训练器不占任何 GPU每个训练作业在 Tinker 上跑一个优化器步结果下载后经tinker-cookbook转换成 PEFT 适配器目录由 Reef 通知引擎按场景加载被拒候选不加载任何东西重启后各场景从磁盘重载已提交适配器。这套组合的完整 CPU 测试见 tests/reef_service/test_tinker_local_engine_ray.py——它在纯 CPU上用假 GPU、桩引擎和假 SDK 跑通了整个拓扑也侧面说明这套流程对硬件要求有多低。常见问题FAQQ我的 CPU 机器需要多强AReef 侧只做编排、捕获 token/log-prob、管理版本链普通笔记本级别即可重活在 Tinker 云端。Q支持哪些推理参数A/v1/chat/completions文本消息含最后的 assistant prefill、max_tokens、temperature、top_p、top_k、seed、stop以及chat_template_kwargs.enable_thinking。工具调用、多模态消息会显式报错。Q流式输出是逐 token 的吗A不是Tinker 路径是缓冲式流式——完整响应作为合法的 OpenAI SSE 事件一次性发出同时私有的训练捕获单独保留。Q能换 loss 吗ATTTD recipe 自带 Tinker 版损失 recipes/tttd/tinker.py重要性采样策略项 掩码居中冻结基座 KL与 Slime 版目标对齐kl-coef可调。SAO 和 OpenClaw-RL 的损失目前未实现选择未注册的 loss 族会在训练前直接失败。相关文件与延伸阅读Tinker 后端完整文档docs/user-guide/tinker.rst冒烟测试配置与脚本tutorials/tinker/后端实现训练/推理两侧reef/train/tinker_backend/ 与 reef/inference/tinker.pyTTTD recipe 及 Tinker 损失recipes/tttd/官方客户端third_party/reef-client/一句话总结Reef Tinker 后端把训练 GPU这件事从你的机器上彻底移除——在任意 CPU 机器上配置 5 行 YAML就能托管 LoRA 训练并管理智能体的版本进化。现在就可以从冒烟测试开始动手 【免费下载链接】reefContinual learning infra for self-improving agents项目地址: https://gitcode.com/gh_mirrors/reef7/reef创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表