当前位置: 首页 > article >正文

CANN/cannbot-skills Skill测试框架

Skill 测试框架【免费下载链接】cannbot-skillsCANNBot 是面向 CANN 开发的用于提升开发效率的系列智能体本仓库为其提供可复用的 Skills 模块。项目地址: https://gitcode.com/cann/cannbot-skills基于变更文件识别受影响的 skills执行对应的评测用例输出测试结果报告。用于 CI/CD 门禁检查确保 skills 代码变更质量。核心工作流程输入repo_root changed_files │ ├─ 步骤1识别受影响的skills │ └─ 从变更文件路径中提取 skill 目录 │ ├─ 步骤2加载评测用例 │ └─ 读取 skill/evals/evals.json │ ├─ 步骤3执行评测 │ ├─ Phase 1: 静态结构验证test_skill_basic.py │ └─ Phase 2: AI 语义评测test_skill_evals.py │ ├─ 步骤4保存结果 │ └─ 输出到 tests/system/results/ │ └─ 返回通过/失败状态输入参数参数必填说明默认值repo_root必填仓库根目录的绝对路径-changed_files必填变更文件列表空格分隔支持相对或绝对路径---parallel/-p否并行 worker 数auto全部CPU或指定数字如41(顺序执行)输出结果文件说明results/skill_name_timestamp.json每个受影响skill的测试结果报告results/basic_validation.htmlPhase 1 静态结构验证报告results/skill_evals.htmlPhase 2 语义评测报告结果文件结构{ skill_name: ascendc-aclnn-execute, timestamp: 20260509_143000, repo_root: /path/to/repo, changed_files: [ops/ascendc-aclnn-execute/SKILL.md], total_evals: 10, passed_evals: 8, failed_evals: 2, results: [ { eval_id: 1, passed: true, prompt: ..., expected_output: ..., actual_output: ..., error: , expectations: [...], expectations_met: [...], expectations_failed: [] } ] }测试阶段Phase 1静态结构验证test_skill_basic.py无需 AI 调用快速验证 skill 的结构完整性evals.json存在性、JSON 合法性、必填字段检查每个 eval case 的 id、prompt、expectations 格式校验SKILL.md 存在性、YAML frontmatter 格式校验Phase 2AI 语义评测test_skill_evals.py使用 opencode CLI 执行评测用例验证 skill 的实际表现执行 Session向 skill 发送 prompt收集 AI 回复评测 Session独立评测模型评审回复质量信息覆盖度 40 分、技术准确性 30 分、回复质量 20 分、Token 消耗 10 分总分 60 通过断言验证检查 expectations 中的contains/not_contains/file_exists模式evals.json 格式{ skill_name: skill-name, evals: [ { id: 1, prompt: 测试场景描述, expected_output: 预期输出描述, files: [], expectations: [期望内容1, 期望内容2] } ] }expectations 类型类型说明示例containsAI 回复必须包含指定文本普通的字符串not_containsAI 回复不能包含指定文本!not_contains:禁止出现的内容file_exists指定文件必须被创建或修改file_exists:path/to/file使用方式命令行调用python tests/system/scripts/main.py \ --repo-root /path/to/repo \ --changed-files ops/ascendc-st-design/SKILL.md ops/ascendc-st-design/evals/evals.json通过 gate_check.sh 调用CI 门禁# 方式1手动指定变更文件 export CHANGED_FILESops/ascendc-st-design/SKILL.md export REPO_ROOT/path/to/repo ./tests/gate_check.sh # 方式2Git 自动检测对比 origin/master HEAD 变更 ./tests/gate_check.sh # 方式3指定目标分支对比 export CI_MERGE_REQUEST_TARGET_BRANCH_NAMEmain ./tests/gate_check.sh并行执行Phase 2 的 eval 用例相互独立可通过--parallel并行执行python tests/system/scripts/main.py \ --repo-root /path/to/repo \ --changed-files ops/foo/SKILL.md \ --parallel auto配置编辑tests/system/config/skill-test.config调整扫描路径skill_dirs: - ops - graph - model/skills exclude_skills: - skill-test-framework依赖安装pip install -r tests/system/scripts/requirements.txt目录结构tests/system/ ├── README.md # 本文档 ├── config/ │ └── skill-test.config # 扫描路径配置 ├── docs/ │ └── USER_GUIDE.md # 详细使用指南 ├── results/ # 测试结果输出目录 ├── logs/ # 运行日志 └── scripts/ ├── main.py # CI 门禁主入口 ├── conftest.py # pytest 共享配置与工具函数 ├── opencode_runner.py # opencode CLI 封装 ├── test_skill_basic.py # Phase 1: 静态结构验证 ├── test_skill_evals.py # Phase 2: AI 语义评测 ├── run_eval.py # 命令行评测启动脚本 ├── session_stats.py # Session 数据统计工具 ├── pytest.ini # pytest 渲染配置 └── requirements.txt # Python 依赖注意事项变更识别只有配置的skill_dirs目录下的变更才会触发评测evals.json 必需skill 必须有evals/evals.json文件才会执行 Phase 2 评测超时设置批量评测超时 1200 秒单个评测用例超时 300 秒退出码所有评测通过返回 0任一失败返回 1【免费下载链接】cannbot-skillsCANNBot 是面向 CANN 开发的用于提升开发效率的系列智能体本仓库为其提供可复用的 Skills 模块。项目地址: https://gitcode.com/cann/cannbot-skills创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关文章:

