# 智能需求解析功能 - 使用指南

## 功能概述

智能需求解析功能允许您将任何需求文档（如会议要求、文稿规范等）自动转换为 AI 范式配置，用于检查和润色文稿。

## 快速开始

### 1. 访问功能

1. 启动项目：`npm run dev`
2. 在浏览器中打开：http://localhost:3001
3. 点击顶部的 "🎨 范式润色" 进入润色界面
4. 点击 "选择范式" 按钮
5. 在弹出的范式选择器中，点击左下角的 **"🎯 新建范式"** 按钮

### 2. 解析需求文档

#### 方式一：粘贴文本
1. 将 `docs/req.md` 的内容复制
2. 粘贴到文本框中
3. 点击 "开始解析"

#### 方式二：选择文件
1. 点击 "选择文件" 标签页
2. 点击上传区域
3. 选择 `docs/req.md` 文件
4. 点击 "开始解析"

### 3. 编辑确认

AI 解析完成后，您可以：
- **范式名称**：修改为更有意义的名称（如：2025年组织生活会对照检查材料）
- **描述**：完善描述信息
- **System Prompt**：编辑系统提示词（通常无需修改）
- **专家检查指令**：
  - 修改、删除现有指令
  - 点击 "+ 添加" 按钮增加新指令
- **核心要求关键词**：查看 AI 提取的关键要求

### 4. 保存并使用

1. 确认无误后，点击 **"✓ 保存并使用"** 按钮
2. 系统将：
   - 保存范式到本地存储（localStorage）
   - 自动选中该范式
   - 关闭解析面板

### 5. 检查和润色文稿

1. 在"原文区"中：
   - 点击 "文稿库" 选择 `docs/my.md`
   - 或直接粘贴文稿内容
2. 选择要检查的句子（可全选、反选）
3. 点击 "检查" 按钮
4. 查看检查结果：
   - 🟢 通过：符合要求
   - 🟡 警告：部分不符
   - 🔴 失败：明显不符
5. 选择需要重写的句子，点击 "重写"
6. 预览并应用重写结果

## 核心文件说明

| 文件 | 作用 |
|-----|------|
| `src/utils/requirementParser.js` | 需求解析 Prompt 和逻辑 |
| `src/stores/paradigm.js` | 自定义范式状态管理 |
| `src/components/RequirementParserPanel.vue` | 解析界面组件 |
| `src/components/ParadigmSelectorModal.vue` | 范式选择器（已增强） |
| `src/components/ArticleRewritePanel.vue` | 主润色界面（已集成） |

## 数据存储

- **位置**：浏览器 localStorage
- **键名**：`customParadigms`
- **格式**：JSON 数组

### 管理自定义范式

**查看已保存的范式**：
```javascript
// 在浏览器控制台执行
JSON.parse(localStorage.getItem('customParadigms'))
```

**导出范式**（备份）：
```javascript
// 在浏览器控制台执行
console.log(localStorage.getItem('customParadigms'))
// 复制输出内容保存到文件
```

**导入范式**（恢复）：
```javascript
// 在浏览器控制台执行
localStorage.setItem('customParadigms', `[...复制的JSON内容...]`)
location.reload()  // 刷新页面
```

**清空所有自定义范式**：
```javascript
localStorage.removeItem('customParadigms')
location.reload()
```

## 常见问题

### Q1: 解析失败怎么办？
**原因**：
- 需求文档过长（>10000字符）
- AI 返回格式不正确
- 网络问题

**解决**：
1. 精简需求文档，只保留核心要求
2. 检查 API 配置是否正确
3. 重试

### Q2: 生成的范式不理想怎么办？
**方案**：
1. 在编辑确认阶段手动修改
2. 重新解析，提供更清晰的需求文档
3. 参考现有范式（如 party-review）的写法

### Q3: 如何删除自定义范式？
**当前版本**：需要手动从 localStorage 中删除
```javascript
// 获取所有范式
let paradigms = JSON.parse(localStorage.getItem('customParadigms'))
// 删除第一个（索引0）
paradigms.splice(0, 1)
// 保存回去
localStorage.setItem('customParadigms', JSON.stringify(paradigms))
location.reload()
```

**未来版本**：将添加删除按钮

### Q4: 能否编辑已保存的范式？
**当前版本**：不支持直接编辑，需要：
1. 导出范式JSON
2. 手动编辑
3. 重新导入

**未来版本**：将添加编辑功能

## 使用技巧

### 1. 优化需求文档
为了获得更好的解析效果，需求文档应该：
- ✅ 结构清晰（使用标题、列表）
- ✅ 要求具体（明确的检查项）
- ✅ 术语规范（使用标准表述）
- ❌ 避免过于笼统的描述
- ❌ 避免冗长的背景介绍

### 2. 分段解析大型文档
如果需求文档很长，可以：
1. 先解析核心要求部分
2. 后续手动添加其他检查项

### 3. 参考现有范式
查看 `src/config/paradigms.js` 中的范式配置，了解：
- System Prompt 的写法
- Expert Guidelines 的粒度
- 如何组织检查项

### 4. 版本管理
建议：
- 定期导出自定义范式备份
- 为不同类型的文档创建专用范式
- 使用有意义的范式名称

## 下一步计划

### Phase 2（增强功能）
- [ ] 范式编辑功能
- [ ] 范式删除按钮
- [ ] 范式历史版本管理
- [ ] 范式导入/导出UI

### Phase 3（高级功能）
- [ ] 需求文档与文稿的对照视图
- [ ] AI 多轮优化范式
- [ ] 从范文逆向提取范式
- [ ] 范式共享和导入模板

## 技术细节

### AI 解析 Prompt 结构
```
角色定位：文档分析专家
输入：需求文档文本
输出：JSON格式的范式配置
  - specializedPrompt (系统提示词)
  - expertGuidelines (检查指令数组)
  - metadata (元数据)
```

### 范式对象结构
```javascript
{
  id: 'custom-1736508024123',
  name: '范式名称',
  description: '描述',
  type: 'custom',
  createdAt: '2025-01-10T12:00:00.000Z',
  sourceDoc: null,
  specializedPrompt: '...',
  expertGuidelines: [...],
  logicParadigms: null,
  dimensionSetId: null,
  defaultReference: null,
  metadata: {
    name: '...',
    description: '...',
    keyRequirements: [...],
    customGenerated: true
  }
}
```

## 反馈和支持

如遇问题，请：
1. 检查浏览器控制台的错误信息
2. 查看 `/var/folders/.../tasks/*.output` 的服务器日志
3. 提供需求文档示例和错误信息

---

**开发完成时间**：2025-01-10
**版本**：MVP 1.0
**工作量**：约 6 小时（包含设计和实现）
