# v0.7.0 窗口1：意图规则 + Prompt 模板 - 进度文档

## 1. 任务概述

实现 v0.7.0 迭代中**意图规则**和 **Prompt 模板**的测试与监控功能，包括前端页面和后端 API。

## 2. 需求文档引用

- spec/ai-service-admin/requirements.md - 第10节（v0.7.0），AC-ASA-53 ~ AC-ASA-58
- spec/ai-service/requirements.md - 第13节（v0.7.0），AC-AISVC-96 ~ AC-AISVC-100

## 3. 总体进度

- [x] 后端任务（4个）
  - [x] T16.13-T16.14: 意图规则测试 API
  - [x] T16.15-T16.17: 意图规则监控 API
  - [x] T16.18-T16.19: Prompt 模板预览 API
  - [x] T16.20-T16.21: Prompt 模板监控 API
- [x] 前端任务（5个）
  - [x] P13-09: 规则测试对话框
  - [x] P13-10-P13-11: 意图规则监控页面
  - [x] P13-12: 模板预览对话框
  - [x] P13-13: Prompt 模板监控页面
  - [x] P13-01: API 服务层

## 4. Phase 详细进度

### Phase 1: 后端 API 实现

#### 4.1 意图规则测试 API (T16.13-T16.14)
- 文件：`ai-service/app/services/intent/tester.py`（新建）✅
- API：`POST /admin/intent-rules/{ruleId}/test` ✅
- 状态：**已完成**

#### 4.2 意图规则监控 API (T16.15-T16.17)
- 文件：`ai-service/app/services/monitoring/intent_monitor.py`（新建）✅
- 文件：`ai-service/app/api/admin/monitoring.py`（新建）✅
- API：
  - `GET /admin/monitoring/intent-rules` ✅
  - `GET /admin/monitoring/intent-rules/{ruleId}/hits` ✅
- 状态：**已完成**

#### 4.3 Prompt 模板预览 API (T16.18-T16.19)
- 文件：`ai-service/app/services/monitoring/prompt_monitor.py`（新建）✅
- API：`POST /admin/prompt-templates/{tplId}/preview` ✅
- 状态：**已完成**

#### 4.4 Prompt 模板监控 API (T16.20-T16.21)
- API：`GET /admin/monitoring/prompt-templates` ✅
- 状态：**已完成**

### Phase 2: 前端实现

#### 4.5 API 服务层 (P13-01)
- 文件：`ai-service-admin/src/api/monitoring.ts`（更新）✅
- 状态：**已完成**

#### 4.6 意图规则测试对话框 (P13-09)
- 文件：`ai-service-admin/src/views/admin/intent-rule/components/TestDialog.vue`（新建）✅
- 状态：**已完成**

#### 4.7 意图规则监控页面 (P13-10-P13-11)
- 文件：`ai-service-admin/src/views/admin/monitoring/IntentRules.vue`（新建）✅
- 路由：`/admin/monitoring/intent-rules` ✅
- 状态：**已完成**

#### 4.8 Prompt 模板预览对话框 (P13-12)
- 文件：`ai-service-admin/src/views/admin/prompt-template/components/PreviewDialog.vue`（新建）✅
- 状态：**已完成**

#### 4.9 Prompt 模板监控页面 (P13-13)
- 文件：`ai-service-admin/src/views/admin/monitoring/PromptTemplates.vue`（新建）✅
- 路由：`/admin/monitoring/prompt-templates` ✅
- 状态：**已完成**

## 5. 技术上下文

### 项目结构
- **前端**：`ai-service-admin/` - Vue 3 + Element Plus + TypeScript
- **后端**：`ai-service/` - Python FastAPI + SQLModel + PostgreSQL

### 核心约定
- 多租户隔离：所有 API 必须通过 `X-Tenant-Id` header 获取租户 ID
- 缓存策略：使用 Redis 缓存统计数据（TTL 60秒）
- Token 计数：使用 `tiktoken` 库，编码器为 `cl100k_base`

### 新增文件清单

**后端文件**：
1. `ai-service/app/services/intent/tester.py` - 意图规则测试服务
2. `ai-service/app/services/monitoring/__init__.py` - 监控模块初始化
3. `ai-service/app/services/monitoring/intent_monitor.py` - 意图规则监控服务
4. `ai-service/app/services/monitoring/prompt_monitor.py` - Prompt 模板监控服务
5. `ai-service/app/api/admin/monitoring.py` - 监控 API 路由

**前端文件**：
1. `ai-service-admin/src/views/admin/intent-rule/components/TestDialog.vue` - 意图规则测试对话框
2. `ai-service-admin/src/views/admin/monitoring/IntentRules.vue` - 意图规则监控页面
3. `ai-service-admin/src/views/admin/monitoring/PromptTemplates.vue` - Prompt 模板监控页面
4. `ai-service-admin/src/views/admin/prompt-template/components/PreviewDialog.vue` - Prompt 模板预览对话框

**修改文件**：
1. `ai-service/app/api/admin/__init__.py` - 添加 monitoring_router 导出
2. `ai-service/app/api/admin/intent_rules.py` - 添加测试 API 端点
3. `ai-service/app/api/admin/prompt_templates.py` - 添加预览 API 端点
4. `ai-service/app/main.py` - 注册监控路由
5. `ai-service-admin/src/api/monitoring.ts` - 添加所有监控 API 函数
6. `ai-service-admin/src/views/admin/intent-rule/index.vue` - 添加测试按钮
7. `ai-service-admin/src/views/admin/prompt-template/index.vue` - 添加预览按钮
8. `ai-service-admin/src/router/index.ts` - 添加监控页面路由

## 6. 会话历史

### 会话 1 (2026-02-27)
- 完成：阅读必读文件，创建进度文档
- 问题：无
- 解决方案：无

### 会话 2 (2026-02-27)
- 完成：实现所有后端 API 和前端页面
- 问题：无
- 解决方案：无

## 7. 下一步行动

**任务已完成**。建议进行以下验证：
1. 启动后端服务，验证 API 端点可访问
2. 启动前端服务，验证页面功能正常
3. 进行端到端测试

## 8. 待解决问题

暂无

## 9. 最终验收标准

### 后端验收标准
- [x] [AC-AISVC-96] 意图规则测试 API 返回匹配结果和冲突检测
- [x] [AC-AISVC-97] 意图规则监控统计 API 返回规则命中统计
- [x] [AC-AISVC-98] 规则命中记录 API 返回详细命中记录
- [x] [AC-AISVC-99] Prompt 模板预览 API 返回渲染结果和 Token 统计
- [x] [AC-AISVC-100] Prompt 模板监控统计 API 返回使用统计

### 前端验收标准
- [x] [AC-ASA-53] 意图规则测试对话框支持输入测试消息并展示结果
- [x] [AC-ASA-54] 意图规则监控页面展示规则命中统计表格
- [x] [AC-ASA-55] 点击规则行展示详细命中记录
- [x] [AC-ASA-56] Prompt 模板预览对话框展示渲染结果
- [x] [AC-ASA-57] 修改变量值实时更新渲染结果
- [x] [AC-ASA-58] Prompt 模板监控页面展示使用统计
