从第一性原理出发,探索如何做故障的根因定位

复杂运维场景下,如何实现分钟级的故障根因定位 作者介绍 熊亚军 灵犀技术总监,原百度系统部高级项目经理,负责百度IT基础设施监控团队,其带领的团队经历了百度服务器规模迈入几十万量级,网络架构数次演进,对服务器尤其是网络层的监控和运维自动化智能化有丰富的经验。 开篇:在超级互联网公司,随着服务器规模都早早迈过 10 万台量级,加之业务模式的多样性和 IT 架构的云化迁移,其 IT 运维团队面临的挑战与日俱增,常规的系统和经验都需要不 阅读详情

1 故障定位的背景

在微服务和云原生环境下进行故障定位通常会面临以下困难://文章中,“可能”二字用的比较多,建议优化成通常或其他的词语

  • 分布式系统复杂性:微服务架构中,系统被拆分为多个小型服务,每个服务通常运行在不同的容器或虚拟机中,甚至可能部署在不同的云平台上。当一个问题发生时,需要跨多个服务、多个主机或者多个云服务来追踪问题的根源,这增加了故障定位的复杂性

  • 服务间依赖性:微服务架构中,各个服务之间通常通过API或消息传递进行通信。如果某个服务出现问题,可能会影响到其它依赖的服务,造成级联故障。因此,需要在故障排查过程中考虑到服务之间的依赖关系

  • 日志和监控的管理:在云原生环境中,服务的日志和监控数据通常分散在多个地方,如不同的日志文件、监控系统或者日志聚合工具中。聚合和分析这些数据以诊断问题,特别是跨服务或跨云平台的问题,通常需要复杂的工具和技术

  • 动态扩展和容器化挑战:云原生环境中,服务通常会根据负载动态扩展或缩减,容器化技术如Kubernetes使得服务的部署和运行更加灵活。然而,这也增加了故障定位的难度,因为服务的实例数量和位置可能在时间和空间上变化

  • 复杂的网络结构:云原生应用通常涉及复杂的网络拓扑,包括虚拟私有云、负载均衡器、服务网格等。网络问题如延迟、丢包或者配置错误,可能导致服务间的通信问题,从而增加了故障定位的复杂性

  • 自动化运维的影响:虽然自动化运维能提高效率,但在发生故障时,可能需要手动介入来获取更详细的诊断信息或执行特定的故障排除步骤,这需要管理和协调自动化和手动操作之间的平衡。

综上所述,微服务和云原生环境急需一套可落地性好的故障定位系统

2 业界解决方案

业界在故障定位领域的解决方案也尝试了很多种,这里先简单介绍如下3种

  • AI主导的解决方案

  • 告警主导的解决方案

  • Tracing主导的解决方案

2.1 AI主导的解决方案

AI领域的不断进步和发展,逐渐让人们觉得AI貌似也可以在根因分析上发挥出价值,构建出一套AI主导的解决方案,该解决方案有如下特点:重AI算法

  • 认为专家经验太过琐碎,数据也多,比如主机上有磁盘、网络等数据,面向专家经验和数据来做定位太累

  • 想不用在乎各种场景下数据源背后的细节知识,找到一种统一的AI方式来解决,比如从历史故障中自动挖掘出一些数据之间的关联和特点,培养自学习能力,以供下次复用

//这里建议也拉几个垫背,最好是国外的方案厂商,比如moogsoft\bigpanda之类的。建议也找一家具体说明一下他的搞法,不然这块感觉没有你的论点支撑。

该方案通常的问题点:

  • 当前AI还未能达到预期的效果,就导致整体不理想,不如普通的专家定位

  • 一线工程师发现,AI方案并不符合他们的常规排障逻辑,AI不理解他们,给出的结果不可解释,是个黑盒

  • AI主导的运维方案,往往普世性不强,甲方的使用门槛过高,不容易形成产品化交付

2.2 告警主导的解决方案

参见腾讯的AIOPS实践,以服务拓扑图+服务告警为基石进行定位

//这里再多做些方案介绍

