48 lines
1.2 KiB
Markdown
48 lines
1.2 KiB
Markdown
# experiment.py
|
|
|
|
## 文件说明
|
|
该文件包含了实验分析相关的功能实现,主要处理实验数据的分析和问答功能。
|
|
|
|
## 主要组件
|
|
|
|
### 线程池配置
|
|
- `exp_analysis_executor`: 实验分析线程池,用于并发处理实验分析任务
|
|
|
|
### 核心函数
|
|
|
|
#### analyze_experiment_data
|
|
异步函数,负责分析实验数据。
|
|
- 输入:实验信息
|
|
- 输出:JSON格式的分析报告
|
|
- 功能:使用DeepSeek API生成实验分析报告
|
|
|
|
#### run_experiment_in_thread
|
|
在独立线程中运行分析任务的函数。
|
|
- 创建新的事件循环
|
|
- 执行异步分析任务
|
|
- 处理异常情况
|
|
|
|
#### process_experiment_analysis
|
|
后台处理实验分析的主要函数。
|
|
- 更新任务状态
|
|
- 收集实验数据
|
|
- 生成分析报告
|
|
- 保存分析结果
|
|
|
|
#### process_experiment_question
|
|
处理实验相关问答的后台任务。
|
|
- 更新任务状态
|
|
- 获取分析报告
|
|
- 生成回答
|
|
- 保存对话历史
|
|
|
|
## 主要流程
|
|
1. 任务初始化和状态更新
|
|
2. 数据收集和预处理
|
|
3. 调用AI模型进行分析
|
|
4. 结果保存和状态更新
|
|
5. 异常处理和资源清理
|
|
|
|
## 数据存储
|
|
- MongoDB: 存储实验基础信息
|
|
- Redis: 存储分析报告和任务状态 |