AI Agent从概念到落地:核心模块拆解与实战避坑指南
1. 别把AI Agent当成“更聪明的聊天框”这两年AI圈最火的概念大概就是“AI Agent”了。和ChatGPT刚出来时大家热衷于“调戏”它写诗、编段子、生成周报不同现在的焦点已经明显转变了我们不再满足于让大模型“说话”而是希望它“做事”。比如以前你让AI帮你安排会议它顶多生成一封看起来像样的邮件草稿然后让你自己复制粘贴去发。现在合格的AI Agent应该自己去你的日历里找空闲时间、创建会议链接、发邀请给参会人然后回来告诉你“会议已定在下周二下午三点三位同事已确认参加会议号已生成”。这就是从“会聊天”到“能做事”的区别——Agent的核心不是“生成文字”而是“完成任务”。我这两年一直在做Agent相关的产品和项目从早期的Demo探索到后面真正接入业务流程处理实际数据踩过的坑不少但收获更实在。这篇文章我想把AI Agent背后的技术逻辑、真实的落地实践和常见的坑都掏出来聊一遍尽量说人话让没接触过Agent底层原理的读者也能看明白让正在准备上Agent的开发者或者产品经理少走一些弯路。这篇文章特别适合三类人一是被各种Agent概念忽悠得眼花缭乱、想搞清楚它到底是怎么回事的产品经理二是准备用Agent做自动化业务流程改造的开发者三是单纯想理解“AI能替我干点啥”的普通用户。2. 从“会聊天”到“能做事”Agent的本质变化在哪里要理解AI Agent得先明白它和传统的聊天机器人ChatBot有什么本质区别。很多团队以为把大模型接入对话框、能回答几个问题就是Agent了这是天大的误会。2.1 核心差异静态答复 vs 动态执行传统ChatBot的工作模式是用户输入问题系统把问题塞给大模型大模型生成一段回复流程结束。整个过程是一个“静态闭环”大模型只负责“说话”不负责“动手”。它不去调用外部系统不改动任何数据更不会主动规划下一步需要做什么。而AI Agent的工作模式完全不一样它的核心是一个“动态循环”感知接收用户意图同时接收环境状态比如当前时间、系统日历、数据库里的内容。决策根据意图和环境状态判断该采取什么行动拆解任务步骤。执行调用外部工具或API来完成具体操作。反馈观察执行结果判断是否达到目标如果没达到继续迭代。这样一对比就很清楚了ChatBot回答完问题就“下班”了Agent则是领了任务之后要“全程负责到底”。从一个“问答员”变成“操盘手”这是Agent对传统AI应用范式的真正革新。2.2 Agent能被验证的观察标准计划性、工具性、记忆性在项目里验证一个系统到底是不是Agent我给三个硬标准一是计划性。它拿到任务之后不是直接输出答案而是会先拆解成子任务并安排执行顺序。比如“帮我整理本月的销售数据”真正的Agent会规划先找到销售数据源、再拉取上个月的数据文件、做数据清洗、生成统计报表、最后输出解读。而普通聊天机器人只能直接输出一篇“看起来像那么回事”的文字背后没有数据支撑。二是工具性。它能主动调用工具去操作真实世界。这个工具可能是数据库查询接口、可能是企业微信消息发送API、可能是网页抓取脚本也可能是执行Python代码的沙箱环境。可以这么说没有工具调用能力的Agent是残缺的。三是记忆性。它能把多轮交互中的信息沉淀下来在后续的决策中继续使用。比如在长任务流程中Agent在第一步识别出数据格式问题第二步就会主动调整解析方式这种跨步骤的信息沿用靠的就是记忆模块。2.3 Agent爆发的三个底层原因Agent不是今天突然蹦出来的概念学术界研究Agent比大模型兴起早得多。但为什么偏偏是现在开始大规模落地我总结三个原因。第一个原因是大模型推理能力的跨越式提升。过去想做Agent需要小模型加规则引擎硬撑逻辑稍微复杂一点就崩了。现在的LLM在复杂语义理解、逻辑推理、任务规划方面的能力已经能达到“基本可用”的水平这是Agent能运行起来的底座。第二个原因是工具生态的成熟。支付、协同办公、云服务、企业Saas系统这些年纷纷开放API让Agent有了一批“能操作的手”和“能看的眼睛”。工具接口越来越规范Agent学习调用工具的难度也降低了。第三个原因是场景驱动下的接受度提高。企业已经从“试一试AI”进化到“用AI解决具体的人力问题”都开始盘点哪些重复劳动可以交给Agent来干用量开始真实起来。只有当真实业务场景变为刚需Agent才能真正跑起来。3. 拆解Agent四大核心模块大脑、手脚、记忆、决策循环一个能“做事”的AI Agent从系统架构角度来看由四个模块协同工作。不少项目失败就是因为在架构初期没有把这几个模块的职责边界划清楚。这里我逐个拆开讲。3.1 大语言模型LLMAgent的“大脑”LLM在Agent里承担底层推理任务相当于人类大脑里负责“思考”的区域。它做的事情包括理解用户的自然语言输入提取用户真实意图在上文和环境的辅助下判断当前处于任务流程的哪一步决定接下来该调用哪个工具、为什么要调用生成工具调用参数并在结果返回后对结果进行解读和整合。这里最容易踩的坑是很多初做Agent的人误以为大模型是“万能的规则引擎”在提示词里塞入大量复杂的if-else逻辑让模型自己去判断。实际效果往往很差。大模型更适合做的是“决策和生成”而不是“死板的规则匹配”。所以在架构设计上我一般建议把流程性的编排先做A再做B、失败就重试放到代码层或者框架层去做大模型只负责“在每个决策点上做选择”。简单说别让大脑去背万条法律条文该用小本子记的就用小本子记。3.2 工具ToolsAgent的“手脚”工具是Agent能力边界的关键。一个Agent能做什么事取决于它接入了哪些工具。以企业场景为例常见工具包括信息查询类搜索API、数据库查询、文档检索、天气/股票等公开数据接口业务操作类发邮件、订会议、改工单、更新CRM记录、提交审批流计算与代码类Python解释器、代码执行沙箱、数据分析库感知类调用视觉模型识别图片、调用ASR识别语音。工具设计的核心原则是“小而明确参数规范”。每个工具最好只做一件明确的事工具描述要写清楚“什么时候该调用我、我的参数是什么、返回什么”。工具描述写得太模糊大模型就会频繁选错工具这是实践里最常见的高频事故。3.3 记忆MemoryAgent的“记事本”Agent的记忆分两类。一类是短期工作记忆就是当前任务上下文一般塞在提示词里或者作为上下文字段传给模型。另一类是长期记忆一般用向量数据库或者普通数据库存储记录业务偏好、历史处理结果、沉淀的领域知识。真实业务中记忆模块要解决的大问题是信息太长导致的大模型“失忆”问题。处理方式是不是把所有历史信息都塞给模型而是通过检索只把跟当前任务相关的片段拿出来。你可以这么理解一个人工作十年大脑里不会记住每一天的每个细节需要时去翻笔记本效率反而更高。3.4 规划与决策PlanningAgent的“驱动循环”这是Agent最核心也最难做好的一块。目前主流方案有两种第一种是ReAct模式Reasoning Acting让模型交替执行“思考-行动-观察”循环。模型先想“我需要做什么”然后调用工具看到结果后再思考“结果是否符合预期”如果不行就换个方法再来。这个方式灵活度高适合探索性任务但缺点是不可控模型可能绕圈子。第二种是Plan-and-Execute模式先规划再执行先让模型把整个任务拆解成一个步骤列表然后按步骤执行每步执行完做校验不对再返回规划层重新调整。这个方式适合确定性强的流程可控性好是企业级落地的首选。我在实际项目中优先用Plan-and-Execute搭主流程效率高、可控用ReAct作为异常处理分支用于处理那些不在规范流程里的特殊情况。两种方式结合既能保证效率又能兜底。维度ReAct模式Plan-and-Execute模式决策机制边做边想逐步决策先完整规划再逐步执行灵活性高适合探索性任务较低适合流程固定任务可控性低容易发散高步骤可追踪可校验典型场景知识问答、竞品调研审批流、订单处理、报告生成项目落地建议建议配人工兜底审查可跑全自动流程4. 落地实践案例一个“会议纪要任务派发”Agent的完整实现前面讲了不少理论接下来直接上实战。我拿一个真实的内部项目来复盘——为一个业务团队实现了一个“会议纪要任务自动派发”的Agent解决他们每周例会后人工整理纪要和催办任务的痛点。4.1 需求与限制条件团队的实际场景是每周有多个项目例会有人负责记录会议内容会后花一两个小时整理纪要再挨个私聊提醒相关人做任务。他们想用AI来帮手。经过需求梳理沉淀出来几个关键点输入是会议录音转写文本手动上传即可输出是三样东西结构化会议纪要、按人聚合的任务清单、日历提醒流程必须可控不能有幻觉出现特别是“任务分配”这种关键动作绝对不能出错整个Agent部署在公司内网环境不能接入外部大模型API只能用私有化部署的模型服务。第二点“任务分配不能出错”是设计的红线。宁可漏掉一个任务也不能凭空捏造一个不存在的任务分配给同事这会直接影响工作秩序。所以在架构上必须有“二次确认机制”。4.2 技术选型与架构设计因为是私有化部署没有用云端Agent产品而是自己在开源框架基础上搭建。整体架构分三层第一层是入口层一个简单的Web界面上传录音转写文本触发任务。第二层是编排层用Agent框架承载规划主流程是Plan-and-Execute模式。主流程步骤固定读取文本 → 分析会议主题 → 提取讨论要点 → 提取决议 → 提取任务包含负责人、截止时间、验收标准 → 生成纪要 → 生成待确认任务列表。所有环节里关键节点“提取任务”后面加了一道代码级校验逻辑把提取出的任务结构化数据交给一个人工确认环节——推送企业微信由用户确认。确认通过后才允许执行“发送通知”“创建日历”这类操作这样在源头上杜绝了幻觉。第三层是工具层接入文本解析、企业微信群消息发送、日历创建这三个工具。工具用统一函数接口直接由编排框架调用。4.3 核心代码骨架非完整代码用伪代码来说明Agent实现的核心骨架方便理解整个运行流程def main_process(meeting_text): # 步骤1信息抽取调用LLM meeting_info extract_meeting_info(meeting_text) # 步骤2结构化输出 - 用JSON约束模型返回 minute generate_minutes(meeting_info) tasks extract_tasks(meeting_info) # 步骤3关键校验 - 校验任务中的人名是否真实存在于组织架构 validated_tasks [] for task in tasks: if verify_people(task[owner]) and task[action] ! : validated_tasks.append(task) else: log_warning(f任务异常需要人工复核: {task}) # 步骤4人工确认入口推送到企微等待用户点击确认 user_approved_tasks push_and_wait_confirmation(validated_tasks) # 步骤5确认后执行工具 for task in user_approved_tasks: send_reminder(task) # 给负责人发任务提醒 create_calendar_event(task) # 创建日历提醒 notify_meeting_group(task) # 在项目群发送任务公告 return {minutes: minute, tasks: user_approved_tasks, status: completed} # 工具定义示例 def send_reminder(task): 通过企业微信发送任务提醒 # 调用企业微信API发送文本卡片 return {success: True, message: f已通知 {task[owner]}} def tool_schema(): # 框架要求提供工具描述供大模型决策时参考 return [ { name: send_reminder, description: 给指定负责人在企业微信发送任务待办提醒, parameters: {owner: 负责人姓名, deadline: 截止日期, task: 任务描述} }, # 其他工具同格式 ]这个项目上线跑了三个月会议纪要整理从人均2小时缩短到1分钟最关键的是任务遗漏率大幅下降。后来团队又把它扩展到了客户反馈分类、周报汇总等场景原理完全一样。4.4 复盘为什么这样设计才稳很多人做Agent项目失败不是模型能力不行而是业务流程没有理清楚。我复盘这个项目的三个关键经验第一是在关键价值链上加入人工确认节点。不是所有环节都要自动化影响结果质量的关键动作上保留人工确认节点才有后续的全自动可扩展空间。第二是用代码校验配合大模型。大模型的输出天然具有不确定性代码校验可以从确定性角度兜底两者互补。第三是工具返回值要给足信息。工具返回不能只返回一个布尔值最好返回结构化JSON包含执行状态、结果详情、错误信息等这样大模型在执行完工具后能准确判断“接下来要不要继续做”。5. 避坑指南AI Agent落地中的常见问题与排查思路Agent项目做半年之后我整理了一份故障排查手册里面不少问题翻来覆去出现堪称“高频事故现场”。这里挑比较典型的5个。5.1 大模型“想太多”任务路径发散这是最常见的问题。表现是Agent接一个简单任务却绕了好几个圈子调用了不必要的工具最后还可能把结果带偏。原因在于提示词里没有约束“决策边界”大模型每次推理时都觉得自己“可以做更多”。解决思路在系统提示词里明确说明“只执行必要步骤无明确需求时不要调用任何工具”并在产出端做好格式约束必要时可以规定最大执行轮数超出就停。5.2 工具描述不清晰模型频繁选错工具工具越多这个问题越严重。一个Agent接入了20个工具如果工具描述写不好大模型就像面对一个堆满标签混乱的仓库经常拿错东西。排查思路先检查工具名和工具描述里是否包含足够多的“触发关键词”和“排除场景”。优化描述后再不行就把易混淆的工具合并或者减少暴露给模型的同时可选工具数量。5.3 输出格式不稳定解析的时候频繁报错大模型输出的JSON经常“不听话”多一个逗号、少一个括号是常事。如果解析器太严格流程就直接卡住。我的处理办法有套路一是提示词里给一个极简的JSON示例二是设置模型输出固定格式模式三是代码解析时写容错逻辑支持修复常见JSON格式错误。另外绝对不要在提示词里写“只输出JSON”然后就指望模型听话该做的降级处理要做到位。5.4 任务循环不终止陷入“死循环”Agent在ReAct模式下如果观察结果总是无法满足预期就会反复“尝试”消耗大量Token还没结果。解决方案局部设置重试次数限制比如同一个工具调用超过3次还失败就强制换策略全局设定总调度次数比如最多执行15次超过就转为人工介入通道。别让Agent无限循环这是产品级Agent的底线。5.5 长期记忆错乱把A项目的经验用到了B项目这个在业务规则复杂的场景尤其明显。原因是模型在多个任务之间共享了长期记忆没有做隔离。解决方法是记忆带上领域标签检索时按任务类型过滤。比如“会议纪要Agent”只检索会议相关记忆不检索“客户响应”相关的记忆。问题现象常见原因排查与解决路径发散简单任务迂回执行、乱调工具决策约束不足、提示词太开放式加边界指令、限制执行轮数工具误选调用不相关工具工具描述模糊、工具粒度不一致优化描述、合并工具、减少同时可见工具数格式解析失败输出JSON解析错误、任务中断模型输出不稳、解析器太严格做容错解析、固定输出模式死循环Token耗尽、任务卡住缺少退出机制加重试限制、加全局轮数上限记忆串线结果混淆不同项目信息长期记忆未按空间隔离记忆打标签、按场景过滤6. 实操心得Agent项目从Demo到上线的三个进阶建议最后聊几个我在真实项目里的进阶体会。第一个体会是从“单Agent”到“多Agent协同”之间有一条很大的鸿沟。单Agent适合场景简单、流程固定的任务一旦业务复杂了一个Agent里塞太多职责提示词会互相污染行为会变混沌。这时候把任务拆给多个专用Agent各自负责相对独立的环节再用一个“协调者Agent”统管进度稳定性会好很多。这就好比你不会让一个员工既当财务、又当销售、还兼职前台术业有专攻才是工程化的正路。第二个体会是评估体系要前置Action早于Prompt优化。很多团队做Agent一上来就扎进提示词调优里不可自拔。项目最优先做的反而是定义评估指标——比如任务完成率、工具调用正确率、用户干预率、平均完成时长。先跑通一个全链路基线版本再开始计量每次调整带来的指标变化。没有评估体系调了半天提示词也不知道自己是调好了还是调差了。第三个体会是安全治理不能留死角。Agent一旦能调用工具、操作数据就是“有权力的AI”。权限最小化原则、人工审批节点、完整的操作日志、操作前的授权机制这些不是一个“可选增强项”而是标配。在实际项目里我建议Agent调用的每个高权限工具都要在代码层面做二次权限校验而不是只靠模型自觉。用一句话总结我这一年多做Agent项目的感悟技术壁垒从今天看已经不高了高壁垒在业务拆解、在流程设计、在如何让AI和真实组织协作之间形成闭环。希望这篇实践复盘能让你从“会聊天”的旁观者变成“能做事”的践行者。

相关新闻

Linux空闲内存构建:从指标解读到内核参数调优实战

Linux空闲内存构建:从指标解读到内核参数调优实战

1. 这个项目到底在解决什么问题前阵子在做一套内部存储系统的内存专项优化,被同事问到一个看似基础、其实很要命的问题:服务器明明配了 128GB 内存,free看第一行却只有几百 MB 的 free,这内存是不是不够用?这个问题背后…

2026/10/17 4:38:12 阅读更多 →
识别AI生成文本:从语言指纹到检测工具的实操指南

识别AI生成文本:从语言指纹到检测工具的实操指南

识别AI生成的文本,这两年已经从一个技术圈的小众话题,变成了几乎人人都需要的生存技能。就在上周,我在工作群里看到一封通知,措辞之工整、层次之分明,简直像教科书里的范文。我第一反应不是“这写得真好”,…

2026/10/17 4:38:12 阅读更多 →
Shiro RememberMe反序列化漏洞原理与修复实战

Shiro RememberMe反序列化漏洞原理与修复实战

1. 项目概述:一次被低估的Java权限框架“静默失守”Apache Shiro 1.2.4反序列化漏洞——这串字符在2016年首次公开时,并未像Struts2或Log4j那样引爆全网热搜,但它在真实攻防对抗中造成的实际影响,远比多数人想象中更隐蔽、更持久。…

2026/10/17 4:38:12 阅读更多 →

最新新闻

Claude Code模板实战:CLAUDE.md、自定义命令与hooks全解析

Claude Code模板实战:CLAUDE.md、自定义命令与hooks全解析

1. 先把这个标题拆明白看到“claude-code-templates”这个项目名,估计大部分人都能猜个大概:这是给Claude Code用的模板集合。但真正用过Claude Code的人会知道,模板这两个字背后藏的东西远比想象中多——它不是简单的几段提示词,…

2026/10/17 5:22:24 阅读更多 →
人形机器人爆款视频背后:数据链路与训练技术深度解析

人形机器人爆款视频背后:数据链路与训练技术深度解析

最近几天人形机器人圈子里有两件挺有反差感的事。一条某国内头部厂商发布的训练视频在社交平台跑到了430万播放,评论区从“走路怎么像喝多了”一路聊到“这玩意儿多久能进我家干活”;另一边,海外一家AI实验室的机器人项目负责人离任的消息也在…

2026/10/17 5:22:24 阅读更多 →
MuJoCo Python仿真入门:环境搭建、核心对象与闭环控制

MuJoCo Python仿真入门:环境搭建、核心对象与闭环控制

MuJoCo这名字,搞机器人仿真和强化学习的应该不陌生。但你真说要用Python去操纵它跑起来、把仿真环境跟自己的算法接上,很多新手第一次都会卡在“这到底怎么下手”这一步。官方文档其实写得不算差,但内容偏散,一会儿讲建模语言&…

2026/10/17 5:22:24 阅读更多 →
人脸解析从PyTorch到ONNX/TFLite/NCNN/RKNN全链路部署实战

人脸解析从PyTorch到ONNX/TFLite/NCNN/RKNN全链路部署实战

人脸解析这个方向,我从早期的dlib关键点一路做到现在的BiSeNet语义分割,踩过的坑比跑通的模型还多。face-parsing听起来像是学术圈的名词,但落到实际项目里,它解决的是一个非常具体的问题:给你一张人脸照片&#xff0c…

2026/10/17 5:22:24 阅读更多 →
PHP借贷源码本地部署与二次开发实战:从环境配置到核心链路拆解

PHP借贷源码本地部署与二次开发实战:从环境配置到核心链路拆解

简介:这是一套基于PHP开发的借贷公司整站源码,面向需要快速搭建网贷平台或二次开发借贷系统的开发者与运维人员。源码由得得系统改编而来,经实际测试可正常运行,覆盖用户注册、信用评估、借款申请、还款计划、逾期处理等核心借贷流…

2026/10/17 5:22:24 阅读更多 →
Oh My Zsh主题配置全攻略:选型、定制与排错

Oh My Zsh主题配置全攻略:选型、定制与排错

1. 为什么我在折腾了十几个主题之后,还是回到了Oh My Zsh先说说我的真实经历。我最早用终端就是系统自带的Bash,黑底白字,看起来没什么问题,直到有一次在同事的工位上瞥见他那台机器:命令提示符里直接显示Git分支名称&…

2026/10/17 5:21:24 阅读更多 →

日新闻

DeepSeek选型与部署:V3/R1、Ollama、API全攻略

DeepSeek选型与部署:V3/R1、Ollama、API全攻略

简介:《DeepSeek使用方法.pdf》是一份面向DeepSeek入门及进阶用户的完整使用指南,重点围绕V3与R1两款模型的能力差异与适用场景展开,帮助读者根据任务类型与成本选择合适的模型。资源共1个PDF文件,压缩包大小约311KB,篇…

2026/10/17 0:00:25 阅读更多 →
200+Deepseek润色指令拆解:从底层原理到场景落地的完整指南

200+Deepseek润色指令拆解:从底层原理到场景落地的完整指南

简介:这是一份聚焦DeepSeek提示词优化的《200Deepseek润色指令》PDF文档,共收录两百余条可直接套用的润色指令,涵盖语法修正、风格统一、逻辑梳理、表达精炼等维度,并针对商务写作、学术论文、广告文案等场景给出差异化建议。文档…

2026/10/17 0:00:25 阅读更多 →
OpenCV轮廓法物体计数系统:轻量、可控、可落地的工业级实现

OpenCV轮廓法物体计数系统:轻量、可控、可落地的工业级实现

简介:本资源是一份基于OpenCV的本科课程设计完整报告,面向计算机视觉初学者、图像处理学习者及高校通信/信息类专业学生,解决物体智能计数与检测结果结构化记录的实际问题。项目覆盖图像预处理、轮廓检测、边界框绘制、轨迹栏交互式参数调节、…

2026/10/17 0:00:25 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/16 21:35:51 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/17 1:44:59 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/16 15:04:24 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/16 21:54:38 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/16 3:49:43 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/16 14:23:36 阅读更多 →