该方案通常的问题点:

  • 更多还是定界到服务

  • 定位质量依赖告警的质量:服务拓扑基本上目前都可以做到并且比较准确,但是由于服务的响应时间或者异常量的阈值各自不一致,容易出现同样是有问题,有些服务告警了,但是有些服务没告警,因此告警的质量会影响定位的质量

2.3 Tracing主导的解决方案

参见去哪儿网根因分析实践,通过Tracing定位到根因服务+通过Metric指标对服务进行下钻分析

//这里再多做些方案介绍

该方案通常的问题点:

  • Tracing链路很多,要进行聚合分析就要涉及到采样,采样之后的数据相对不可靠,可能会有误导

  • Tracing聚合分析相对比较耗资源,并且速度慢

  • 分析的数据粒度太粗,没有精细化到接口级别

3 第一性原理

从上面可以看到故障定位其实比较宽泛,不同人的理解最后的做法可能完全不一样。这么多理解中到底有哪个是最靠近本质的呢?这个事情就必须要从第一性原理说起,即回归事情的本质。

第一性原理是特拉斯创始人马斯克极力推崇的决策框架,认为这种方法能够帮助他能够从事物的本质出发,找到解决问题的新思路和新方法。。比如十几年前,传统锂电池组价格曾长期居高不下,这很大程度影响了特斯拉电动车的大众化之路。于是,马斯克回归电池组的最基本要素,思考电池组是由哪些材料组成的?这些原料的市场价格是多少?结果他发现,如果从伦敦金属交易所购买电池组所需的碳、镍、铝等原材料,再由特斯拉自己建厂研发制造,而不是直接购买供应链产品,电池投产之后的价格可以下降30%。

这种思维方式就是第一性原理,用物理学的角度看待世界,将复杂的问题分解为最根本的真理,然后从头开始推理、加工,创造出想要的结果。这种思维模式更容易有所突破与创新

//第一性原理更倾向指打破知识的藩篱,回归到事物本源去思考基础性的问题,在不参照经验或其它的情况下,从物质和世界的最本源出发思考事物.XXXXX

//建议这里再加上一段,带入到故障定位的话题。

比如,我们作为一线运维工程师,抛开现有的各供应商解决方案的教育引导,重新从故障本身出发来思考问题,不参照任何供应商已有的经验。不管是AI、算法还是规则,都只是故障定位这件事情上的工具。要想定位故障,首先我们要足够深入的理解故障本身。XXXXXXXX

//第二章给出了三种方案的介绍,那我们的这种方案,有没有必要给一个标签??

4 故障定位的认知

故障定位也是如此,看起来比较庞大繁杂,无从下手,那我们就来实践下第一性原理

我总结出如下几个本质问题

  • 故障是怎么产生的

  • 如何能定位故障

  • 定位过程中有哪些难题

//这里可以理解为你的行文概要。下面的结构建议也参照这三个概要来组织

4.1 故障是怎么产生的

我对这个问题的回答:故障是由代码产生的,看起来是一个非常对的废话,我们继续往下分析//这里的故障比较宽泛,容易被挑战。比如硬件的故障。所以本篇要框定我们研究的故障的范围。

  • 代码都有哪些分类

  • 每个分类都会产生哪些故障

  • 每个分类需要采集什么数据才能定位

  • 每种数据需要什么工具能够采集

先对上面的问题进行粗浅的回答

代码的分类

产生的故障

需要采集的数据

APM

eBPF

APM+指标采集

APM+eBPF

业务程序代码

业务自身异常的故障

业务异常堆栈

✅

❌

✅

✅

业务自身的调用量、耗时、错误等故障

任意业务方法的指标数据和Trace数据

✅

❌

✅

✅

任意业务方法的参数

✅

❌

✅

✅

任意异步代码的串联

✅

❌

✅

✅

内部框架代码

(无外部访问的框架)

缓存池、对象池、连接池、线程池的故障

缓存池、对象池、连接池、线程池的指标数据

✅

❌

✅

✅

缓存池、对象池、连接池、线程池的Trace数据

✅

❌

✅

✅

