MemPrivacy框架:端云协同智能体的隐私保护记忆系统设计与实践
1. 项目概述当智能体拥有记忆隐私如何安放最近和几个做端侧大模型和智能体应用的朋友聊天大家不约而同地提到了一个痛点个性化记忆。我们都希望自己的智能助手能记住“我习惯下午三点喝咖啡”、“上周和客户A开会提到了项目B的某个技术细节”这样下次交互时它才能给出真正贴切的回应。这背后就是一个智能体的“记忆系统”在起作用。然而一旦这些包含个人偏好、行为习惯、甚至敏感工作内容的记忆数据为了追求更强的个性化能力而被上传到云端进行集中处理和训练隐私泄露的风险就如影随形。用户可能会想我的这些数据会被用来做什么会不会被泄露或滥用云端服务商是否可信这正是“MemPrivacy”这个框架要解决的核心矛盾。它不是一个简单的加密工具而是一个面向端云协同智能体的、系统级的隐私保护个性化记忆管理方案。简单来说它的目标是让智能体既“聪明”拥有强大的个性化记忆能力又“可靠”用户的隐私数据得到严格保护。这个框架试图在“端侧隐私”和“云侧智能”之间找到一条可行的技术路径。对于开发者而言这意味着在构建下一代具有长期记忆和上下文感知能力的AI应用时有了一个可参考的架构蓝图对于用户而言这意味着可以更放心地享受AI带来的高度个性化服务。2. 框架核心设计思路解耦、控制与协同MemPrivacy的设计哲学源于对现有智能体架构隐私风险的深刻反思。传统的云端记忆模型数据流向是“端侧采集 - 网络传输 - 云端存储/处理 - 返回结果”。这个链条中原始数据离开了用户设备控制权也随之转移。MemPrivacy的思路则是反向操作将记忆的“所有权”、“存储权”和“原始数据处理权”牢牢锚定在端侧只将必要的、经过隐私处理的信息与云端进行协同。2.1 核心架构分层解析MemPrivacy的框架通常可以抽象为三个逻辑层每一层都承担着特定的隐私保护职责第一层端侧记忆引擎这是整个框架的基石和“数据保险箱”。所有原始的交互日志、用户偏好、私人事件等记忆数据首次且主要存储于用户本地设备如手机、电脑、边缘设备。这一层负责记忆的编码与向量化将非结构化的文本、语音等信息转化为结构化的记忆向量Memory Embedding便于后续的检索和计算。这里的关键是编码模型本身应尽可能在端侧运行。本地记忆库管理实现记忆的增、删、改、查CRUD操作并建立高效的向量索引如使用轻量级的FAISS或HNSWlib的移动端版本支持基于语义的快速相似性检索。敏感信息检测与过滤在记忆入库前通过本地的轻量级模型或规则引擎对可能包含身份证号、电话号码、银行卡号等明文敏感信息的内容进行识别、脱敏或打标签。注意端侧记忆引擎的性能和效率是关键挑战。需要权衡记忆向量的维度、索引算法的复杂度与设备算力、存储空间的关系。通常会采用量化、剪枝等技术对模型进行轻量化处理。第二层隐私处理与协同层这是MemPrivacy框架的“魔法发生地”也是技术最密集的部分。它的核心任务是在不让原始数据出端的前提下让云端智能体能够“利用”这些记忆。主要技术手段包括联邦记忆学习这是核心思想。云端下发通用的记忆模型更新如记忆聚合算法、关系挖掘模型的参数端侧设备利用本地记忆数据计算模型更新梯度或参数然后将这些梯度或参数而非原始数据加密上传至云端进行聚合生成全局模型后再下发。如此循环使云端模型获得从海量用户记忆中学到的模式却不接触任何人的具体记忆内容。安全多方计算与同态加密的有限应用对于某些需要联合多个用户记忆进行计算的复杂查询例如“找出像我一样喜欢古典音乐和编程的用户群体共同偏好”可以探索使用安全多方计算MPC或同态加密HE。不过这些技术开销极大通常只用于极其关键且低频的操作。记忆查询的隐私化接口向云端暴露的不是记忆数据库而是一系列严格的“查询接口”。例如智能体可以向端侧发送一个加密的查询向量端侧在本地内存中执行相似性搜索只返回最相关的几条记忆的索引ID或经过差分隐私加噪的概要而非完整内容。第三层云端记忆协同服务这一层不再存储用户原始记忆而是提供以下服务全局记忆模型维护接收来自无数端侧设备的联邦学习更新持续优化用于记忆理解、关联和预测的全局模型。隐私安全的记忆路由当智能体需要跨设备、跨场景调用记忆时例如在手机上发起任务在车载智能体上继续云端充当一个“可信路由”协调端侧设备之间通过端到端加密通道直接交换必要的、已授权的最小化记忆信息。提供无记忆的上下文增强云端可以提供强大的计算能力对端侧上传的、已经过隐私处理如删除实体信息、概化的上下文进行分析提供常识、知识图谱补全等服务丰富记忆的维度而不触及隐私。2.2 关键设计权衡隐私、效用与开销的三角平衡设计MemPrivacy这样的框架本质上是在隐私保护级别、记忆效用个性化效果和系统开销计算、通信、存储之间进行艰难权衡。强隐私 vs. 高效用差分隐私加噪越强隐私越安全但记忆的准确性和可用性下降。联邦学习中本地训练轮次和批次大小的设置直接影响模型收敛速度和最终性能。端侧能力 vs. 功能复杂度复杂的记忆关联图谱挖掘可能需要较强的算力是否适合放在端侧是否需要将部分复杂度高的非隐私敏感任务卸载到云端即时响应 vs. 异步学习用户希望记忆能被实时调用低延迟但联邦学习等全局模型更新是异步、周期性的。如何设计缓存和预热机制让端侧模型能基于旧的全局模型和本地实时记忆提供尽可能好的即时服务MemPrivacy的架构设计就是针对目标应用场景如个人健康助手、企业知识库智能体、教育陪伴机器人在这个三角中找到最优解。3. 核心模块技术实现细节拆解理解了宏观架构我们深入到几个关键模块看看具体的技术是如何落地的。3.1 端侧记忆的向量化与索引记忆不是简单的文本日志而是需要被高效检索的结构化数据。通常流程如下原始记忆捕获从对话、用户操作、传感器等渠道获取原始数据片段。轻量化编码使用一个在端侧可运行的轻量级文本嵌入模型如经过蒸馏的MiniLM、MobileBERT将文本记忆转化为固定维度的向量例如384维。对于多模态记忆如图片则使用专用的轻量视觉编码器。元数据附加为每个记忆向量附加时间戳、来源场景、情感标签如正面/负面、敏感级别等元数据。构建本地向量索引这是实现快速检索的关键。由于端侧资源有限不能直接使用庞大的索引库。实践中有两种策略策略A使用量化索引。采用像faiss的IndexIVFPQ这类索引它通过产品量化大幅压缩向量存储空间并能实现快速的近似最近邻搜索。在移动端可能需要使用其精简版或类似实现如hnswlib的移动端适配。策略B分层索引。将记忆分为“热记忆”频繁访问和“冷记忆”。热记忆使用内存中的高效索引如HNSW保证毫秒级响应冷记忆则压缩后存储在磁盘检索时再加载牺牲一定速度换取更大容量。实操心得向量维度不宜过高256-512维在精度和效率上是一个较好的平衡点。定期对本地记忆库进行“去重”和“重要性衰减”清理非常重要可以避免索引膨胀。例如基于访问频率、时间和与核心用户画像的关联度给记忆设置一个“能量值”定期淘汰低能量记忆。3.2 基于差分隐私的记忆查询接口当云端智能体需要查询用户记忆来辅助决策时不能直接访问原始记忆库。MemPrivacy通过一个隐私化的查询接口来应对。场景云端智能体收到用户问题“推荐一个我可能会喜欢的周末活动”。查询生成云端用其全局模型将问题转化为一个查询向量 Q。隐私化查询云端不会直接发送Q。而是应用本地化差分隐私技术生成一个加噪的查询向量 Q‘。具体做法可以是向Q的每一维添加一个从拉普拉斯分布或高斯分布中采样的噪声。噪声的尺度由隐私预算ε控制ε越小隐私保护越强但查询准确性越低。端侧检索端侧收到Q‘后在本地记忆向量库中进行相似度搜索如计算余弦相似度找出Top-K个最相关的记忆向量。响应脱敏端侧并非直接返回这K条记忆的原文。而是进行第二步处理对检索结果进行聚合与概化。例如将“上周三下午和张三在XX咖啡馆讨论了项目预算点了拿铁”这条记忆概化为“近期在咖啡馆进行过商务讨论偏好咖啡类饮品”。或者只返回记忆的类别标签和置信度如{activity: business_coffee, preference: coffee, recency: 0.8}。返回脱敏摘要将脱敏后的概化摘要返回给云端智能体。云端智能体结合这个摘要和其他上下文生成最终回复“考虑到您近期有商务咖啡洽谈或许可以试试这家新开的精品咖啡馆环境安静适合浅谈。”通过这种方式云端获得了有助于个性化推荐的“信息”但无法还原出具体的对话对象、地点、项目细节等敏感内容。3.3 联邦记忆学习流程实战联邦学习是让云端模型变“聪明”而不“窥私”的核心。一个简化的训练回合可能如下云端初始化与下发云端服务器初始化一个全局记忆模型 M_global例如一个用于预测记忆之间关联关系的神经网络并将其当前参数 W_global 加密后下发给参与本轮训练的客户端端侧设备。端侧本地训练端侧设备i收到参数后用自己的本地记忆数据集 D_i 进行训练。关键点D_i 永不离开设备。训练目标可以是多重的例如记忆补全给定一段记忆的前半部分预测后半部分或相关属性。记忆关联预测给定两条记忆预测它们之间的关联强度。经过几个本地epoch的训练后设备i得到了模型的更新可以是梯度 ΔW_i也可以是新的参数 W_i。安全聚合设备i将本地的模型更新 ΔW_i 进行加密并上传至云端。云端收集到足够数量的加密更新后使用安全聚合协议例如Google提出的基于秘密分享和同态加密的协议进行解密和聚合。这个协议的精妙之处在于聚合服务器只能看到最终的聚合结果而无法解密任何一个单独的设备更新。聚合得到平均更新 ΔW_avg用于更新全局模型W_global W_global η * ΔW_avg (η为学习率)。模型下发与迭代新的 W_global 被下发开始下一轮训练。注意事项联邦学习面临设备异构算力、网络差异大、数据非独立同分布每个用户的记忆分布迥异等挑战。MemPrivacy框架需要集成如FedProx、SCAFFOLD等算法来提升稳定性和收敛性。同时必须设计严谨的客户端选择机制和奖励机制激励用户设备参与训练。4. 部署考量与性能优化策略将MemPrivacy从理论框架落地为实际系统会面临一系列工程挑战。4.1 端侧资源约束下的优化在手机或IoT设备上运行向量编码、索引和本地训练必须精打细算模型轻量化对编码模型和本地预测模型采用量化INT8甚至INT4、剪枝、知识蒸馏等技术在精度损失可控的前提下大幅压缩模型体积和加速推理。计算调度将记忆相关的计算任务安排在设备空闲、充电且连接Wi-Fi时进行例如利用Android的WorkManager或iOS的Background Tasks。缓存策略对用户最常访问的记忆类别如工作相关、家庭相关的索引和向量进行常驻内存缓存加速检索。增量更新本地记忆索引和模型支持增量更新避免每次新增记忆都全量重建索引耗费大量计算。4.2 通信效率与成本端云之间的通信是资源消耗和用户体验的关键。更新压缩上传的联邦学习模型更新梯度/参数可以使用稀疏化、差分编码、无损压缩等方法进行压缩减少数据传输量。选择性同步并非所有记忆都需要参与联邦学习。可以设计一套重要性评分机制只选择那些具有普遍学习价值、非高度敏感的记忆数据参与训练。协议优化使用高效的二进制序列化协议如Protocol Buffers、FlatBuffers替代JSON减少通信开销。4.3 安全与威胁模型必须明确框架防御的威胁恶意云端服务器假设云端会诚实地执行协议但试图从接收到的信息中推断个体隐私。差分隐私和联邦学习的安全聚合正是针对此。恶意客户端部分客户端可能上传伪造的模型更新以破坏全局模型投毒攻击。需要通过鲁棒聚合算法如Krum、Multi-Krum或基于声誉的客户端筛选来防御。通信窃听端云、端端所有通信必须基于TLS/SSL等强加密通道。端侧物理攻击设备丢失或被盗本地存储的加密记忆可能被暴力破解。需要结合硬件安全模块如TEE/SE存储最敏感的密钥并设置设备锁和远程擦除功能。5. 典型应用场景与挑战实录MemPrivacy并非万能钥匙它在某些场景下能大放异彩在另一些场景下则面临严峻挑战。5.1 理想应用场景个人健康管理助手智能体持续学习用户的作息、饮食、运动、用药和生理指标数据高度敏感全部存于端侧。当用户询问“我今天感觉头晕可能是什么原因”时助手在本地分析历史数据生成初步假设然后仅向云端医疗知识库查询“头晕伴有X病史的可能原因”云端返回可能性列表助手再在本地进行个性化匹配和排序。全程用户的详细健康档案未离开手机。企业知识库智能体员工与智能体的工作问答、项目经验总结形成个人工作记忆存储于公司配发的终端或安全沙盒内。MemPrivacy框架允许在部门或项目组内通过联邦学习形成领域知识增强模型或安全地查询同事的公开经验摘要经脱敏促进知识协同同时防止核心商业机密客户数据、源代码泄露到公司边界之外。个性化教育伴侣记录学生的学习轨迹、错题本、兴趣偏好于本地平板。通过联邦学习教育机构可以优化全局的题目推荐算法、知识点关联模型而无需集中收集所有学生的详细学习记录。教师端只能看到聚合后的班级学情分析而非某个学生的具体错误。5.2 实践中的挑战与应对在实际开发和测试中我们遇到了不少“坑”挑战一端侧记忆检索的精度与召回率在资源受限下端侧的近似最近邻搜索精度不如云端全量搜索。这可能导致最相关的记忆没有被检索到影响智能体回复质量。应对采用“召回-重排”两阶段策略。第一阶段用高效的量化索引快速召回一个较大的候选集如Top-100。第二阶段用一个更精细但计算量稍大的重排模型如交叉编码器在本地对这100个候选进行精排选出Top-3。这样在精度和延迟间取得平衡。挑战二冷启动问题新用户或新设备本地记忆稀少无法提供有效的个性化服务而联邦学习模型也需要足够的数据参与才能训练好。应对设计分层记忆系统。初期允许用户在严格授权下手动导入少量非敏感通用偏好如“我喜欢科幻电影”。同时云端提供一个基于大规模公开数据训练的、具有较好泛化能力的“基础记忆模型”。随着本地记忆增多再逐步切换到以本地为主的联邦个性化模型。挑战三隐私预算的消耗与管理差分隐私的隐私预算ε是有限的每次隐私化查询都会消耗预算。预算耗尽后将无法再提供差分隐私保护。应对将预算按时间窗口如每天、每周进行分配并设置动态消耗策略。对于低敏感度的记忆查询如音乐偏好使用较小的ε强保护对于用户明确授权的高价值查询可以分配稍大的ε。同时提供透明的预算仪表盘给用户让其知晓隐私保护状态。挑战四跨设备记忆同步的复杂性用户拥有手机、电脑、手表等多个设备记忆需要在设备间同步以提供一致体验。应对采用“主设备卫星设备”架构。指定一个主设备如手机作为个人记忆中枢其他设备产生的记忆加密后同步到主设备进行统一管理和索引。当卫星设备需要记忆时向主设备发起端到端加密的查询请求。云端仅协助设备发现和连接建立不中转记忆数据。MemPrivacy框架的落地是一个持续在隐私保护、个性化体验和系统性能之间寻找最佳平衡点的过程。它没有一劳永逸的解决方案而是一套需要根据具体应用场景精心配置和调优的技术工具箱。对于开发者和企业来说拥抱这样的框架不仅是应对日益严格的数据法规的必然选择更是构建用户信任、赢得长期竞争力的关键。它意味着一种观念的转变从“如何收集更多数据”到“如何在不接触原始数据的前提下创造价值”。这条路充满挑战但无疑是智能体未来发展的一个重要方向。

