刀尖上跳舞:边缘计算盒上的大模型异常识别实践

“在有限的资源下做工程落地,就像在刀尖上跳舞——每一步都要精准,每一次挥刀都要恰到好处。”

写在前面

最近在做一个边缘计算盒上的异常识别项目,深深体会到什么叫做”资源约束下的工程艺术”。没有云端无限的算力,没有海量的上下文窗口,有的只是一颗算力有限的芯片和有限的内存。但业务场景的复杂度并不会因此降低——异常识别需要理解设备状态、分析时序数据、给出准确判断。

这篇文章,想记录一下我在这种约束条件下做提示词工程的一些实践和思考。不算经验分享,更像是一次技术复盘。


一、边缘部署的三大挑战

在做边缘部署之前,首先需要对挑战有清醒的认知。我总结了三座大山:

1.1 算力有限

边缘计算盒的算力通常只有几 TOPS,甚至更低。这意味着:

  • 无法运行太大的模型,7B 以上模型基本不用想

  • 推理速度必须快,异常识别往往有时效性要求

  • batch size 只能很小,并发能力有限

1.2 上下文有限

主流边缘芯片的显存/内存限制,导致上下文窗口被严重压缩:

  • 通常只能容纳 4K-8K 的 token

  • 需要在这有限的窗口内完成:指令、场景描述、历史数据、当前输入、输出格式

  • 每个 token 都是稀缺资源

1.3 场景复杂

异常识别不是简单的分类问题:

  • 设备种类多,每种设备的”正常”定义不同

  • 异常类型多,同一症状可能是多种异常的表现

  • 需要结合时序数据判断,单点数据往往不够


二、核心思路:共性 + 特性的提示词组合

面对上述挑战,我的设计思路是共性 + 特性的双层提示词架构:

┌─────────────────────────────────────────────────┐ │ 全局共性层 │ │ (系统指令、输出格式、通用知识、行为规范) │ ├─────────────────────────────────────────────────┤ │ 站点特性层 │ │ (设备类型、场景定义、阈值参数、自由描述空间) │ ├─────────────────────────────────────────────────┤ │ 当前任务层 │ │ (具体输入、实时数据、分析要求) │ └─────────────────────────────────────────────────┘

2.1 全局共性层

这是固定的底层 prompt,包含:

  • 系统角色定义(你是谁)

  • 输出格式规范(JSON 结构、字段定义)

  • 异常识别的通用判断逻辑

  • 安全边界和约束

2.2 站点特性层

这是针对每个部署站点/设备类型的定制化部分:

  • 设备型号和基本参数

  • 该场景的”正常”基线

  • 特定类型的异常阈值

  • 站点相关的背景知识

2.3 当前任务层

每次推理时的动态输入:

  • 实时采集的传感器数据

  • 当前的分析请求

  • 上下文相关的补充信息


三、提示词压缩策略

在资源有限的情况下,提示词的压缩至关重要。我的策略是**”保关键、去冗余、留弹性”**:

3.1 保关键

必须保留的信息:

  • 核心指令(角色、任务)

  • 输出格式规范(这是可解析的基础)

  • 关键判断逻辑(异常识别的核心)

  • 站点特性中的阈值和边界

3.2 去冗余

可以省略的:

  • 重复的说明性文字

  • 显而易见的约束(模型已经知道的)

  • 过于细节的背景描述

  • 冗余的示例

3.3 留弹性

关键设计:预留自由空间

每个站点特性层不要写太”死”,留出一定空间让模型自己判断:

❌ 过于死板: "如果温度超过 80°C 且振动超过 5g,则判定为轴承损坏" ✅ 留有弹性: "结合温度和振动数据,判断是否存在机械故障, 重点关注异常组合模式,不要只看单一指标"


四、输出格式化设计

边缘部署必须考虑解析的可靠性。输出格式的选择:

4.1 推荐:结构化 JSON

{ "status": "normal|warning|abnormal", "confidence": 0.95, "anomaly_type": "mechanical_friction", "suggestion": "建议检查轴承润滑", "data_quality": "reliable" }

4.2 格式化要点

  • 字段名统一、简洁

  • 枚举值固定,避免自由文本

  • 包含置信度,便于后续处理

  • 预留扩展字段


五、工程实践流程

5.1 设计阶段

  1. 场景拆解:把业务场景拆成若干子场景

  2. 特性提取:每个子场景需要哪些特性参数

  3. 共性抽象:提取所有子场景共享的部分

  4. 格式定义:确定输出 JSON 结构

5.2 调试阶段

  1. 最小可用:先用最简提示词跑通流程

  2. 逐步添加:逐个加入特性,观察效果

  3. 压力测试:在资源下限测试

  4. 迭代优化:根据 bad case 调整

5.3 部署阶段

  1. 模板固化:确定最终的提示词模板

  2. 站点配置:每个站点填入特性参数

  3. 监控上线:部署后持续监控效果


六、总结

在边缘计算盒上部署大模型做异常识别,本质上是一门资源约束下的工程艺术。没有标准答案,只有在算力、上下文、效果之间不断权衡的持续迭代。

核心心得:

  • 共性 + 特性:分离不变与变化的部分

  • 保关键、去冗余:每个 token 都要有价值

  • 留弹性:给模型空间去发挥

  • 格式先行:从输出格式倒推提示词设计

刀尖上跳舞,讲究的是精准和优雅。在资源有限的边缘场景下做好提示词工程,也是一种精准和优雅。


如果你也在做边缘部署相关的项目,欢迎交流探讨。


相关链接:

  • GitHub:无

  • 参考资料:个人实践总结


刀尖上跳舞:边缘计算盒上的大模型异常识别实践
https://maoyu92.github.io/2026/05/28/07 AI笔记/AI写作与发布/a151_刀尖上跳舞:边缘计算盒上的大模型异常识别实践/
作者
陈文茂
发布于
2026年5月28日
许可协议