外部框架代码

(有外部访问的框架)

框架的配置参数故障

框架client的内部逻辑

✅

❌

✅

✅

框架的远程访问故障

框架client通过socket访问外部

✅

✅

✅

✅

语言代码

jvm相关的故障

jvm相关指标数据,比如gc、类加载、jvm内存

✅

❌

✅

✅

操作系统代码

延迟、丢包、乱序等网络故障

DNS、TCP、网卡等的指标数据

❌

✅

✅

✅

DNS、TCP、网卡等的Trace数据

❌

✅

❌

✅

CPU、内存、磁盘等故障

每个进程的CPU、内存、磁盘IO等数据

❌

✅

✅

✅

k8s

延迟、丢包、乱序等网络故障

CoreDNS、Pod网卡、Node网卡等的指标数据

❌

✅

✅

✅

CoreDNS、Pod网卡、Node网卡等的Trace数据

❌

✅

❌

✅

从上面可以看出

  • 故障是讲究场景的。要想去定位故障,就需要先去了解该故障的场景

  • 每个采集工具都有适合自己的一批场景,没法做到所有场景,要想做到所有场景,那么就需要组合多套采集工具

同时对采集工具可以得出的结论:

  • APM擅长业务程序内部的数据采集

  • eBPF擅长业务程序外部的数据采集

  • 要想做到更严谨的故障定位,那么就需要APM+eBPF采集的全集

我们知道了使用不同的采集工具来采集对应的数据,那么数据质量如何保证呢?即如何采集高质量的数据呢?

4.2 采集高质量的数据

以APM中访问mysql数据库为例,该场景的整体逻辑如下所示:

核心步骤如下所示

  • 步骤1:从DataSource连接池中获取可用连接

    • 1.1 可能创建新的连接

    • 1.2 可能一直等待,直到有空闲连接可用

  • 步骤2:使用连接执行sql语句

那在这个具体场景下就有很多种故障可能性,如下所示:

故障编号

故障一级分类

故障二级分类

数据支撑

OpenTelemetry

Skywalking

Datadog

1

连接类的故障

创建连接失败

获取连接的span增强

❌

❌

❌

2

创建连接耗时增大

❌

❌

❌

3

等待可用连接耗时高

❌

❌

❌

4

最大连接数太小

连接池的监控

和Trace关联起来

❌

❌

❌

5

database类的故障

整个database耗时增长

执行sql的span增强

✅

✅

✅

6

整个database失败数增长

✅

✅

✅

7

某个实例-整个database耗时增长

✅

✅

✅

8

某个实例-整个database失败数增长

✅

✅

✅

9

某类sql的故障

(select、update、delete)

某类sql耗时增长

✅

✅

✅

10

某类sql失败数增长

✅

✅

✅

11

某个实例-某类sql耗时增长

✅

✅

✅

12

某个实例-某类sql失败数增长

✅

✅

✅

13

sql的故障

某个sql执行的耗时增大

✅

✅

✅

14

某个sql执行的失败次数增多

✅

✅

✅

15

某个sql更新的行数过大

获取更新行数、读取行数

❌

❌

❌

16

某个sql读取行数过大

❌

❌

❌

17

某个实例-某个sql执行的耗时增大

执行sql的span增强

✅

✅

✅

18

某个实例-某个sql执行的失败次数增多

✅

✅

✅

19

某个实例-某个sql更新的行数过大

获取更新行数、读取行数

❌

❌

❌

20

某个实例-某个sql读取行数过大

❌

❌

❌

只有采集了上述数据,才能将日常的故障基本都覆盖到,目前开源的APM只是采集了基本的数据,即只能定位到一部分故障,另一部分故障没法定位到

4.3 定位流程

采集了场景下的高质量数据之后,我们如何来串联各个场景进行定位呢?这就需要如下的空间地图

  • 水平方向:是服务之间的访问拓扑

  • 垂直方向:是服务下的服务实例的部署拓扑

