news 2026/10/14 15:53:53

Docker部署PinchBench:基准测试Runner镜像配置与CI集成指南

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Docker部署PinchBench:基准测试Runner镜像配置与CI集成指南

【免费下载链接】skill

PinchBench is a benchmarking system for evaluating LLM models as OpenClaw coding agents. Made with 🦀 by the humans at https://kilo.ai

项目地址:https://gitcode.com/gh_mirrors/skill1/skill
点击查看免费下载

PinchBench 是一个用于评估 LLM 模型作为 OpenClaw coding agent 表现的基准测试系统,仓库直接提供了官方 Runner 镜像(Dockerfile.benchmark),预装好 OpenClaw 和全部依赖,让你用 Docker 一条命令跑起基准测试,并轻松接入 CI 流水线。本文是面向新手的 Docker 部署与 CI 集成完整指南。

为什么用 Docker 部署 PinchBench

在本地裸机运行基准测试,需要手动准备 Python 3.10+、uv包管理器、Node 环境和 OpenClaw,步骤繁琐且容易版本冲突。官方 Runner 镜像把这些工作全部封装好了:

  • ✅环境一致:同一镜像在本地、CI 中行为完全一致,结果可复现
  • ✅开箱即用:镜像内已全局安装 OpenClaw,无需额外配置
  • ✅隔离干净:每个测试任务都在独立会话中执行,互不污染

快速开始:构建并运行 PinchBench Runner 镜像

第 1 步:获取仓库

git clone https://gitcode.com/gh_mirrors/skill1/skill cd skill

第 2 步:构建镜像

Dockerfile.benchmark 位于仓库根目录:

docker build -f Dockerfile.benchmark -t pinchbench-runner .

第 3 步:容器内跑通第一个基准测试

docker run --rm -it \ -e OPENROUTER_API_KEY=your_key \ -v $(pwd):/workspace \ pinchbench-runner \ "cd /workspace && ./scripts/run.sh --model openrouter/anthropic/claude-sonnet-4 --no-upload"

看到Ready for benchmarks的启动提示后,镜像即宣告就绪。scripts/run.sh 只是 scripts/benchmark.py 的便捷封装,最终用uv执行真正的基准编排逻辑。

Dockerfile 逐层解读:Runner 镜像里装了什么

官方镜像基于node:22-bookworm,逐层安装了基准测试所需的全部组件:

层内容用途
基础镜像node:22-bookworm提供 Node 22 运行时,OpenClaw 依赖 Node
系统依赖python3、git、curl、jqPython 运行环境 + JSON 结果解析
包管理器uvPinchBench 用uv run管理 Python 依赖
Agent 框架npm install -g openclaw全局安装 OpenClaw agent 运行时
工作目录WORKDIR /workspace挂载仓库代码的入口
配置目录/root/.openclaw预创建 OpenClaw 配置目录

镜像默认ENTRYPOINT为/bin/bash -c,CMD是版本自检命令openclaw --version,方便你在 CI 里先跑一次冒烟检查。所有构建细节见 Dockerfile.benchmark。

关键环境变量配置清单

基准测试需要模型 API Key,镜像本身不内置任何密钥,需通过-e或.env注入。根据被测/评判模型的提供方前缀选择对应变量(参见 lib_agent.py):

环境变量何时需要
OPENROUTER_API_KEY使用openrouter/前缀模型时(默认路由方式)
OPENAI_API_KEY评判模型走openai/直连 API
ANTHROPIC_API_KEY评判模型走anthropic/直连 API
KILO_API_KEY评判模型走kilo/网关
OPENCLAW_PATH自定义 OpenClaw 可执行文件路径
PINCHBENCH_OFFICIAL_KEY标记提交为官方结果(可选)

💡CI 安全提示:密钥一律通过 CI 平台的 Secrets 机制注入,切勿写进镜像或提交到仓库。

在 CI 中集成基准测试

推荐的 GitHub Actions 流水线

将镜像推送到镜像仓库后,一条 workflow 即可完成「构建镜像 → 冒烟检查 → 跑基准 → 归档结果」:

name: PinchBench on: push: branches: [main] workflow_dispatch: jobs: benchmark: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - name: Smoke test run: docker run --rm pinchbench-runner - name: Run PinchBench run: > docker run --rm -e OPENROUTER_API_KEY=${{ secrets.OPENROUTER_API_KEY }} -v ${{ github.workspace }}/results:/workspace/results pinchbench-runner "cd /workspace && ./scripts/run.sh --model openrouter/anthropic/claude-sonnet-4 --suite automated-only --output-dir results" - name: Upload results if: always() uses: actions/upload-artifact@v4 with: name: pinchbench-results path: results/

三个要点:

  1. --suite automated-only:CI 中先跑自动评分任务,速度快、无 LLM 评判成本,适合回归门禁
  2. -v挂载 results 目录:结果 JSON 和会话转录(*_transcripts/)落盘到宿主机,再上传为 artifact 留档
  3. if: always():即使基准失败也归档结果,便于定位问题

结果解读小技巧

运行结束后用jq快速查看分数分布:

# 查看各任务平均分 jq '.tasks[] | {task_id, score: .grading.mean}' results/*.json # 找出得分低于 0.5 的失败任务 jq '.tasks[] | select(.grading.mean < 0.5)' results/*.json

参考仓库中的 CI 调试案例

仓库自带一个典型的 CI 排障任务素材 assets/broken_ci.yml,对应任务 tasks/task_cicd_pipeline_debug.md:其中包含 runner 标签拼写错误、矩阵条件字符串比较、artifact 下载缺失、secret 双重暴露等四类常见 CI 陷阱。在给自己的 PinchBench 流水线排错时,这份文件是很好的对照清单。

常见问题排查

症状原因与解法
OPENROUTER_API_KEY not set未注入环境变量;确认-e OPENROUTER_API_KEY=...或 CI secrets 配置正确
openclaw: command not found镜像构建时npm install -g openclaw失败;重新构建并检查构建日志
模型 ID 报错模型名必须带提供方前缀,如openrouter/anthropic/claude-sonnet-4
CI 中结果丢失忘记挂载 results 卷;加-v $PWD/results:/workspace/results
慢模型超时加--timeout-multiplier 2放大超时时间

总结

  • 用 Dockerfile.benchmark 构建pinchbench-runner镜像,一次性解决 OpenClaw、uv、Python 依赖等环境问题
  • 通过 scripts/run.sh 进入容器执行基准测试,用-v挂载结果目录持久化输出
  • CI 中推荐--suite automated-only做回归门禁,结果以 artifact 归档,密钥走平台 Secrets
  • 任务清单见 tasks/manifest.yaml,当前基准版本为 2.0.0(BENCHMARK_VERSION),项目采用 MIT 协议(LICENSE)

按以上步骤走一遍,你的 PinchBench 基准测试就能稳定跑在任意 Docker 环境或 CI 流水线里了 🦀

【免费下载链接】skill

PinchBench is a benchmarking system for evaluating LLM models as OpenClaw coding agents. Made with 🦀 by the humans at https://kilo.ai

项目地址:https://gitcode.com/gh_mirrors/skill1/skill
点击查看免费下载

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/10/14 15:53:49

投研要查市场传闻?2026年六款 AI 投研工具横评推荐

2026年&#xff0c;AI 已嵌入投研日常&#xff0c;但让人头疼的不是查不到&#xff0c;而是分不清——一条消息传了三轮&#xff0c;到底是不是真的。不少研究者都在问&#xff1a;投研数据分析 AI 工具&#xff0c;服务商该怎么选&#xff1f;本文围绕市场传闻追踪与投研数据分…

作者头像 李华
网站建设 2026/10/14 15:53:35

典当业务管理系统开发实战:从业务流程到状态机设计

简介&#xff1a;这是一份典当业务管理信息系统的软件工程硕士学位论文&#xff0c;面向金融信息化学习者及系统研发人员&#xff0c;针对传统典当业务手工处理效率低、易出错等痛点&#xff0c;给出完整的数字化解决方案。论文基于UML建模、Java三层架构和SQL Server数据库&am…

作者头像 李华
网站建设 2026/10/14 15:53:35

幸运九宫格抽奖系统:PHP+MySQL+原生JS轻量闭环实现

简介&#xff1a;这是一套基于PHP开发的九宫格互动抽奖系统源码&#xff0c;面向计算机专业学生、Web开发初学者及毕业设计实践者&#xff0c;解决线上活动公平抽奖与后台管理需求&#xff0c;适用于校园活动、企业营销、会议互动等轻量级场景。资源包共699个文件&#xff0c;涵…

作者头像 李华
网站建设 2026/10/14 15:53:35

HCIA云计算H13-511题库刷题指南:FusionCompute核心考点与避坑解析

简介&#xff1a;面向华为云计算HCIA认证备考考生整理的最新题库PDF&#xff0c;聚焦H13-511考试大纲所涉及的核心知识点&#xff0c;覆盖华为FusionCompute平台虚拟机管理&#xff08;DVS端口查看、克隆限制、CPU与内存同集群分配&#xff09;、端口组与VLAN配置、上行链路作用…

作者头像 李华
网站建设 2026/10/14 15:53:34

职臣Ai:一份表格开始的论文分析现场

晚上十点&#xff0c;电脑里躺着一份刚整理好的问卷数据。表格有几十列&#xff0c;包含人口学信息、量表得分和开放题编码&#xff1b;研究者真正卡住的&#xff0c;却不是“有没有数据”&#xff0c;而是接下来该问什么、怎么分析、结果如何写得清楚。这正是论文写作中很常见…

作者头像 李华
网站建设 2026/10/14 15:53:13

网络流拆点建模:从计算机工厂到工业调度的通用解法

1. 这道题到底在考什么&#xff1a;从流水线到网络流的思维跃迁“POJ - 3436 ACM Computer Factory”这个标题里藏着一个非常典型的建模陷阱——表面看是工厂流水线调度&#xff0c;实际考的是如何把现实世界的约束条件&#xff0c;精准翻译成图论中的容量、节点和路径。我第一…

作者头像 李华