CANN/cannbot-skills Skill测试框架

Skill 测试框架 【免费下载链接】cannbot-skills CANNBot 是面向 CANN 开发的用于提升开发效率的系列智能体,本仓库为其提供可复用的 Skills 模块。 项目地址: https://gitcode.com/cann/cannbot-skills 基于变更文件识别受影响的 skills,执行对应…...

Jooby数据库集成实战:Hikari、JDBI、Ebean最佳实践

Jooby数据库集成实战:Hikari、JDBI、Ebean最佳实践 【免费下载链接】jooby The modular web framework for Java and Kotlin 项目地址: https://gitcode.com/gh_mirrors/jo/jooby Jooby是一个模块化的Java和Kotlin Web框架,提供了简洁高效的数据库…...

蘑菇博客性能优化技巧:10个提升博客访问速度的方法 [特殊字符]

蘑菇博客性能优化技巧:10个提升博客访问速度的方法 🚀 【免费下载链接】mogu_blog_v2 蘑菇博客(MoguBlog),一个基于微服务架构的前后端分离博客系统。Web端使用Vue Element , 移动端使用uniapp和ColorUI。后端使用Spring cloud Spring boot…...

Sub-Zero字幕格式转换:从SRT到VTT的完整处理流程

Sub-Zero字幕格式转换:从SRT到VTT的完整处理流程 【免费下载链接】Sub-Zero.bundle Subtitles for Plex, as good you would expect them to be. 项目地址: https://gitcode.com/gh_mirrors/su/Sub-Zero.bundle Sub-Zero是一款为Plex媒体服务器提供高质量字幕…...

为什么选择Marginalia:与Rails 7内置QueryLogs的对比分析

为什么选择Marginalia:与Rails 7内置QueryLogs的对比分析 【免费下载链接】marginalia Attach comments to ActiveRecords SQL queries 项目地址: https://gitcode.com/gh_mirrors/ma/marginalia Marginalia是一款强大的Ruby gem工具,能够为Activ…...

Wedding-website图片库与相册功能:展示精美婚礼照片的最佳实践

Wedding-website图片库与相册功能:展示精美婚礼照片的最佳实践 【免费下载链接】wedding-website Our Wedding Website 👫 项目地址: https://gitcode.com/gh_mirrors/we/wedding-website 婚礼是人生中最珍贵的时刻之一,而如何将这些美…...

OptScale 安全最佳实践:10个关键步骤保护你的云成本数据和配置

OptScale 安全最佳实践:10个关键步骤保护你的云成本数据和配置 【免费下载链接】optscale FinOps and cloud cost optimization tool. Supports AWS, Azure, GCP, Alibaba Cloud and Kubernetes. 项目地址: https://gitcode.com/gh_mirrors/op/optscale OptS…...

文字修仙项目市场价值与商业化分析

文字修仙 AI Agent:市场价值与个人开发者商业化实战指南 一、文字修仙游戏的市场基本面——小众赛道的大机会 1.1 全球文字/互动叙事游戏市场规模与增长 1.2 中文修仙品类的独特生态:QQ群 → 微信 → 抖音 1.3 用户画像:谁在玩文字修仙&…...