这个空间地图就是将所有的场景进行串联起来,包含APM、Metric、Log、NPM数据等等,定位思路如下:

  • 先从水平方向定位定位到某个具体的服务

  • 然后再从垂直方向定位定位到具体的实例、或者实例所在的资源问题、或者服务自身代码

有了高质量的数据,加上我们对场景的认知,加上空间地图,基本上可以做到人工定位了,但是人工定位存在哪些问题呢?

  • 不是每个人都具备专家级的排障能力

  • 排障专家也是细分领域的,很难全能

  • 要分析的数据太多,人工分析速度太慢

因此必须要引入算法来实现自动化分析

4.4 算法自动化

使用算法会面临哪些难题?

  • 异常检测算法:比如每个服务的平均响应时间各不相同,如何自适应判定服务的平均响应时间波动上升了?

    • 使用比例?使用阈值?都会有很大的限制,无法做到普适性

  • 指标下钻算法:比如某个服务访问DB的平均响应时间上升?到底是哪些维度导致的呢?

    • 是某个database的访问都上升?

    • 只是某个table的访问都上升?

    • 只是Delete类型的SQL都上升?

    • 只是某个sql的访问都上升?

    • 只是某个服务实例才上升?

这2个算法问题解决了,基本才能实现自动化的故障定位。现在自动化的故障定位实现了?如何验证算法的普适性呢?比如很可能在耗时波动1000ms的故障可以定位,可能波动500ms的故障就定位不到了,那么就需要造出各种不同程度的故障来验证算法的普适性,这就又引出了混沌工程

4.5 混沌工程验证

阿里巴巴开源了一个混沌工程平台chaosblade-box,可以在上面制造出各种场景下的故障,以及可以制造出各种不同波动程度的故障,如下所示:

  • 可以自动触发各种类型的故障,7*24小时不间断制造故障,来验证根因分析的准确性

4.6 定位结果的呈现

有些定位方案,只能给出最后的一个结果,无法展示推理过程,这种就导致用户不太能验证最后的结论到底是否准确。根据我们的上述方案,其实完全可以做到定位流程的白盒化

  • 可以展示出服务的故障树(只展示跟故障相关的服务)

  • 可以展示出每个服务的故障原因(比如DB故障中,可能是某个SQL耗时增多的故障)

5 故障定位的实践

在第一性原理的指引下,经过我们一步步的详细分析,最终给出了解决方案,接下来就来看下实践效果

//我觉得这里是不是要这样来介绍实践。依据第一性原理,我们设计了一套故障定位的引擎。然后对这个引擎做个基本介绍。

再往下就是以这个引擎为基础,我们的定位实践。

5.1 SQL读取行数增多的案例

通过混沌工程注入某个SQL读取行数增多的案例,根因分析结果如下

故障详情如下:

  • 先给出某个SQL的平均响应时间上升

  • 最后也给出平均响应时间上升的原因是:SQL的读取行数增多导致的

5.2 多个耗时故障的案例

通过混沌工程注入DB某个sql更新行数增多的故障、Redis某个命令耗时增多的故障

根因分析结果如下:能够自动识别出是2个故障,并形成对应的故障树

根因详情如下所示:

5.3 多个错误故障的案例

通过混沌工程注入DB某个sql错误增多的故障、Redis某个命令错误增多的故障

根因分析结果如下:能够自动识别出是2个故障,并形成对应的故障树

根因详情如下所示:

深度探索!AI应用架构师的智能监控系统架构新视野 数据融合:如何整合metrics(数值型指标,如CPU使用率)、logs(文本型日志,如错误堆栈)、traces(链路型数据,如请求调用链)三类异构数据?异常检测:如何从噪声数据中识别“真正的异常”(如偶发的网络波动 vs 持续的服务降级)?根因分析:如何从“症状”(如接口超时)定位“病因”(如数据库连接池耗尽)?预测性运维:如何提前预测故障(如未来1小时内服务器负载将超过阈值)?可观测性(Observability) 阅读详情

相关推荐

Multi-Agent 系统的日志设计:从采集规范到分析应用的完整方法论

