ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

大语言模型驱动光网络智能运维:从故障诊断到自主决策的实战架构

大语言模型驱动光网络智能运维:从故障诊断到自主决策的实战架构 1. 从“救火队员”到“智能管家”网络运维的范式转移如果你在数据中心或者运营商的核心网干过几年对“网络运维”这四个字的感受大概率是复杂的。它意味着7x24小时的值班表意味着凌晨三点被告警电话叫醒意味着面对海量日志和性能指标时那种“大海捞针”的无力感。传统的网络运维尤其是光网络这种底层基础设施严重依赖工程师的经验和直觉。一个资深专家能从一条看似普通的告警信息里嗅出即将发生的链路闪断也能从几十个性能劣化指标中快速定位到某个特定波长的光模块老化。但这种能力难以复制更难以规模化。随着网络规模指数级膨胀业务需求瞬息万变这种“人肉运维”的模式已经走到了瓶颈。这就是为什么“大语言模型LLM驱动的自动化运维”这个命题在最近一两年里从学术论文的构想迅速变成了产业界炙手可热的实践方向。它瞄准的正是传统运维的痛点将人类专家的隐性知识、逻辑推理和决策能力通过LLM进行编码和泛化并嵌入到标准化的自动化流程中形成一个能自主感知、分析、决策和执行的“智能体Agent”。我们不再仅仅是把脚本和规则固化下来而是赋予自动化流程一个“大脑”让它能理解自然语言指令能解读非结构化的告警文本能基于历史经验和网络拓扑进行推理甚至能主动发起优化操作。今天要聊的就是这个“大脑”如何与光网络运维的“躯干”结合构建一个“Agent-Embedded Workflow”——即智能体嵌入的工作流。这不是一个遥不可及的概念而是我们团队在过去一年里从PoC概念验证到生产环境灰度上线一步步趟出来的实战路径。我会抛开那些宏大的愿景聚焦于我们是如何把一个通用的大语言模型调教成一个懂光网络、能解决实际问题的“智能管家”的。2. 为什么是光网络LLM落地的独特挑战与机遇在讨论具体架构之前我们必须先理解光网络运维的特殊性。这决定了LLM在这里的应用与在IT运维或客服场景中有着本质的不同。2.1 光网络运维的“高门槛”与“黑盒性”光网络是物理层的通信基础其运维对象是光信号、波长、光功率、信噪比OSNR等物理量。它的知识体系非常垂直且专业专业术语密集OSNR、Q因子、纠前误码率Pre-FEC BER、色散、非线性效应……这些术语构成了一个极高的理解门槛。数据多源异构数据来自网管系统NMS、光性能监控OPM单元、设备日志、工单系统等格式千差万别。因果关系复杂一个业务中断其根因可能隐藏在多层之下。例如用户报修上网慢根因可能是上层路由器配置问题也可能是底层光缆被挖断或者是某个光放EDFA的泵浦激光器性能劣化。这种跨层、跨域的故障关联是传统规则引擎的噩梦。操作风险极高在光网络上执行一个错误的配置比如误关激光器、误调光功率可能导致大范围的业务中断后果严重。这些特性恰恰是LLM可以发挥优势的地方。LLM强大的自然语言理解和上下文学习能力可以快速消化海量的设备手册、技术白皮书和历史故障报告构建起一个关于光网络的“知识图谱”。它能够理解“OSNR劣化可能导致Q因子下降进而引发纠前误码率升高”这样的因果链而无需工程师编写无数条if-then规则。2.2 LLM带来的核心价值转变引入LLM驱动的智能体运维模式会发生根本性改变从“响应式”到“预见式”传统运维是告警驱动AIOps的初级阶段也是。智能体可以持续分析性能趋势数据结合网络变更日历、天气信息影响光缆等外部数据预测潜在风险。例如它可能发现“过去一周XX链路的OSNR值在以每天0.1dB的速度缓慢下降结合该路段近期有市政施工建议在48小时内安排预防性巡检。”从“单点分析”到“全局关联”智能体拥有整个网络的拓扑、配置和实时状态视图。当A站点报告收光功率低时它能立刻关联到上游B站点的发光功率、以及A-B之间所有光放和合分波器的状态快速锁定问题区间而不是让工程师逐个登录设备去查。从“操作执行”到“策略生成”工程师不再需要记忆复杂的命令行语法。他可以直接对智能体说“为从北京到上海的100G波道找一条OSNR余量最大、且避开最近有过告警的纤芯的路由。” 智能体理解意图后会自动查询资源数据库、计算各路径性能生成具体的配置脚本或工单经人工审核后自动下发。3. 智能体嵌入工作流架构设计与核心组件拆解“Agent-Embedded Workflow”不是一个单体应用而是一个将LLM作为核心决策引擎与传统运维工具链深度集成的系统。下图展示了我们设计的核心架构它由四个层次构成注此处用文字描述架构图因禁止使用Mermaid 整个架构可以想象成一个“智能运维工厂”。数据接入层是原料仓库汇集了来自网管、日志、性能监控、资源库等所有数据源。智能体核心层是工厂的“总控大脑”和“专家车间”其中Orchestrator编排器是总调度负责分解任务、分配资源而一系列具备专项技能的Agent如故障诊断Agent、资源分析Agent、配置生成Agent则是各个车间处理具体问题。能力工具层是车间的工具库为Agent提供查询、计算、执行等具体“工具”。交互与执行层是产品的输入输出接口接收人类指令或系统事件并最终驱动网络设备或工单系统。3.1 编排器Orchestrator工作流的大脑与调度中心这是整个系统的“指挥官”它本身也可以是一个轻量级的LLM或基于规则LLM的混合体。它的核心职责是意图识别与任务分解接收来自API或聊天界面的自然语言请求如“帮我分析一下昨晚广州区域波分网络的性能异常”。它会将这个大问题分解为子任务1提取广州区域所有网元过去24小时的性能数据2识别异常事件如告警、性能越限3对每个异常事件进行根因分析4生成汇总报告。智能体路由与上下文管理根据子任务类型调用相应的技能Agent如调用“性能分析Agent”处理任务2调用“故障诊断Agent”处理任务3。同时它负责在多个Agent之间传递上下文确保整个会话的连贯性。例如故障诊断Agent需要用到性能分析Agent输出的异常事件列表。工具调用编排决定每个Agent在解决问题时需要按什么顺序调用哪些工具Tool。比如故障诊断Agent可能需要先调用query_alarm工具获取详细告警再调用get_optical_power_history工具查看历史光功率趋势。3.2 技能智能体Skill Agent领域专家分身这是LLM能力的具体承载者。我们不会用一个“全能”的LLM处理所有事而是训练或提示Prompt出多个专注特定领域的Agent故障诊断Agent专精根因定位。它的提示词Prompt里包含了光网络常见的故障模式库、诊断逻辑树如先排除外部故障、再检查光功率、最后分析性能参数。当它收到一个“端口LOS信号丢失”告警时会自主按逻辑树调用工具检查对端端口状态、查询光功率值、查看上游光放输出等。配置生成与验证Agent专精设备配置。它熟知不同厂商华为、中兴、烽火等的设备命令行语法和配置模型。工程师描述业务需求“开通一条从A到Z的100G波道使用第50波”它能自动生成从A到Z路径上所有网元OTM、OLA、OADM的完整配置脚本并调用模拟验证工具检查配置冲突。性能优化Agent专精网络优化。它持续监控OSNR、光功率等性能指标基于内置的优化算法如粒子群算法用于功率调优或LLM的生成能力提出参数调整建议。例如“检测到第10波在L3站点的OSNR余量仅为1dB建议将其上游L2站点的发送光功率提高0.5dB预计可提升余量至2dB。”自然语言查询Agent专精数据问答。它将结构化的数据库资源库、性能库通过向量化等技术变成LLM可理解的形式。工程师可以直接问“当前全网OSNR最差的5条波道是哪几条它们的历史一周趋势如何” Agent会自动翻译成SQL或API调用并组织成自然语言回答。3.3 工具Tools智能体的手和脚LLM本身不能直接操作网络它必须通过“工具”来与现实世界交互。这是实现安全、可控自动化的关键。每个工具都是一个定义好输入输出、有严格权限控制的函数或API。核心工具包括数据查询工具get_network_topology,query_performance_metrics,search_alarm_logs。网络操作工具set_optical_power需带安全阈值和确认机制create_connection_service,switch_protection_route。分析计算工具calculate_osnr_margin,simulate_wavelength_routing。外部知识工具search_equipment_manual连接内部知识库get_weather_forecast用于光缆风险评估。关键设计原则工具的设计必须遵循“最小权限”和“操作确认”原则。任何可能影响业务的写操作工具如调整光功率默认必须在流程中插入人工审核节点或者设置非常保守的自动执行阈值如变化量小于0.1dB且当前值远优于安全门限。4. 从零到一构建一个光网络故障诊断智能体的实战步骤理论讲再多不如看一个实际的构建过程。我们以打造一个“光传输通道性能劣化根因诊断Agent”为例拆解具体步骤。4.1 第一步定义场景与对齐目标首先必须明确智能体的边界。我们将其定位为当网管系统产生“波道性能劣化Pre-FEC BER过高”或“OSNR过低”告警时自动触发该Agent进行初步根因分析并输出包含可能原因、证据和后续操作建议的诊断报告推送给值班工程师。输入告警事件包含网元ID、端口、波道、性能参数当前值/阈值。输出一份结构化的诊断报告Markdown格式包含“疑似根因”、“关联证据数据截图/趋势”、“置信度”、“建议排查步骤”。成功标准在测试集上Top-3根因建议的准确率即真实根因出现在它给出的前三个可能原因中达到85%以上平均诊断时间从人工的30分钟缩短到2分钟以内。4.2 第二步构建诊断知识库与提示词工程这是让LLM“懂行”的核心。我们不是从头训练模型而是通过高质量的提示词Prompt和上下文Context来引导商用或开源LLM如GPT-4、Claude-3或本地部署的Llama 3。知识注入我们整理了内部历史上千份真实的故障报告提取出经典的故障模式。例如模式A光功率问题收光功率低 - 检查对端发光、中间光放、光纤损耗。模式BOSNR问题OSNR低但光功率正常 - 检查光纤非线性效应、色散补偿、合波器插损不均。模式C单板问题单个波道劣化其他正常 - 检查本端或对端对应波长的收发单元。设计提示词模板我们设计了类似“思维链Chain-of-Thought”的提示词强制LLM按照工程师的推理逻辑来思考你是一个资深的光网络运维专家。请根据以下告警信息和提供的网络数据按步骤分析性能劣化的可能根因。 告警信息[此处插入告警详情] 请遵循以下分析步骤 步骤1确认告警范围。是单个波道、单个站点、还是整条链路 步骤2获取关联数据。你需要我调用哪些工具来获取关键数据我会根据你的要求提供数据 步骤3基于数据对照以下常见故障模式进行分析[此处插入故障模式库] 步骤4给出可能性排序的根因列表并为每个原因提供证据引用具体数据。 步骤5给出具体的下一步操作建议。工具使用描述在System Prompt中明确定义Agent可以调用的工具及其功能例如工具get_optical_path_details。描述根据源/宿网元和波道号查询光路径经过的所有站点、以及各站点的入/出光功率和OSNR历史值最近24小时。调用方式提供source_ne,dest_ne,wavelength_id。4.3 第三步工作流集成与自动化触发让这个Agent从演示玩具变成生产工具的关键是把它嵌入到现有的运维工作流中。事件触发在网管系统的告警关联引擎中我们增加了一条规则当出现“Pre-FEC BER超过10^-3”的告警时自动创建一个诊断工单并通过Webhook调用智能体编排器的API将告警事件作为输入传递过去。上下文获取编排器接收到事件后会先调用get_alarm_details和get_network_topology工具获取更丰富的上下文信息然后启动“故障诊断Agent”。自主诊断循环Agent开始运行。它根据提示词决定需要哪些数据然后调用相应的工具如get_optical_power_history,get_osnr_trend。LLM根据返回的数据进行分析可能还会发起多轮工具调用直到它认为自己有足够把握做出判断。结果交付与行动Agent生成诊断报告。编排器将报告附在工单上并根据诊断出的根因类型和置信度决定下一步如果是高置信度的常见问题如“光功率过低疑似光纤劣化”且建议操作是“通知线路维护人员巡检”则自动派发线路巡检工单如果是复杂问题或置信度低则将工单连同诊断报告派发给资深专家处理。4.4 第四步持续迭代与模型评估上线不是终点。我们建立了持续的迭代循环反馈闭环工程师在处理完工单后必须在系统中标记最终的“真实根因”。这个结果会与智能体的诊断建议进行比对作为评估模型准确性的黄金数据。提示词优化对于诊断错误的案例我们会分析是缺少数据、提示词误导还是知识库未覆盖。然后针对性优化提示词或补充故障模式。工具增强如果发现Agent经常因为某个数据无法获取而卡住我们就考虑开发新的工具来提供这个数据。5. 避坑指南安全、幻觉与性能三大挑战的应对策略在实际落地过程中我们遇到了无数坑。这里分享三个最核心的挑战及我们的应对之策。5.1 安全性与权限控制给“智能”套上缰绳让一个LLM直接操作生产网络是极其危险的因为它可能产生“幻觉”输出不合理甚至有害的指令。策略一严格的工具沙箱与审批流。所有写操作工具set_*,configure_*都不允许Agent直接调用。我们设计了一个“操作预生成人工审核”的流程。Agent只能生成一个“建议操作脚本”该脚本会被放入工单必须由二级工程师审核并点击“确认执行”后才会由后台的自动化脚本引擎而非LLM去执行。同时所有工具调用都有严格的权限和参数范围校验。策略二输入输出过滤与净化。所有从网络系统输入给LLM的数据如设备配置在传入前都要经过敏感信息脱敏如密码、SNMP community字符串。LLM生成的输出如配置命令在执行前也要经过一次语法和语义的安全检查例如禁止出现关闭所有激光器这类高危命令。策略三基于角色的访问控制RBAC。智能体系统本身集成企业统一的权限系统。一个初级工程师的聊天窗口发起的“优化全网光功率”请求会被编排器直接拒绝并提示权限不足。5.2 模型幻觉与事实准确性确保诊断靠谱LLM的“一本正经胡说八道”是其在运维场景应用的最大障碍。对策一 grounding基于事实。这是最重要的原则。绝不让LLM凭自己的“知识”做判断。所有分析结论必须基于它通过工具实时查询到的、来自生产系统的数据。在提示词中反复强调“你的所有判断必须引用下方提供的数据作为证据不允许使用训练数据中的记忆。”对策二结构化输出与验证。要求Agent以严格的JSON或特定Markdown格式输出。这不仅能方便下游系统解析也能在一定程度上约束其自由发挥。对于关键结论如根因可以设计一个独立的“验证Agent”让它基于同样的数据从反方向进行质疑和验证。对策三不确定性表达。训练LLM在置信度不高时明确说出“根据现有数据无法确定唯一根因可能性A为XX%可能性B为YY%”并列出需要进一步获取哪些数据来确认。这比它强行给出一个错误答案要好得多。5.3 系统性能与成本让“智能”用得起高精度LLM如GPT-4的API调用成本不菲且响应延迟可能达到数秒对于实时故障处理来说太慢。方案一分层模型策略。我们采用“轻量模型打底重量模型攻坚”的策略。对于大多数常见的、模式化的诊断占80%我们使用微调后的、参数量较小的开源模型如Qwen-7B部署在本地GPU服务器上响应速度在毫秒级。只有遇到复杂、罕见的故障时才将问题上下文提交给云端的大模型如GPT-4进行深度分析。这大大降低了成本也保证了核心场景的响应速度。方案二异步执行与结果缓存。对于非实时性任务如周期性性能报告生成、网络健康度评估等采用异步队列处理。对于常见查询如“展示A到Z的拓扑”其结果可以被缓存一段时间避免重复调用LLM和工具。方案三优化提示词与上下文长度。精心设计的提示词和只注入最相关的上下文通过向量检索相似故障案例能显著减少Token消耗从而降低成本和提高速度。6. 超越故障诊断智能体工作流的未来演进场景当基础的故障诊断智能体稳定运行后我们可以将这套模式复制到更广阔的运维场景构建一个“智能体矩阵”。6.1 网络变更的“智能副驾”网络割接、业务开通是高风险操作。我们可以构建一个“变更智能体”它的工作流是理解变更意图工程师输入自然语言描述“明天凌晨2点将业务A从当前链路切换到备用链路并进行倒换测试。”自动生成方案Agent自动分析业务A的当前路径、备用路径资源、计算中断时间、识别风险点如共用光放生成详细的《变更实施方案》MOP包括操作步骤、回滚步骤、验证点。模拟预验证在变更执行前Agent调用网络模拟工具对方案进行沙盘推演预测操作后网络的性能指标变化提前发现潜在问题。执行护航在真实变更窗口Agent可以实时监控性能指标与预期值对比出现偏差时立即告警。6.2 资源优化与容量规划传统的资源分配往往基于静态规则不够灵活。一个“资源优化Agent”可以动态波道分配当有新业务需求时Agent综合考虑当前各波道的OSNR余量、路径长度、历史故障率、功耗等因素动态推荐最优的波长分配方案最大化网络整体性能和可靠性。容量预测与扩容建议基于历史业务增长数据和性能趋势Agent可以预测未来3-6个月哪些链路将出现容量瓶颈并提前给出扩容建议如增加波道、升级线路速率甚至自动生成设备采购申请单的草稿。6.3 新人培训与知识传承资深专家的经验难以文档化。我们可以利用智能体构建一个“沉浸式培训系统”故障模拟与演练新人可以向系统描述一个故障现象Agent基于历史真实案例模拟生成一个虚拟的网络故障环境并引导新人一步步排查在关键节点给予提示和讲解。随问随答的知识库新人遇到任何概念或操作问题可以直接向智能体提问。智能体不仅能回答定义还能结合当前的网络拓扑给出具体的、情景化的例子。走到这一步智能体已经不再是简单的“自动化脚本”而是成为了网络运维团队中一个不知疲倦、知识渊博、随时在线的“数字同事”。它并没有取代工程师而是将工程师从重复、繁琐、低价值的劳动中解放出来让他们能够专注于更复杂的架构设计、问题攻关和战略规划。这个转变的过程充满挑战但每解决一个实际问题每将一次凌晨告警转化为系统的自动响应都让我们更加确信这是网络运维走向智能化、自主化不可逆转的方向。
RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进