AI数学推理能力本地部署与测试实践指南
这次我们来看一个关于AI数学能力突破的讨论。这不是一个具体的开源项目而是一个来自学术界的观察一位数学教授对AI在数学推理领域的最新进展给出了“意义重大”的评价。对于关注AI技术前沿特别是AI在复杂逻辑、推理和科学计算领域应用的朋友来说这个信号值得深入解读。AI在数学上的突破远不止是“算得快”或“背公式”。它核心挑战的是抽象推理、逻辑链条构建和问题解决策略的生成能力。这种能力的进化意味着AI从“模式识别工具”向“通用问题解决助手”迈出了关键一步。本文将围绕这一评价拆解其背后的技术含义、当前可验证的AI数学工具现状、以及我们如何本地部署和测试这类模型来亲身感受这一“重大意义”。如果你关心的是现在有没有能实际运行的、具备数学推理能力的AI模型它们的硬件门槛高不高是否支持本地部署和API调用如何验证其真实能力而非“记忆答案”那么这篇文章会提供一套清晰的实践路径。1. 核心能力速览当前AI数学推理工具生态虽然“数学教授的评价”是一个宏观观点但落地到具体工具我们可以从几个维度来观察当前AI的数学能力。下表梳理了相关模型和工具的核心特点能力项说明与代表核心突破方向从符号计算如Mathematica转向自然语言理解下的数学推理如GPT-4、DeepSeek-Math、MetaMath典型任务解数学题奥数、IMO、定理证明、数学问题形式化、生成解题步骤硬件门槛分水岭明显大型语言模型LLM需高性能GPU如16G显存进行全参数推理小型精调模型或专用工具可能支持CPU或低显存GPU。主流形式1.云端API如OpenAI GPT-4、Claude-3、DeepSeek最新模型无需本地硬件按调用付费。2.本地可部署模型如CodeLlama-Math系列、WizardMath、一些基于Mistral或Llama精调的数学模型需自行部署。是否支持API云端模型天然支持本地部署模型通常可通过OpenAI兼容接口如llama.cpp的server、vLLM、Ollama提供API服务。是否支持“批量任务”可以但本质是批量调用。本地部署时需注意显存和计算资源管理避免并发过高导致OOM内存溢出。关键验证点不是最终答案的对错而是推理过程的可解释性、逻辑严谨性以及处理未见过的、非典型问题的能力。这个表格勾勒出了一个轮廓我们谈论的“AI数学突破”目前最前沿的表现集中在少数大型闭源模型上但同时开源社区也在积极推出可本地部署的替代品。意义之“重大”在于这些模型开始展现出类似人类的、基于理解的推理能力而不仅仅是检索或模式匹配。2. 适用场景与使用边界适合谁解决什么问题教育工作者与学生作为辅助工具生成不同解法的思路、自动批改步骤题、创建个性化练习题。研究人员与工程师辅助进行公式推导、验证数学猜想需严格复核、将自然语言描述的问题形式化为数学模型或代码。开发者将数学推理能力作为服务集成到自己的应用中例如智能教育平台、科研辅助工具、金融量化模型验证等。技术爱好者验证和体验AI技术的前沿能力理解“推理”与“计算”的区别。不适合什么场景高可靠性要求的实时系统如航天控制、核心金融交易系统的数学核验。AI仍可能产生“幻觉”看似合理实则错误的推理。替代严格数学证明在学术论文中AI生成的推导过程必须经过人工严格、细致的验证不能直接作为证明。完全无需人类监督目前阶段AI在数学领域的输出必须被看作“高级参考”或“思路草案”最终判断和责任在于人类。版权、隐私与安全边界数据隐私如果处理涉及敏感数据的数学问题如包含真实业务数据的统计模型使用云端API存在数据出境风险。此时本地部署模型是更安全的选择。合规使用在教育场景需防止学生直接使用AI完成作业而放弃思考。工具应定位为“导师”而非“枪手”。结果核实必须建立对AI输出结果进行独立验证的流程尤其是在科学和工程应用领域。3. 环境准备与前置条件以本地部署为例要亲手验证AI的数学能力本地部署一个模型是最直接的方式。以下是通用性较强的准备清单操作系统LinuxUbuntu 20.04/22.04推荐或 WindowsWSL2环境为佳。macOSApple Silicon也可运行部分量化模型。Python环境Python 3.10 或 3.11。强烈建议使用conda或venv创建独立的虚拟环境。深度学习框架PyTorch 2.0。需根据CUDA版本安装对应PyTorch。硬件要求GPU推荐NVIDIA GPU显存≥8GB可用于运行7B/13B参数的量化模型。若要运行更大模型或非量化模型需要16GB甚至更高显存。CPU可以运行高度量化的模型如GGUF格式但速度会慢很多适合轻度测试。磁盘空间一个7B参数的模型FP16精度约需14GB空间。量化后如Q4_K_M可降至4-6GB。准备至少20GB空闲空间。网络用于下载模型文件和依赖包。4. 安装部署与启动方式以Ollama为例为了快速体验我们选择Ollama作为部署工具。它简化了本地大模型的下载、运行和管理并提供了类OpenAI的API接口。步骤1安装Ollama访问 Ollama 官网根据你的操作系统下载并安装。步骤2拉取并运行数学模型Ollama支持很多社区精调的模型。例如我们可以运行一个专为数学推理优化的模型请注意模型名称和可用性可能随时间变化以下为示例# 在终端中拉取并运行一个数学模型例如 deepseek-r1:7b假设可用 ollama run deepseek-r1:7b # 或者尝试其他模型如 llama3:8b (通用模型也具备一定推理能力) # ollama run llama3:8b运行后会进入一个交互式聊天界面你可以直接输入数学问题。步骤3启动API服务要让其他程序调用需要以API服务器模式运行Ollama。# 启动Ollama服务默认监听11434端口 ollama serve # 然后在另一个终端运行你想要的模型。服务会在后台保持。 ollama run deepseek-r1:7b现在本地API服务就绪了。5. 功能测试与效果验证设计你的“数学考卷”启动服务后关键是如何科学地测试其数学推理能力。不能只问“11等于几”要设计有梯度的测试集。5.1 基础算术与代数测试目的验证基本计算和符号运算能力。# 直接在Ollama交互界面输入 用户计算 3x^2 2x - 5 当 x 4 时的值。 用户分解因式x^2 - 5x 6。 用户解方程组2x y 7, x - y -1。预期结果不仅给出答案还应展示清晰的步骤。判断成功步骤合理最终答案正确。5.2 逻辑推理与文字题测试目的验证将自然语言转化为数学问题的能力。用户一个水池有两个进水管A和B单独开A管注满水池需要6小时单独开B管需要4小时。如果两管同时开多少小时可以注满预期结果模型应能识别出这是“工作效率”问题设定水池总容量为1计算出A、B管每小时的工作效率1/6和1/4然后求和得到联合效率最后用总量除以效率得到时间。判断成功逻辑链条完整计算正确。5.3 多步推理与奥数题测试目的验证解决需要多个跳跃性步骤的复杂问题的能力。用户从1到100的所有整数中既不是3的倍数也不是5的倍数的数有多少个预期结果模型应想到使用容斥原理。先计算总数100再计算3的倍数的个数33个5的倍数的个数20个15的倍数的个数6个然后计算100 - (33 20 - 6) 53。判断成功正确应用容斥原理步骤清晰答案无误。5.4 定理证明思路高级测试目的验证其是否具备初步的形式化推理和思路生成能力。用户请简述如何证明“根号2是无理数”。预期结果模型应描述反证法的核心思路假设√2是有理数可表示为最简分数a/b推导出a和b均为偶数与最简分数矛盾。判断成功准确描述证明的关键逻辑步骤。在测试过程中请重点关注过程 vs 结果答案错误但过程极具启发性可能比一个蒙对的答案更有价值。幻觉识别注意模型是否“自信地”编造了不存在的公式或定理。泛化能力尝试微调问题表述看模型是否能理解本质相同但描述不同的问题。6. 接口API与批量任务调用本地模型通过API提供服务后可以轻松集成到其他应用中。6.1 基础API调用Ollama提供了兼容OpenAI格式的API。以下是一个Python调用示例import requests import json def ask_math_question(question): url http://localhost:11434/api/generate # Ollama默认API地址 payload { model: deepseek-r1:7b, # 替换为你实际运行的模型名 prompt: f请一步步解决以下数学问题\n{question}, stream: False, # 设为True可流式接收这里先看完整结果 options: { temperature: 0.1, # 低温度使输出更确定适合数学推理 num_predict: 512 # 最大生成token数复杂问题需调高 } } headers {Content-Type: application/json} try: response requests.post(url, datajson.dumps(payload), headersheaders, timeout120) response.raise_for_status() result response.json() return result.get(response, No response generated.) except requests.exceptions.RequestException as e: return fAPI请求失败: {e} # 测试调用 question 鸡兔同笼共有头35个脚94只问鸡和兔各有多少只 answer ask_math_question(question) print(问题, question) print(模型回答\n, answer)6.2 批量任务处理如果需要处理大量数学问题如题库自动生成步骤解析可以构建一个简单的批量处理脚本。import requests import json import time from concurrent.futures import ThreadPoolExecutor, as_completed def solve_problem(problem_text): 单个问题求解函数 url http://localhost:11434/api/generate payload { model: deepseek-r1:7b, prompt: f解决该数学问题并给出详细步骤{problem_text}, stream: False, options: {temperature: 0.1} } try: resp requests.post(url, jsonpayload, timeout60) return problem_text, resp.json().get(response, Error), resp.status_code except Exception as e: return problem_text, fException: {e}, 500 # 假设有一个问题列表 problem_list [ 12和18的最大公约数是多少, 一个圆的半径增加50%它的面积增加百分之几, ...更多问题... ] # 控制并发数避免压垮本地服务 results [] with ThreadPoolExecutor(max_workers2) as executor: # 并发数建议为1-2 future_to_problem {executor.submit(solve_problem, p): p for p in problem_list} for future in as_completed(future_to_problem): problem, answer, status future.result() results.append({problem: problem, answer: answer, status: status}) print(f处理完成: {problem[:30]}... 状态码: {status}) time.sleep(1) # 增加请求间隔避免过热 # 将结果保存到文件 import csv with open(math_solutions.csv, w, newline, encodingutf-8-sig) as f: writer csv.DictWriter(f, fieldnames[problem, answer, status]) writer.writeheader() writer.writerows(results)批量任务注意事项速率限制本地硬件资源有限务必控制并发请求数max_workers和请求间隔time.sleep。错误处理完善的异常捕获和重试机制是必须的。结果复核批量生成的结果必须进行抽样复核确保质量。7. 资源占用与性能观察运行本地数学模型时资源监控至关重要。观察显存占用Linux# 使用nvidia-smi动态观察 watch -n 1 nvidia-smi运行模型后你会看到该进程的显存占用。一个7B参数的4-bit量化模型通常占用4-6GB显存。如果进行批量推理或使用更大模型显存占用会上升。观察系统资源htop # Linux 或使用任务管理器Windows/ 活动监视器macOS关注CPU和内存使用情况。纯CPU推理时内存占用会很高可能是模型大小的2倍以上。性能影响因素模型大小与量化等级模型参数越多、量化等级越高如Q8比Q4精度高但更慢速度越慢资源占用越高。上下文长度问题Prompt和答案Response的总长度越长消耗的计算资源和时间越多。生成参数num_predict最大生成长度设置得越大单次生成耗时可能越长。硬件GPU的型号CUDA核心数、内存带宽是最大瓶颈。优化建议初次测试使用量化等级较高的模型如Q4_K_M在速度和精度间取得平衡。控制输入将问题表述得简洁清晰避免无关文本。调整参数对于数学推理将temperature调低如0.1-0.3减少随机性使输出更确定。8. 常见问题与排查方法问题现象可能原因排查方式解决方案Ollama启动失败或无法下载模型网络连接问题或模型名称不存在。1. 检查网络。2. 运行ollama list查看已有模型。3. 去Ollama官网模型库确认名称。1. 配置网络代理或使用镜像源。2. 使用正确的、已发布的模型名称。运行模型时显存不足OOM模型太大或量化等级不够超出GPU显存。运行nvidia-smi观察显存占用。1. 换用更小的模型如7B代替13B。2. 使用量化等级更高的版本如Q4代替Q8。3. 考虑使用CPU推理速度慢。API调用返回超时或无响应1. Ollama服务未启动。2. 端口被占用或请求地址错误。3. 模型首次加载或推理时间过长。1. 检查ollama serve是否在运行。2. 检查端口11434是否监听netstat -tlnp | grep 11434。3. 查看Ollama服务日志。1. 确保先运行ollama serve。2. 确认API地址和端口正确。3. 增加客户端超时时间timeout。模型回答质量差胡言乱语1. 模型本身能力有限。2. Prompt指令不清晰。3. Temperature参数过高。1. 用已知的简单问题测试。2. 检查Prompt是否明确要求“一步步推理”。3. 检查生成参数。1. 尝试不同的、更专精于数学的模型。2. 优化Prompt加入系统指令如“你是一个数学专家”。3. 降低Temperature如设为0.1。批量处理时服务崩溃并发请求过多导致显存或内存耗尽。监控资源使用情况查看系统日志。1. 大幅降低并发数max_workers1。2. 在请求间增加休眠时间time.sleep。3. 考虑使用任务队列如Redis进行流量控制。推理速度极慢CPU模式模型在CPU上运行且未进行优化。检查是否使用了支持CPU优化的运行时如llama.cpp。1. 使用Ollama它已集成优化。2. 考虑使用更小的模型或更高的量化等级。3. 如果可能升级到GPU环境。9. 最佳实践与使用建议从简到繁验证不要一开始就用IMO难题测试。从小学、初中数学题开始逐步增加难度建立对模型能力的准确认知。Prompt工程是关键对于数学推理清晰的指令至关重要。尝试在Prompt中加入角色设定“你是一个严谨的数学老师。”输出格式要求“请按以下步骤解答1. 理解题意2. 列出已知和未知3. 给出推理过程4. 计算结果5. 最终答案。”约束条件“只使用初等数学知识。”或“请用反证法证明。”建立评估基准准备一套涵盖不同难度、不同数学分支算术、代数、几何、组合的标准测试题。每次测试新模型或新参数时都用这套题来评估量化其进步如正确率。结果必须复核绝对不要完全信任AI的数学输出。无论是用于教育、科研还是生产都必须由领域专家或通过其他可靠工具如符号计算软件进行结果验证。资源隔离与管理为AI数学推理服务单独准备一个虚拟环境或容器。模型文件、输入问题、输出结果分目录存放便于管理和清理。记录与迭代记录每次测试的模型版本、Prompt、参数和结果。这能帮助你总结出最适合你任务的配置。10. 总结与下一步数学教授“意义重大”的评价其重量在于它指向了AI通向通用智能的一个核心瓶颈——抽象逻辑推理。通过本文的实践你应该已经能够快速判断当前有哪些类型的AI工具可以处理数学问题以及它们的大致硬件门槛。亲手部署使用Ollama等工具在本地拉起一个可交互、可API调用的数学推理模型。科学验证设计一套从易到难的测试题从计算、应用到推理、证明多维度评估模型的真实能力而非只看最终答案。集成应用了解如何通过API将这项能力集成到自己的程序或工作流中并规避批量处理时的常见陷阱。最容易踩的坑莫过于对模型能力期望过高或是对其输出的错误缺乏警惕。始终记住它目前是一个强大的“协作者”而非“替代者”。下一步你可以探索更专精的模型寻找并测试如MetaMath、WizardMath、ToRA等专门在数学数据集上精调过的模型对比它们与通用模型的表现差异。尝试工具调用Function Calling让大模型编写代码调用Python的sympy、numpy等数学库来解决复杂计算实现“思考”与“计算”的结合。构建垂直应用基于本地部署的模型和API开发一个简单的数学辅导聊天机器人或自动解题工具在实际互动中持续优化。这个领域的进展日新月异。今天看来“意义重大”的突破可能很快成为明日的基础能力。保持动手实践是理解并跟上这一浪潮的最好方式。建议收藏本文的部署和测试框架作为你评估未来新模型的一个基准工具箱。