随着大模型驱动的Multi-Agent系统在企业服务、自动驾驶、AIGC生产链、科研协作等场景的大规模落地,其自主性、分布式、非确定性的核心特性给传统可观测性体系带来了前所未有的挑战:Agent自主决策过程黑盒化、跨Agent交互链路断裂、故障根因无法追溯、行为合规审计缺失等问题已经成为制约Multi-Agent系统工业化落地的核心瓶颈。

AI 原生应用开发的博客 135

智能运维 | 故障诊断与根因分析论文一览

近些年来,在需要支持多平台的互联网应用中,微服务架构越来越受欢迎。与此同时,对于互联网公司来说,微服务的性能质量至关重要,因为微服务故障会降低用户体验并带来经济损失。有效的定位故障的根本原因对于快速恢复服务并减轻损失来说至关重要。随着5G与云计算的⼤⼒发展,如何进行更自动化的运维以管理⼤规模的服务设备,是当今云⼚商⾮常关心的问题。针对这⼀问题,全球权威的IT研究与顾问咨询公司 Gartner于2016年提出了AIOps(Artificial Intelligence for IT Operations)

weixin_53741275的博客 7286

大数据数据血缘在领域中的深度探索

数据血缘的本质是回答“数据从哪里来,到哪里去,如何变化”故障溯源:当报表数据错误时,快速定位是“源数据污染”还是“处理逻辑bug”;合规审计:满足GDPR“数据主体访问请求”(如用户要求删除数据时,需确认其数据流向的所有系统);成本优化:识别“僵尸数据”(未被任何下游使用的表),减少存储与计算成本;信任构建:为AI模型提供“可解释性”(如推荐系统的特征来源可查)。在“数据驱动”的时代,数据的价值不仅在于“量”,更在于“可信”。数据血缘作为记录数据全生命周期的“DNA”,是构建可信数据生态的核心工具。

AI架构师小马 785

如何让知识图谱告诉你“故障根因”

摘要:NAIE利用知识图谱打造了一个有知识能推理的“在线运维专家系统”。 AI的时代潮流,为我们带来了众多的新名词:深度学习、神经网络、知识图谱.... 你是否都对它们耳熟能详?是否都清楚它们有哪些应用? 华为网络人工智能引擎(NAIE)致力实现网络的“自优”、“自愈”和“自维护”。其中一个关键环节就是出现网络故障时系统能够自动分析定位故障根因,自动采取相应的恢复手段、维护策略,NAIE利用知识图谱打造了一个有知识能推理的“在线运维专家系统”。 本系统除了能对接机器数据实现机机自动化接口,处理网管系

华为云官方博客 5918

探索大数据领域数据仓库的容错机制

在大数据时代,数据已成为企业最核心的战略资产,而数据仓库作为集中存储和分析这些资产的关键基础设施,其可靠性直接关系到业务连续性和决策质量。本文系统阐述了大数据数据仓库容错机制的理论基础、架构设计、实现技术与企业实践,构建了从基础概念到高级应用的完整知识体系。通过深入分析分布式系统的本质挑战,本文揭示了容错机制的第一性原理,详细剖析了存储层、计算层和元数据层的多层次容错架构,并结合Hadoop生态系统的典型实现(HDFS、Spark、HBase等)提供了技术落地指南。

软件工程实践的博客 1012

kemeas算法继续优化——elkan kmeas算法

题记:又是凌晨3点的夜 elkan kmeans算法 在我的上一篇博客《kmeans算法性能改进_kmeans++算法+kmeans++优化算法+距离计算优化》中,在一般kmeans算法的基础上,添加了对于初始条件和距离计算更上的一些优化技巧。这篇博客聊一聊elkan算法,其实也是对于kmeans运行速度的优化算法。主要作用与kmeans的距离计算过程。 原理 假如我们已经知道任意两个样本之间的距离,再假设我们已经知道了样本1与聚类中心1之间的距离,根据三角性两边之和大于第三边,c+d>a,所以如果

铁血军的小博客 7065

故障定位场景下的数据可视化实践

