参考了开源项目WeFlow
# 1. 克隆项目到本地
git clone https://github.com/hicccc77/WeFlow.git
cd WeFlow
# 2. 安装项目依赖
npm install
# 3. 运行应用(开发模式)
npm run dev
按照应用指示完成配置,导出需要的聊天记录,放到./data文件夹中
项目使用 DeepSeek API 进行任务识别和分类。需要配置 API 密钥,有两种方式:
方式1:环境变量(推荐)
# Windows PowerShell
$env:DEEPSEEK_API_KEY="your_api_key_here"
# Windows CMD
set DEEPSEEK_API_KEY=your_api_key_here
# Linux/Mac
export DEEPSEEK_API_KEY="your_api_key_here"方式2:使用配置文件
在 config.py 文件中设置 DEEPSEEK_API_KEY 变量:
DEEPSEEK_API_KEY = "your_api_key_here"方式3:代码中传入 在代码中创建客户端时直接传入:
from deepseek_client import DeepSeekClient
client = DeepSeekClient(api_key="your_api_key_here")优先级:参数传入 > 环境变量 > config.py > 报错提示
项目按执行顺序和功能组织,按以下步骤依次运行:
- 功能:合并连续消息和切分会话
- 作用:
- 合并同一人连续发送的消息(间隔不超过2小时)
- 基于静默期(默认60分钟)切分会话
- 使用方法:
python 01_preprocess_data.py
- 输出:在
data/目录下生成合并后的文件和会话文件
- 功能:使用DeepSeek API识别会话中的工作任务
- 作用:分析每个会话,识别是否包含明确的工作任务
- 使用方法:
python 02_identify_tasks.py
- 输出:生成
task_analysis_results.json文件,包含所有识别到的任务
- 功能:使用DeepSeek API对识别出的任务进行分类
- 作用:将任务分为5个类别:学术类、跑腿类、改文档类、支持类、杂活类
- 使用方法:
python 03_classify_tasks.py
- 输出:生成
task_classification.json文件,包含分类结果和统计信息
- 功能:生成HTML可视化展示文件
- 作用:创建交互式的任务分类展示页面,包含统计图表、搜索和筛选功能
- 使用方法:
python 04_generate_visualization.py
- 输出:生成
task_classification_viewer.html文件,可在浏览器中打开查看