大模型推理能力评估与实战:从概念到部署优化全解析
在 AI 模型领域性能评估是一个复杂且多维度的议题。当我们谈论一个模型在“非推理”任务上超越 GPT-4o在“推理”任务上超越 GPT-5 时这通常意味着该模型在特定基准测试或特定任务集上取得了领先的综合得分。这里的“非推理”可能指代语言理解、知识问答、代码生成等传统 NLP 任务而“推理”则更侧重于需要多步逻辑推导、数学计算或复杂问题解决的场景。对于开发者而言理解这种性能宣称背后的技术内涵、评估方法以及如何在实际项目中应用或验证这些模型远比单纯关注排名更有价值。本文将深入探讨大模型推理的核心概念、性能评估的常见方法、优化推理的关键技术并提供一个从零开始部署和测试一个开源大模型进行推理任务的完整实践指南帮助读者建立一套属于自己的模型评估与推理优化框架。1. 理解大模型推理从生成到复杂问题解决在讨论模型性能之前必须厘清“推理”在 AI 上下文中的具体含义。它并非指代模型运行时的计算过程而是一种高级的认知任务。1.1 什么是大模型推理任务通俗地讲大模型的推理任务是指模型需要像人类一样运用已有的知识和逻辑规则对信息进行处理、分析和推导以解决新问题的过程。这超越了简单的模式匹配或文本续写。其技术定义可以概括为给定一个输入如问题、场景描述模型通过内部表示进行多步的、隐式的逻辑运算和知识关联最终生成一个体现思考过程的输出。典型的推理任务包括数学推理解决多步数学应用题如“小明有5个苹果给了小红2个又买了3个现在有几个”逻辑推理处理涉及条件、演绎和归纳的问题如“所有猫都怕水。汤姆是猫。所以汤姆怕水吗”常识推理基于世界常识进行判断如“把冰块放在太阳下会怎样”代码推理理解问题需求并生成能正确执行的程序代码。在当前的技术讨论中“非推理”任务通常指那些更依赖大规模预训练语料中的记忆和浅层模式匹配的任务例如封闭式知识问答“中国的首都是哪里”文本摘要简单的翻译基础代码补全而“推理”任务的挑战在于它要求模型整合分散的知识点并遵循一套连贯的逻辑步骤这往往是对模型架构、训练数据和涌现能力更深层次的考验。1.2 如何评估模型的推理能力评估不能只看一个总分。一个负责任的评估需要拆解到具体任务。常用的基准测试套件包括MMLU (Massive Multitask Language Understanding)涵盖57个学科的多选题测试知识和问题解决能力包含大量推理题目。GSM8K (Grade School Math 8K)专注于小学数学应用题是衡量多步数学推理的黄金标准。HumanEval或MBPP评估代码生成能力本质上是将自然语言需求推理为可执行代码。BIG-Bench Hard (BBH)筛选自BIG-Bench中最具挑战性的任务几乎全是复杂的推理问题。DROP (Discrete Reasoning Over Paragraphs)需要模型在阅读段落后进行数值计算、日期推理等。当声称一个模型“推理超 GPT-5”时通常是指在上述一个或多个专注于推理的基准测试中该模型的平均得分或特定任务得分超过了对比模型。开发者需要关注的是在自身业务场景最相关的任务上的表现而非笼统的排名。2. 搭建大模型推理测试环境要亲自验证或使用一个模型首先需要搭建一个可以运行模型推理的环境。我们以在 Linux 服务器上部署一个中等规模的开源模型例如 Qwen1.5-7B-Chat为例演示完整流程。2.1 环境与依赖准备推荐使用 Python 3.8-3.10以及具备至少 16GB 空闲内存和 20GB 存储空间的机器。GPU 可以极大加速推理但非必需。首先创建并激活一个独立的 Python 虚拟环境这是管理项目依赖的最佳实践。# 创建虚拟环境 python3 -m venv venv_llm_inference # 激活虚拟环境 (Linux/macOS) source venv_llm_inference/bin/activate # 激活虚拟环境 (Windows) # venv_llm_inference\Scripts\activate接下来安装核心的模型推理和加速库。我们将使用transformers库加载模型使用torch作为后端并可选地安装accelerate和vllm等优化库。# 升级pip pip install --upgrade pip # 安装PyTorch (请根据CUDA版本前往官网选择对应命令此处以CPU版本示例) pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cpu # 安装 transformers 和其它必要库 pip install transformers accelerate sentencepiece einops tiktoken # 可选安装 vllm 用于极致推理速度需要GPU # pip install vllm2.2 模型下载与加载我们将使用 Hugging Face Hub 上的 Qwen1.5-7B-Chat 模型。首先确保你有足够的磁盘空间约15GB。在代码中我们可以通过transformers库自动下载并加载模型与分词器。创建一个名为load_model.py的脚本from transformers import AutoTokenizer, AutoModelForCausalLM import torch # 设置模型名称 model_name Qwen/Qwen1.5-7B-Chat # 加载分词器 print(正在加载分词器...) tokenizer AutoTokenizer.from_pretrained(model_name, trust_remote_codeTrue) # 加载模型 print(正在加载模型...) # device_mapauto 让 accelerate 自动分配模型层到可用设备CPU/GPU model AutoModelForCausalLM.from_pretrained( model_name, torch_dtypetorch.float16, # 使用半精度减少内存占用 device_mapauto, trust_remote_codeTrue ) print(模型加载完成) # 将模型设置为评估模式 model.eval()运行此脚本将开始下载模型。首次运行耗时较长取决于网络速度。下载完成后模型会缓存在本地~/.cache/huggingface/hub目录下。3. 实现基础与高级推理任务加载模型后我们可以设计不同的提示词Prompt来测试其在“非推理”和“推理”任务上的表现。3.1 非推理任务测试知识问答与摘要我们首先测试其基于知识的回忆和总结能力。创建一个test_non_reasoning.py脚本from transformers import AutoTokenizer, AutoModelForCausalLM import torch model_name Qwen/Qwen1.5-7B-Chat tokenizer AutoTokenizer.from_pretrained(model_name, trust_remote_codeTrue) model AutoModelForCausalLM.from_pretrained( model_name, torch_dtypetorch.float16, device_mapauto, trust_remote_codeTrue ).eval() def generate_response(prompt): 统一的生成函数 messages [{role: user, content: prompt}] # 应用Qwen Chat模型要求的对话模板 text tokenizer.apply_chat_template(messages, tokenizeFalse, add_generation_promptTrue) model_inputs tokenizer([text], return_tensorspt).to(model.device) with torch.no_grad(): generated_ids model.generate( **model_inputs, max_new_tokens512, do_sampleFalse # 贪婪解码结果更确定 ) generated_ids [ output_ids[len(input_ids):] for input_ids, output_ids in zip(model_inputs.input_ids, generated_ids) ] response tokenizer.batch_decode(generated_ids, skip_special_tokensTrue)[0] return response # 测试1封闭式知识问答 print( 测试1知识问答 ) qa_prompt 爱因斯坦在哪个领域获得了诺贝尔奖 print(f问题{qa_prompt}) print(f回答{generate_response(qa_prompt)}\n) # 测试2文本摘要 print( 测试2文本摘要 ) text_to_summarize Transformer 模型是一种主要用于自然语言处理领域的深度学习模型架构由谷歌在2017年的论文《Attention Is All You Need》中提出。它完全基于注意力机制摒弃了循环神经网络和卷积神经网络。Transformer 的核心是自注意力机制可以并行计算大大提高了训练效率。它主要由编码器和解码器组成但也可以单独使用编码器或解码器。BERT和GPT分别是基于Transformer编码器和解码器的著名模型。 summary_prompt f请用一句话总结以下内容{text_to_summarize} print(f原文{text_to_summarize[:100]}...) print(f总结{generate_response(summary_prompt)}\n)运行这个脚本观察模型输出的准确性和流畅性。一个好的模型应该能准确回答事实性问题并生成连贯的摘要。3.2 推理任务测试数学与逻辑问题接下来我们测试需要多步推导的推理能力。关键在于设计能激发模型“思考过程”的提示词。我们采用“链式思考”Chain-of-Thought, CoT提示技术。创建一个test_reasoning.py脚本# ... (前面的模型加载代码与 generate_response 函数与上例相同) # 测试3数学推理使用链式思考 print( 测试3数学推理 (CoT) ) math_prompt 请一步步思考并解决以下问题 一个书架有三层。第一层比第二层少5本书第三层是第二层的两倍。已知总共有120本书请问第二层有多少本书 让我们一步一步来。 print(f问题{math_prompt}) print(f回答{generate_response(math_prompt)}\n) # 测试4逻辑推理 print( 测试4逻辑推理 ) logic_prompt 根据以下条件判断谁说了真话 1. 甲说乙在说谎。 2. 乙说丙在说谎。 3. 丙说甲和乙都在说谎。 请问到底谁在说真话请给出推理过程。 print(f问题{logic_prompt}) print(f回答{generate_response(logic_prompt)}\n) # 测试5常识推理 print( 测试5常识推理 ) common_sense_prompt 如果我把一个装满水的玻璃杯放进冰箱冷冻室几个小时后会发生什么为什么 print(f问题{common_sense_prompt}) print(f回答{generate_response(common_sense_prompt)})运行此脚本重点观察模型是否展示了清晰的推理步骤如“设第二层有x本书…”以及最终答案是否正确。推理能力强的模型会展示出类似人类的解题过程。4. 优化推理性能速度、内存与精度直接使用基础transformers进行推理可能不是最优的尤其是在资源受限或要求低延迟的场景下。以下是四种核心的优化方法。4.1 量化Quantization量化通过降低模型权重的精度如从32位浮点数到8位整数来大幅减少模型内存占用和加速计算对精度影响通常很小。from transformers import BitsAndBytesConfig import torch # 配置4位量化加载 bnb_config BitsAndBytesConfig( load_in_4bitTrue, bnb_4bit_compute_dtypetorch.float16, bnb_4bit_use_double_quantTrue, bnb_4bit_quant_typenf4 ) model AutoModelForCausalLM.from_pretrained( model_name, quantization_configbnb_config, # 关键参数 device_mapauto, trust_remote_codeTrue )使用量化后7B模型的内存占用可以从约14GB降至约4GB使其可以在消费级GPU上运行。4.2 使用专用推理引擎vLLM和TGI(Text Generation Inference) 是专为大规模语言模型推理设计的引擎通过PagedAttention等技术极大优化吞吐量和延迟。使用vLLM的示例# 首先安装 vLLM # pip install vllmfrom vllm import LLM, SamplingParams # 加载模型 llm LLM(modelmodel_name, max_model_len4096, dtypehalf) # 设置生成参数 sampling_params SamplingParams(temperature0, max_tokens200) # 批量推理 prompts [请解释人工智能是什么。, 法国的首都是哪里] outputs llm.generate(prompts, sampling_params) for output in outputs: print(fPrompt: {output.prompt}) print(fGenerated text: {output.outputs[0].text}\n)4.3 注意力层与计算图优化Flash Attention一种高效的注意力算法实现能减少内存访问并加速计算。许多现代模型库如vLLM、最新版transformers已集成。编译与静态图使用torch.compilePyTorch 2.0可以将模型的计算图编译优化提升推理速度。对于固定输入输出结构的场景效果显著。compiled_model torch.compile(model, modereduce-overhead)4.4 缓存与批处理KV 缓存在自回归生成中每次生成新token时之前token的Key和Value向量可以被缓存起来重复使用避免重复计算。transformers和vLLM自动管理此缓存。动态批处理推理服务器将多个不同长度的请求动态组合成一个批次进行计算提高GPU利用率。vLLM和TGI原生支持。下表对比了不同优化方案的特点与适用场景优化方法主要收益潜在代价/复杂度适用场景量化 (4/8-bit)内存占用减少 60-75%有一定加速轻微精度损失加载配置稍复杂资源受限的本地部署、边缘设备vLLM/TGI 引擎高吞吐、低延迟、高效内存管理需要单独部署服务定制性稍低高并发API服务、生产环境部署Flash Attention注意力计算加速减少内存峰值需要硬件和库支持长文本序列推理模型编译小幅至中幅的推理速度提升首次编译耗时不同模型效果差异大对延迟极度敏感的固定流程KV缓存批处理提升生成速度提高GPU利用率增加管理复杂度所有自回归生成场景尤其是并发请求5. 生产环境部署与问题排查将模型从实验脚本转移到生产服务需要考虑稳定性、监控和可维护性。5.1 部署模式选择嵌入式部署模型与业务应用在同一进程中。优点是延迟最低控制力强。缺点是资源隔离差模型崩溃可能影响整个应用。适用于对延迟要求极高、流量可控的内部工具。独立服务化部署模型运行在独立的推理服务中如使用vLLM启动的HTTP服务业务应用通过API调用。优点是资源隔离、独立扩缩容、便于升级。缺点是引入网络延迟。适用于大多数线上业务场景。使用vLLM启动一个简单的推理服务# 启动一个API服务器 python -m vllm.entrypoints.openai.api_server \ --model Qwen/Qwen1.5-7B-Chat \ --served-model-name Qwen1.5-7B-Chat \ --max-model-len 4096 \ --api-key your-api-key-here服务启动后即可通过兼容OpenAI的API格式进行调用。5.2 常见问题排查清单在部署和运行过程中你可能会遇到以下问题问题现象可能原因检查与解决步骤CUDA out of memory1. 模型过大超出GPU显存。2. 批次大小batch_size或序列长度max_length设置过高。1. 使用nvidia-smi查看显存占用。2. 启用量化如4-bit。3. 减小max_new_tokens或batch_size。4. 使用device_map”cpu”或”auto”让部分层卸载到CPU。推理速度极慢1. 未使用GPU。2. 未启用KV缓存或批处理。3. 使用了未优化的注意力实现。1. 确认model.device为GPU。2. 确保生成时未设置use_cacheFalse。3. 考虑切换到vLLM或启用torch.compile。4. 检查CPU是否成为瓶颈监控CPU使用率。生成内容胡言乱语或重复1. 生成参数如temperature, top_p设置不当。2. 模型本身在特定任务上能力不足或未对齐。1. 对于确定性任务设置temperature0, do_sampleFalse。2. 调整repetition_penalty如1.1避免重复。3. 优化提示词Prompt提供更清晰的指令和上下文。服务请求超时1. 单次推理耗时过长。2. 服务并发处理能力不足。3. 网络或代理问题。1. 分析单次请求的模型推理时间vLLM有监控指标。2. 增加服务实例或使用更强大的GPU。3. 客户端设置合理的超时时间并实现重试机制。加载模型时报错UnicodeDecodeError或ModuleNotFoundError1. 模型文件下载不完整或损坏。2. 缺少模型自定义代码依赖trust_remote_codeTrue。3. 库版本不兼容。1. 删除缓存重新下载rm -rf ~/.cache/huggingface/hub。2. 确认已安装模型要求的特定库如tiktoken,sentencepiece。3. 检查transformers,torch版本是否满足模型要求。5.3 关键配置与监控在生产环境中除了模型本身还需关注配置外置化将模型路径、生成参数max_tokens, temperature、服务器端口等写入配置文件如config.yaml或环境变量而非硬编码在代码中。日志记录记录每个请求的输入、输出、耗时、Token使用量以及可能发生的异常。这对于调试和成本核算至关重要。性能监控监控GPU利用率、显存使用、请求吞吐量QPS和平均响应时间P99 Latency。vLLM提供了内置的Prometheus指标端点。安全与权限为推理API设置认证API Key、限流和输入内容过滤防止滥用。6. 从测试到实践建立评估与选型框架回到最初的命题如何判断一个模型是否真的在“非推理”或“推理”任务上更优你不能只依赖新闻标题。你需要一个自己的评估框架。定义你的核心任务集列出你的业务最关心的任务类型例如客服问答、报告生成、代码审查、数学辅导。构建评估基准为每类任务收集或构造一批有标准答案的测试用例至少20-50个。对于推理任务测试用例应包含中间步骤。统一测试环境在相同的硬件、软件环境库版本、推理引擎和生成参数下测试候选模型。制定评分标准客观题使用准确率、精确匹配。主观题/生成题使用人工评估或使用更强的模型如GPT-4作为裁判进行评分。推理题除了最终答案还可以评估其推理步骤的合理性和完整性。综合考量将性能与成本推理速度、内存占用、API价格、易用性文档、社区支持、许可协议等因素结合做出技术选型。通过这样一套方法你才能得出对你自己项目有意义的结论而不是被外部的性能宣称所左右。模型的“强”与“弱”永远是相对于特定任务和约束条件而言的。掌握部署、测试和优化的全流程能力才是应对快速迭代的AI模型领域最可靠的策略。