作者简介运小炜    百度高级研发工程师负责百度智能监控平台(赛亚平台)的设计和研发工作,在系统监控、业务监控等方向有广泛的实践经验。干货概览百度拥有上百条产品线,数十万的服务,每个服务时时刻刻都在产生着海量的监控数据,形成的监控项规模总数已达数十亿。面对如此海量的数据,在日常运维(如故障诊断、成本分析、性能优化等场景)过程中,传统的统计图表难以有效直观地展示如此庞大的数据。因此,优秀的监控数据可

AIOps智能运维 4522

告别理论纠结!用ADS和Sigrity玩转电源完整性:从PDN阻抗优化到芯片供电仿真全流程

本文详细介绍了如何利用ADS和Sigrity工具进行电源完整性(PI)分析,从PDN阻抗优化到芯片供电仿真的全流程。通过频域、直流和时域分析,工程师可以精确评估电源网络性能,优化设计以避免电压波动和系统失效。文章还提供了ADS和Sigrity PowerDC的实战操作指南,帮助读者掌握现代PI设计的核心技术。

weixin_33749242的博客 310

52 | 故障排查与根因分析

今天我们聊的是线上故障的排查与根因分析。从理论上讲,我们将故障排查过程定义为反复采用“假设 - 验证排除”手段的过程:针对某系统的一些观察结果和对该系统运行机制的理论认知,我们不断提出一个造成系统问题的假设,进而针对这些假设进行测试和排除。为了有效排查故障,日志系统在里面起到了关键作用。定位问题本身就是 “假设 - 验证排除 - 再假设 - 再验证排除” 这样的循环,直至最后定位到问题。所以基于时序数据的日志系统,往往查询支持非常多样化的过滤条件,功能非常强大。

qq_37756660的博客 1882

自定义LayoutManager实现android-pile-layout滑动卡片堆叠效果

这是我的第一篇博客,总算有个契机开始写博客了,就从自定义LayoutManager开始吧。 前段时间看到一个项目(android-pile-layout),效果特别不错,这是效果图: 效果确实不错,我看了下实现,是用的自定义的ViewGroup实现的,计算什么还搞的挺复杂的,具体的没细看。作者说也尝试过用LayoutManager实现,但是没找到合适的数学模型,好吧,看到数学模型我

u014296305的博客 1万+

手眼标定搞定了,手眼矩阵不知道怎么用?快戳!!

手眼标定得到手眼矩阵到底该咋用? 大家好,我是小鱼。上几期给大家分享了关于手眼标定的方法,如果还有不清楚如何让进行手眼标定的同学可以参考下面的文章: 机器人手眼标定都能搞不定?快戳,最好用的手眼标定库!!! 很多同学做完了手眼标定之后得到了手眼矩阵,但是不知道怎么用于程序当中去,还有很多同学搞不清楚各个坐标系之间的关系,今天小智就给大家讲讲手眼矩阵的使用问题。 一、手眼矩阵为什么会长的不一样? 做完手眼标定,得到的手眼矩阵,有可能会长的不一样,这是因为旋转变换是有很多种表示方法的。 1.旋转的表

生活不止眼前的苟且 5343

测试工程师的“第一性原理”思考

摘要:软件测试的第一性原理思维强调回归本质,即通过最小成本持续验证软件行为与预期的一致性。核心在于剥离行业惯例,聚焦降低质量风险、测试基本元素(预置条件、输入空间等)和约束条件优化。实践场景表明,基于第一性原理重构自动化测试、敏捷测试策略和AI测试设计可显著提升效率。培养该思维需采用连续追问、原子化拆解和跨域类比方法。这种思维转变将推动测试从成本中心转向价值创造,构建适应未来的弹性测试体系。(149字)

2501_94449311的博客 511

Linux系统杀毒软件深度评测:8款主流工具对比(2025最新版)

本文针对Linux服务器/桌面环境,实测8款杀毒软件,涵盖开源免费、企业级防护、轻量级工具等类型,附保姆级安装教程和避坑指南,新手也能5分钟选对工具!

awei0916的专栏 1万+

EEE框架:基于集成学习的机器学习模型在线故障修复与优化