SpringBoot+Vue房屋买卖平台源码+论文

代码可以查看文章末尾⬇️联系方式获取,记得注明来意哦~🌹 分享万套开题报告任务书答辩PPT模板 作者完整代码目录供你选择: 《SpringBoot网站项目》1800套 《SSM网站项目》1500套 《小程序项目》1600套 《APP项目》1500套 《Python网站项目》…...

SpringBoot+Vue体育赛事志愿者管理系统源码+论文

代码可以查看文章末尾⬇️联系方式获取,记得注明来意哦~🌹 分享万套开题报告任务书答辩PPT模板 作者完整代码目录供你选择: 《SpringBoot网站项目》1800套 《SSM网站项目》1500套 《小程序项目》1600套 《APP项目》1500套 《Python网站项目》…...

TWMessageBarManager:iOS系统级通知栏的终极解决方案

TWMessageBarManager:iOS系统级通知栏的终极解决方案 【免费下载链接】TWMessageBarManager An iOS manager for presenting system-wide notifications via a dropdown message bar. 项目地址: https://gitcode.com/gh_mirrors/tw/TWMessageBarManager TWMe…...

Windows下C语言编译指南

学习C语言入门有一定难度,需勤加练习。多数人使用Windows系统,那么在Windows环境下如何编译运行C语言程序?掌握合适工具与方法是关键。1、 学习C语言时,我使用的是Visual C 6.0编译器。如今,Windows系统下还可使用功能…...

Amphenol ICC线束MSPEC6P2A5010应用与替代分析

随着工业通信、车载网络以及高速数据互联的发展,越来越多设备开始采用高性能线束组件来保证数据稳定传输。在工业自动化与智能设备领域,Amphenol ICC推出的MSPE系列近年来关注度持续提升,其中MSPEC6P2A5010就是比较典型的一款工业级线束组件。…...

5分钟搞定AI 3D建模!TripoSR:图片秒变专业3D模型的终极方案

5分钟搞定AI 3D建模!TripoSR:图片秒变专业3D模型的终极方案 【免费下载链接】TripoSR TripoSR: Fast 3D Object Reconstruction from a Single Image 项目地址: https://gitcode.com/GitHub_Trending/tr/TripoSR 还在为复杂的3D建模软件头疼吗&am…...

2025-2026年护眼灯品牌推荐:十大排行产品专业评测熬夜加班防眼干疲劳性价比高注意事项

摘要 当家庭与办公场景对光环境的要求从“照亮”升级为“护眼”,决策者面临的核心挑战已转变为如何在纷繁的技术参数与品牌承诺中,识别出真正能长期守护视觉健康、并适配多元场景的专业解决方案。根据全球市场研究机构Grand View Research的报告&#xf…...

终极GTA5安全增强菜单:YimMenu完整使用指南

终极GTA5安全增强菜单:YimMenu完整使用指南 【免费下载链接】YimMenu YimMenu, a GTA V menu protecting against a wide ranges of the public crashes and improving the overall experience. 项目地址: https://gitcode.com/GitHub_Trending/yi/YimMenu Y…...

如何用智能弹幕助手告别直播中的重复劳动?B站直播效率提升300%的秘密

如何用智能弹幕助手告别直播中的重复劳动?B站直播效率提升300%的秘密 【免费下载链接】MagicalDanmaku 本仓库及所有相关项目已永久停止开发、维护和任何形式的分发。 项目地址: https://gitcode.com/gh_mirrors/bi/MagicalDanmaku 还在为直播时手忙脚乱而烦…...

如何用GeoPort轻松实现iOS虚拟定位?2025年完整使用指南

如何用GeoPort轻松实现iOS虚拟定位?2025年完整使用指南 【免费下载链接】GeoPort GeoPort: Your Location, Anywhere! The iOS location simulator 项目地址: https://gitcode.com/gh_mirrors/ge/GeoPort GeoPort是一款强大的iOS虚拟定位工具,让你…...

围棋AI训练新境界:5步掌握KaTrain智能陪练核心技巧