相关新闻

AI代理驱动的智能钓鱼攻击:原理、风险与全维度防御体系构建

AI代理驱动的智能钓鱼攻击:原理、风险与全维度防御体系构建

1. 项目概述:当AI学会“钓鱼”,我们如何筑起高墙?最近和几个做安全攻防的朋友聊天,话题总绕不开一个词:自主AI代理。大家一边惊叹于OpenClaw这类框架能让AI像真人一样操作浏览器、填写表单、点击链接,完成复…

2026/10/12 13:27:22 阅读更多 →
Excel SUM函数8大高阶用法:从基础求和到动态数组与错误处理

Excel SUM函数8大高阶用法:从基础求和到动态数组与错误处理

1. SUM函数:不止是简单的加法器提到EXCEL里的SUM函数,恐怕没人会觉得陌生。不就是个求和嘛,点一下“自动求和”按钮,或者敲个SUM(A1:A10),小学生都会。我刚开始用EXCEL的时候也是这么想的,觉得这玩意儿太基…

2026/10/11 9:24:19 阅读更多 →
1小时极速搭建AI知识库:基于RAG与向量数据库的实战指南

1小时极速搭建AI知识库:基于RAG与向量数据库的实战指南

1. 项目概述:从截图到系统的效率革命 最近在跟一位开牙科诊所的朋友聊天,他提到一个特别具体的痛点:新来的医生助理或者前台,光是熟悉诊所的接诊流程、不同病症的初步判断标准、耗材管理规范这些内部知识,就得花上一两…