在工程设计与科学计算中,机器学习模型已成为从数据到关键参数映射的核心工具。其原理在于通过训练数据学习复杂映射关系,实现快速预测。然而,当模型在未知工况下产生物理不合理或错误的预测时,尤其在航空航天、能源化工等高价值领域,其技术价值面临严峻挑战。传统重新训练方法成本高昂、周期长,难以应对突发失效。EEE框架(Ensemble search and Ensemble exploration with an Ensemble of estimators)为此提供了一种创新的在线修复方案。该框架的核心思想并非直接修

weixin_33676492的博客 606

Win10 桌面回收站右键没有“清空回收站”选项怎么解决

Win10 桌面回收站右键没有“清空回收站” 选项怎么解决? 我之前不知道怎么捣鼓注册表(胡乱删了一些。。。) 导致想清空回收站的时候,右键却没有“清空回收站”这个选项了 以下是解决方法: 1、在桌面上新建一个txt文本文档,将以下代码拷贝进去: Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT\*\shell\empty] "Com...

菜鸟的后花园 2万+

图像处理基础 || (一) python 读取图像的常用方式

图像的读取与保存是图像处理或计算机视觉领域中最基本的操作,python中有众多的库支持图像的读取、显示与存储,常用的库包括 matplotlib、skimage 和 Pillow 库。

weixin_40234309的博客 5689

提示工程架构师探索Agentic AI提示工程可解释性的实践路径

随着Agentic AI(具备自主决策、环境交互和长期规划能力的智能体系统)的普及,提示工程已从“输入输出优化”升级为“引导智能体推理逻辑”的核心工具。然而,智能体的多步推理、状态依赖和环境反馈特性,使得提示与决策之间的因果关系愈发模糊,可解释性成为制约Agentic AI落地的关键瓶颈。本文基于第一性原理和因果推理框架,提出一套可解释Agentic AI提示工程实践路径。

操作系统内核探秘的博客 991

ISO21434 组织网络安全管理(二)

为了实现网络安全工程,该组织建立并维护网络安全治理和网络安全文化,包括网络安全意识管理、能力管理和持续改进。这涉及到指定针对本文档的目标进行独立审计的特定于组织的规则和过程。 为了支持网络安全工程,该组织实施了网络安全的管理系统,包括管理工具和应用质量管理系统。

qq_42357877的博客 1322

从蓝牙定位到多模态交互:千寻智能十年技术演进之路

空间计算与多模态交互是当前人机交互领域的前沿方向。其核心技术在于融合多种传感器数据,通过算法实现精准环境感知与意图理解。从技术原理看,这涉及信号处理、计算机视觉、自然语言处理等跨学科知识,最终目标是打造无缝的智能空间体验。在实际工程应用中,需要解决传感器误差补偿、多模态数据对齐、实时性优化等挑战。以室内导航为例,系统需同时处理蓝牙信标、视觉特征、惯性测量等多源信息,并通过语义理解将用户模糊需求转化为精确指令。千寻智能的案例展示了如何通过十年迭代,从基础定位发展到情感化交互,其技术演进路径对智能硬件、商业数字

weixin_33402252的博客 187

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

从工具依赖到系统直觉:开发者如何培养直击问题本质的能力

在软件工程实践中,系统调试与性能优化是开发者必须掌握的核心技能。其原理在于深入理解计算机系统、网络通信、数据库及运行时环境的工作原理,而非仅仅依赖外部监控工具。这种深度理解的技术价值在于,它能帮助开发者构建一种“系统直觉”,使其在面对复杂问题时,能快速形成假设并直击根源,从而大幅提升故障排查效率与系统稳定性。在实际应用场景中,无论是微服务链路超时、数据库死锁,还是资源瓶颈,具备系统直觉的开发者都能通过分析线程堆栈、检查系统资源使用率、审查原始日志等底层手段,高效定位问题。本文以“张起灵不需要破译密码机”为引

ciya3282的博客 403

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

SpaceX降本革命:可重复使用火箭如何重构商业航天与星际探索