相关新闻

从价格战转向价值战,云计算的竞争逻辑变了

从价格战转向价值战,云计算的竞争逻辑变了

谁能帮客户更好地赚钱,谁就能在这场竞赛中拔得头筹。©TMT星球原创 作者|黄燕华AI时代,云计算的竞争逻辑彻底变了。过去,云计算市场主要是厂商通过提供数据库、虚拟机、软件等帮助客户优化业务流程、提升效率。随着AI智能体的…

2026/10/2 11:55:45 阅读更多 →
终极解决方案:在macOS Sequoia中轻松安装OBS虚拟摄像头

终极解决方案:在macOS Sequoia中轻松安装OBS虚拟摄像头

终极解决方案:在macOS Sequoia中轻松安装OBS虚拟摄像头 【免费下载链接】obs-studio OBS Studio - Free and open source software for live streaming and screen recording 项目地址: https://gitcode.com/GitHub_Trending/ob/obs-studio 你是否想在最新的…

2026/10/3 7:22:26 阅读更多 →
Workflow与Agent选型指南:从概念差异到实战场景解析

Workflow与Agent选型指南:从概念差异到实战场景解析

1. 面试官到底在问什么?拆解问题背后的意图 最近在面试一些中高级岗位时,我发现一个高频问题正在浮现:“Workflow 和 Agent 有什么区别?在项目中如何选型?” 这问题乍一听有点宽泛,像是要你背概念&#xff…