2026/10/2 13:54:16 阅读更多 →

最新新闻

从 1080P 到 4K:Video2X 的 Qt6 界面把视频超分辨率与帧插值做成四步

从 1080P 到 4K:Video2X 的 Qt6 界面把视频超分辨率与帧插值做成四步

从 1080P 到 4K:Video2X 的 Qt6 界面把视频超分辨率与帧插值做成四步 【免费下载链接】video2x A machine learning-based video super resolution and frame interpolation framework. Est. Hack the Valley II, 2018. 项目地址: https://gitcode.com/GitHub_Tre…

2026/10/14 5:16:02 阅读更多 →
用RAG盘活老师傅经验:制造业设备手册解析与故障诊断开源框架

用RAG盘活老师傅经验:制造业设备手册解析与故障诊断开源框架

制造业里攒文档的速度,永远赶不上老师傅退休的速度。我见过不少车间,设备手册摞起来半人高,故障代码表散落在三四个系统里,老师傅随口一句“这声音不对”,新来的维护工要翻半天手册才敢动手。我一直在琢磨怎么用RAG把这…

2026/10/14 5:16:02 阅读更多 →
工业AI落地制造现场:从缺陷检测到工艺优化的实战观察

工业AI落地制造现场:从缺陷检测到工艺优化的实战观察

