当前位置: 首页 > article >正文

OpenClaw 大结局——接入个人微信诤

本课概览Microsoft Agent Framework (MAF) 提供了一套强大的 Workflow工作流 框架用于编排和协调多个智能体Agent或处理组件的执行流程。本课将以通俗易懂的方式帮助你理解 MAF Workflow 的核心概念概念 说明 类比Workflow 工作流定义 ?? 流程图Executor 执行器/处理节点 ?? 工人Edge 连接边 ?? 传送带SuperStep 超步/批量处理 ?? 处理周期WorkflowContext 工作流上下文 ?? 工作台WorkflowEvent 工作流事件 ?? 通知Run 运行实例 ?? 一次执行Checkpoint 检查点 ?? 存档点让我们逐一深入了解这些概念?? 为什么需要 Workflow在构建 AI 智能体应用时我们经常需要多步骤处理用户请求需要经过多个处理环节多智能体协作不同的 Agent 各司其职协同完成任务条件分支根据处理结果决定下一步走向并行处理某些任务可以同时进行以提高效率状态管理需要在处理过程中保存和恢复状态传统方式的问题// ? 硬编码的流程难以维护和扩展var result1 await agent1.ProcessAsync(input);if (result1.Success){var result2 await agent2.ProcessAsync(result1.Data);// ... 越来越复杂}使用 Workflow 的优势// ? 声明式定义清晰可维护var workflow new WorkflowBuilder(startExecutor).AddEdge(executor1, executor2).AddEdge(executor2, executor3, condition: x x.Success).Build();一、核心概念Executor执行器?? 什么是 ExecutorExecutor执行器 是 Workflow 中的最小工作单元类似于类比 说明????? 工厂里的工人 每个工人负责一道工序?? 乐高积木块 每个积木有特定功能组合成整体?? 电路中的元件 接收输入信号输出处理结果?? Executor 的核心特征唯一标识Id每个 Executor 有一个唯一的 ID用于在 Workflow 中引用消息处理接收特定类型的输入消息处理后产生输出消息路由配置通过 ConfigureRoutes 方法定义能处理哪些类型的消息状态感知可以通过 IWorkflowContext 访问和修改工作流状态??? Executor 的类型层次MAF 提供了多种 Executor 类型满足不同场景需求类型 用途 示例场景Executor 处理消息无返回值 日志记录、通知发送Executor 处理消息有返回值 数据转换、AI 调用FunctionExecutor 用委托函数快速创建 简单处理逻辑StatefulExecutor 需要维护状态的执行器 会话管理、计数器?? Executor 源码解析从源码中可以看到 Executor 的核心设计// 来自 Executor.cspublic abstract class Executor : IIdentified{// 唯一标识符public string Id { get; }// 配置消息路由子类必须实现protected abstract RouteBuilder ConfigureRoutes(RouteBuilder routeBuilder);// 执行消息处理public async ValueTask ExecuteAsync(object message,TypeId messageType,IWorkflowContext context,CancellationToken cancellationToken default){// 记录调用事件await context.AddEventAsync(new ExecutorInvokedEvent(this.Id, message));// 路由消息到正确的处理器CallResult? result await this.Router.RouteMessageAsync(message, context, ...);// 记录完成或失败事件ExecutorEvent executionResult result?.IsSuccess is not false? new ExecutorCompletedEvent(this.Id, result?.Result): new ExecutorFailedEvent(this.Id, result.Exception);await context.AddEventAsync(executionResult);return result.Result;}}关键点? 每个 Executor 有唯一 ID? 通过 ConfigureRoutes 声明能处理的消息类型? 执行过程会产生事件ExecutorInvokedEvent、ExecutorCompletedEvent 等二、核心概念Edge边?? 什么是 EdgeEdge边 是连接两个 Executor 的消息通道类似于类比 说明?? 工厂传送带 把上一道工序的产品传送到下一道工序?? 水管 把水从一个容器引导到另一个容器?? 邮路 把信件从发件人送到收件人?? Edge 的三种类型MAF 支持三种类型的 Edge适用于不同的流程模式类型 说明 使用场景Direct直连 一对一连接 顺序处理流程FanOut扇出 一对多连接 并行分发任务FanIn扇入 多对一连接 汇聚多个结果?? Edge 源码解析从源码可以看到 Edge 的核心结构// 来自 Edge.cspublic enum EdgeKind{Direct, // 直连一对一FanOut, // 扇出一对多FanIn // 扇入多对一}public sealed class Edge{public EdgeKind Kind { get; init; } // 边的类型public EdgeData Data { get; init; } // 边的具体数据}// 来自 DirectEdgeData.cs - 直连边的数据public sealed class DirectEdgeData : EdgeData{public string SourceId { get; } // 源 Executor IDpublic string SinkId { get; } // 目标 Executor IDpublic Func? Condition; // 可选的条件判断}Direct Edge 示意图关键点? Edge 定义了消息从哪里来、到哪里去? Direct Edge 支持条件路由只有满足条件的消息才传递? FanOut Edge 可以实现广播或分区逻辑三、核心概念Workflow工作流?? 什么是 WorkflowWorkflow工作流 是将多个 Executor 通过 Edge 连接起来的完整流程定义类似于类比 说明?? 流程图 定义了从开始到结束的完整流程?? 生产线 多个工位通过传送带连接成完整生产线?? 乐谱 规定了演奏的顺序和节奏?? Workflow 的核心属性从源码中可以看到 Workflow 的核心结构// 来自 Workflow.cspublic class Workflow{// 起始 Executor 的 IDpublic string StartExecutorId { get; }// 工作流名称可选public string? Name { get; internal init; }// 工作流描述可选public string? Description { get; internal init; }// Executor 绑定字典internal Dictionary ExecutorBindings { get; init; }// 边的集合按源节点分组internal Dictionary Edges { get; init; }// 输出 Executor 集合internal HashSet OutputExecutors { get; init; }}?? 使用 WorkflowBuilder 构建工作流MAF 采用 建造者模式Builder Pattern 来构建 Workflow这使得工作流的定义更加直观// 创建工作流示例var workflow new WorkflowBuilder(startExecutor) // 指定起点.WithName(订单处理工作流) // 设置名称.WithDescription(处理电商订单的完整流程) // 设置描述.AddEdge(receiveOrder, validateOrder) // 添加边.AddEdge(validateOrder, processPayment,condition: x x.IsValid) // 条件边.AddEdge(processPayment, sendNotification).WithOutputFrom(sendNotification) // 指定输出节点.Build(); // 构建工作流关键方法方法 说明AddEdge(source, sink) 添加直连边AddEdge(..., condition) 添加条件边AddFanOut(source, sinks) 添加扇出边AddFanIn(sources, sink) 添加扇入边WithOutputFrom(executor) 指定输出节点BindExecutor(executor) 绑定占位符执行器Build() 构建最终的 Workflow四、核心概念SuperStep超步?? 什么是 SuperStepSuperStep超步 是 Workflow 执行的基本处理周期。可以类比为类比 说明?? 游戏中的回合 每个回合内所有玩家同时行动? 工厂的班次 每个班次内完成一批任务?? 海浪的一波 一波消息被处理然后产生下一波?? SuperStep 的执行流程每个 SuperStep 内部执行的步骤关键事件SuperStepStartedEvent超步开始SuperStepCompletedEvent超步完成// SuperStep 事件定义public class SuperStepEvent(int stepNumber, object? data null) : WorkflowEvent(data){// 超步的序号从 0 开始public int StepNumber stepNumber;}五、核心概念WorkflowContext工作流上下文?? 什么是 WorkflowContextWorkflowContext工作流上下文 是 Executor 执行时的运行环境类似于类比 说明??? 工人的工作台 提供工具、材料和通信渠道?? 通信枢纽 允许各个工位之间传递信息?? 共享内存 存储和读取状态数据?? IWorkflowContext 核心接口// 来自 IWorkflowContext.cspublic interface IWorkflowContext{// 添加工作流事件在当前 SuperStep 结束时触发ValueTask AddEventAsync(WorkflowEvent workflowEvent, CancellationToken cancellationToken default);// 发送消息给下游 Executor在下一个 SuperStep 处理ValueTask SendMessageAsync(object message, string? targetId, CancellationToken cancellationToken default);// 输出工作流结果ValueTask YieldOutputAsync(object output, CancellationToken cancellationToken default);// 请求在当前 SuperStep 结束时停止工作流ValueTask RequestHaltAsync();// 读取状态ValueTask ReadStateAsync(string key, string? scopeName null, CancellationToken cancellationToken default);// 读取或初始化状态ValueTask ReadOrInitStateAsync(string key, Func initialStateFactory, string? scopeName null, CancellationToken cancellationToken default);// 更新状态排队更新在 SuperStep 结束时应用ValueTask QueueStateUpdateAsync(string key, T value, string? scopeName null, CancellationToken cancellationToken default);}关键点? 消息传递通过 SendMessageAsync 在 Executor 之间传递消息? 状态管理支持读取、初始化和更新状态? 事件通知通过 AddEventAsync 发出事件? 流程控制通过 RequestHaltAsync 停止工作流六、核心概念WorkflowEvent工作流事件?? 什么是 WorkflowEventWorkflowEvent工作流事件 是工作流执行过程中产生的通知消息类似于类比 说明?? 广播通知 向所有人广播系统状态变化?? 日志记录 记录系统执行过程中的关键节点?? 事件订阅 允许外部监听并响应特定事件?? 事件分类事件层级 事件类型 说明工作流级别 WorkflowStartedEvent 工作流开始执行WorkflowOutputEvent 工作流产生输出WorkflowErrorEvent 工作流发生错误WorkflowWarningEvent 工作流产生警告超步级别 SuperStepStartedEvent 超步开始SuperStepCompletedEvent 超步完成执行器级别 ExecutorInvokedEvent Executor 被调用ExecutorCompletedEvent Executor 完成处理ExecutorFailedEvent Executor 处理失败七、核心概念Run运行实例?? 什么是 RunRun运行实例 是 Workflow 的一次具体执行类似于类比 说明?? 电影的一场放映 同一部电影可以放映多场?? 生产线的一个批次 同一条生产线可以生产多个批次?? 游戏的一局 同一个游戏可以玩多局?? Run 的核心特性// 来自 Run.cspublic sealed class Run : IAsyncDisposable{// 运行实例的唯一标识符public string RunId this._runHandle.RunId;// 获取当前执行状态public ValueTask GetStatusAsync(CancellationToken cancellationToken default);// 获取所有产生的事件public IEnumerable OutgoingEvents this._eventSink;// 获取自上次访问后的新事件public IEnumerable NewEvents { get; }// 恢复执行带外部响应public async ValueTask ResumeAsync(IEnumerable responses, CancellationToken cancellationToken default);}?? RunStatus运行状态public enum RunStatus{NotStarted, // 尚未开始Idle, // 空闲已暂停无待处理请求PendingRequests, // 等待外部响应Ended, // 已结束Running // 正在运行}八、核心概念Checkpoint检查点?? 什么是 CheckpointCheckpoint检查点 是工作流在某个时刻的完整状态快照类似于类比 说明?? 游戏存档 保存游戏进度随时可以读档继续?? 照片 记录某一时刻的完整状态?? 书签 标记阅读进度下次从这里继续?? Checkpoint 的核心信息// 来自 CheckpointInfo.cspublic sealed class CheckpointInfo{// 运行实例的唯一标识符public string RunId { get; }// 检查点的唯一标识符public string CheckpointId { get; }}// 检查点的完整数据来自 Checkpoint.csinternal sealed class Checkpoint{public int StepNumber { get; } // 超步编号public WorkflowInfo Workflow { get; } // 工作流信息public RunnerStateData RunnerData { get; } // 运行器状态public Dictionary StateData { get; } // 状态数据public Dictionary EdgeStateData { get; } // 边状态数据public CheckpointInfo? Parent { get; } // 父检查点}?? Checkpoint 的使用场景场景 说明故障恢复 系统崩溃后从最近的检查点恢复长时间运行 分段执行每段结束保存进度人机交互 等待用户输入时保存状态调试回放 从任意检查点重新执行版本分支 从同一个检查点创建多个分支执行九、核心概念关系图?? 概念之间的关系让我们把所有核心概念联系起来看看它们是如何协作的?? 生命周期视角从工作流的完整生命周期来看?? 消息流视角从消息在工作流中的流动来看关键理解消息驱动Executor 之间通过消息传递数据异步批处理同一 SuperStep 内的 Executor 可以并行执行边控制流向Edge 决定消息从哪里到哪里状态隔离每个 SuperStep 结束时应用状态更新十、实际应用示例?? 场景电商订单处理工作流让我们通过一个实际场景来理解这些概念的应用?? 概念对应关系概念 在此场景中的体现Workflow 整个订单处理流程Executor 每个处理步骤接收、验证、支付等Edge 步骤之间的连接含条件判断SuperStep 每一轮处理如超步1处理接收超步2处理验证...WorkflowContext 提供订单状态读写、消息发送能力WorkflowEvent 每个步骤的开始/完成/失败事件Run 一个具体订单的处理过程Checkpoint 处理中途保存的状态如支付完成后保存?? 场景多智能体协作工作流在 AI Agent 场景中Workflow 可以用来编排多个 Agent 的协作Workflow 的优势优势 说明?? 灵活编排 可以轻松调整 Agent 之间的协作关系?? 状态管理 自动管理各 Agent 的状态和上下文?? 可中断/恢复 支持人机交互随时暂停和恢复?? 可观测性 通过事件追踪整个执行过程??? 容错能力 通过检查点支持故障恢复十一、概念总结?? 核心概念速查表概念 定义 关键类 核心职责Executor 执行器/处理节点 Executor, Executor, FunctionExecutor 处理消息产生输出Edge 连接边 Edge, EdgeData, DirectEdgeData 定义消息流向和条件Workflow 工作流定义 Workflow, WorkflowBuilder 组织 Executor 和 EdgeSuperStep 超步/批量处理周期 SuperStepEvent, SuperStepStartedEvent 批量处理消息WorkflowContext 工作流上下文 IWorkflowContext 提供运行时服务WorkflowEvent 工作流事件 WorkflowEvent, ExecutorEvent 通知执行状态Run 运行实例 Run, RunStatus 管理一次执行Checkpoint 检查点 CheckpointInfo, ICheckpointStore 保存和恢复状态磁偌着约