围棋AI训练新境界:5步掌握KaTrain智能陪练核心技巧 【免费下载链接】katrain Improve your Baduk skills by training with KataGo! 项目地址: https://gitcode.com/gh_mirrors/ka/katrain 想要在围棋对弈中快速提升水平?KaTrain作为一款基于Kata…...

Inno Setup 简体中文语言包:3分钟让Windows安装程序说中文![特殊字符]

Inno Setup 简体中文语言包:3分钟让Windows安装程序说中文!🚀 【免费下载链接】Inno-Setup-Chinese-Simplified-Translation :earth_asia: Inno Setup Chinese Simplified Translation 项目地址: https://gitcode.com/gh_mirrors/in/Inno-S…...

Real-ESRGAN图像增强:3步掌握AI超分辨率魔法

Real-ESRGAN图像增强:3步掌握AI超分辨率魔法 【免费下载链接】Real-ESRGAN Real-ESRGAN aims at developing Practical Algorithms for General Image/Video Restoration. 项目地址: https://gitcode.com/gh_mirrors/re/Real-ESRGAN 你是否曾为模糊的老照片、…...

终极指南:5分钟掌握JarEditor,无需解压直接编辑JAR文件

终极指南:5分钟掌握JarEditor,无需解压直接编辑JAR文件 【免费下载链接】JarEditor IDEA plugin for directly editing and modifying files in jar without decompression. (一款无需解压直接编辑修改jar包内文件的IDEA插件) 项…...

Material File Picker深度解析:从设计理念到Android文件选择器的系统构建

Material File Picker深度解析:从设计理念到Android文件选择器的系统构建 【免费下载链接】MaterialFilePicker Picking files since 2015 项目地址: https://gitcode.com/gh_mirrors/ma/MaterialFilePicker 如何在Android应用中构建一个既美观又实用的文件选…...

终极智慧树刷课插件指南:如何实现自动化高效学习

终极智慧树刷课插件指南:如何实现自动化高效学习 【免费下载链接】zhihuishu 智慧树刷课插件,自动播放下一集、1.5倍速度、无声 项目地址: https://gitcode.com/gh_mirrors/zh/zhihuishu 还在为智慧树平台枯燥的手动操作而烦恼吗?智慧…...

AI Agent落地元年:从对话交互到自主工作流的技术演进与落地实践

2026年被行业公认为AI Agent落地元年,生成式AI彻底告别单纯的参数内卷与对话式交互,进入自主决策、自动执行、闭环迭代的全新阶段。相较于传统大模型被动响应的工作模式,AI Agent凭借感知、规划、执行、复盘的完整闭环能力,成为企…...

智慧树自动刷课插件终极指南:三步实现高效网课自动化学习

智慧树自动刷课插件终极指南:三步实现高效网课自动化学习 【免费下载链接】zhihuishu 智慧树刷课插件,自动播放下一集、1.5倍速度、无声 项目地址: https://gitcode.com/gh_mirrors/zh/zhihuishu 还在为智慧树平台冗长的网课视频而烦恼吗&#xf…...

static-php-cli与Swoole集成:构建高性能微服务应用的最佳实践

static-php-cli与Swoole集成:构建高性能微服务应用的最佳实践 【免费下载链接】static-php-cli Build standalone portable PHP binaries on Linux, macOS, Windows, with PHP project together, with popular extensions included. 项目地址: https://gitcode.co…...

React动画革命:react-tween-state 完全指南 - 10分钟掌握React平滑过渡动画

React动画革命:react-tween-state 完全指南 - 10分钟掌握React平滑过渡动画 【免费下载链接】react-tween-state React animation. 项目地址: https://gitcode.com/gh_mirrors/re/react-tween-state react-tween-state 是一款轻量级的 React 动画库&#xff…...

对比直接使用厂商API体验Taotoken在多模型选型上的便利

🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 对比直接使用厂商API体验Taotoken在多模型选型上的便利 在开发基于大语言模型的应用时,一个常见的需求是尝试不同的模型…...

Bpmn Process Designer性能优化指南:大型流程图的渲染与交互优化

Bpmn Process Designer性能优化指南:大型流程图的渲染与交互优化 【免费下载链接】bpmn-process-designer bpmn-js 工具库 项目地址: https://gitcode.com/gh_mirrors/bp/bpmn-process-designer Bpmn Process Designer是一款基于bpmn-js的强大流程设计器工具…...