feat: Adjust LLM temperature and update prompts to refine agent behavior.。。。。初版定稿校验

This commit is contained in:
2026-01-07 13:42:52 +08:00
parent fae233b10d
commit 3a2f90aef5
3 changed files with 11 additions and 15 deletions

View File

@@ -21,7 +21,7 @@ class LLMConfig:
api_key: str = os.environ.get("OPENAI_API_KEY", "sk-c44i1hy64xgzwox6x08o4zug93frq6rgn84oqugf2pje1tg4")
base_url: str = os.environ.get("OPENAI_BASE_URL", "https://api.xiaomimimo.com/v1")
model: str = os.environ.get("OPENAI_MODEL", "mimo-v2-flash")
temperature: float = 0.3
temperature: float = 0.5
max_tokens: int = 131072
def to_dict(self) -> Dict[str, Any]:

View File

@@ -43,7 +43,7 @@ def main():
analysis_requirement = """
基于所有运维工单,整理一份工单健康度报告,包括但不限于对所有车联网技术支持工单的全面数据分析,
深入挖掘工单处理过程中的关键问题、效率瓶颈及改进机会。涵盖工单状态、问题类型、模块分布、严重程度、责任人负载、车型分布、来源渠道及处理时长等多个维度。
通过多轮交叉分析与趋势洞察,为提升车联网服务质量、优化资源配置及降低运营风险提供数据驱动的决策依据,问题总揽,高频问题、重点问题分析,输出若干个重要的统计指标,并绘制相关图表总结一份,车联网运维工单健康度报告,最后生成汇报给我。
通过多轮交叉分析与趋势洞察,为提升车联网服务质量、优化资源配置及降低运营风险提供数据驱动的决策依据,问题总揽,高频问题、重点问题分析,输出若干个重要的统计指标,并绘制相关图表;结合图表,总结一份,车联网运维工单健康度报告,汇报给我。
"""
# 在主函数中先创建会话目录,以便存放日志

View File

@@ -28,7 +28,7 @@ data_analysis_system_prompt = """你是一个专业的数据分析助手,运
2. 图片必须保存到指定的会话目录中输出绝对路径禁止使用plt.show(),饼图的标签全部放在图例里面,用颜色区分。
3. 表格输出控制超过15行只显示前5行和后5行
4. 所有生成的图片必须保存保存路径格式os.path.join(session_output_dir, '图片名称.png')
5. 中文字体设置:使用系统可用中文字体macOS推荐Hiragino Sans GB, Songti SC等
5. 中文字体设置:生成的绘图代码,涉及中文字体,必须保证生成图片不可以乱码macOS推荐Hiragino Sans GB, Songti SC等
6. 输出格式严格使用YAML
📁 输出目录管理:
@@ -36,7 +36,7 @@ data_analysis_system_prompt = """你是一个专业的数据分析助手,运
- 会话目录格式session_[32位16进制UUID],如 session_a1b2c3d4e5f6789012345678901234ab
- 图片保存路径格式os.path.join(session_output_dir, '图片名称.png')
- 使用有意义的中文文件名:如'营业收入趋势.png', '利润分析对比.png'
- 每个图表保存后必须使用plt.close()释放内存
- 所有生成的图片必须执行处理图片收集动作并保存保存路径格式os.path.join(session_output_dir, '图片名称.png')
- 输出绝对路径使用os.path.abspath()获取图片的完整路径
📊 数据分析工作流程(必须严格按顺序执行):
@@ -65,11 +65,10 @@ data_analysis_system_prompt = """你是一个专业的数据分析助手,运
- 生成有意义的图表
- 图片保存到会话专用目录中
- 每生成一个图表后,必须打印绝对路径
- 不要试图一次性生成所有图表**。你应该将任务拆分为多个小的代码块,分批次执行。
- 不要试图一次性生成所有图表。你应该将任务拆分为多个小的代码块,分批次执行。
- 每一轮只专注于生成 1-2 个复杂的图表或 2-3 个简单的图表,确保代码正确且图片保存成功。
- 只有在前一轮代码成功执行并保存图片后,再进行下一轮。
- 必做图表清单Mandatory Charts
1. **超长工单问题类型分布**(从处理时长分布中筛选)
- 必做分析1. **超长工单问题类型分布**(从处理时长分布中筛选
2. **车型-问题热力图**(发现特定车型的高频故障)
3. **车型分布**(整体工单在不同车型的占比)
4. **处理时长分布**(直方图/KDE
@@ -86,10 +85,7 @@ data_analysis_system_prompt = """你是一个专业的数据分析助手,运
15. **月度关闭率趋势**
16. **责任人分布**
17. **责任人工作量与效率对比**(散点图或双轴图)
- 图片保存要求
- 必须使用 `plt.savefig(path, bbox_inches='tight')`。
- 保存后必须显示打印绝对路径。
- 严禁使用 `plt.show()`。
- 图片保存必须使用 `plt.savefig(path, bbox_inches='tight')`。保存后必须显示打印绝对路径。严禁使用 `plt.show()`。
**阶段4深度挖掘与高级分析使用 generate_code 动作)**
- 主动评估数据特征**:在执行前,先分析数据适合哪种高级挖掘:
@@ -127,7 +123,7 @@ data_analysis_system_prompt = """你是一个专业的数据分析助手,运
6. 严禁使用 `open()` 写入文件(除保存图片/JSON外所有中间数据应优先保存在DataFrame变量中。
7. 图片保存使用会话目录变量session_output_dir
8. 图表标题和标签使用中文,使用系统配置的中文字体显示
9. 必须打印绝对路径:每次保存图片使用os.path.abspath()打印完整的绝对路径
9. 必须打印绝对路径:每次图片生成后,必须执行!!!处理图片收集动作保存图片使用os.path.abspath()打印完整的绝对路径
10. 图片文件名:使用中文描述业务含义(如“核心问题词云.png”**严禁**在文件名或标题中出现 "2-gram", "dataframe", "plot" 等技术术语。
11. 图表类型强制规则:如果类别数量 > 5严禁使用饼图必须使用水平条形图并按数值降序排列。
12. 饼图仅限极少类别:只有当类别数量 ≤ 5 时才允许使用饼图。必须设置 `plt.legend(bbox_to_anchor=(1, 1))` 将图例放在图外,防止标签重叠。
@@ -274,7 +270,7 @@ final_report_system_prompt = """你是一位**资深数据分析专家 (Senior D
```markdown
# [项目/产品名称] 深度业务洞察与策略分析报告
## 1. 摘要 (Executive Summary)
## 1. 摘要
- **整体健康度评分**[0-100分] - [简短解释评分依据较上月±X分]
- **核心结论**[用一句话概括本次分析最关键的发现与商业影响]
@@ -283,7 +279,7 @@ final_report_system_prompt = """你是一位**资深数据分析专家 (Senior D
- **风险**Top 1-2个需立即关注的高风险问题
- **关键建议预览**下一阶段应优先执行的1项核心行动
## 2. 分析背景(Methodology)
## 2. 分析背景
- **分析背景与目标**[阐明本次分析要解决的核心业务问题或验证的假设]
- **数据范围与来源**
- **时间窗口**[起止日期],选择依据(如:覆盖完整产品周期/关键活动期)
@@ -329,7 +325,7 @@ final_report_system_prompt = """你是一位**资深数据分析专家 (Senior D
> 然而正是这批高价值用户遭遇功能A失败的概率比新用户高40%**体验瓶颈出现在用户最依赖的环节**。
- **问题回溯与当前影响**[同上结构]
## 4. 风险评估 (Risk Assessment)
## 4. 风险评估
> 采用**概率-影响矩阵**进行评估,为优先级排序提供依据。
| 风险项 | 描述 | 发生可能性 (高/中/低) | 潜在业务影响 (高/中/低) | 风险等级 | 预警信号 |