可重复使用火箭是近年来航天领域最核心的技术变革之一,其本质是通过垂直着陆与海上回收实现助推器的多次服役,从而打破传统一次性发射的高昂成本结构。这一原理不仅降低了单次入轨的边际成本,更催生了高频发射、快速迭代的工程范式。在技术价值层面,它让商业发射市场从“国家级预算”转向普通企业可参与的开放生态,也为低轨卫星互联网的大规模组网提供了基础设施支撑。围绕可重复使用火箭形成的供应链垂直整合、软件定义火箭等方法,叠加第一性原理驱动的成本控制体系,正在重塑整个航天产业的商业逻辑。从发射服务到星链运营,再到星舰探索火星的

weixin_31869917的博客 293

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

从混沌到掌控:技术人如何高效上手新工具并沉淀工程化能力

在技术学习与工程实践中,从陌生到熟悉的过程往往伴随着对系统内在逻辑的深刻理解。理解一个技术栈或工具的原理,意味着从单纯执行操作流程,转变为理解其输入输出映射、组件职责边界与资源瓶颈。这种理解能有效提升问题排查效率,将错误信息转化为调试线索,并帮助构建可迁移的知识网络。其技术价值在于,它能将孤立的知识点连接起来,形成应对复杂场景的工程化能力,例如在部署、配置与故障处理中实现从“玩转”到“能用”的跨越。常见的应用场景包括学习新编程语言、上手开源框架、部署复杂系统等。本文聚焦于通过建立最小可验证环境、执行完整操作

weixin_34232744的博客 316

MCP的第一性原理:从工具调用到能力协议

这篇文章是MCP(Model Context Protocol)开发指南的摘要。MCP是一个用于连接AI模型与外部工具/服务的开放协议标准,由Anthropic提出。 主要内容包括: MCP协议概述 解决了AI应用与外部服务集成标准化问题,类似USB-C统一接口 采用Host-Server架构,支持双向通信 提供Tools(可调用操作)、Resources(可读取数据)、Prompts(提示词模板)三类能力 快速入门指南 提供5分钟快速上手指南 包含Python SDK安装和"Hello World"

sinat_28228747的博客 433

我的年终总结2025

我的年终总结2025

liuzhilong的博客 1172

<span class=“js_title_inner“>敬畏系统复杂性:写给AI辅助开发的2025年度总结</span>

2025年即将过去,总要写点什么告别一下。这一年,AI辅助软件开发继续成为学术界和工业界以及人工智能和软件工程领域共同关注的焦点。而年初OpenAI联合创始人、特斯拉前人工智能主管Andrej Karpathy所提出的氛围编程(Vibe Coding)更是成为这一年的热词。顺便说一句,“软件2.0”的概念(即通过训练神经网络而非编写代码的方式实现软件)也是这位仁兄提出的,那时候还是2017年,ChatGPT还没出来。这里也预告下,我已经在构思的2026年新年特辑文章会谈一下“软件2.0”、智能化软件以及Pa

pengxin_ce的博客 67

技术人如何避免盲目模仿陷阱:从表象到内核的理性成长

在软件工程实践中,技术选型与架构设计是开发者面临的核心挑战。理解技术背后的第一性原理和权衡取舍,是做出理性决策的基础。微服务、DDD等架构模式的价值在于其解决特定复杂度问题的能力,而非形式上的先进性。技术选型需结合团队上下文与业务场景,避免因追逐热门框架而引入不必要的复杂度。本文以技术领域的“模仿陷阱”为切入点,探讨如何识别技术选型、架构设计、开发实践中的常见误区,强调通过上下文感知、增量演进的思维,建立可持续的技术成长路径,帮助开发者在微服务架构、技术选型等关键决策中避开陷阱,实现从形式模仿到本质理解的跨

weixin_30383279的博客 962
上一篇: 基于因果AI与DeepSeek的故障定位实践:技术解析与落地应用
下一篇: 乘云数字获评“鑫智奖·2025专家推荐TOP10优秀解决方案”,赋能银行新核心系统运维
aiSRE工程狮
博客等级 码龄5年 423粉丝 92原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值