相关新闻

论文数据分析痛点与AI解决方案全解析

论文数据分析痛点与AI解决方案全解析

1. 论文写作中的数据分析痛点解析写论文最头疼的环节是什么?十有八九的研究者会告诉你:数据分析。从原始数据到图表结论,这个看似标准化的流程实则暗藏无数坑点。我指导过上百篇学位论文,见过太多学生在数据清洗阶段就耗掉半个月&…

2026/10/18 10:52:47 阅读更多 →
终极指南:Visual C++运行库合集一键解决Windows程序依赖问题

终极指南:Visual C++运行库合集一键解决Windows程序依赖问题

终极指南:Visual C运行库合集一键解决Windows程序依赖问题 【免费下载链接】vcredist AIO Repack for latest Microsoft Visual C Redistributable Runtimes 项目地址: https://gitcode.com/gh_mirrors/vc/vcredist 你是否经常遇到"找不到MSVCP140.dll&…

2026/10/18 10:52:54 阅读更多 →
外包高薪与正编稳定的职业选择分析

外包高薪与正编稳定的职业选择分析

1. 职业选择的核心矛盾解析 "外包55万VS正编28万"这个选择题背后,折射出当代职场人最纠结的薪酬与稳定性博弈。去年我辅导过37位面临类似选择的候选人,发现真正影响决策的往往不是表面数字,而是三个隐形维度:职业生命周…