相关文章:

OpenClaw 大结局——接入个人微信诤

本课概览 Microsoft Agent Framework (MAF) 提供了一套强大的 Workflow(工作流) 框架,用于编排和协调多个智能体(Agent)或处理组件的执行流程。 本课将以通俗易懂的方式,帮助你理解 MAF Workflow 的核心概念…...

M5-SX127x:面向ESP32的轻量级LoRa驱动库

1. 项目概述M5-SX127x 是一款专为 M5Stack 硬件平台设计的 SX127x 系列 LoRa 射频模块驱动库,其核心目标是为基于 ESP32 主控的 M5Stack 系列开发板(如 M5Stack Core、Core2、Atom Echo 等)提供轻量、可靠、可移植的 LoRa 物理层通信能力。该…...

AI理论能力或吞噬美国就业市场?真相并非如此

AI理论上能完成超80%工作任务,就业市场要变天?本月,Anthropic发布的关于人工智能对劳动力市场影响的报告中一张图表广为流传。它对比了22个职业类别中,当前职业对大语言模型(LLM)的“实际接触程度”和这些L…...

告别一人一链!微信URL Scheme新规详解:如何让同一个链接被千万用户访问

微信URL Scheme新规实战指南:如何设计高并发跳转架构 去年底微信团队对URL Scheme规则的调整,像一场及时雨浇灭了营销活动中的技术焦虑。记得去年双十一前夜,我们团队为了给H5活动页配置小程序跳转链接,不得不连夜生成数百万条独立…...

D3KeyHelper终极指南:暗黑3技能自动化与辅助功能完全解析

D3KeyHelper终极指南:暗黑3技能自动化与辅助功能完全解析 【免费下载链接】D3keyHelper D3KeyHelper是一个有图形界面,可自定义配置的暗黑3鼠标宏工具。 项目地址: https://gitcode.com/gh_mirrors/d3/D3keyHelper D3KeyHelper是一款专为《暗黑破…...

OFA与LangChain集成:构建智能图文问答系统

OFA与LangChain集成:构建智能图文问答系统 用AI看懂图片并回答你的问题,原来这么简单 你有没有遇到过这样的情况:看到一张复杂的图表,却不知道它在表达什么;或者收到一张产品图片,但找不到相关的说明文档。…...

VS2015环境下FreeImage库的安装与配置全攻略(含常见问题解决)

VS2015环境下FreeImage库的完整配置指南与实战技巧 在Windows平台进行图像处理开发时,选择合适的图像处理库往往能事半功倍。FreeImage作为一款轻量级但功能强大的开源库,支持超过20种常见图像格式,从BMP、JPEG到专业的TIFF格式都能轻松应对。…...

从湖北师大真题看C语言核心考点:循环、递归、数组实战避坑指南

从湖北师大真题看C语言核心考点:循环、递归、数组实战避坑指南 在C语言的学习过程中,真题练习是检验和提升编程能力的重要途径。湖北师范大学的专升本编程真题涵盖了循环、递归、数组等核心知识点,这些不仅是考试的重点,更是实际开…...

Qwen3.5-4B-Claude-Opus详细步骤:修改系统提示词打造专属AI助教方法

Qwen3.5-4B-Claude-Opus详细步骤:修改系统提示词打造专属AI助教方法 1. 理解模型特性 1.1 模型基础介绍 Qwen3.5-4B-Claude-4.6-Opus-Reasoning-Distilled-GGUF是一个基于Qwen3.5-4B的推理蒸馏模型,特别强化了结构化分析、分步骤回答、代码与逻辑类问…...

源码级交付的低代码革命:基于 Spring Boot 的 AI 视频中台二次开发实战

引言:从“项目定制”到“产品化”的跨越之痛 作为一名在安防行业摸爬滚打多年的架构师,我深知行业内的一个悖论:客户想要的是“开箱即用”的成熟产品,而现实场景却要求“千企千面”的深度定制。传统的开发模式下,为了满…...

第三十三课:LIF神经元模型与SpikingJelly实战解析

1. LIF神经元模型:从生物启发的数学原理说起 第一次看到LIF(Leaky Integrate-and-Fire)神经元时,我脑海中浮现的是中学物理课上那个总在漏电的电容器。这种神经元模型之所以被称为"漏电积分放电",正是因为它…...

Claude Code与Kimi跨平台部署及API调优实战

1. Claude Code与Kimi跨平台部署指南 最近在折腾AI编程助手时,我发现Claude Code和Kimi这两个工具搭配使用效果出奇的好。作为一个经常在不同操作系统间切换的开发者,我花了两周时间把Windows、macOS和Linux三个平台的部署都摸了个遍,今天就把…...

百元挂耳式耳机哪款音质好?带你弄懂最值得购买的十大开放式耳机

现在市面上有些牌子,价格标得挺高,体验却跟不上;还有些走低价路线的网红款,看着参数漂亮,实际到手一用——耳挂硬得硌耳朵,声音飘得像隔层纱,用不了几个月就开始出毛病。这种产品,买…...

FISCO BCOS 日常操作使用托管签名服务(如WeBASE-Sign),业务系统不直接接触私钥

实战:如何通过WeBASE-Sign实现私钥托管与安全签名 目录 引言 一、为什么需要签名分离 1.1 传统签名的安全困境 1.2 签名分离的架构优势 1.3 适用场景 二、WeBASE-Sign 签名服务核心原理 2.1 整体架构 2.2 核心接口 2.3 交易流程中的签名位置 三、实战:完整接入流程…...

从一次生产事故复盘说起:我们是如何用JProfiler为Spring Boot应用节省了40%内存的

从一次生产事故复盘说起:我们是如何用JProfiler为Spring Boot应用节省了40%内存的 那是一个周五的深夜,报警短信突然炸响了整个技术群的手机——核心订单服务在流量高峰时段连续触发OOM崩溃,自动重启后仅维持20分钟又再次宕机。运维团队被迫将…...

VL53L0X ToF测距模块Arduino驱动详解

1. 项目概述Deneyap Derinlik ler,即 Deneyap ToF Range Finder Sensor,是一款基于 STMicroelectronics VL53L0X 飞行时间(Time-of-Flight, ToF)测距传感器的 Arduino 兼容硬件模块。该模块专为土耳其 Deneyap 教育生态设计&#…...

SITS2026踩坑实录:47个生产环境AI推理延迟突增案例,含GPU调度错配、时序特征漂移检测及央行《智能风控接口规范》映射表

第一章:SITS2026案例:AI原生金融系统改造 2026奇点智能技术大会(https://ml-summit.org) 在2026年全球金融基础设施升级浪潮中,新加坡国际交易结算系统(SITS)启动代号为“Project Aether”的AI原生重构工程。该项目摒…...

什么年代了怎么还在用bash啊?现代化shell开箱体验: fish, nu, elvish口

整体排查思路 我们的目标是验证以下三个环节是否正常: 登录成功时:服务器是否正确生成了Session并返回了包含正确 JSESSIONID的Cookie给浏览器。 浏览器端:浏览器是否成功接收并存储了该Cookie。 后续请求:浏览器在执行查询等操作…...

数控自学常用的几个网站,建议收藏

CNC自学网 网址:https://www.cnczxw.com 老机械工程师的点评:这网站是块硬料,专搞数控的,从基础操作到高级编程都给你掰扯明白。教程实在,没那些花里胡哨的玩意儿,适合踏踏实实学手艺的。 我要自学网 网…...

2026奇点大会闭门报告首发(仅限首批200名工程负责人):AI原生测试的7层抽象架构与4类不可逆迁移陷阱

第一章:2026奇点智能技术大会:AI原生测试自动化 2026奇点智能技术大会(https://ml-summit.org) 在2026奇点智能技术大会上,“AI原生测试自动化”不再是一个愿景,而是已落地的工程范式——它将大语言模型、多模态推理与测试生命周…...

SIwave TDR仿真实战:从模型导入到阻抗结果深度解析

1. SIwave TDR仿真基础与实战价值 TDR(时域反射计)仿真是高速电路设计中不可或缺的验证手段。我第一次接触SIwave的TDR功能是在一个10Gbps SerDes链路项目中,当时遇到了信号完整性问题却苦于找不到准确的阻抗突变点。传统频域仿真虽然能给出S…...

《QMT量化实战系列》多因子策略进阶:动态权重调优与回测验证,年化收益再突破

1. 多因子策略的动态权重调优原理 我第一次接触动态权重调优时,就像发现了一个新大陆。传统的多因子策略就像给每个因子固定分配座位,而动态调优则是让这些因子根据市场环境自动调整位置。想象你在管理一支篮球队,固定权重就像让中锋永远站在…...

【AI原生研发黄金法则】:腾讯、字节、阿里3大厂实战验证的7大不可绕过的核心实践

第一章:AI原生软件研发最佳实践:大厂案例分享 2026奇点智能技术大会(https://ml-summit.org) 头部科技企业在构建AI原生软件时,已逐步形成以模型即服务(MaaS)、提示工程闭环、可观测性驱动开发(ODD&#…...

IC670PBI001总线接口单元

IC670PBI001 是 GE Fanuc Field Control 系列中的一款 Profibus 总线接口单元(BIU),主要用于连接PLC与远程I/O模块,实现数据通信与系统控制,是分布式I/O系统中的核心组件。1、作为系统核心接口单元,实现PLC…...

保姆级教程:用Python+Pytorch复现MSCNN-1D模型,搞定CWRU轴承故障诊断(附完整代码)

从零实现MSCNN-1D:Python实战轴承故障诊断全流程解析 轴承作为工业设备的核心部件,其健康状态直接影响生产安全。传统诊断方法依赖专家经验,而基于深度学习的智能诊断技术正成为行业新标准。本文将手把手带你用Python和PyTorch实现MSCNN-1D模…...

别再手动拼中间件了!用Go Kratos框架5分钟搞定一个带链路追踪的微服务

别再手动拼中间件了!用Go Kratos框架5分钟搞定一个带链路追踪的微服务 每次启动新项目时,你是否也厌倦了重复配置日志、监控、链路追踪这些基础设施?作为Go开发者,我们总在业务代码和中间件整合之间反复横跳。今天要介绍的Kratos框…...

深度学习回归任务中的五大误差指标解析(RMSE、MSE、MAE、MAPE、SMAPE)

1. 深度学习回归任务为什么需要误差指标? 做深度学习回归任务时,我们经常会遇到这样的困惑:模型训练好了,但怎么判断它到底好不好?这时候误差指标就是我们的"裁判"。想象一下,如果没有这些指标&a…...

EmojiOne Color彩色字体:终极免费表情解决方案

EmojiOne Color彩色字体:终极免费表情解决方案 【免费下载链接】emojione-color OpenType-SVG font of EmojiOne 2.3 项目地址: https://gitcode.com/gh_mirrors/em/emojione-color EmojiOne Color是一款开源的彩色表情字体,采用OpenType-SVG格式…...

别再只盯着天气预报了!用翻斗式雨量传感器DIY一个家庭小气象站(附数据记录方案)

家庭气象站DIY指南:用翻斗式雨量传感器打造智能微气候监测系统 清晨被雨声唤醒时,你是否好奇过自家阳台的精确降雨量?传统天气预报只能提供区域性的粗略数据,而家庭微气候往往存在显著差异。现在,只需一个翻斗式雨量传…...

为什么PyTorch基金会突然终止3个核心子项目?——2026奇点大会技术委员会首次披露AI原生开源治理白皮书(含5项强制合规条款)

第一章:PyTorch基金会治理突变事件全景速览 2026奇点智能技术大会(https://ml-summit.org) 2024年12月,PyTorch基金会宣布启动治理架构重大调整,标志着其从Meta主导的项目向真正中立、多利益相关方共治的开源基金会转型。此次变更并非渐进式…...