# COT思维链效果对比演示

一个直观展示**思维链(Chain of Thought)**对大模型推理能力提升作用的Python应用程序。

## 项目简介

本项目通过**并排对比**三种提示词策略的输出结果，帮助理解思维链技术的重要性：

| 策略 | 说明 | 适用场景 |
|------|------|----------|
| **无思维链** | 直接回答问题，不展示思考过程 | 简单问题、快速响应 |
| **零样本思维链** | 要求模型先思考再回答，无示例 | 中等复杂度推理 |
| **少样本思维链** | 提供示例，引导模型按格式思考 | 复杂推理、需要格式控制 |

## 项目结构

```
cot-demo/
├── .env                # 环境变量（API Key）
├── config.py           # 配置文件
├── model_client.py     # Dashscope模型调用封装
├── prompt_templates.py # 三种提示词模板定义
├── test_cases.py       # 测试用例集合
├── main.py             # 主程序入口
├── results/            # 结果保存目录
└── README.md           # 项目说明
```

## 环境要求

- Python 3.8+
- 阿里云Dashscope API Key

## 安装依赖

```bash
pip install dashscope python-dotenv tabulate
```

## 配置API Key

1. 前往 [阿里云百炼平台](https://dashscope.aliyun.com/) 申请API Key
2. 在项目根目录的 `.env` 文件中填入：

```env
DASHSCOPE_API_KEY=your_api_key_here
```

## 使用方法

### 运行全部测试用例

```bash
python main.py
```

### 运行单个测试用例

```bash
python main.py --case 1
```

### 使用模拟模式（不消耗API额度）

```bash
python main.py --mock
```

## 测试用例说明

| ID | 类别 | 难度 | 问题描述 |
|----|------|------|----------|
| 1 | 数学推理 | 中等 | 衣服销售计算 |
| 2 | 数学推理 | 中等 | 价格百分比计算 |
| 3 | 逻辑推理 | 困难 | 三段论有效性判断 |
| 4 | 逻辑推理 | 困难 | 真假话推理 |
| 5 | 常识应用 | 中等 | 荷花开放问题 |

## 预期效果

### 典型准确率对比

| 任务类型 | 无思维链 | 零样本COT | 少样本COT |
|---------|---------|----------|----------|
| 数学计算 | 60-70% | 85-90% | 90-95% |
| 逻辑推理 | 50-60% | 75-85% | 85-90% |
| 常识应用 | 40-50% | 70-80% | 80-85% |

### 思维链的核心优势

1. **可解释性**：模型展示思考过程，便于排查错误
2. **准确性**：分步推理减少跳跃性错误
3. **可控性**：通过示例可以引导模型按照特定格式思考
4. **调试方便**：可以定位到推理过程中的具体错误步骤

## 扩展建议

1. **添加更多测试用例**：包括代码生成、数学证明、多步推理等
2. **对比不同模型**：qwen-turbo、qwen-max、deepseek-v3等
3. **添加自一致性(Self-Consistency)**：多次采样取多数结果
4. **实现Auto-CoT**：自动生成思维链示例
5. **添加Web界面**：使用Streamlit或Gradio制作交互式演示

## 技术栈

- **开发工具**：Trae AI原生IDE
- **大模型服务**：阿里云Dashscope SDK（通义千问系列）
- **依赖库**：dashscope、python-dotenv、tabulate

## 许可证

MIT License
