Token导航 LogoToken导航TokenDH.com
Knowlyr Agent logo
运维云端stdio官方级别未说明来源级核验

Knowlyr Agent

MCP Server

knowlyr-gym 是一个用于 LLM 工具使用代理训练的 Gymnasium 风格强化学习框架,提供标准化环境协议、步骤级过程奖励和领域泛化能力。

工具数

0

提示词数

0

GitHub Stars

3

资源数

0
Python云端部署Docker

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

liuxiaotong

提供方

liuxiaotong

最后核验

2026/5/17 20:21

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

pip install knowlyr-hub[all] # 全部包

详细介绍

英语 | 中文

knowlyr-gym

Gymnasium-Style Reinforcement Learning Framework for LLM Agent Training

MDP 形式化 · 三层过程奖励模型 · SFT / DPO / GRPO 策略优化

Formalized MDP environments, three-layer process reward, and complete policy optimization pipeline

![Python 3.10+](https://www.python.org/downloads/) ![License: MIT](LICENSE) ![CI](https://github.com/liuxiaotong/knowlyr-gym/actions/workflows/ci.yml)

![Tests](#development) ](#components) ![Environments](#environments) ![Domains](#domain-profiles) ![Training](#policy-optimization) ![Enhancements](#agent-training-enhancements)

摘要 · 问题陈述 · MDP配方 · 建筑 · 关键创新 · 组件 · 快速开始 · 生态系统 · 参考文献

______________________________________________________________________

摘要

knowlyr-gym 将 LLM tool-use agent 任务形式化为马尔可夫决策过程 $\\langle \\mathcal{S}, \\mathcal{A}, T, R, \\gamma \\rangle$,在 Gymnasium 兼容的环境协议上构建完整的强化学习训练框架。系统核心是三层过程奖励模型(规则确定性检测 → LLM-as-Judge 语义评分 → 人工校准),为每个 action 计算步骤级即时奖励 $r_t = R(s_t, a_t)$,而非仅评估最终结果。基于 scored trajectories,训练管线支持 SFT(行为克隆)、DPO(偏好对齐)、GRPO(在线策略优化)三种策略优化方法,并提供 observation masking、step-weighted loss、curriculum learning 等 6 项 Agent 长程任务增强。通过领域无关的抽象层 DomainProfile,框架可泛化至 coding、browser、conversation、engineering、advisory、discussion 等任意 Agent 领域。

knowlyr健身房 将LLM工具使用代理任务形式化为马尔可夫决策过程(MDP),并为环境交互、过程奖励计算和策略优化提供了一个模块化框架。该系统实现了一个与Gymnasium兼容的环境协议,该协议具有可组合的包装器、一个三层过程奖励模型(基于规则的+LLM作为判断+人工校准)以及一个支持SFT、DPO和GRPO的完整训练管道。通过与领域无关的抽象层(DomainProfile),它可以跨编码、浏览器、对话和自定义代理域进行推广。

______________________________________________________________________

问题陈述

LLM Agent 训练面临三个结构性缺陷:缺少标准化环境协议 (标准化环境协议)缺少步骤级过程奖励 (步骤级过程奖励)、缺少领域泛化能力 (domain generalization)。现有框架普遍只关注 Agent 推理端,训练闭环依赖手工拼接,奖励信号粗糙且不可分解。

根本性问题形式化定义现有框架的局限Agent 的方法
环境协议碎片化
Fragmented Env ProtocolAgent 与环境的交互接口不统一,复用成本 $\\propto$ 环境数量AgentGym / BrowserGym 各自定义接口,跨环境迁移需重写适配层Gymnasium 兼容协议:reset() / step() / close() + 注册表 + 可组合 Wrapper
奖励信号粗糙
Sparse Outcome Reward仅评估最终结果 $R_T$,中间步骤无信号 $\\forall t \ knowlyr-gym 不是又一个 Agent 推理框架。它是 LLM Agent 的训练基础设施——"在哪练、怎么评、如何优化",环境产出轨迹,奖励评估质量,训练器优化策略,三者通过标准化数据格式串联为闭环。

______________________________________________________________________

MDP配方

将 tool-use agent 任务建模为 MDP $\\langle \\mathcal{S}, \\mathcal{A}, T, R, \\gamma \\rangle$:

符号定义实现
$\\mathcal{S}$状态空间(文本观察)TimeStep.observation: str
$\\mathcal{A}$操作空间(工具调用){"tool": str, "params": dict}
$T(s,a)$过渡动态AgentEnv.step(action) → TimeStep
$R(s,a)$奖励函数RewardEngine --三层PRM
$\\pi(as)$策略LLM代理: observation → action
$\\gamma$地平线MaxStepsWrapper (隐式截断)

环境协议 借鉴 Gymnasium (Towers et al., 2024),并针对 LLM Agent 场景做出适配:动作空间为结构化 tool call(而非连续/离散向量),状态空间为自然语言文本,终止条件由 terminated (任务完成) 和 truncated (步数/超时截断) 双信号控制。

______________________________________________________________________

建筑

以 RL 训练循环为核心:策略(LLM)在环境中交互产生轨迹,经过程奖励模型评分后,构造训练数据集用于策略优化,优化后的策略再次进入环境采样。

graph LR
    subgraph MDP["MDP Environment Layer"]
        ENV["AgentEnv
reset() / step() / close()"]
        TS["TimeStep
observation · reward
terminated · truncated"]
        ENV --> TS
    end

    subgraph RL["RL Training Loop"]
        PI["Policy π
(LLM Agent)"]
        COL["Rollout
collect()"]
        RM["Process Reward
Model (PRM)"]
        EXP["Dataset
SFT / DPO / GRPO"]
        OPT["Policy
Optimization"]
    end

    PI -->|action| ENV
    TS -->|observation| PI
    COL -->|trajectories| RM
    RM -->|scored trajectories| EXP
    EXP --> OPT
    OPT -->|updated π| PI
    ENV -.->|wrappers| COL

    style MDP fill:#1a1a2e,color:#e0e0e0,stroke:#444
    style RL fill:#0d1b2a,color:#e0e0e0,stroke:#444
    style PI fill:#0969da,color:#fff,stroke:#0969da
    style RM fill:#8b5cf6,color:#fff,stroke:#8b5cf6

分层架构

模块职责
MDP协议AgentEnv · TimeStep · EnvWrapper · RegistryGymnasium 兼容环境协议,注册表发现,可组合 Wrapper
领域DomainProfile · 7 内置领域声明式领域抽象:工具集、类别映射、评分维度权重
环境SandboxEnv · ConversationEnv · Docker 沙箱5 个注册环境,coding / conversation / engineering / advisory / discussion
轨迹AgentRecorder · 适配器注册表Agent 日志解析,多格式适配(OpenHands / SWE-agent / 自定义),标准化轨迹
奖励RewardEngine · Rubric · PreferenceBuilder三层 PRM + 多维度 Rubric 评分 + 偏好对构建
数据collect() · DatasetExporter · Pipeline · CAS · GDIRollout 采样,SFT / DPO / GRPO 格式导出,CAS 内容寻址去重,GDI 质量排名,端到端管线编排
训练SFTTrainer · DPOTrainer · GRPOTrainer三种策略优化 + 6 项 Agent 增强 + 评估与统计检验
推断AgentInference · Checkpoint推理桥:checkpoint 加载 → create_agent() → collect → train 闭环

______________________________________________________________________

关键创新

1.体育馆兼容环境协议

LLM Agent 环境缺乏统一接口——每个框架自行定义交互协议,环境复用成本高、Wrapper 不可组合。knowlyr-gym 实现完整的 Gymnasium 兼容协议,将 reset() / step() / close() 三方法模式扩展至 LLM 场景:

5 个注册环境

env_id终端条件
knowlyr/sandboxSandboxEnv编码submit / finish
knowlyr/conversationConversationEnv谈话respond
knowlyr/engineeringConversationEnv工程学submit / finish
knowlyr/advisoryConversationEnv咨询submit / finish
knowlyr/discussionConversationEnv讨论respond / submit

4 个可组合 Wrapper

from knowlyrcore.wrappers import MaxStepsWrapper, TimeoutWrapper, RewardWrapper, RecorderWrapper

env = make("knowlyr/sandbox")
env = MaxStepsWrapper(env, max_steps=50)           # horizon truncation
env = RewardWrapper(env, reward_fn=my_reward_fn)   # step-level reward injection
env = RecorderWrapper(env, agent_name="my-agent")  # trajectory recording

ts = env.reset(task=my_task)
while not ts.done:
    action = agent(ts.observation)
    ts = env.step(action)

trajectory = env.get_trajectory()

自定义环境

from knowlyrcore import AgentEnv, TimeStep, register, make

class MyEnv(AgentEnv):
    domain = "my_domain"

    def reset(self, *, task=None, seed=None) -> TimeStep:
        return TimeStep(observation="ready")

    def step(self, action: dict) -> TimeStep:
        return TimeStep(observation="result", terminated=(action["tool"] == "submit"))

    @property
    def available_tools(self):
        return ["observe", "act", "submit"]

register("my-project/my-env", MyEnv, domain="my_domain")
env = make("my-project/my-env")

2.域名概况——域名不可知抽象

DomainProfile 声明式配置环境领域特征——工具集、工具类别、结果判定规则、评分维度权重。新增领域无需修改核心代码,只需定义一份 Profile:

领域典型工具应用
编程read_file, edit_file, bash, grep, submit代码代理(SWE台式)
浏览器navigate, click, type_text, scroll, screenshotWeb自动化
对话respond, query_stats, send_message, web_search对话代理
工程read_file, grep, git, knowledge_base, bash代码审查、架构
咨询respond, knowledge_base, web_search, create_note专家咨询
讨论respond, knowledge_base, think多回合讨论
通用的(空--启发式回退)自定义域

3.三层流程奖励模型

与仅评估最终结果的 Outcome Reward Model (ORM) 不同,本系统实现步骤级 Process Reward Model (PRM),为每个 action 计算即时奖励 $r_t = R(s_t, a_t)$,三层架构逐层提升评估质量:

Layer 1: Rule-based (deterministic)     Layer 2: LLM-as-Judge         Layer 3: Human
┌─────────────────────────────────┐    ┌──────────────────────────┐   ┌──────────────┐
│ Redundancy detection            │    │ Rubric-based scoring     │   │ Calibration  │
│ Regression detection            │ →  │ Multi-dimensional eval   │ → │ via human    │
│ Information utilization         │    │ Semantic quality judge   │   │ annotations  │
│ Efficiency analysis             │    │ (OpenAI / Anthropic API) │   │              │
└─────────────────────────────────┘    └──────────────────────────┘   └──────────────┘
  Cost: ~0        Latency:  I["AgentInference
from_pretrained()"]
    I --> A["create_agent()"]
    A --> C["collect()
n_episodes × env"]
    C --> R["RewardEngine
score()"]
    R --> E["DatasetExporter
SFT / DPO / GRPO"]
    E --> T["Trainer
SFT / DPO / GRPO"]
    T --> M

    style M fill:#0969da,color:#fff,stroke:#0969da
    style T fill:#0969da,color:#fff,stroke:#0969da
    style I fill:#1a1a2e,color:#e0e0e0,stroke:#444
    style A fill:#1a1a2e,color:#e0e0e0,stroke:#444
    style C fill:#1a1a2e,color:#e0e0e0,stroke:#444
    style R fill:#8b5cf6,color:#fff,stroke:#8b5cf6
    style E fill:#1a1a2e,color:#e0e0e0,stroke:#444

评估与统计检验evaluate_agent()compare_agents() 提供 Agent 级别评估,内置统计检验(无 scipy 依赖):

  • 韦尔奇t检验 / 秩和检验 — 独立样本对比
  • 配对t检验 — 同任务配对对比
  • Bootstrap CI — 非参数置信区间
  • 邦费罗尼校正 — 多重比较校正
  • 排行榜 — 按 avg_reward 排序 + 显著性标注

______________________________________________________________________

组件

6 个独立 PyPI 包,对应 RL 系统各组件:

RL角色描述测试
knowlyr核心MDP协议AgentEnv · TimeStep · EnvWrapper · Registry · DomainProfile108
knowlyr沙盒EnvironmentDocker 沙箱执行 · SandboxEnv · ConversationEnv101
knowlyr录音机Trajectory BufferAgent 日志解析 · 标准化轨迹 · 适配器注册表62
知识奖励Reward Model三层 PRM · Rubric 评分 · 偏好对构建136
knowlyr中心推出和数据collect() 采样 · DatasetExporter · Pipeline 编排 · CAS 去重 · GDI 排名158
knowlyr教练Policy OptimizationSFT · DPO · GRPO · 评估 · 推理桥206

各包独立安装、独立使用,无交叉依赖。Hub 通过可选依赖串联数据管线,Trainer 消费 Hub 导出的 JSONL。

______________________________________________________________________

快速开始

环境交互

from knowlyrcore import make

env = make("knowlyr/conversation")
ts = env.reset(task="帮用户查询订单状态")
while not ts.done:
    action = my_agent(ts.observation)   # π(a|s)
    ts = env.step(action)              # s', r, done
env.close()

带奖励的轨迹收集

from trajectoryhub import collect, make_reward_fn

reward_fn = make_reward_fn(domain="coding")  # 规则层 PRM
trajectories = collect(
    "knowlyr/sandbox",
    agent=my_agent,
    n_episodes=20,
    max_steps=30,
    reward_fn=reward_fn,
)

端到端训练循环

from agenttrainer import SFTConfig, AgentInference
from trajectoryhub import collect, make_reward_fn, DatasetExporter

# 1. Collect trajectories
trajectories = collect("knowlyr/conversation", agent=my_agent, n_episodes=100)

# 2. Export to training format
exporter = DatasetExporter(trajectories_dir="./trajectories.jsonl")
exporter.export_sft("./sft_train.jsonl")

# 3. Train policy
# knowlyr-trainer sft --train-file sft_train.jsonl --model Qwen/Qwen2.5-Coder-7B

# 4. Load updated policy → next iteration
inference = AgentInference.from_pretrained("./checkpoints/step-1000")
updated_agent = inference.create_agent(system_prompt="你是代码助手")
new_trajectories = collect("knowlyr/sandbox", agent=updated_agent, n_episodes=50)

命令行界面

# Trajectory recording & reward scoring
knowlyr-recorder convert agent_log.jsonl -f openhands -o trajectory.json
knowlyr-reward score trajectory.json --domain coding

# Dataset export
knowlyr-hub export --format sft -t trajectories.jsonl -o sft_data.jsonl
knowlyr-hub export --format dpo -t trajectories.jsonl -p preferences.jsonl -o dpo_data.jsonl

# Policy optimization
knowlyr-trainer sft --train-file sft_data.jsonl --model Qwen/Qwen2.5-Coder-7B
knowlyr-trainer dpo --train-file dpo_data.jsonl --model ./output/sft/final --beta 0.1
knowlyr-trainer grpo --train-file grpo_data.jsonl --model ./output/sft/final

______________________________________________________________________

安装

pip install knowlyr-hub[all]   # 全部包

按需安装

pip install knowlyr-core       # MDP protocol
pip install knowlyr-sandbox    # Environment
pip install knowlyr-recorder   # Trajectory buffer
pip install knowlyr-reward     # Reward model
pip install knowlyr-hub        # Rollout & data
pip install knowlyr-trainer    # Policy optimization

# Optional
pip install knowlyr-reward[llm]      # LLM-as-Judge (Anthropic + OpenAI)
pip install knowlyr-trainer[peft]    # LoRA fine-tuning
pip install knowlyr-trainer[wandb]   # Weights & Biases logging

______________________________________________________________________

发展

git clone https://github.com/liuxiaotong/knowlyr-gym.git
cd knowlyr-gym

make install-dev        # 开发模式安装全部包
make test               # 运行全部测试 (771 passed)
make test-integration   # 跨包集成测试 (17 tests)
make lint               # ruff check

______________________________________________________________________

生态系统

Architecture Diagram

graph LR
    Radar["Radar
Discovery"] --> Recipe["Recipe
Analysis"]
    Recipe --> Synth["Synth
Generation"]
    Recipe --> Label["Label
Annotation"]
    Synth --> Check["Check
Quality"]
    Label --> Check
    Check --> Audit["Audit
Model Audit"]
    Crew["Crew
Deliberation Engine"]
    Agent["Agent
RL Framework"]
    ID["ID
Identity Runtime"]
    Crew -.->|能力定义| ID
    ID -.->|身份 + 记忆| Crew
    Crew -.->|轨迹 + 奖励| Agent
    Agent -.->|优化策略| Crew

    style Agent fill:#0969da,color:#fff,stroke:#0969da
    style Crew fill:#2da44e,color:#fff,stroke:#2da44e
    style ID fill:#8b5cf6,color:#fff,stroke:#8b5cf6
    style Radar fill:#1a1a2e,color:#e0e0e0,stroke:#444
    style Recipe fill:#1a1a2e,color:#e0e0e0,stroke:#444
    style Synth fill:#1a1a2e,color:#e0e0e0,stroke:#444
    style Label fill:#1a1a2e,color:#e0e0e0,stroke:#444
    style Check fill:#1a1a2e,color:#e0e0e0,stroke:#444
    style Audit fill:#1a1a2e,color:#e0e0e0,stroke:#444
图层项目描述回购
发现AI数据集雷达数据集竞争情报、趋势分析
分析DataRecipe逆向分析、Schema 提取、成本估算
生产DataSynth / 恢复LLM 批量合成 / 轻量标注·
质量数据检查规则验证、重复检测、分布分析
审计模型审计蒸馏检测、模型指纹
审议情况船员对抗式多智能体协商 · 持久记忆进化 · MCP 原生
身份knowlyr id身份系统 + AI 员工运行时
代理商培训knowlyr健身房Gymnasium 风格 RL 框架 · 过程奖励模型 · SFT/DPO/GRPOYou are here

______________________________________________________________________

参考文献

  • 体育馆 --Tower等人,2024年。 *Gymnasium:强化学习环境的标准界面。* arXiv:2407.17032
  • 浏览器名称 -Drouin等人,2024年。 *WorkArena:Web代理解决常识性工作任务的能力有多强?* arXiv:2403.07718
  • Agent健身房 -Xi等人,2024。 *AgentGym:在不同环境中进化基于大型语言模型的代理。* arXiv:2406.04151
  • SWE长椅 --Jimenez等人,2024年。 *SWE bench:语言模型能解决现实世界中的GitHub问题吗?* arXiv:2310.06770
  • 流程奖励模型 --Lightman等人,2023年。 *让我们一步一步地验证。* arXiv:2305.20050
  • 直接产品利润 --Rafailov等人,2023年。 *直接偏好优化:你的语言模型实际上是一个奖励模型。* arXiv:2305.18290
  • GRPO --邵等,2024。 *DeepSeekMath:在开放语言模型中突破数学推理的极限。* arXiv:2402.03300
  • 法学硕士作为法官 --郑等,2023。 *与MT Bench和Chatbot Arena一起评判LLM作为法官。* arXiv:2306.05685

______________________________________________________________________

许可证

麻省理工学院

______________________________________________________________________

knowlyr — gymnasium-style RL framework for LLM agent training

目录标签

目录标签

Python云端部署Docker强化学习本地部署LLM代理训练环境协议过程奖励模型领域泛化

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

token

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdiotoken部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP