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

Mcpmark Lite Rft Example

MCP Server

MCPMark-lite RFT Example是一个独立的、Docker打包的多轮工具调用基准测试工具,兼容eval-protocol和Fireworks RFT,用于在文件系统上执行真实工具操作并进行确定性验证。

工具数

5

提示词数

0

GitHub Stars

0

资源数

0
Python云端部署Docker

安装说明

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

作者 / 组织

eval-protocol

提供方

eval-protocol

最后核验

2026/5/17 20:20

运行时

Python

快速接入

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

命令预览

uv run pytest benchmark/test_mcp_filesystem_rft.py::test_mcpmark_lite_filesystem -q -s

详细介绍

MCPMark lite RFT示例

独立的、Docker打包的、多轮工具调用基准,与 eval-protocol 烟花RFT。

此回购是受MCP基准设计启发的实用子集:

  • 针对可变状态(文件系统)的真实工具执行
  • 部署后环境状态的确定性验证器
  • 低基础设施开销(stdio上的单个本地FastMCP服务器)

为什么这个子集

对于端到端RFT示例,最干净的路径是仅文件系统的MCP任务:

  • MCPMark 强调了验证驱动的真实性,并指出文件系统任务可以在快速启动路径中使用零API-key设置来运行。
  • MCP-Universe 是有价值的,但包括可选的互联网/API依赖域和更广泛的服务器矩阵。
  • MCP-Bench 是全面的,但设置繁重(多个提供者密钥+Docker堆栈+更丰富的线束要求)。

参考文献

包括什么

  • mcp_server/task_files_server.py:具有任务范围文件系统工具的本地FastMCP服务器。
  • data/tasks.jsonl:8个确定性多回合任务。
  • benchmark/test_mcp_filesystem_rft.py: @evaluation_test 基准使用 AgentRolloutProcessor +确定性验证器。
  • benchmark/verifier.py:严格的文件状态检查(json_equals, text_equals, file_contains).
  • Dockerfile:独立可运行容器。

工具模式

每次推出预计将:

  1. 呼叫 init_task(task_id)
  2. 使用 list_files / read_file
  3. 生成所需的输出文件 write_file
  4. 通过以下方式在检查表中添加完成标记 append_file

奖励是根据真实的文件系统状态计算的,而不仅仅是辅助文本。

本地设置

uv sync

设置Fireworks身份验证:

export FIREWORKS_API_KEY=...

可选(默认为小型qwen模型):

export MCP_AGENT_MODEL=fireworks_ai/accounts/fireworks/models/qwen3-8b

可选低成本旋钮:

export MCP_AGENT_STEPS=8
export MCP_AGENT_MAX_TOKENS=512
export MCP_MAX_CONCURRENT_ROLLOUTS=1

云/RFT注释:保守默认值(steps=6, max_tokens=192)用于降低小型模型上的上下文溢出风险。

按需部署覆盖:

export MCP_ON_DEMAND_MODEL='fireworks_ai/accounts/fireworks/models/qwen3-32b#accounts/pyroworks/deployments/qwen3-32b-rft-py-02221823'

运行基准测试

uv run pytest benchmark/test_mcp_filesystem_rft.py::test_mcpmark_lite_filesystem -q -s

小烟跑:

EP_MAX_DATASET_ROWS=1 MCP_AGENT_STEPS=6 MCP_AGENT_MAX_TOKENS=512 uv run pytest benchmark/test_mcp_filesystem_rft.py::test_mcpmark_lite_filesystem -q -s

Docker运行

docker build -t mcpmark-lite-rft .
docker run --rm -e FIREWORKS_API_KEY="$FIREWORKS_API_KEY" mcpmark-lite-rft

烟花RFT流程

为此测试使用已知的评估者id:

  • test-mcp-filesystem-rft-test-mcpmark-lite-filesystem

首先实现RFT就绪数据集(使用旧数据集时需要) eval-protocol 不自动应用的版本 dataset_adapter 在...期间 create rft):

uv run python scripts/materialize_rft_dataset.py \
  --input data/tasks.jsonl \
  --output data/rft_tasks_smoke.jsonl \
  --max-rows 1

创建RFT(需要基本模型):

uv run ep create rft \
  --evaluator test-mcp-filesystem-rft-test-mcpmark-lite-filesystem \
  --dataset-jsonl data/rft_tasks_smoke.jsonl \
  --base-model accounts/fireworks/models/qwen3-8b \
  --response-candidates-count 2 \
  --max-output-tokens 1024 \
  --chunk-size 1 \
  --yes \
  --ignore-docker \
  --skip-validation

监视作业,直到终端状态:

uv run python scripts/monitor_rft_job.py --job-id  --account pyroworks

笔记:

  • 在此 python-sdk 分支, create rft 自动检测来自的JSONL输入数据集 @evaluation_test(input_dataset=[...]) 在许多情况下。
  • 如果在您的环境中自动检测失败,请先创建/上传数据集,然后使用重新运行 --dataset .

基准设计约束

  • 确定性检查使RL的奖励稳定。
  • 任务范围的沙盒可防止跨行污染。
  • 默认情况下不需要外部API,这使得部署生成成本和故障模式保持较低水平。

目录标签

目录标签

Python云端部署Docker基准测试本地部署多轮工具调用文件系统操作确定性验证

接入字段

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

stdio

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

none

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

5

资源数量(resourceCount,资源数)

0

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

0

权限和风险

stdionone部署方式未说明

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

安装前确认

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

来源信息

继续浏览同类 MCP