新闻详情

新闻详情

首页 / 资讯中心 / 详情

用Dify搭建RAG知识库与带记忆Agent:痛风饮食监督系统实战

发布时间:2026/9/26 13:00:54来源:尧图网络
用Dify搭建RAG知识库与带记忆Agent:痛风饮食监督系统实战
痛风快十年饭桌上的每一筷子都是跟身体的谈判。我一直想做一个自己的“痛风知识库”——把所有医生建议、嘌呤数据、忌口原则、常见饮食误区整理成一个能随时问、随处查的系统再给这个知识库配上一个叫“吃不停的Agent”的助手。它管的不只是查嘌呤表而是每次我想加菜的时候它都能拉出知识库里的真实依据当场告诉我这口吃下去要面对什么。这篇文章就把我搭这套系统的完整过程、方案取舍和踩过的坑一次说清楚。如果你日常管不住嘴或者正在做一个垂直领域的RAG知识库加Agent应用这篇东西应该能帮你少走不少弯路。1. 先搞清楚这个项目到底解决什么问题一开始我踩过最典型的坑把“痛风知识库”想做成一本电子嘌呤手册而把“Agent”想成聊天机器人。这两个东西单独拎出来市面上都有现成方案但它们合在一起指向的真正需求完全不是“查一次数据”这么简单。我的日常困境是这样的中午点外卖一份卤煮端上来里面有猪肠、猪肺、豆干还有两口老汤。这时候我对嘌呤的大致印象是“内脏高、豆制品中等”但具体到卤煮这种复合菜品到底能不能吃、吃多少算超量、配什么能缓解靠临时翻表格根本解决不了。我需要的不只是“猪肠嘌呤高”这条记录而是能结合我的尿酸水平、近期发作频率、上一顿吃了什么直接给出一个“这顿饭的风险评级”和“替代方案”的完整建议。这才是“吃不停的Agent”真正要做的事——不是回答问题而是在我每一餐“想不停嘴、又怕痛”的瞬间充当一个比我更了解痛风饮食规则的专业监督员。所以我在设计时定了三个核心需求知识库必须是“活”的。来源不能只靠一份网上抄来的嘌呤表要包含痛风诊疗指南、食物嘌呤分类、药物与饮食相互作用、中医食养常见说法等多个维度形成可交叉验证的信息网。Agent必须有“记忆”。同样问我“能不能吃火锅”今天跟上周问我是否处于急性期尿酸是400还是580答案应该完全不同。这个不是检索命中率能解决的是记忆结构和状态管理的问题。输出不能丢依据。“少吃”“注意忌口”这类空话没有价值它要能返回知识库里的具体条目、数据来源和得出结论的判断逻辑。我随时能点开原始出处核对。说白了这个项目就是一个高度垂直的RAG系统加上一个带记忆的Agent大脑。网上热词里的“dify知识库流水线”“agent记忆”“rag知识库”其实都在讨论我需要的这几块技术点。后面我一步步拆开来讲。2. 知识库的边界设计不乱收数据才能得到好答案这一章想先讲知识库本身因为Agent回答得准不准七成看知识库。很多人在搭“xx知识库”的时候最容易犯一个毛病见资料就收文档堆了几个G最后Agent回答得像搜索引擎摘要东一句西一句根本不能用在严肃场景里。我设计这个知识库的原则是先划定边界再筛选高信源内容。2.1 资料源选型哪些值得进库哪些直接放弃痛风知识库的理想资料到底有哪些我按权重排了个优先级后面都按这个表来建库资料类型信源示例入库优先级说明诊疗指南国内外痛风诊疗指南、专家共识最高是底层逻辑用来确定疾病分期、治疗原则、饮食总纲食物嘌呤数据库食物成分表、嘌呤含量权威测定最高是高频查询对象需要结构化且要标单位、方法、地域差异药食相互作用别嘌醇、非布司他、秋水仙碱用药期饮食禁忌高这是最容易出问题的交叉领域知识点分散医学教材章节内科学、营养学相关章节片段中补充机制解读用于理解“为什么”不用于直接给建议民间食养内容食疗偏方、养生文章低只作为“常见误区”条目收录明确标注与循证医学的冲突点没有入的资料也得列清楚各直播平台、短视频里的网红“痛风食谱”直接放弃。这类内容流量逻辑大于医学逻辑经常用个案代替规律进库只会污染检索结果。还有一个容易忽略的点就是数据版本的统一。同一个食物不同机构测出来的嘌呤数据可能差好几倍比如菌菇类在不同生长阶段的值差异很大。我把每一份资料入库的时候都要求带“来源标识发布年份测定标准”而不是只抽一个数字出来。2.2 用Obsidian管理原始笔记再用Dify做RAG流水线我的知识库原始素材管理用的是Obsidian。这个工具的优势在于它是本地纯文本体系支持双链能把嘌呤表、指南摘要、用药注意事项几个碎片用链接串成网。我在Obsidian里给关键概念都打了标签比如“#急性期 #生成期 #高嘌呤 #药物冲突 #误区纠正”这些标签在后面做检索测试时成为我判断命中质量的依据。选择Obsidian而不是直接一股脑塞给RAG工具的原因也很简单我需要人肉审视资料和资料之间的关系发现矛盾的时候能直接在原文上批注而Obsidian是我最熟悉、最轻的思路整理环境。当笔记整理到一定规模后再进入Dify做完整的知识库流水线。Dify在这个项目的定位是“从原始文档到可检索知识库”的加工厂也是后续Agent调用的检索接口。我本地方案是Dify加向量数据库文档经过分段、清洗、 embedding之后进入索引再配置知识库检索模式。有人在热词里提到“cursor连接dify知识库”这是一个偷懒方向直接用IDE搭前端调Dify API我一开始也这么干过但后面发现Agent的逻辑不能全写在提示词里还是得回到Dify的编排界面去调模型参数和检索策略后面第三章细说。Obsidian和Dify的协作关系我总结成一句话Obsidian管“人怎么理解”Dify管“机器怎么找”。前者负责对抗信息混乱后者负责把整理过的信息高速推给模型。两边通过Markdown文件同步数据流是单方向的——Obsidian里定稿的内容才允许进入Dify未经审阅的材料绝不进知识库。2.3 切分策略与检索优化让命中结果真正有用知识库搭完最影响回答质量的就是文本切分。这里有一个常见的理解误区embedding模型不擅长抓取“全局意图”它更擅长匹配“表层语义”。比如我把“啤酒和海鲜同吃会不会诱发痛风”这个问题抛给知识库如果文档切分得太碎向量检索可能返回的是“啤酒嘌呤含量”和“海鲜嘌呤含量”两条孤立的记录却丢掉了“协同效应”那条综合论述。原因在于综合论述的内容分散在多个段落中切块后语义重心被稀释了。我的处理方式是分层切分而不是图省事用固定长度切指南类文档按章节和条目切保留“推荐等级”“证据级别”这类关键元信息嘌呤表做成结构化字段每一条对应一个JSON片段而不是整块文本综合论述类内容采用“段落语义补全”策略在切分时保留上下文标题额外拼进相邻段落的总结句。还在Dify里试了一组检索参数比如TopK的值。TopK太小召回率不足经常出现Agent说“知识库里没有相关内容”TopK太大噪声严重Agent会被低相关度的段落带跑。我最终在知识库规模大约2000个切片、测试30组问题的基础上选定TopK落在4到6之间同时开启“引用来源”输出这样每个回答都能追溯到具体文档片段。检索优化另一个关键点是同义词和别名扩展。痛风领域里的“嘌呤”“普林”“尿酸”“urate”这类词经常混用而且菜名五花八门“动物内脏”和“猪肝”“鸡心”在字面上完全不像。我在Dify里配置了查询改写规则在用户问题进入检索前先做一轮扩展把口语词、别名、上位词都补充进去。这个环节没有高深算法却大幅提升了命中准确率在实测中召回率提升了约30%。3. Agent编排从“能查到”到“会拦你”知识库本身是静态资产Agent才是那个“吃不停”的入口。这一章聊Agent的核心设计它怎么记住我的身体状态、怎么决定调用哪些知识库、怎么组织最终回答。我参考了目前社区里关于“pi agent”“hermes agent”等框架和Dify编排社区里的动态但最终方案没有过度复杂化用可控的组件组合而不是盲目堆框架。3.1 Agent记忆短期状态、长期偏好与尿酸档案我先说记忆这是Agent区别于普通问答机器人的核心能力。知识库里的嘌呤数据是客观存在的但同一个对象吃同样食物不同时机风险完全不同。比如痛风急性发作期摄入中等嘌呤食物跟缓解期摄入同等食物对身体的冲击差三倍以上。Agent必须要知道“用户当前处于哪个阶段”才能正确决定要不要拦住“吃不停”的冲动。我把记忆拆成三层会话级短期记忆记录“这一餐已经吃了什么、大概多少量”用于当场判断“再点一份会不会超量”用户级长期档案记录历史发作频率、最近一次发作时间、近期尿酸检测趋势、平时饮水习惯等用结构化KV存储或数据库字段保存动态事件记忆每次“被拦下来”或者“吃了之后检测异常”的事件都作为记忆向量回写让Agent逐步越来越明白我这个人的真实耐受边界。短期记忆用对话上下文管理就够了长期档案用JSON配置动态事件放进向量库做相似召回。我在Dify里的实现是给Agent配置了一个单独的“状态查询”工具工具调用一次数据库接口取最新档案而不是把所有历史信息都塞进提示词。这样提示词长度可控模型也更容易抓住关键决策因子。在社区里的“agent记忆”热词讨论中很多人把记忆做得过大过重——所有对话都无限保留最后提示词爆炸模型反而越来越糊涂。我的原则很简单记忆服务于决策只保留影响“能不能吃”结论的关键变量。3.2 工具调用查表、估算、记录、提醒四条路径Agent不能只靠一个检索工具包打天下。真实的饮食判断是组合判断需要并行调用多个工具来汇总信息。我最终定型的工具集是四个第一个是食物嘌呤查询工具。输入食物名称和分量返回结构化嘌呤含量、风险等级和参照物对比。这个工具直接对接我在知识库里整理好的结构化嘌呤表数据必须是最新审校版不允许模型自己编。第二个是饮食风险评估工具。输入一餐的食材清单结合用户档案中的尿酸水平、当前发作状态计算这一餐的嘌呤总负荷输出“安全”“谨慎”“建议避免”三档结论。计算逻辑不是简单累加要区分食物间协同效应和烹饪方式系数比如同等嘌呤含量的肉类煮后弃汤和不弃汤是两个风险等级。第三个是“替代方案”工具。当Agent拦住一道菜之后它必须给一个替代建议而不是只说“不能吃”。比如用户想吃猪肝工具返回替代选项“鸡胸肉”“鸭血(适量)”“鸡蛋”并说明理由和适宜分量。这决定了用户体验——拦是必要的但给出口比只给禁区有用得多。第四个是记录与提醒工具。每次给出建议后把这顿餐的风险摘要写入记忆文件同时它可以生成一个“本周饮食复盘”统计我这周高嘌呤餐的比例提出下周改进方向。这个工具让Agent从“被动答题者”变成了“主动监督员”。设置工具调用策略时最需要注意的是避免连环调用错误。Agent经常在拿不到完整信息时瞎补参数所以我在每个工具的入参里都设了required字段并配了缺失时的兜底话术让它在信息不全时反问用户而不是给一个装模作样的估算值。3.3 Prompt与输出风格拦得自然才拦得住Agent只管“知道答案”是不够的还要学会“怎么把话说得让人服气”。这个项目里我不想要一个冷冰冰的“嘌呤计算器”而是一个能跟我聊天的监督者。所以Prompt设计里我定了三个关键约束第一结论先行。先说是“建议吃”还是“建议别吃”再用知识库里的数据解释而不是先长篇大论嘌呤代谢机制最后才给结论。家里饭局上没人有耐心听机理先给我决定性判断我才愿意接着看依据。第二边界清晰。关于诊断、药物调整类问题Agent必须说明“这个需要问医生”绝不能拿知识库里的药典片段充当处方建议。我在系统提示词里做了强约束并加了终检路由一旦问题涉及药物治疗直接走“就医建议”分支不调用饮食评估工具。第三语气要有“人味儿”但不能油腻。我试过把Agent设定成活泼搞笑型结果它经常在风险提示时也贫嘴看着欠揍设定成严肃健康管理师型又显得每次吃饭都在被教训。最后调到“有经验的朋友”这个状态直接说明风险但也理解嘴馋是人类正常需求会给出折中方案。输出风格不只是提示词的事还跟检索来源的呈现方式有关。我测试的一个版本是每个回答后附“依据列表”第一版直接甩三条文档标题阅读感很差。后来优化成“结论关键数据点可选查看详细依据”信息密度和可读性平衡好很多。4. 实操过程从零搭起“知识库Agent”的最小可用系统前面几章讲完了设计逻辑这一章说具体搭建过程。我给自己的目标是先跑出一个最小可用系统能在一个周末内完成能在饭点前用上后续再逐步迭代。不要再一上来就追求企业级高并发架构个人项目先能安安稳稳用起来才是王道。4.1 搭建知识库流水线的具体步骤我是用Dify作为核心平台完成的本地方案选择Docker Compose部署。之所以不直接用云服务是因为涉及到个人健康数据和知识库文档放在本地自己维护心里更稳也方便反复调检索参数。如果你是首次上手我建议分四步走第一步准备原始资料。从Obsidian笔记库导出审校过的Markdown文件统一命名格式为“类别_文档名_版本号”放在一个干净目录里。导出前先做一轮去重删除重复内容和互相矛盾的旧版本。第二步清洗文本。把Markdown里的HTML残留、无含义注释、空行标签全部处理掉。这一步骤很多人偷懒跳过结果embedding效果差全怪模型不好。我实践下来的标准是每一份入库文档至少人工通读一遍删除那些来源不明、无法核实的数据段落。第三步分段和embedding。在Dify的知识库界面里创建新知识库选择分段模式我用的“自定义分段”按语义段落切而不是默认的固定字符数。Embedding模型我选了一个中文支持较好的模型这步影响检索质量值得多试几个模型跑同一批测试问题来对比。第四步连接知识库和Agent。在Dify的工作流中创建一个Agent应用给Agent配置已建立的知识库作为上下文再将第三章设计的几个工具接入。然后开启Dify的“引用和归属”设置确保Agent输出结果时带上引用来源。这一步有一个“能不能吃饭先不说但启动这件事可以先吃顿好的”的教训知识库里面的数据质量远大于数据量。我最初进了5000份文档结果很多低质量文档让检索结果飘来飘去后来删到不到2000份回答准确率反而直线上升。这个教训请务必记住。4.2 Agent开发中的关键配置与验证知识库连上之后进入Agent的开发调参阶段。我按下面的配置来做首次验证这几个参数值都是在多次测试中逐步确定的检索模式选择“混合检索”关键词检索与向量检索并用兼顾精确匹配和语义理解结果数量TopK设置为5分数阈值定在0.35低于阈值的片段强制丢弃模型温度参数调到0.2控制回答落在知识点范围内减少自由发挥每轮对话的上下文窗口保留最近10轮按记忆分层原则更早的对话不进当前上下文。验证环节我用了一套自己攒的30道测试题覆盖六类典型问题单一食物嘌呤查询、复合菜品判断、特殊时期饮食、药物相互作用、常见谣言求证、饮食复盘总结。每道题的不通过标准非常明确“结论是否跟知识库原文一致且是否准确识别了条件”。比如同样问“痛风能不能吃豆腐”如果Agent不先问“你是急性期还是缓解期”就给结论这道题直接判不通过。首次全量测试下来30题通过了21题准确率70%。不及格的9题里有5题是知识库内容缺失导致2题是检索召回混淆2题是Agent在转换知识时出现理解偏差。这个结果反倒让我安心因为问题可定位而且定位到知识库层就能解决不需要重写Agent逻辑。之后我开始迭代先补知识库内容再调检索策略最后才是调Agent提示词。流程热词里大家常说的“dify知识库流水线”指的就是这一段——从原始数据到分段到embedding到检索到Agent生成的整条链路每一环都有可优化的着力点。4.3 本地部署与日常使用配置最终部署是跑在本地机器上的Dify服务日常访问入口用浏览器打开手机端通过局域网访问。我没有做公网映射因为这是个人工具没必要暴露在公网上安全第一。日常使用流程是想吃什么直接在对话框里报出食物名称Agent先查知识库再调风险评估工具最后给出建议和替代方案。还有一个重要功能是让它跟系统通知打通。我写了一个简单的Webhook脚本在每天午餐和晚餐前一个小时定时推送一条“今日饮食提醒”内容来自Agent根据当天记忆生成的复盘摘要。比如“昨晚火锅嘌呤负荷偏高今天建议以低嘌呤清淡饮食为主多喝水”。这个机制比等到吃饭时再去主动问要实用得多更像一个贴身监督员。我在Dify的Agent设计里还专门加了一条“饭后复盘”指令每顿正餐后如果用户拍了照片或输入菜名列表就自动调用记录工具更新今天摄入总嘌呤的估算值。这样经过一两周的积累知识库和Agent就能对“我这个人的饮食习惯和风险点位”有比较精准的认识。5. 常见问题与排查技巧实录项目上线用了快两个月踩过的坑、修过的问题完全可以列成一张避坑地图。这一章专门整理高频问题和排查思路很多人做Agent项目跑不起来其实不是AI模型的问题而是这些细枝末节的问题在作怪。5.1 高频问题速查表现象根因解决思路Agent经常回答“知识库无相关内容”文档切分过碎语义被截断检查分段逻辑改用语义切分并补全上下文标题检索结果命中但答案张冠李戴向量模型与文档语言、领域适配差换一个中文领域表现更好的embedding模型并重新测试同一个问题两次回答不一致温度设置偏高或上下文被冲掉调低温度明确工具必需参数避免模型自由发挥Agent给出的数据与知识库原文不符提示词引导过度或检索片段被截断开启引用归属逐条核对压缩单条上下文至原文语义完整打断“吃不停”时语气让人反感提示词设定太生硬缺少缓冲把风险分层高预警时严正提示中低风险时给折中方案知识库更新后Agent没有反应索引未重写或缓存未清更新文档后强制重跑知识库索引重启Agent会话本地部署后手机无法访问防火墙或局域网配置问题检查端口占用、防火墙入站规则确认服务监听地址是0.0.0.05.2 三个印象最深的排查经历第一个是“火锅与啤酒协同风险”测试问题反复失败。Agent只返回了“火锅底料嘌呤高”和“啤酒嘌呤高”两条独立信息没有生成“组合风险更高”的结论。我开始以为是提示词问题后来追踪检索结果才发现知识库根本没有收录专题论述。解决方式是新增了一份“常见高嘌呤饮食组合”条目并结构化标注组合叠加规则问题才真正解决。第二个是“豆腐可不可以吃”的争议。旧指南和部分科普文章说法相反导致Agent回答随检索片段漂移。我排查到根因后做了一个决策把“急性期慎吃、缓解期适量”作为统一口径写入知识库的总纲并在争议性内容条目中明确标注“本条目与总纲冲突以下解释仅供参考”。这样Agent即使召回争议片段也能通过冲突校验机制回到总纲判断回答趋于稳定。第三个是Agent记忆越积越多导致回答越来越慢、越来越乱。回看日志发现大量旧对话和档案数据塞进提示词模型焦点被稀释。后来我把长期档案改为“按需调用”Agent需要时才通过工具加载而不是随每次请求一起打包。这个改动之后响应速度提升明显回答稳定性也回来了。5.3 独家避坑笔记除了可复现的排查方法还有几个经验值得单独列出来第一垂直领域的知识库宁可少入库不能乱入库。低质量文档对检索结果的污染是成倍的不是线性的。我后来在导入环节加了一个“持证校验”每一篇进知识库的文档必须标注来源和审校状态没有标注的一律跳过。第二Agent的工具调用日志要完整保留。日志不是用来出问题的是用来追踪问题的。每次Agent调用失败、超时、参数缺失日志里都有痕迹。初期很多“灵异事件”最后都定位到日志里的参数类型不匹配非常基础但非常致命。第三知识库版本管理必须跟上。我在obsidian侧做完资料审校后给每版知识库编号Dify侧也同步打版本标签。有一次我更新了嘌呤表但Dify索引没有重新建立Agent连续两天给出的数据还是旧版。从那以后我给自己定了个规矩知识库任何更新必须在30分钟内重跑索引并做一次5题冒烟测试。6. 后续扩展方向与个人心得这个项目做下来最深的体会是知识库和Agent不能分开优化。很多人在网上争论“RAG到底行不行”“Agent是不是新瓶装旧酒”我觉得都不如一个真实的垂直场景来得有说服力——当一个工具需要在饭点前用70%的准确率拦住一个嘴馋的中年男人时它就不得不把知识、记忆、工具、语气全部磨到能用为止。后续我还想做几个扩展方向说给你们参考一是把知识库接入真实检测数据。比如用家用尿酸仪测出结果后让Agent自动更新长期档案并重新校准饮食风险模型。这个扩展方向能进一步缩小个体差异让记忆从“对话记录”升级为“健康数据”。二是把“替代方案工具”做得更细。目前替代建议偏宽泛后续想结合本地菜市场和超市的可及性以及个人口味偏好给出更定制化的替换选项。比如用户喜欢吃内脏可以按“口感相似度”推荐替代食材而不是只推荐鸡胸肉。三是增加“社交场景模式”。逢年过节、朋友聚餐饮食控制的约束条件更复杂——不是全桌都在乎你的尿酸也不是所有的菜都能自己决定。Agent可以针对“饭局场景”给出一个“可控妥协策略”哪些菜可以碰哪些必须绕开哪些时候可以直接以茶代酒。最后再分享一个小技巧本地方案不要试图把所有脏活累活都扛在一台电脑上。我最初想把本地模型、Dify服务、向量库全放一台旧笔记本里结果响应慢到让人失去耐心。后来改为“Dify部署在常开小主机上embedding模型调用免费API本地只维护Obsidian原始库和Dify配置”使用体验瞬间顺畅。项目是拿来用的不是拿来炫技的——这句话贯穿我整个搭建过程希望你也能在实际使用中找到属于自己的那份顺手。
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