2026/10/19 12:39:00 阅读更多 →

最新新闻

办公系统授权文件替换风险与校验机制解析

办公系统授权文件替换风险与校验机制解析

简介:这份资源为通达OA 2017的注册与破解文件包,面向需要搭建协同办公系统测试环境、进行功能验证或学习OA部署的技术人员,可解决官方版本在用户数量与安装次数上的限制问题。压缩包共5个文件,约1.04MB,包含dat数据文件…

2026/10/19 13:52:51 阅读更多 →
基于YOLOv8与PyQt5的竹签自动计数工具开发实战

基于YOLOv8与PyQt5的竹签自动计数工具开发实战

竹签计数这活儿,看着简单,做起来真挺折磨人的。餐饮供应链的朋友应该深有体会——一箱竹签几千根,靠人工数又慢又容易错,验收时扯皮,盘点时头疼。我接过的一个模拟项目就是做这个:用深度学习YOLOv8做竹签检…

2026/10/19 13:52:51 阅读更多 →
Kafka消息压缩算法对比与调优实践:gzip/snappy/lz4/zstd如何选

Kafka消息压缩算法对比与调优实践:gzip/snappy/lz4/zstd如何选

在Kafka集群调优的日常里,消息压缩经常被当成一个“加了就行”的开关。但真正做性能压测的时候你会发现,什么时候压缩、用哪种算法、批量要攒多大,这几个因素直接把带宽、磁盘和CPU这三项资源的平衡搅在一起。这篇内容围绕Kafka的消息压缩算法…

2026/10/19 13:52:51 阅读更多 →
阿里车牌识别API实战:从调用到预处理,提升逆光与夜间识别率

阿里车牌识别API实战:从调用到预处理,提升逆光与夜间识别率

简介:本资源为阿里车牌识别技术的学习与实战项目包,面向计算机视觉初学者、Android开发者及智能交通应用开发者,帮助理解车牌识别从图像预处理、特征提取、车牌定位到字符识别的完整流程,并掌握自定义相机与仿二维码扫描拍照的实现…

2026/10/19 13:52:51 阅读更多 →
人形机器人技术拆解:从全电驱动到强化学习的系统工程实践

人形机器人技术拆解:从全电驱动到强化学习的系统工程实践

最近后台和私信里好几个人问我同一个问题:想研究人形机器人,但项目多、文档杂,从哪下手最合适?我每次都提同一个名字——Atlas。不是那个搞数据库的 Atlas,也不是各种叫 Atlas 的地图库。我说的是真正把人形机器人从实…

2026/10/19 13:52:51 阅读更多 →
手写代码评审辅助工具:基于静态分析与代码块评分,实现机器扫雷人做判断

手写代码评审辅助工具:基于静态分析与代码块评分,实现机器扫雷人做判断

程序员之间最容易翻脸的地方,除了代码风格,就是代码评审。 公司项目组从去年开始严格执行 MR 评审制度,本意是守住质量底线,但真正执行起来,问题特别多。一个 400 行起步的 MR,评审人往往只来得及看两三个…

2026/10/19 13:51:40 阅读更多 →

日新闻

频率跟踪型PWM电源设计:臭氧发生器谐振点漂移与软开关实现

频率跟踪型PWM电源设计:臭氧发生器谐振点漂移与软开关实现

简介:本资源为电源技术方向的学术研究文档,聚焦介质阻挡放电型臭氧发生器电源的频率跟踪型PWM控制策略,面向电力电子、高压电源及臭氧应用领域的科研人员与工程技术人员。针对负载呈容性、等效电容随外加电压升高而增大、谐振频率随之漂移的难…

2026/10/19 0:00:47 阅读更多 →
Vibe Coding 遇上 TaoToken:把开发者思维圣殿的灵感流接入统一 Key 通道

Vibe Coding 遇上 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/19 0:00:47 阅读更多 →
HundredCV-Chat话题建模实战教程:利用4,871个内置话题标签构建主题分析系统

HundredCV-Chat话题建模实战教程:利用4,871个内置话题标签构建主题分析系统

【免费下载链接】HundredCV-Chat 项目地址: https://ai.gitcode.com/hf_mirrors/Jax-dan/HundredCV-Chat 点击查看 免费下载 HundredCV-Chat 是一个由 100 位青年简历数据开发而来的中文多轮对话数据集,共包含 24,750 组日常闲聊对话和 4,871 个话题标签…