2026/10/8 13:04:06 阅读更多 →

最新新闻

算家云上线IndexTTS-2.5专用镜像:云端跑TTS的时代来了?

算家云上线IndexTTS-2.5专用镜像:云端跑TTS的时代来了?

算家云上线IndexTTS-2.5专用镜像:云端跑TTS的时代来了? 【免费下载链接】IndexTTS-2.5 项目地址: https://ai.gitcode.com/hf_mirrors/IndexTeam/IndexTTS-2.5 开源TTS圈最近有一类声音越来越密集:模型权重免费、代码公开&#xff0c…

2026/10/10 21:38:25 阅读更多 →
MegaSR C105 RAID驱动安装与蓝屏排错实战指南

MegaSR C105 RAID驱动安装与蓝屏排错实战指南

简介:MegaSR C105 RAID控制器驱动包专为服务器存储环境准备,面向系统运维、硬件维护及服务器搭建人员,用于解决操作系统无法识别磁盘阵列、RAID卡不工作、硬盘状态不能正常监控等问题。该驱动支持Windows Server 2003及其后续系统的x86/x64环…

2026/10/10 21:38:25 阅读更多 →
Kubernetes NodePort与ClusterIP关系解析:从包含到流量链路

Kubernetes NodePort与ClusterIP关系解析:从包含到流量链路