上海做网站推广公司多少钱?避开域名服务器坑 2026/9/27 3:59:26

上海做网站推广公司多少钱?避开域名服务器坑

上海做网站推广公司多少钱?避开域名服务器坑 域名注册商和服务器配置单扔过来,老板直接懵了。阿里云、腾讯云、华为云,价格差三倍,到底选哪个? 很多在上海找做网站推广公司的企业,第一反应不是问设计,而是问技术底层。…

阅读更多 →
网站诊断工具源码下载避坑指南:5分钟自查挂马 2026/9/27 3:59:26

网站诊断工具源码下载避坑指南:5分钟自查挂马

网站诊断工具源码下载避坑指南:5分钟自查挂马 昨晚刚给客户交付的新站,今早打开后台发现首页代码里多了个看不见的 iframe 标签。鼠标移上去,页面瞬间跳转到一个博彩网站。那一刻,心跳大概停了两秒。…

阅读更多 →
CCS工程重命名完整指南:从文件夹到编译调试的避坑实践 2026/9/27 3:59:26

CCS工程重命名完整指南:从文件夹到编译调试的避坑实践

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

阅读更多 →
漳州北京网站建设公司保姆级教程解决没流量难题 2026/9/27 3:59:20

漳州北京网站建设公司保姆级教程解决没流量难题

漳州北京网站建设公司保姆级教程解决没流量难题 网站做好了没人访问,这大概是独立站长最崩溃的时刻。我见过太多老板花了几万块,做出来的页面花里胡哨,结果百度搜公司名都排不到前三,流量全靠刷。别急,今天这篇保姆级建站教程,专门针对【漳州北京网站建…

阅读更多 →
CS117标准解析:雷电间接效应防护的系统级设计升级 2026/9/27 3:59:20

CS117标准解析:雷电间接效应防护的系统级设计升级

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

阅读更多 →
华为杯数学建模竞赛:数据集更新趋势与备赛资源获取实操指南 2026/9/27 3:59:20

华为杯数学建模竞赛:数据集更新趋势与备赛资源获取实操指南

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

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞 ✉