207 lines
4.2 KiB
Markdown
207 lines
4.2 KiB
Markdown
# 智能生产报表AI分析功能
|
||
|
||
## 功能概述
|
||
|
||
智能报表功能利用AI分析生产数据,自动生成包含以下内容的生产报表:
|
||
- 生产总览和关键指标
|
||
- 平台产量分布
|
||
- 质量问题分析
|
||
- AI洞察和改进建议
|
||
- 产量预测
|
||
|
||
## 支持的AI提供商
|
||
|
||
1. **OpenAI** - GPT-3.5/GPT-4
|
||
2. **通义千问** - 阿里云
|
||
3. **文心一言** - 百度
|
||
4. **本地模型** - Ollama等
|
||
|
||
## 配置步骤
|
||
|
||
### 1. 后端配置
|
||
|
||
#### 1.1 安装依赖
|
||
```bash
|
||
cd backend
|
||
pip install aiohttp fastapi python-dotenv
|
||
```
|
||
|
||
#### 1.2 配置环境变量
|
||
```bash
|
||
# 复制配置文件
|
||
cp .env.example .env
|
||
|
||
# 编辑配置文件
|
||
nano .env
|
||
```
|
||
|
||
#### 1.3 配置示例
|
||
|
||
**使用OpenAI:**
|
||
```
|
||
AI_PROVIDER=openai
|
||
OPENAI_API_KEY=sk-xxxxxxxxxxxxxxxxxxxxxxxx
|
||
```
|
||
|
||
**使用通义千问:**
|
||
```
|
||
AI_PROVIDER=qwen
|
||
QWEN_API_KEY=sk-xxxxxxxxxxxxxxxxxxxxxxxx
|
||
```
|
||
|
||
**使用文心一言:**
|
||
```
|
||
AI_PROVIDER=wenxin
|
||
WENXIN_API_KEY=xxxxxxxxxxxxxxxxxxxxxxxx
|
||
WENXIN_SECRET_KEY=xxxxxxxxxxxxxxxxxxxxxxxx
|
||
```
|
||
|
||
**使用本地模型(Ollama):**
|
||
```
|
||
AI_PROVIDER=local
|
||
LOCAL_AI_URL=http://localhost:11434/api/generate
|
||
LOCAL_MODEL=llama2
|
||
```
|
||
|
||
### 2. 启动本地模型(可选)
|
||
|
||
如果使用本地模型,需要先启动Ollama:
|
||
|
||
```bash
|
||
# 安装Ollama
|
||
curl -fsSL https://ollama.ai/install.sh | sh
|
||
|
||
# 启动Ollama服务
|
||
ollama serve
|
||
|
||
# 下载模型
|
||
ollama pull llama2
|
||
# 或下载中文模型
|
||
ollama pull qwen:7b
|
||
```
|
||
|
||
### 3. 集成到后端
|
||
|
||
在主应用中注册AI API路由:
|
||
|
||
```python
|
||
# main.py 或 app.py
|
||
from api_ai import router as ai_router
|
||
|
||
app.include_router(ai_router)
|
||
```
|
||
|
||
### 4. 前端使用
|
||
|
||
前端已经集成AI报表组件,位于仪表盘页面。用户可以:
|
||
- 点击"生成智能报表"按钮
|
||
- 查看AI分析结果
|
||
- 导出报表为文本文件
|
||
- 刷新获取最新分析
|
||
|
||
## API接口
|
||
|
||
### 1. 分析生产数据
|
||
```
|
||
POST /api/ai/analyze
|
||
```
|
||
|
||
响应示例:
|
||
```json
|
||
{
|
||
"summary": {
|
||
"totalProduction": 15423,
|
||
"goodRate": "98.5%",
|
||
"trend": "up",
|
||
"insights": [
|
||
"本周产量较上周增长12%,主要得益于圆通订单的增加",
|
||
"良品率保持在98%以上,质量管控效果显著",
|
||
"建议:继续保持当前生产节奏,关注设备维护"
|
||
]
|
||
},
|
||
"platforms": {
|
||
"pdd": {
|
||
"count": 8934,
|
||
"percentage": 57.9,
|
||
"trend": "+5.2%"
|
||
},
|
||
"yt": {
|
||
"count": 6489,
|
||
"percentage": 42.1,
|
||
"trend": "+18.7%"
|
||
}
|
||
},
|
||
"quality": {
|
||
"topIssues": [
|
||
{"issue": "外观划痕", "count": 23, "percentage": "0.15%"},
|
||
{"issue": "功能异常", "count": 12, "percentage": "0.08%"},
|
||
{"issue": "包装破损", "count": 8, "percentage": "0.05%"}
|
||
]
|
||
},
|
||
"prediction": {
|
||
"tomorrow": 2250,
|
||
"weekRange": "15500-16500",
|
||
"confidence": "92%"
|
||
},
|
||
"metadata": {
|
||
"generated_at": "2024-01-20T10:30:00",
|
||
"data_period": "最近30天",
|
||
"total_records": 15423,
|
||
"ai_provider": "openai"
|
||
}
|
||
}
|
||
```
|
||
|
||
### 2. 获取AI配置信息
|
||
```
|
||
GET /api/ai/config
|
||
```
|
||
|
||
### 3. 测试AI连接
|
||
```
|
||
POST /api/ai/test
|
||
```
|
||
|
||
### 4. 获取支持的提供商
|
||
```
|
||
GET /api/ai/providers
|
||
```
|
||
|
||
## 注意事项
|
||
|
||
1. **API密钥安全**:请妥善保管API密钥,不要提交到版本控制
|
||
2. **成本控制**:使用云端AI服务会产生费用,建议设置使用限额
|
||
3. **响应时间**:AI分析可能需要几秒钟,请耐心等待
|
||
4. **数据隐私**:生产数据会发送给AI服务,请确保符合隐私政策
|
||
|
||
## 故障排除
|
||
|
||
### 1. AI分析失败
|
||
- 检查API密钥是否正确
|
||
- 确认网络连接正常
|
||
- 查看后端日志获取详细错误信息
|
||
|
||
### 2. 本地模型连接失败
|
||
- 确认Ollama服务正在运行
|
||
- 检查模型是否已下载
|
||
- 验证URL配置是否正确
|
||
|
||
### 3. 分析结果不准确
|
||
- 调整提示词(修改ai_service.py中的prompt)
|
||
- 尝试不同的AI模型
|
||
- 增加数据量或改进数据质量
|
||
|
||
## 扩展功能
|
||
|
||
1. **自定义分析维度**:可以修改提示词,添加更多分析维度
|
||
2. **定时生成报表**:可以设置定时任务,自动生成日报/周报
|
||
3. **报表模板**:支持多种报表格式(PDF、Excel等)
|
||
4. **历史记录**:保存历史分析结果,支持对比查看
|
||
|
||
## 技术支持
|
||
|
||
如有问题,请查看:
|
||
1. 后端日志:`/logs/ai_service.log`
|
||
2. 浏览器控制台错误信息
|
||
3. API响应状态和错误消息
|