Agent 跑起来不难跑得稳才是真功夫。最近我在好几个项目里给 Agent 加了一层“判断器”——说白了就是让模型在动手干活之前先想清楚该不该干、先干什么、用什么工具干。这层东西看着不起眼却直接决定了 Agent 是靠谱的助手还是乱烧钱的定时炸弹。今天想认真聊聊我在这条路上用到的两个模型Laya 和 Jev以及围绕它们的部署方案和选型思路。这篇文章适合正在做 Agent 开发、想把判断逻辑真正落地的人也适合那些已经在用各类 Agent 框架、但发现模型“一跑就偏”的朋友。先说一个很直接的结论判断器不是一个独立的大模型它是 Agent 架构里的一层决策逻辑。你可以用轻量模型做快速判断Laya 路线也可以用强推理模型做复杂规划Jev 路线还可以用规则和本地部署兜底。具体怎么选取决于你的任务复杂度、延迟预算和钱包厚度。下面我把每个环节的取舍、接入方式和踩过的坑都摊开讲。1. 为什么 Agent 的“判断器”不是可有可无1.1 能回答问题不等于能完成任务很多人第一次做 Agent 时有个错觉模型够聪明Agent 就能自动把事情办好。真上手才发现完全不是这么回事。对话模型回答“怎么订机票”没问题但你要它真正去查航班、比价、下单它面对的不再是“一句话”而是一堆工具调用、参数校验、中间结果判断和异常处理。没有判断器的时候Agent 的行为是这样的拿到用户指令直接丢给主模型主模型凭感觉猜一个工具猜错了再换一个直到把上下文撑爆。我在一个内部项目里见过最夸张的情况一个简单的“查天气并提醒我带伞”任务Agent 连续调了 11 次工具其中 7 次是在反复试同一个接口的错误参数。不是模型笨是没有人告诉它“这一步到底该怎么判断”。判断器解决的就是这个“该怎么判断”的问题。它不负责真正干活而是负责拆任务、选工具、定边界。你可以把它理解成一个项目经理不写代码但知道每个任务该派给谁、优先级是什么、预算花到多少必须停。1.2 判断器到底管哪三层我习惯把判断逻辑分成三层每一层的职责和模型要求都不一样。第一层是任务层。用户说“帮我整理这周的开销并生成周报”它要把这个目标拆成“拉账单”“分类统计”“生成报告”三个步骤还要决定先后顺序。这一层对推理能力要求最高因为拆错了后面全错。第二层是工具层。每个子任务对应哪个工具、参数怎么填、返回结果怎么解析这是判断器最日常的工作。比如“拉账单”应该调用财务 API 而不是日历 API。这层对模型的指令跟随能力和格式稳定性要求很高。第三层是安全与预算层。判断哪些权限不能给、哪些操作需要人确认、API 调用次数到什么阈值要停。这一层看起来最简单但恰恰是大多数 Agent 翻车的地方。没有这层判断一个错误的循环调用就能把你的 token 烧光。1.3 没有判断器的典型事故现场我踩过的坑可以列出三张账单。第一张是费用账单一个自动化 Agent 在跑批处理任务时因为判断逻辑缺失反复调用耗时的外部模型接口一晚上烧掉了平时一周的预算。第二张是上下文爆炸主模型什么历史都往上下文里塞到第二轮对话时已经把有效信息淹没开始胡言乱语。第三张是执行失败错误信息直接抛给用户看——“agent execution terminated due to error.”用户一脸懵我们一脸尴尬。后来我把判断器加上去这三个问题都得到了根本性的改善。原因很简单判断器让 Agent 从“凭感觉行动”变成“按计划行动”每一轮决策都有依据、有记录、有止损线。2. Laya轻决策专用模型给 Agent 做“快思考”2.1 为什么需要 Laya 这种轻量判断模型Agent 的每个环节都去调一个百亿参数大模型既慢又贵。尤其在工具路由、意图识别这些高频、低复杂度的判断上完全可以用更轻的模型来扛。我试过用普通小模型做路由但稳定性差经常格式不稳定导致解析失败。Laya 给我的直观感受是它在“快速分类”这类任务上更专注输出结构稳定响应延迟低跑在本地或者边缘设备上都不吃力。它的定位说白了就是“决策层里的快思考”不需要多么深邃的推理但必须在几十毫秒内给出一个可靠的选择。比如用户消息进来先判断这是闲聊、提问还是任务指令如果是任务指令再判断该走哪个工具。这些判断用大模型做是杀鸡用牛刀用硬规则做又太僵硬Laya 这个体量刚好合适。2.2 用 Laya 做工具路由的接入示例我通常把 Laya 封装成一个 router放在主模型前面。基本的接入思路是这样的接收用户输入和可用工具列表由 Laya 输出一个 JSON指明该调用哪个工具以及参数草案然后再由主模型或规则对参数做最终校验。import requests def laya_route(user_input, tools): prompt f 你是一个工具路由器。根据用户输入从以下工具中选择最合适的一个并输出 JSON。 工具列表 {tools} 用户输入{user_input} 输出格式 {{tool: 工具名, reason: 简短理由, params: {{关键参数: 草稿值}}}} resp requests.post( http://localhost:8000/v1/chat/completions, json{ model: laya-router, messages: [{role: user, content: prompt}], temperature: 0.1, response_format: {type: json_object}, }, timeout5, ) return resp.json()[choices][0][message][content]这里有两个细节值得说。第一temperature 必须压低路由判断不允许发散。第二一定要用 structured output 或者至少强制 JSON 格式不然解析环节够你喝一壶。我一开始没强制格式结果 10 次里有 2 次返回纯文本还得用正则硬抠体验很差。2.3 Laya 还适合用在哪些判断场景除了工具路由我还在三个地方用 Laya 效果不错。一是安全过滤。把所有即将发给外部 API 的请求先过一遍 Laya判断是否包含敏感信息或越权指令。这个场景对延迟敏感轻量模型优势明显。二是格式校验与兜底。主模型输出的 JSON 偶尔会缺字段或多出注释用 Laya 做一次“格式化再输出”能救回很多原本要重试的请求。三是意图分类的冷启动。新项目没有历史数据时我先用 Laya 跑几天日志把用户输入的分布摸清楚再决定后续要不要上更大模型或者更复杂的规则。2.4 Laya 的边界别指望它做深推理必须说实话Laya 能做好快判断不代表它能做复杂规划。我试过让 Laya 直接拆解一个“跨系统数据迁移”的任务结果它给出的步骤里漏掉了关键的验证环节而且没有意识到多个步骤之间存在依赖关系。这不是调参能解决的是模型本身的推理深度就到那了。所以我的经验是Laya 适合做“单点判断”不适合做“全局规划”。一旦任务需要多步推导、需要理解隐含约束就得上更重型的模型——也就是下面要说的 Jev。3. Jev硬核推理模型负责 Agent 的“慢思考”3.1 Jev 和 Laya 到底差在哪如果说 Laya 是给 Agent 做快思考的判断器那 Jev 就是负责慢思考的那个。它做的事情更接近“规划师”理解复杂目标、拆解多步任务、处理长上下文里的隐含逻辑。我把这两个模型放在一起用的时候感觉就像给 Agent 配了一个前台和一个项目经理——前台Laya快速分流项目经理Jev细想方案。两者的差异非常明显。从参数量级到适用任务都不一样。我整理了一个简单的对照对比维度LayaJev定位轻量决策 / 路由深度推理 / 规划典型延迟低适合高频调用相对较高适合低频关键调用擅长任务意图分类、工具选择、格式修复任务拆解、多步规划、长文档理解对硬件要求本地小显存也能跑推荐更强算力或云端 API典型位置Agent 工具层前置判断Agent 规划层核心决策还有一个使用频率的差异。一个 Agent 跑一个任务路由判断可能触发十几次但深度规划往往只需要一两次。所以 Jev 慢一点没关系关键是它提供的规划质量要高。3.2 Jev 的接入流程申请、密钥、调用第一次用 Jev 时我在接入环节踩了不少坑最典型的是不知道还需要单独申请密钥。这个流程最有必要记下来先去官网提交申请审核通过后拿到 API 密钥然后在自己的服务端配置环境变量不要把密钥放到前端代码里最后通过 HTTP 调用接口和自己部署的 Laya 走同一套调用规范方便统一管理。export JEV_API_KEY你的密钥 export JEV_BASE_URLhttps://api.jev.example/v1调用的时候我习惯把 Jev 的返回结构设计得很严格要求它一定输出 Markdown 格式的步骤列表并且每一步都要标注依赖的前置步骤。这样下游执行器可以直接解析不需要再用另一个模型去“理解规划结果”。3.3 把 Jev 用进 Codex 和 Agent 框架现在很多 Agent 框架包括各种 open source 的编排工具都支持自定义模型接口。我把 Jev 配进 Codex 风格的流程里主要是让它承担“规划者”角色拿到任务先让 Jev 产出一份执行计划然后下游按计划逐步执行。这个思路跟 OpenAI Codex 的 Agent 模式很像。配置方法也不复杂。大多数框架的配置文件里会有一个 model provider 的字段把 base_url 指到 Jev 的 API 地址再把 model 名设成对应的模型 ID 就行。容易踩的坑是框架默认走 OpenAI 兼容接口的时候有些参数比如 max_tokens、response_format需要显式声明否则 Jev 服务端可能返回 400。3.4 Jev 的坑申请周期、限流、上下文管理Jev 不是没有缺点。首先申请周期不定我有个同事提交了三天才通过期间整个项目干等。其次它有配额限制高峰期偶尔会返回限流错误这在高频调用场景下很致命。再次是上下文长度Jev 能处理长上下文但上下文一长响应时间明显爬升成本也跟着涨。我的应对方案很简单不让 Jev 直接读全量历史而是由 Laya 先做摘要和筛选只把关键片段喂给 Jev。这招让单次规划的成本下降了大概三分之一速度也稳定了。很多人以为长上下文模型就应该全塞进去实际工程里“有选择的上下文”才是最优解。4. 部署这件事从云端 API 到本地推理4.1 为什么绕不开本地部署判断器这种高频调用的组件如果每次路由判断都走公网 API一个是延迟不可控另一个是数据安全让人头疼。我见过不少团队因为业务数据敏感根本不考虑外部模型强制要求所有判断逻辑本地完成。这也是为什么“部署”在这个话题里这么关键。本地部署的核心价值有三点数据不出域、延迟可控、长期成本更稳。尤其是延迟本地推理省去了网络往返对于 Laya 这种需要高频判断的模型体感差异是巨大的。云端 API 再好100ms 的网络开销摆在那里判断器一多就压不住。4.2 三条部署路径Ollama、Docker、裸跑本地部署现在有三条主流路径我按推荐程度排个序。第一条是 Ollama。这是最省事的方案装好之后一条命令就能拉模型、起服务。对 Laya 这种轻量模型尤其友好显存不大的机器也能跑。我现在本地起 Laya 就是用 Ollama模型跑在 CPU 上都能接受。第二条是 Docker。适合团队协作和上线部署把环境依赖一次性固化。比如你用了特定版本的推理框架用 Docker 镜像保存好换机器一键启动不会出现“在我电脑上能跑”的问题。部署 DeepSeek、Doris 这类项目时Docker 也是我最常用的姿势。第三条是裸跑 Python。灵活性最高适合做深度定制比如要改采样参数或者做模型量化。但代价是要自己处理 CUDA、Python 依赖、并发服务这些事情。不是不行是你得愿意花这个时间。部署方式上手难度灵活性适用场景Ollama最低中个人开发、轻量模型快速起服务Docker中中高团队协作、生产环境固定依赖裸跑 Python高最高深度定制、研究实验、特殊优化4.3 硬件选型从桌面 GPU 到 RK3588、Jetson Orin判断器部署在什么硬件上直接影响成本和效果。桌面端有 NVIDIA GPU 的机器没什么好说的直接上 CUDA。真正有意思的是边缘设备比如 RK3588 和 Jetson Orin 这类板子。很多人以为边缘设备只能跑轻量视觉模型实际上只要模型量化到位Laya 这个体量的模型在这类设备上跑得动。我看到不少团队在 RK3588 上部署 YOLOv8 做视觉检测这类板子的 NPU 算力其实比想象中强。如果你已经在边缘设备上跑过模型那一套交叉编译和量化经验基本可以复用。Jetson Orin 的生态更成熟跑 LLM 类的轻量模型支持也更好缺点是贵一些。我的建议是纯测试用桌面机产品化边缘设备选 Jetson Orin预算敏感再考虑 RK3588。千万别一上来就买大卡判断器模型没你想的那么吃算力。4.4 部署实操用 Ollama 把判断器跑起来以我用来部署 Laya 路由模型为例完整流程其实很短。先装 Ollama然后拉取模型再修改服务监听地址让外部程序可以调用。curl -fsSL https://ollama.com/install.sh | sh ollama pull laya-router # 修改服务监听允许局域网访问 # 设置 OLLAMA_HOST0.0.0.0:8000 后重启服务验证调用curl http://localhost:8000/v1/chat/completions \ -H Content-Type: application/json \ -d {model: laya-router, messages: [{role: user, content: 判断这句话应该路由到哪个工具}], stream: false}这里有一个容易被坑的点Ollama 的 OpenAI 兼容接口默认需要设置 stream 为 false有些框架没有显式传这个字段导致请求一直挂起不返回。我排查过两次每次都是这个原因。另外如果 Agent 框架跑在 Docker 里而 Ollama 跑在宿主机记得不要把地址写成 localhost要写宿主机 IP 或者用 docker host 网络模式。这类网络问题在部署阶段出现频率极高提前注意能省很多事。5. 怎么选别纠结先看流量和任务复杂度5.1 选判断器的四个维度每次有人问我“Laya 和 Jev 到底选哪个”我的标准答案都是反问四个问题。第一你的判断调用频率有多高如果每秒钟几十次直接选轻量模型重型模型又贵又慢。第二你的任务推理深度有多高如果只是“选个工具”Laya 足够如果需要“设计一套执行方案”必须上 Jev 级别。第三延迟预算多少用户能接受 200ms 还是只能接受 50ms这个会直接淘汰掉一大半选项。第四行为可解释性要求多高如果出了问题要追责那你可能还需要加规则层和日志而不是纯模型判断。这四个维度没有绝对最优解只有针对你场景的最优解。判断器这种基础组件选错了后面重构成本很高前期多花点时间想清楚很值得。5.2 一张决策矩阵直接对着选我整理了一个简化版决策矩阵基本覆盖我遇到的绝大多数情况。场景低频复杂规划高频简单路由混合型任务数据敏感型首选模型JevLayaLaya JevLaya本地部署位置云端 / 本地 GPU本地任意设备分层部署完全本地额外组件规划缓存格式强制 JSON双层路由规则兜底混合型任务是目前我看到的主流形态。用户输入先经过 Laya 判断简单指令直接路由执行复杂指令转给 Jev 做规划。这相当于给 Agent 装了一个分级响应系统既保证了大部分请求的低延迟又保留了处理复杂任务的能力。5.3 混合判断器怎么搭双层路由 规则兜底我最近一个项目的判断器是这么设计的Laya 作为第一层入口负责意图分类和工具路由如果 Laya 输出的置信度低于阈值则升级给 Jev 重新判断。同时所有涉及敏感操作的请求不管模型怎么判断都要过一层规则校验。def agent_judge(user_input, tools): route laya_route(user_input, tools) if route[confidence] 0.7: return jev_plan(user_input, tools) # 复杂任务升级 if is_sensitive_operation(route[tool]): return require_user_approval(route) return route这套设计的收益是大部分请求在 Laya 这一层就完成了延迟低、成本可控“拿不准”的请求自动升级给 Jev 深度处理不牺牲复杂任务的质量。规则层则像安全带就算模型误判危险操作也发不出去。5.4 开源、闭源与“能跑”和“可控”的距离选型时还有一个绕不开的问题模型开源吗。Laya 和 Jev 在这个问题上的答案不一样也导致了很多架构决策的差异。开源模型的好处是本地部署没有 license 风险数据隐私有保障闭源模型通常能力更强、更新更快但每次调用都依赖服务商的稳定性和配额。从工程角度看“能跑”和“可控”是两码事。能跑就是模型响应正常可控是你能解释它的每个判断依据、能在出问题时快速修正。我现在越来越偏向核心判断环节尽量用可控性强的方案哪怕是牺牲一点推理深度。因为判断器是整个 Agent 的咽喉咽喉出了问题下游再强都白搭。6. 踩坑实录让判断器稳定跑起来的经验6.1 “agent execution terminated due to error”到底是谁的锅这个报错我在项目里见到过无数次每一次排查路径都类似。先看日志定位是工具执行抛错还是模型返回异常再看上下文是不是已经超过了模型限制最后检查工具参数是不是判断器给的参数草稿有问题。大部分情况下问题出在判断器和工具之间的参数契约不匹配。Laya 输出认为应该传整数工具接口实际要字符串类型对不上执行直接崩。解决方案是增加一层参数校验或者把工具 API 的规格说明书写得更详细让判断器有据可循。6.2 判断器误判的两种典型模式判断器用久了误判模式会浮现出来。第一种是对格式过度拟合——模型记住了“带时间戳的输入要走日程工具”这类表面特征但没理解真实意图导致用户只是提了一句时间就被错误路由。第二种是上下文过长导致判断漂移——判断器的注意力被无关信息干扰把核心意图淹没了。针对这两种模式我的解法不同。格式过度拟合靠增加反例和边界样本解决上下文漂移则靠精简输入实现只把最关键的信息传给判断器不搞“全量堆料”。6.3 部署完不生效先过一遍这张检查清单每到部署完发现 Agent 还在调用旧模型我就知道又有人该检查环境变量了。这类问题排查起来不难但特别消磨耐心。我总结了一张速查清单检查项常见问题正确操作环境变量密钥或 API 地址没生效export 后重启服务进程端口监听Ollama 只绑定了 127.0.0.1设置 OLLAMA_HOST0.0.0.0模型名称配置里的模型 ID 和实际不符用 ollama list 核对请求参数缺少 streamfalse显式声明避免挂起Docker 网络容器内用了 localhost改用宿主 IP 或 host 网络我每次部署踩坑后都会把问题登记进去现在已经成了团队内部的部署基准文档。强烈建议你也做一份省下的都是自己的时间。说到最后我个人现在最顺手的组合是Laya 做工具路由和安全过滤Jev 做复杂任务规划所有关键路径再加上一层规则兜底整体用 Ollama 在本地起服务。这个配置不敢说最好但在成本、延迟和可控性之间取到了一个很舒服的平衡点。判断器这个东西越早加越省心——别等 Agent 跑飞了才回头补那会儿你补的不是一个模块是事故报告。
企业数字化 ERP 产品动态
相关推荐
Legion人群仿真软件集成技术与工程实践 1. 人群仿真软件集成概述在建筑规划、交通管理和大型活动安保等领域,人群仿真软件已经成为不可或缺的分析工具。Legion作为行业领先的商业化人群仿真平台,其真正的价值往往体现在与其他专业软件的协同工作中。我参与过多个机场航站楼和地铁枢纽的仿真项目… · 2026/11/3 8:28:17
Flash Attention原理与DeepSeek V4.1实战部署指南 1. 为什么“Flash”突然成了AI圈的高频词?不是浏览器插件,而是模型推理的加速心脏最近刷技术社区、看模型评测、甚至听同事茶水间聊天,“Flash”这个词出现的频率高得反常——它不再指代那个早已退役的网页动画插件,而是在DeepSee… · 2026/11/3 8:27:09
ZCode开源:可私有化部署的AI编程智能体深度解析 1. ZCode是什么,为什么值得看ZCode开源的消息在开发圈里转了好几天,几个技术群都在讨论。说实话,AI编程工具已经多到让人麻木了,但ZCode这次开源,我是真觉得值得坐下来认真看看。原因很简单:它不是又一个套… · 2026/11/3 8:27:09
具身智能落地核心:ROS2与URDF物理映射实战 1. 这门课到底在教什么?不是“具身智能”四个字堆砌出来的幻觉“具身智能”这个词最近两年火得有点烫手,从学术会议到招聘JD,再到地方政府产业规划文件里,几乎无处不在。但翻遍市面上打着这个旗号的课程,90%以上只是把… · 2026/11/3 16:00:05
从加法器到五级流水线:FPGA CPU设计与体系结构实验 简介:这份《CPU设计与体系结构实验指导手册(教师版)》面向高校计算机专业教师及高年级学生,围绕龙芯教学实验平台LS-CPU-EXB-002,服务于《数字逻辑》《计算机组成原理》《计算机体系结构》等课程实验教学与指导。内容从… · 2026/11/3 16:00:05
具身智能导航实战:连续环境与语义理解的端到端落地 1. 这不是“教机器人走路”,而是让机器真正理解空间——具身智能导航到底在解决什么问题?“具身智能导航”这六个字,最近半年在机器人、自动驾驶、服务型硬件团队的周会上出现频率,已经超过了“模型微调”和“数据清洗”。但很多人… · 2026/11/3 16:00:05
动态规划算法精讲:从背包问题到状态压缩技巧 1. 动态规划基础概念回顾 动态规划(Dynamic Programming)作为算法设计中的经典方法论,在解决最优化问题时展现出独特优势。其核心思想是将复杂问题分解为相互重叠的子问题,通过记忆化存储子问题的解来避免重复计算。这种方法特别适… · 2026/11/3 16:00:05
@RequestMapping与@Path注解本质区别及Spring路由原理 1. 项目概述:从一个被反复问爆的注解说起你有没有在翻看某段 Spring Boot 接口代码时,突然卡住——明明只写了Path,接口却死活不生效?或者更常见的是:RequestMapping和GetMapping到底谁管路径、谁管方法、谁又在底层悄… · 2026/11/3 16:00:05
Android 2048小游戏源码拆解:自定义View、手势与合并算法 简介:这份资源是面向计算机相关专业本科生、尤其是准备撰写毕业设计的同学的一份完整学位论文文档,选题为基于 Android 平台的 2048 小游戏设计与实现,适合处于选题开题、结构搭建、内容填充与答辩准备阶段的读者参考,也可作为软件… · 2026/11/3 15:59:03
双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/2 13:10:28
STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/3 6:04:24
DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/3 5:52:46
STM32F411RE与MAX14431实现SPI隔离:工业现场抗共模干扰实战 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/3 1:01:59
ESP32+大模型AI硬件开发:从Demo到产品的8个工程问题 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/3 1:01:59
基于MAX14431BAEE+与PIC18F85J10的SPI隔离方案设计与实践 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/3 1:01:59
双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/2 13:10:28
STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/3 6:04:24
DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/3 5:52:46