智能体质量评估工具集平台
Go to file
sinohqb c7f1dca49d v0.3-s2: 3 个新规则 + 组合逻辑 + 33 个测试
## 新规则(共 6 种,增加 3 种)

### semantic_similarity
- 调用 OpenAI 兼容 embedding API(asyncio.gather 并发两路请求)
- 余弦相似度与 reference 比对,min_score 可配置(默认 0.7)
- API 异常时明确返回失败原因,不隐藏错误

### json_schema
- 验证回复是否为合法 JSON(支持 markdown 代码块剥离)
- required_keys / forbidden_keys / key_types 三维校验
- dot-path 支持嵌套字段("data.id")
- strict_json=false 模式非阻断校验

### safety
- 双层检测:关键词黑名单(零延迟)+ 可选 moderation API
- API 不可用时自动降级黑名单,不中止评测
- 支持自定义 flagged_categories

## 规则组合逻辑(rule_logic + rule_pass_threshold)

- models.py: EvalRuleConfig 增加 weight 字段;Case 增加 rule_logic / rule_pass_threshold
- models.py: 新增 RuleLogic 枚举(all / any / weighted)
- engine._save_rule_results: 按 rule_logic 决定 case 通过/失败
  - ALL:全部通过才通过(原有行为,向下兼容)
  - ANY:至少一条通过即通过
  - WEIGHTED:加权平均分 >= rule_pass_threshold

## 测试(43 → 76,新增 33)
- test_s2_rules_and_logic.py:3 个新规则的 pass/fail/边界/API 降级 + 5 个组合逻辑集成测试

Co-Authored-By: Claude <noreply@anthropic.com>
2026-07-17 11:23:22 +08:00
.qoder v0.2.0-dev: 文件管理 + 页面布局统一 + 6 个 bug 修复 2026-07-16 15:25:22 +08:00
backend v0.3-s2: 3 个新规则 + 组合逻辑 + 33 个测试 2026-07-17 11:23:22 +08:00
config v0.2.0-dev: 文件管理 + 页面布局统一 + 6 个 bug 修复 2026-07-16 15:25:22 +08:00
data/scenarios v0.2.0-dev: 文件管理 + 页面布局统一 + 6 个 bug 修复 2026-07-16 15:25:22 +08:00
deploy/t480 v0.2.0-dev: 文件管理 + 页面布局统一 + 6 个 bug 修复 2026-07-16 15:25:22 +08:00
docs v0.3-s1: 规则层异步化 + 工具函数去重 + HTTP 通道 2026-07-17 10:52:32 +08:00
frontend/web v0.2.0-dev: 文件管理 + 页面布局统一 + 6 个 bug 修复 2026-07-16 15:25:22 +08:00
migrations v0.2.0-dev: 文件管理 + 页面布局统一 + 6 个 bug 修复 2026-07-16 15:25:22 +08:00
mockup v0.2.0-dev: 文件管理 + 页面布局统一 + 6 个 bug 修复 2026-07-16 15:25:22 +08:00
scripts v0.2.0-dev: 文件管理 + 页面布局统一 + 6 个 bug 修复 2026-07-16 15:25:22 +08:00
tests v0.3-s2: 3 个新规则 + 组合逻辑 + 33 个测试 2026-07-17 11:23:22 +08:00
vibe_images v0.2.0-dev: 文件管理 + 页面布局统一 + 6 个 bug 修复 2026-07-16 15:25:22 +08:00
.dockerignore v0.2.0-dev: 文件管理 + 页面布局统一 + 6 个 bug 修复 2026-07-16 15:25:22 +08:00
.env.example v0.2.0-dev: 文件管理 + 页面布局统一 + 6 个 bug 修复 2026-07-16 15:25:22 +08:00
.gitignore v0.2.0-dev: 文件管理 + 页面布局统一 + 6 个 bug 修复 2026-07-16 15:25:22 +08:00
AGENT.md v0.2.0-dev: 文件管理 + 页面布局统一 + 6 个 bug 修复 2026-07-16 15:25:22 +08:00
alembic.ini v0.2.0-dev: 文件管理 + 页面布局统一 + 6 个 bug 修复 2026-07-16 15:25:22 +08:00
CLAUDE.md v0.2.0-dev: 文件管理 + 页面布局统一 + 6 个 bug 修复 2026-07-16 15:25:22 +08:00
pyproject.toml v0.2.0-dev: 文件管理 + 页面布局统一 + 6 个 bug 修复 2026-07-16 15:25:22 +08:00
README.md v0.2.0-dev: 文件管理 + 页面布局统一 + 6 个 bug 修复 2026-07-16 15:25:22 +08:00

AgentEvalTool

当前版本: v0.2.0 「稳」(2026-07-14) · 里程碑路线图见 docs/release-notes-v0.2.md

智能体质量评估工具集平台。

功能

  • 评测对象管理AI 数字员工 / AI 助手)
  • 评测场景管理YAML/JSON 配置)
  • 异步评测执行引擎(v0.2:真并发/真取消/可配置超时)
  • 评估规则关键词匹配、响应时间、LLM 评分)
  • 基础报告生成JSON / HTML
  • OpenClaw 插件示例 + 免登录 iframe 集成
  • Web 管理后台FastAPI + React

v0.2 亮点

  • async EvalEngine + asyncio.Task 注册表,支持真取消与并发执行
  • 安全基线:Pydantic Settings + .env + APIKey 鉴权 + CORS 收紧
  • 测试基线:24 个测试,57% 覆盖率(engine 61%, runs.py 86%)
  • 部署规范化:scripts/deploy-t480.sh 一键部署 + 镜像版本 tag + /api/health 验证
  • Alembic 迁移:容器启动自动 alembic upgrade head

快速开始

安装

pip install -e ".[dev]"

CLI 使用

# 查看帮助
agenteval --help

# 添加评测对象
agenteval target add --name "社区医院AI客服" --config config/config.json

# 导入评测场景
agenteval scenario import data/scenarios/health_basic.yaml

# 执行评测
agenteval run start --target <target-id> --scenario <scenario-id>

# 查看报告
agenteval report show <run-id> --format json
agenteval report generate <run-id> --format html

启动 Web 后台

agenteval server start --host 0.0.0.0 --port 8000

启动 Web 前端

cd frontend/web
npm install
npm run dev

文档

完整的文档集位于 docs/ 目录:

项目结构

AgentEvalTool/
├── backend/                # Python 后端代码
│   ├── agenteval/          # 核心 Python 库
│   │   ├── channels/       # 消息通道适配器
│   │   ├── agents/         # 评测智能体适配器
│   │   ├── scenarios/      # 评测场景模型和加载
│   │   ├── evaluation/     # 评估引擎和规则
│   │   ├── storage/        # 数据持久化SQLite
│   │   └── web/            # FastAPI Web 后台
│   ├── cli/                # CLI 命令入口
│   └── plugins/            # 外部平台插件
│       └── openclaw/       # OpenClaw 插件示例
├── frontend/               # React 前端
│   └── web/                # Web 管理界面
├── config/                 # 配置文件
│   └── config.json         # tutu-api 配置
├── scripts/                # 工具脚本
│   └── mock_call.py        # API 测试脚本
├── docs/                   # 完整文档集
│   ├── requirements-v1.0.md
│   ├── architecture-v1.0.md
│   ├── data-models-v1.0.md
│   ├── api-reference/
│   ├── deployment/
│   ├── guides/
│   └── external-references/
├── deploy/                 # 部署配置
│   └── t480/               # t480 服务器部署
├── data/                   # 本地数据和报告
│   ├── scenarios/          # 场景 YAML 文件
│   ├── reports/            # 生成的 HTML/JSON 报告
│   └── agenteval.db        # SQLite 数据库
└── tests/                  # 测试
    ├── unit/
    └── integration/

架构说明

AgentEvalTool 采用"CLI 工具集 + Web 后台"的交付方式:

  • CLI 是核心能力入口OpenClaw 可通过插件调用 CLI 完成评测自闭环。
  • Web 后台提供可视化的对象、场景、执行、报告管理。
  • 消息通道、评测智能体、评估规则均通过抽象接口定义,便于后续扩展。

许可证

MIT