x
This commit is contained in:
@@ -0,0 +1,386 @@
|
||||
---
|
||||
name: "mold-undercut-advisor"
|
||||
description: "用于 geMoldInsight 项目的倒扣与抽芯分析。处理倒扣、滑块、斜顶、脱模风险、AI 标准化建议或相关页面改造时调用。"
|
||||
---
|
||||
|
||||
# 倒扣与抽芯专项分析 Skill
|
||||
|
||||
## 目标
|
||||
|
||||
这个 Skill 用于统一 geMoldInsight 项目中“大模型如何分析倒扣与抽芯”。
|
||||
|
||||
它不是用来替代现有规则算法,而是让模型在以下场景里保持稳定、一致、工程化的行为:
|
||||
|
||||
- 判断当前 STP 是否需要倒扣/抽芯机构
|
||||
- 解释为什么推荐滑块、斜顶或混合机构
|
||||
- 将规则分析结果翻译为用户能看懂的标准化建议
|
||||
- 优化结果页中的“AI 倒扣与抽芯分析”模块
|
||||
- 调整后端 LLM prompt、输出结构、前端展示方式
|
||||
|
||||
## 何时调用
|
||||
|
||||
当出现以下任一情况时,应优先调用本 Skill:
|
||||
|
||||
- 用户要求分析 `倒扣`、`抽芯`、`滑块`、`斜顶`、`侧向机构`
|
||||
- 用户要求判断当前 `STP` 是否需要倒扣/抽芯
|
||||
- 用户要求优化 MoldInsight 结果页中的倒扣/抽芯展示
|
||||
- 用户要求优化 AI 在倒扣/抽芯问题上的判断质量
|
||||
- 用户要求排查 AI 为什么输出 `需要 / 不需要 / 需人工确认`
|
||||
- 用户要求修改 `side_action_designer`、`llm_service`、`结果页 AI 结论卡`
|
||||
|
||||
## 项目定位
|
||||
|
||||
在这个项目中,倒扣与抽芯分析遵循如下分层:
|
||||
|
||||
- 规则层:负责检测和结构化产出
|
||||
- AI 层:负责解释、归纳、标准化表达
|
||||
- 前端层:负责展示结论,不负责重新推理
|
||||
|
||||
换句话说:
|
||||
|
||||
- `side_action_designer` 是主判断基础
|
||||
- `side_actions` 是第一优先级数据源
|
||||
- LLM 负责把结构化结果变成可读、可评审、可落地的结论
|
||||
|
||||
## 必须遵守的原则
|
||||
|
||||
### 1. 规则优先,AI 不推翻规则
|
||||
|
||||
如果规则层已经明确识别出:
|
||||
|
||||
- 外侧倒扣
|
||||
- 内侧倒扣
|
||||
- 滑块数量
|
||||
- 斜顶数量
|
||||
- 是否需要液压
|
||||
|
||||
则模型只能做“解释和标准化输出”,不能凭主观直觉反推一个完全相反的结论。
|
||||
|
||||
### 2. 不得编造工程参数
|
||||
|
||||
如果输入数据里没有明确提供,不允许模型自行编造:
|
||||
|
||||
- 机构坐标
|
||||
- 抽芯行程
|
||||
- 抽芯角度
|
||||
- 液压参数
|
||||
- 模具零件尺寸
|
||||
- 干涉位置
|
||||
|
||||
如无依据,只能输出:
|
||||
|
||||
- `数据不足`
|
||||
- `需人工确认`
|
||||
- `建议复核`
|
||||
|
||||
### 3. 输出必须标准化
|
||||
|
||||
任何用于接口、存储、前端消费的结论,都应优先输出结构化 JSON,不要直接输出长段自然语言。
|
||||
|
||||
### 4. 前端不展示逐个滑块/斜顶明细
|
||||
|
||||
本项目当前结果页策略是:
|
||||
|
||||
- 不展示每个滑块/斜顶的逐项工程明细
|
||||
- 不展示复杂坐标、行程、角度列表
|
||||
- 只展示 AI 标准化结论卡、判断依据、标准建议、人工复核项
|
||||
|
||||
因此,涉及前端页面改造时,必须遵守这个方向。
|
||||
|
||||
## 输入优先级
|
||||
|
||||
分析倒扣与抽芯时,必须按如下顺序读取数据:
|
||||
|
||||
1. 最优方案中的 `side_actions`
|
||||
2. `cavity_data.side_actions`
|
||||
3. `undercut_regions`
|
||||
4. `dfm_violations`
|
||||
5. `analysis_result.detected_features`
|
||||
6. `design_recommendations`
|
||||
|
||||
如果存在多方案:
|
||||
|
||||
- 优先读取 `best_scheme_id`
|
||||
- 找到对应 `candidate_scheme`
|
||||
- 再基于该方案做结论
|
||||
|
||||
## 推荐分析流程
|
||||
|
||||
### 第一步:确认最优方案
|
||||
|
||||
- 读取 `candidate_schemes`
|
||||
- 找到 `best_scheme_id`
|
||||
- 获取该方案的 `cavity_data`、`side_actions`、`dfm_violations`
|
||||
|
||||
### 第二步:确认是否已有规则结论
|
||||
|
||||
重点看:
|
||||
|
||||
- `side_actions.summary`
|
||||
- `slider_mechanisms`
|
||||
- `lifter_mechanisms`
|
||||
- `recommendations`
|
||||
|
||||
如果这些数据完整,应以其为主。
|
||||
|
||||
### 第三步:判断需要哪类机构
|
||||
|
||||
遵循以下规则:
|
||||
|
||||
- 只存在外侧倒扣:优先 `slider`
|
||||
- 只存在内侧倒扣:优先 `lifter`
|
||||
- 同时存在内外侧倒扣:`mixed`
|
||||
- 明确无倒扣:`none`
|
||||
- 数据冲突或不足:`manual_review`
|
||||
|
||||
### 第四步:交叉验证风险
|
||||
|
||||
结合:
|
||||
|
||||
- `dfm_violations`
|
||||
- `design_recommendations`
|
||||
- 几何特征中的倒扣、拔模、壁厚异常
|
||||
|
||||
检查当前结论是否需要补充风险说明,但不能因为补充说明而推翻规则层基础结论。
|
||||
|
||||
### 第五步:生成标准化输出
|
||||
|
||||
必须输出规范 JSON,供后端存储或前端渲染。
|
||||
|
||||
## 标准输出格式
|
||||
|
||||
```json
|
||||
{
|
||||
"status": "required|not_required|manual_review",
|
||||
"confidence": 0.0,
|
||||
"conclusion": "一句中文结论",
|
||||
"mechanism_recommendation": "slider|lifter|mixed|none|manual_review",
|
||||
"summary": "40-80字中文摘要",
|
||||
"reasons": ["原因1", "原因2"],
|
||||
"standard_advice": ["建议1", "建议2"],
|
||||
"manual_review_items": ["复核项1", "复核项2"]
|
||||
}
|
||||
```
|
||||
|
||||
## 字段含义
|
||||
|
||||
- `status`
|
||||
- `required`:明确需要倒扣/抽芯机构
|
||||
- `not_required`:明确不需要
|
||||
- `manual_review`:数据不足、规则冲突或需要人工确认
|
||||
|
||||
- `mechanism_recommendation`
|
||||
- `slider`
|
||||
- `lifter`
|
||||
- `mixed`
|
||||
- `none`
|
||||
- `manual_review`
|
||||
|
||||
- `confidence`
|
||||
- 0 到 1 之间
|
||||
- 如果是规则回退而不是模型正式结论,应保守设置
|
||||
|
||||
## 输出风格要求
|
||||
|
||||
### 结论
|
||||
|
||||
要简短、直接、工程化,例如:
|
||||
|
||||
- `当前产品存在明确侧向脱模需求,建议采用滑块机构。`
|
||||
- `当前方案未发现必须配置倒扣/抽芯机构的证据。`
|
||||
- `现有数据不足以稳定判断是否需要侧向机构,建议人工复核。`
|
||||
|
||||
### 判断依据
|
||||
|
||||
必须是“模型为何这么判断”的摘要,不要只是重复结论。例如:
|
||||
|
||||
- `规则分析识别出 2 处外侧倒扣区域`
|
||||
- `主开模方向无法直接释放局部倒扣特征`
|
||||
- `当前方案同时存在外侧与内侧倒扣信号`
|
||||
|
||||
### 标准建议
|
||||
|
||||
必须面向工程动作,例如:
|
||||
|
||||
- `优先复核该倒扣是否可通过改产品结构取消`
|
||||
- `如保留当前结构,建议优先评估机械滑块方案`
|
||||
- `在进入制造准备前,需先做侧向机构干涉评审`
|
||||
|
||||
### 人工复核项
|
||||
|
||||
应聚焦工程师还需要确认的内容,例如:
|
||||
|
||||
- `确认侧向机构是否与顶出系统干涉`
|
||||
- `确认抽芯空间是否满足模架布置`
|
||||
- `确认倒扣深度是否已超出常规机构适用范围`
|
||||
|
||||
## 明确禁止的行为
|
||||
|
||||
以下行为禁止出现:
|
||||
|
||||
- 在没有数据时输出具体机构角度或行程
|
||||
- 直接生成详细滑块编号明细用于前端展示
|
||||
- 把规则层已判定“无倒扣”硬改成“必须抽芯”
|
||||
- 把自由文本长报告直接当成前端结构化数据
|
||||
- 绕开现有 DTO 或私自增加对外协议字段
|
||||
|
||||
## 与当前项目模块的对应关系
|
||||
|
||||
分析倒扣/抽芯相关问题时,优先关注这些模块:
|
||||
|
||||
- `src/core/side_action_designer.py`
|
||||
- `src/services/llm_service.py`
|
||||
- `src/services/processing_service.py`
|
||||
- `src/api/routes.py`
|
||||
- `static/vue-app.js`
|
||||
|
||||
其中:
|
||||
|
||||
- `side_action_designer.py`:规则识别与结构化产出
|
||||
- `llm_service.py`:AI prompt、结构化输出生成
|
||||
- `processing_service.py`:处理链路接入
|
||||
- `vue-app.js`:结果页展示
|
||||
|
||||
## Few-shot 示例
|
||||
|
||||
### 示例 1:明确需要滑块
|
||||
|
||||
输入特征:
|
||||
|
||||
- `slider_mechanisms = 2`
|
||||
- `lifter_mechanisms = 0`
|
||||
- `total_undercut_faces > 0`
|
||||
|
||||
推荐输出:
|
||||
|
||||
```json
|
||||
{
|
||||
"status": "required",
|
||||
"confidence": 0.88,
|
||||
"conclusion": "当前产品存在明确外侧倒扣,建议配置滑块机构。",
|
||||
"mechanism_recommendation": "slider",
|
||||
"summary": "规则分析识别出外侧倒扣特征,主开模方向无法直接脱模,当前更适合采用滑块方案处理。",
|
||||
"reasons": [
|
||||
"规则分析识别出外侧倒扣区域",
|
||||
"当前方案存在滑块机构需求",
|
||||
"未发现需要优先改用斜顶的内侧倒扣证据"
|
||||
],
|
||||
"standard_advice": [
|
||||
"优先评估机械滑块方案",
|
||||
"进入制造前需复核滑块与分型面的干涉关系"
|
||||
],
|
||||
"manual_review_items": [
|
||||
"确认倒扣是否可通过改产品结构取消",
|
||||
"确认滑块布置空间是否满足模架限制"
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
### 示例 2:明确需要斜顶
|
||||
|
||||
输入特征:
|
||||
|
||||
- `slider_mechanisms = 0`
|
||||
- `lifter_mechanisms = 1`
|
||||
|
||||
推荐输出:
|
||||
|
||||
```json
|
||||
{
|
||||
"status": "required",
|
||||
"confidence": 0.84,
|
||||
"conclusion": "当前产品存在内侧倒扣,建议优先采用斜顶机构。",
|
||||
"mechanism_recommendation": "lifter",
|
||||
"summary": "规则分析显示主要为内侧倒扣风险,当前更适合按斜顶路线进行结构评审。",
|
||||
"reasons": [
|
||||
"规则分析识别出内侧倒扣特征",
|
||||
"当前方案存在斜顶机构需求"
|
||||
],
|
||||
"standard_advice": [
|
||||
"优先评估斜顶方案可行性",
|
||||
"复核斜顶与顶出系统的空间关系"
|
||||
],
|
||||
"manual_review_items": [
|
||||
"确认斜顶行程空间是否充足"
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
### 示例 3:无需倒扣/抽芯
|
||||
|
||||
输入特征:
|
||||
|
||||
- `total_undercut_faces = 0`
|
||||
- `slider_mechanisms = 0`
|
||||
- `lifter_mechanisms = 0`
|
||||
|
||||
推荐输出:
|
||||
|
||||
```json
|
||||
{
|
||||
"status": "not_required",
|
||||
"confidence": 0.9,
|
||||
"conclusion": "当前方案未发现必须配置倒扣或抽芯机构的证据。",
|
||||
"mechanism_recommendation": "none",
|
||||
"summary": "规则分析未识别出明确倒扣区域,当前可优先按常规模具结构推进。",
|
||||
"reasons": [
|
||||
"规则分析未识别出倒扣区域",
|
||||
"未检测到滑块或斜顶机构需求"
|
||||
],
|
||||
"standard_advice": [
|
||||
"继续按常规模具结构做 DFM 评审",
|
||||
"优先关注壁厚、拔模和分型面合理性"
|
||||
],
|
||||
"manual_review_items": []
|
||||
}
|
||||
```
|
||||
|
||||
### 示例 4:需要人工确认
|
||||
|
||||
输入特征:
|
||||
|
||||
- `side_actions` 不完整
|
||||
- `undercut_regions` 与特征检测结果存在冲突
|
||||
|
||||
推荐输出:
|
||||
|
||||
```json
|
||||
{
|
||||
"status": "manual_review",
|
||||
"confidence": 0.45,
|
||||
"conclusion": "现有数据不足以稳定判断是否需要倒扣或抽芯机构,建议人工复核。",
|
||||
"mechanism_recommendation": "manual_review",
|
||||
"summary": "当前规则结果和特征信号不足以支撑明确结论,应由工程师结合几何和分型方案进一步确认。",
|
||||
"reasons": [
|
||||
"关键倒扣信号不足",
|
||||
"现有结构化结果不足以支持稳定判断"
|
||||
],
|
||||
"standard_advice": [
|
||||
"先复核最优方案下的分型方向",
|
||||
"再检查是否存在需要侧向释放的局部结构"
|
||||
],
|
||||
"manual_review_items": [
|
||||
"确认几何特征是否存在误识别",
|
||||
"确认规则输出是否完整"
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
## 实际使用建议
|
||||
|
||||
当你在这个项目中处理倒扣/抽芯相关任务时,建议严格按以下话术思路输出:
|
||||
|
||||
1. 先说明是否需要倒扣/抽芯
|
||||
2. 再说明推荐机构类型
|
||||
3. 再给出 2 到 4 条判断依据
|
||||
4. 最后给出标准建议和人工复核项
|
||||
|
||||
不要一开始就进入大量工程参数细节。
|
||||
|
||||
## 总结
|
||||
|
||||
本 Skill 的最终目标是:
|
||||
|
||||
- 让大模型在本项目里对倒扣与抽芯的判断更稳定
|
||||
- 让输出更适合工程评审和前端展示
|
||||
- 让 AI 与现有规则层协同,而不是相互冲突
|
||||
Reference in New Issue
Block a user