这几年我跑了不少制造工厂,从汽车零部件、家电组装到电子产线,都待过一阵子。发现一个有趣的现象:“工业AI”这个词人人都在喊,真正把模型嵌进产线、天天跑数据的其实没多少。许多人把工业AI想象成科幻片里的机器人代替工人&#…

2026/10/14 5:16:02 阅读更多 →
C++与AI框架:从LibTorch部署到推理引擎的工程实战

C++与AI框架:从LibTorch部署到推理引擎的工程实战

1. 为什么AI圈子里C依然是硬通货在Python几乎统治了算法实验和模型训练脚本的今天,聊C与人工智能框架这个话题,听起来像是考古。但真正把AI系统推到生产环境的人,大概率都明白一个事实:Python是AI的壳,C才是AI的魂。先…

2026/10/14 5:16:02 阅读更多 →
codelin 统一 Claude Code 级别智能编程助手:UnifiedClaudeCodeAssistant 功能整合实现全解析

codelin 统一 Claude Code 级别智能编程助手:UnifiedClaudeCodeAssistant 功能整合实现全解析

人工智能大模型AI Agent代码智能体工具调用MCP 服务RAG交互助手 【免费下载链接】codelin 项目地址: https://gitcode.com/Cangjie-SIG/codelin 点击查看 免费下载 导读:本文以 codelin 智能编程助手的“统一功能整合”为主线,完整拆解其基于…

2026/10/14 5:16:02 阅读更多 →
Small Agent为何要从生成式推理转向分类式推理

Small Agent为何要从生成式推理转向分类式推理

1. 为什么“生成式推理”正在拖慢 Small Agent 的实际落地?你有没有遇到过这样的场景:一个轻量级的智能体(Small Agent),部署在边缘设备上,响应延迟要求低于200毫秒,但每次执行“判断用户意图”…

2026/10/14 5:15:02 阅读更多 →

日新闻

AnyPS5通用适配层设计:兼容性与性能的工程取舍

AnyPS5通用适配层设计:兼容性与性能的工程取舍

1. 从"AnyPS5"这个名字说起:它到底想解决什么问题第一次看到"AnyPS5"这个标题,我脑子里冒出来的第一个念头是:这大概率是一个围绕"跨平台运行"或者"通用适配"做文章的项目。名字里的"Any"…

2026/10/14 0:00:41 阅读更多 →
Flutter跨平台开发实战:二手交易应用与HarmonyOS适配

Flutter跨平台开发实战:二手交易应用与HarmonyOS适配

1. 项目概述:Flutter跨平台二手交易应用开发作为一名长期从事移动应用开发的工程师,我最近完成了一个基于Flutter框架的二手物品交易平台项目。这个项目最吸引我的地方在于它完美结合了Flutter的跨平台优势与HarmonyOS的生态特性,实现了"…

2026/10/14 0:00:41 阅读更多 →
DFS算法解决飞机降落调度问题实战

DFS算法解决飞机降落调度问题实战

1. 项目背景与核心思路飞机降落问题是一个经典的调度优化场景,也是算法竞赛和面试中的高频题目。这个题目要求我们合理安排多架飞机的降落顺序和时间,确保所有飞机都能安全着陆而不发生冲突。在实际航空管制中,这类问题直接关系到飞行安全和机…

2026/10/14 0:00:41 阅读更多 →

周新闻

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

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

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

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

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

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

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

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

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

2026/10/14 3:29:58 阅读更多 →

月新闻

我发现了一个新思路:用 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/13 22:01:27 阅读更多 →
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/13 14:57:39 阅读更多 →
黑夜航拍船只数据集训练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/12 18:11:17 阅读更多 →