1. 为什么说 NodePort 是 ClusterIP 的“超集”1.1 不要把包含关系理解成继承刚接触 Kubernetes 的时候,我一度以为 NodePort 和 ClusterIP 是两种完全独立的 Service 类型,就像两个不同的网络插口。后来有一次排障,在节点上用iptables -t na…

2026/10/10 21:38:25 阅读更多 →
Claude Code实战:黑客松冠军的AI代理开发方法论

Claude Code实战:黑客松冠军的AI代理开发方法论

先说个背景。前阵子我所在的技术社区内部做了一场小规模黑客松,团队里不少人在用 Claude Code,其中一个小组直接把整个后端服务的原型开发压到了两天内完成,最后拿了冠军。赛后我们复盘他们的工程方法时发现,真正拉开差距的并不是…

2026/10/10 21:38:25 阅读更多 →
自动化压测平台从0到1:解决脚本资产沉淀与性能基线回归的完整落地指南

自动化压测平台从0到1:解决脚本资产沉淀与性能基线回归的完整落地指南

做了几年压测,最让我头疼的不是写脚本,而是脚本和报告都烂在个人手里。今天这套自动化压测平台,就是我从需求梳理到落地、踩了无数坑之后沉淀下来的完整思路,希望能给正在做同样事情的团队一个参考。1. 压测平台真正要解决的四个问…

2026/10/10 21:38:25 阅读更多 →
非遗PDF数据化实战:从解析到检索推荐全流程

非遗PDF数据化实战:从解析到检索推荐全流程

简介:这份PDF文档系统整理了国家级非物质文化遗产代表性项目名录,面向传统文化研究者、非遗爱好者及教育工作者,帮助读者快速查阅民间文学、传统音乐、传统舞蹈、传统戏剧、曲艺等类别的项目信息。资源包内含1个PDF文件,大小约406…

2026/10/10 21:37:24 阅读更多 →

日新闻

卫星轨道分类全解析:从LEO到GEO的选型逻辑与工程实践

卫星轨道分类全解析:从LEO到GEO的选型逻辑与工程实践

1. 从“卫星轨道分类”这个标题说起:为什么值得花时间搞懂第一次接触“卫星轨道分类”这个概念,很多人会觉得它离自己很远——不就是天上的星星怎么转吗?但如果你正在做航天任务规划、遥感数据接收、星座设计,甚至只是准备一场航天…

2026/10/10 0:00:39 阅读更多 →
Spring AOP 核心原理与实战:从概念到日志切面落地

Spring AOP 核心原理与实战:从概念到日志切面落地

1. 从一个真实痛点说起:为什么你的代码里到处都是重复逻辑刚入行那会儿,我写过一个用户管理模块,注册、登录、改密码、注销四个接口。每个接口里都塞了几乎一样的日志打印、参数校验、事务开启和提交。当时觉得没什么,能跑就行。直…

