大专大一,手搓 AIOps 底座:当大模型幻觉时,我的系统在 98.9ms 抓住了宕机的 Redis
最近,我开源了一个基于本地大模型(Ollama)的 AIOps 运维 Agent,叫 moray-aio。
很多人问我:"大模型全是幻觉,动不动就瞎敲 kill,你敢让它碰运维?" 说实话,我一开始也不敢。作为一个大一学生,我甚至不敢承认它能"用于生产"。
但经过几天的通宵迭代,经历了真实的混沌工程演练 和红蓝对抗 ,今天我可以拍着胸脯说:我已经把大模型的双手彻底铐住了。
👉 GitHub 开源地址 :
https://github.com/aliangmo2026/moray-aio👉 PyPI 一键安装 :pip install moray-aio

🚨 一、 大模型落地运维的致命痛点
市面上做 AI Agent 的项目很多,但大多是在套壳。一旦丢进真实的系统环境,就会出现三个致命问题:
- 幻觉越权 :大模型被恶意 Prompt 注入,试图执行
os.system('rm -rf /')。 - "偷懒"误判:拿到报错日志后,不加验证直接给出错误的结论。
- 进程卡死 :大模型生成了死循环代码,直接把宿主机 CPU 占满(比如经典的 GIL 炸弹
10**10**10)。
为了解决这些问题,我在 moray-aio 里写下了极度硬核的安全防线。
🛡️ 二、 四层纵深:把 AI 关进 AST 语法树的笼子
别人用正则表达式防漏洞,我直接上了AST(抽象语法树)静态审查。

当大模型试图生成代码执行时,它必须穿过我的四道闸门:
- AST 节点白名单 :禁止一切危险的节点(如
Import、Attribute)。 - 黑名单过滤 :杜绝
eval、exec、os等高危字面量,连利用生成器gi_frame帧逃逸的路径都被我封死了。 - 受限命名空间 :剥离了所有内置的
__builtins__。 - 多进程物理击杀 :如果大模型写了
sum(itertools.count())这种能锁死 GIL 的炸弹,传统的线程超时根本没用。我引入了multiprocessing进程池,超过 2 秒,操作系统直接terminate物理超度这个进程。
为了证明它真的安全,我写了个 Fuzzer 脚本,包含 198 种极其刁钻的恶意 Payload(别名洗白、帧阶梯逃逸、DNS 外联探测等)狂轰乱炸。
结果:0 逃逸,0 误报。拦截率 100%。
⚔️ 三、 真实 Chaos Engineering:当大模型"偷懒"时
光有安全还不够,它得能在真实故障中救命。
我模拟了一次真实的 Redis 宕机:在本地启动一个 Redis,突然在终端 kill 掉它,并注入一条 Connection refused 的错误日志。
高光时刻来了:
- 日志注入后 98.9 毫秒,系统自动触发。
- 但是!
qwen2.5:7b模型在被前文日志干扰后,给出了一个保守的模糊结论。 - Critic Agent(双模型互搏) 立刻跳出来反驳:"你的结论缺乏直接证据,逻辑跳跃!"
- 启发式兜底引擎 强行接管,派出
port_check和process_list探针,一秒拿到铁证:端口不通、进程不存在。
系统最终输出了极其精准的根因分析,并通过 Webhook 推送了警报。
故障注入时间线
{"fake_redis_pid": 460, "port_6379_before_kill": true, "port_6379_after_kill": false}
{"t_kill_utc": "2026-10-26T12:39:47.568", "t_append_utc": "2026-10-26T12:39:49.834"}
规则触发延迟:
| 事件 | 时刻 (UTC) | 延迟 |
|---|---|---|
| 错误行注入 | 12:39:49.834 | --- |
critical_keywords 规则开火 |
12:39:49.933 | 98.9 ms ✅ |
探针真实返回(保底机制拦截了大模型的偷懒)
port_check→{"host":"127.0.0.1","port":6379,"open":false,"latency_ms":null}✅
process_list→{"count":0,"processes":[],"source":"psutil"}✅
yaml
---
### 🌐 四、 拥抱 MCP:从封闭走向生态
除了安全与实战,我还给它接入了 **MCP(Model Context Protocol)**。
这意味着,不仅是我的程序能用它,包括 Cursor、Claude Desktop 等所有支持 MCP 的工具,都可以瞬间调用我的安全探针。
顺便一提,项目开源后,意外收到了海外 AI Agent 交易平台 Agensi.io 的入驻邀请。看来"绝对安全的本地只读底座",确实是全球开发者的共同刚需。
---
### 🎓 写在最后:我是大专大一,这是我的敲门砖
我是MoRay,一名大专大一的计算机学生。没有大厂背书,也没有实验室资源。
这套底座是我一行一行敲出来、一个 Bug 一个 Bug 填出来的。我知道它可能还不是完美的商业套件,但它具备了极高的工程素养和安全底座。
**目前代码已全量开源(187 个测试全绿,支持 pip 一键安装):**
GitHub:`https://github.com/aliangmo2026/moray-aio`
如果各位前辈觉得这个架构有意思,**求一个免费的 Star ⭐️**。
同时,我也在寻找大厂的实习/内推机会。如果你们团队正在头疼大模型落地时的安全和管控,我愿意带着这套沙箱架构加入你们,一起去更大的战场打磨它!