2026/10/19 0:00:47 阅读更多 →

周新闻

基于GMM的语音识别系统原理与MATLAB实现详解

基于GMM的语音识别系统原理与MATLAB实现详解

说到基于高斯混合模型(GMM)的语音识别系统,很多人第一反应就是一堆数学公式,觉得门槛很高。但如果你真的在MATLAB里把它落地跑通,会发现核心其实就是三件事:把声音变成特征向量,用GMM给每个类别…

2026/10/19 10:02:04 阅读更多 →
数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理这四个字听起来挺唬人,但落到具体操作上,无非就是让计算机按你的想法“摆弄”像素。我在一个模拟项目X里用了一套特别经典的基础处理流程:对图像做反白、改调色板、彩色转灰度,最后把像素数据导出成txt文件。单看每一…

2026/10/18 0:00:55 阅读更多 →
机器人大脑技术盘点:具身智能的感知、决策与数据闭环

机器人大脑技术盘点:具身智能的感知、决策与数据闭环

如果你的信息流最近也天天刷到“机器人大脑”这个词,你会发现一个很有意思的现象:每个人说的“大脑”根本不是同一个东西。有人指的是大语言模型,有人指的是运动控制系统,还有人指的是能理解物理世界的端到端模型。在2026年这个时…

2026/10/19 1:30:52 阅读更多 →

月新闻

我发现了一个新思路:用 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/19 2:54:50 阅读更多 →
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/19 9:10:22 阅读更多 →
黑夜航拍船只数据集训练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/18 12:16:16 阅读更多 →