2026/10/10 0:00:40 阅读更多 →
Python招聘数据采集与分析可视化:从采集清洗到薪资技能城市可视化全链路

Python招聘数据采集与分析可视化:从采集清洗到薪资技能城市可视化全链路

简介:这是一套面向计算机相关专业学生与项目实战学习者的Python数据采集与分析可视化完整项目,以Boss直聘岗位数据为对象,适合用作毕业设计、课程设计或期末大作业。资源包共38个文件,约246KB,以13个py源码文件为核心&…

2026/10/10 0:00:40 阅读更多 →

周新闻

KT148A语音芯片外挂8002D功放的工程实践指南

KT148A语音芯片外挂8002D功放的工程实践指南

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

2026/10/10 11:14:25 阅读更多 →
LLC谐振变换器增益公式推导:从FHA等效到完整归一化表达式

LLC谐振变换器增益公式推导:从FHA等效到完整归一化表达式

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

2026/10/10 1:36:08 阅读更多 →
ARM架构深度解析:从RISC设计理念到交叉编译实战

ARM架构深度解析:从RISC设计理念到交叉编译实战

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

2026/10/10 11:14: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/10 5:23: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/9 21:32:20 阅读更多 →
黑夜航拍船只数据集训练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/10 10:38:42 阅读更多 →