晶圆厂工程师画像与智能调度系统基于LLMRAG的创新实践行业首创—— 基于大语言模型的半导体晶圆厂工程师画像构建与智能借机调度系统一、背景与痛点1.1 什么是机台借机在半导体晶圆厂中“机台借机”Tool Borrowing是指工艺工程师PE或设备工程师EE为了进行工艺调试、参数优化、新工艺验证或故障排查临时借用正常生产用的机台如光刻机、刻蚀机、薄膜沉积设备等的活动。这种行为在晶圆厂中极为普遍是技术研发和工艺改进不可或缺的一环。例如当一批晶圆的良率突然下降工程师需要借用机台进行参数分离实验找出根本原因当引入一种新材料或新配方工程师需要在量产机台上验证其稳定性当设备出现异常告警FDC超限工程师需要借机进行诊断和恢复。1.2 借机带来的核心矛盾然而借机活动与正常生产之间存在天然的冲突产能损失每一分钟的借机时间都意味着少生产若干片晶圆直接影响产出和交期。不确定性极高工程师的借机行为受个人经验、当前任务压力、协作习惯、甚至心情等人为因素影响难以用传统数学模型预测。缺乏全局视角生产调度员往往只能被动响应工程师的申请无法提前预判和优化安排导致机台利用率低下或生产计划频繁被打乱。1.3 传统方法的局限目前业界应对借机问题的主要手段包括手工经验调度依靠调度员的记忆和直觉缺乏数据支撑容易出错且不可复制。固定时段预约规定每天下午某时段为工程时间但无法应对突发问题且灵活性差。时间序列预测试图用ARIMA等模型预测借机次数但由于行为受人为因素主导预测精度极低。这些方法都没有触及问题的本质——人是借机行为的核心驱动力。如果我们不能理解工程师的工作习惯、技能特长、当前压力就无法真正预测和优化其行为。二、核心思想从用户画像到智能调度面对上述困境我们提出了一个跨界创新的解决方案借鉴互联网行业成熟的用户画像推荐系统方法论将其迁移到工业工程领域。2.1 思想一构建工程师画像将每一位工程师视为互联网产品中的用户通过采集其历史借机记录、任务处理效率、技能矩阵、当前负载等多维数据构建一个动态、量化的数字画像。画像不是简单的属性堆砌而是对工程师工作能力的全面建模。画像的核心维度包括维度说明数据来源基础属性部门、职级、经验年限HR系统技能矩阵对各工艺类型光刻、刻蚀、薄膜等的熟练度评分1-5历史任务表现、认证考试行为特征历史借机频次、平均时长、成功率、常用机台偏好借机管理系统实时状态当前负载指数基于未完成任务数、任务紧急度MES、任务跟踪系统协作网络经常合作的同事、与设备供应商的互动频率门禁/日志系统画像是如何构建的以效率评分为例我们设计了一个综合计算公式efficiency_score0.6×(1-relative_time_ratio)×1000.4× success_rate ×100其中relative_time_ratio是该工程师平均解决时间与所有工程师平均解决时间的比值若大于1则扣分。这样既考虑了速度又兼顾了成功率。2.2 思想二基于画像的预测与推荐有了工程师画像我们就可以像推荐系统一样回答以下问题触发预测一个特定的工艺问题如刻蚀速率漂移在未来的时间窗口内是否会触发工程师的借机需求匹配推荐当借机需求大概率发生时应该派哪位工程师、借哪台机、什么时间开始、预计多久与传统方法的本质区别传统方法我们的方法只看历史借机时间序列关注人-任务-设备三体交互假设行为具有周期性捕捉任务驱动的因果关系无法解释预测结果可解释性强如推荐张工是因为他对此类问题经验丰富被动响应主动预测并优化2.3 跨界融合的价值这套思想的核心价值在于将不确定性转化为可计算的特征工程师的经验、习惯不再是模糊的描述而是可量化的向量。从事后统计到事前预测不再等借机发生后记录而是在问题出现时就预判是否需要借机。从被动响应到主动推荐不仅预测还给出最优方案帮助工程师和调度员做出更好的决策。三、系统架构基于上述思想我们设计了一套完整的系统架构分为数据层、服务层、算法层和应用层四个层次。3.1 总体架构图┌─────────────────────────────────────────────────────────────┐ │ 应用层 │ │ ┌──────────────┐ ┌──────────────┐ ┌──────────────────┐ │ │ │ 工程师画像 │ │ 借机预测 │ │ 智能推荐 │ │ │ │ 展示页面 │ │ 结果页面 │ │ 方案展示 │ │ │ └──────────────┘ └──────────────┘ └──────────────────┘ │ ├─────────────────────────────────────────────────────────────┤ │ 服务层 │ │ ┌──────────────┐ ┌──────────────┐ ┌──────────────────┐ │ │ │ Profile │ │ Recommend │ │ Feedback │ │ │ │ Service │ │ Service │ │ Service │ │ │ └──────────────┘ └──────────────┘ └──────────────────┘ │ ├─────────────────────────────────────────────────────────────┤ │ 算法层 │ │ ┌──────────────┐ ┌──────────────┐ ┌──────────────────┐ │ │ │ 画像计算引擎 │ │ 规则引擎 │ │ LLM RAG │ │ │ │ (特征提取) │ │ (评分排序) │ │ (智能分析) │ │ │ └──────────────┘ └──────────────┘ └──────────────────┘ │ ├─────────────────────────────────────────────────────────────┤ │ 数据层 │ │ ┌──────────────┐ ┌──────────────┐ ┌──────────────────┐ │ │ │ 工程师数据 │ │ 设备数据 │ │ 历史记录 │ │ │ │ (内存字典) │ │ (内存字典) │ │ (内存字典) │ │ │ └──────────────┘ └──────────────┘ └──────────────────┘ │ └─────────────────────────────────────────────────────────────┘3.2 各层详细说明3.2.1 数据层由于是MVP项目我们使用Python字典在内存中模拟数据。数据分为三大类工程师数据包含30位工程师的完整画像信息基础属性、技能矩阵、历史统计等设备数据包含32台设备的实时状态机台类型、健康指数、可用性等历史记录包含84条借用记录和69条任务记录用于画像计算和模型训练数据初始化在models.py中完成并在app.py启动时自动加载。3.2.2 算法层算法层是整个系统的核心包含三个主要模块1. 画像计算引擎 (profile_service.py)输入原始工程师数据和历史记录输出每位工程师的综合画像含技能分、负载指数、效率评分、活跃度趋势算法基于规则的加权计算如效率评分公式、负载指数公式2. 规则引擎 (recommendation_service.py)输入任务信息和当前系统状态输出借机概率和Top-3推荐方案算法综合评分函数score0.4*技能分0.3*机台健康分0.2*(1-负载)-0.1*生产影响分3. LLM RAG 智能引擎 (llm_service.py,rag_service.py,agent_service.py)LLM服务调用DeepSeek API对任务进行自然语言分析生成概率预测和推荐理由RAG服务基于TF-IDF向量化行业知识库30条专业知识为LLM提供上下文支撑Multi-Agent服务模拟四个智能体调度专家、工程师选择、工具调度、方案评估协同工作生成更可靠的推荐3.2.3 服务层服务层封装了业务逻辑对外提供统一的API接口Profile Service处理工程师画像相关的CRUD操作Recommend Service处理预测和推荐请求Feedback Service处理用户对推荐的反馈采纳/拒绝用于后续优化3.2.4 应用层应用层由Flask模板渲染的前端页面构成首页 (index.html)工程师卡片网格展示画像摘要详情页 (detail.html)工程师完整画像含技能雷达图、活跃度趋势图预测页 (prediction.html)任务输入表单显示预测概率和推荐方案前端使用Chart.js绘制图表Font Awesome提供图标整体采用科技蓝主题的响应式设计。3.3 关键技术选型层次技术选型理由后端框架Flask 2.3.3轻量、灵活适合快速原型开发大语言模型DeepSeek API国内可用性价比高支持中文RAG搜索scikit-learn TF-IDF无需GPU适合小规模知识库数据处理NumPy高效数值计算前端图表Chart.js轻量、易用、支持多种图表类型环境管理python-dotenv安全存储API密钥3.4 数据流说明以一次典型的智能预测请求为例数据流如下用户在预测页面填写任务信息问题类型、所需机台、紧急度、描述前端通过AJAX向/api/smart-predict发送POST请求Flask路由接收请求调用recommendation_service.py中的规则引擎进行初步计算同时调用llm_service.py将任务描述和初步计算结果拼装成Prompt发送给DeepSeek APIDeepSeek返回智能分析结果包含概率预测、推荐方案和理由如有需要rag_service.py从知识库中检索相关知识增强推荐的可信度如果是Multi-Agent模式agent_service.py协调四个Agent进行多轮对话生成最终方案结果返回前端渲染为推荐方案卡片用户点击采纳或拒绝反馈数据存入内存用于后续优化3.5 架构特点松耦合各模块之间通过明确的接口通信便于独立开发和测试可扩展未来可以轻松替换数据源从内存字典改为MySQL/MongoDB或升级LLM模型渐进式智能从规则引擎起步逐步引入LLM和RAG实现从确定性到智能的平滑过渡可解释性无论是规则引擎还是LLM都会生成推荐理由让用户理解系统为何如此推荐四、项目实现详解4.1 项目结构engineer profile/ ├── app.py # Flask主应用 ├── models.py # 数据模型与模拟数据 ├── requirements.txt # 依赖配置 ├── .env # 环境变量DeepSeek API Key ├── services/ │ ├── profile_service.py # 工程师画像服务 │ ├── recommendation_service.py # 推荐服务 │ ├── llm_service.py # LLM服务 │ ├── rag_service.py # RAG知识库服务 │ └── agent_service.py # Multi-Agent服务 ├── templates/ │ ├── index.html # 首页 │ ├── detail.html # 工程师详情页 │ └── prediction.html # 预测结果页 ├── static/ │ ├── css/style.css # 样式文件 │ └── js/main.js # 前端脚本 └── test_all_api.py # API测试脚本4.2 数据模型我们模拟了30位工程师覆盖18种角色、32台设备覆盖14种工艺类型、84条借用记录和69条任务记录。关键实体包括Engineerid, name, department, title, skill_matrix, current_load, efficiency_score, years_experienceToolid, name, type, status, health_index, next_available_timeBorrowRecordengineer_id, tool_id, start_time, duration, purpose, successTaskRecordengineer_id, task_type, complexity, result4.3 画像构建逻辑在profile_service.py中我们实现了以下核心指标的计算综合技能分基于技能矩阵各维度平均值换算为百分制负载指数当前未完成任务数 / 历史月均任务数上限1.0效率评分结合相对解决时间比和成功率加权得出活跃度趋势近6个月每月完成的借机次数4.4 智能调度算法recommendation_service.py实现了简化的规则引擎概率预测根据任务紧急度、所需机台类型空闲率、历史相似问题频率等计算0~1的概率方案推荐遍历所有技能匹配且负载适中的工程师结合机台健康度和空闲窗口计算综合得分取Top-3返回4.5 LLM与RAG集成为了让系统具备更深层次的理解和推理能力我们引入了LLM服务 (llm_service.py)调用 DeepSeek API实现任务分析、概率预测、方案生成的智能化RAG服务 (rag_service.py)基于 TF-IDF 向量化行业知识库实现语义搜索为 LLM 提供上下文支撑Multi-Agent服务 (agent_service.py)模拟调度专家、工程师选择、工具调度、方案评估等多个智能体协同工作生成更可靠的推荐4.6 前端可视化前端使用 Chart.js 绘制技能雷达图直观展示工程师在各工艺维度的能力分布活跃度趋势折线图展示近期借机频率变化对比柱状图支持两位工程师的技能对比页面设计采用科技蓝主题卡片式布局响应式适配 PC 和手机。五、API接口一览工程师相关接口方法描述/api/engineersGET获取工程师列表/api/engineers/{id}GET获取工程师完整画像/api/engineers/compare?ids1,2GET工程师对比设备相关接口方法描述/api/toolsGET获取设备列表预测与推荐接口方法描述/api/predictPOST预测借机概率/api/smart-predictPOSTLLM智能预测/api/agent-schedulePOSTMulti-Agent调度智能分析接口方法描述/api/analyze-taskPOST任务分析/api/search-knowledgeGET知识搜索反馈接口方法描述/api/feedbacksGET获取反馈列表/api/feedbackPOST提交反馈六、快速开始环境要求Python 3.8pip 20.0安装依赖pipinstall-rrequirements.txt配置环境变量创建.env文件添加DeepSeek API KeyDEEPSEEK_API_KEYyour_api_key_here启动服务python app.py服务将在http://127.0.0.1:5000启动。七、示例请求预测借机概率curl-XPOST http://127.0.0.1:5000/api/predict\-HContent-Type: application/json\-d{ engineer_id: 1, required_tool_type: etch, problem_type: param_drift, urgency: high, description: 刻蚀均匀性异常 }智能预测curl-XPOST http://127.0.0.1:5000/api/smart-predict\-HContent-Type: application/json\-d{ engineer_id: 1, required_tool_type: litho, problem_type: alignment_shift, urgency: high, description: 光刻对准偏移 }八、运行效果展示启动项目后访问http://127.0.0.1:5000你将看到首页工程师卡片网格展示姓名、部门、技能分、负载指数、效率评分点击查看详情进入画像详情页。详情页左侧基本信息中间技能雷达图右侧历史统计与活跃度趋势折线图。预测页输入任务信息系统返回借机概率和Top-3推荐方案每个方案附带推荐理由支持采纳/拒绝反馈。九、技术栈总结模块技术版本后端框架Flask2.3.3大语言模型DeepSeek API-RAG搜索scikit-learn (TF-IDF)1.3.0数据处理NumPy1.25.2HTTP请求requests2.31.0前端图表Chart.jsCDN环境配置python-dotenv1.0.0十、数据规模工程师: 30位覆盖18种角色设备: 32台覆盖14种工艺类型借用记录: 84条任务记录: 69条知识库: 30条行业知识十一、性能指标指标值API响应时间6ms ~ 16s预测准确率基于历史数据持续优化并发支持Flask标准并发十二、未来规划引入更先进的LLM模型如GPT-4、Claude增加实时数据流接入MQTT/Kafka实现多工厂协同调度添加移动端支持小程序/H5引入强化学习优化推荐策略支持多语言国际化十三、总结本项目是半导体晶圆厂领域首个将工程师画像与大语言模型、RAG 技术相结合的智能调度系统。它证明了互联网思维工业场景的跨界融合是可行的并且能够带来显著的效率提升。如果你也面临类似的工程调度难题欢迎参考我们的思路一起推动智能制造的发展。项目地址https://github.com/BumbleBee-ZDS/engineer-profile希望这篇博客对你有所帮助如果有任何问题或想法欢迎在评论区交流。