Codex平台从零到一:模型切换与自动化工作流构建实战指南
在实际开发或技术探索过程中我们常常会遇到一些功能强大但上手门槛较高的工具。Codex 作为一个集成了多种模型能力的平台或工具其核心价值在于能够灵活调用不同的 AI 模型来构建自动化任务流。然而对于初次接触的开发者来说从下载安装、理解其运作机制到成功切换模型并搭建起一个可运行的工作流每一步都可能遇到意想不到的阻碍。本文旨在为技术新人提供一个清晰、可操作的路径帮助你快速理解 Codex 的底层逻辑并完成从环境搭建到工作流创建的完整闭环。我们将从最基础的安装步骤开始解释每一步操作背后的目的避免“下一步”式教程的盲目性。接着我们会深入探讨 Codex 中“模型”的概念以及切换模型不仅仅是点击一个下拉菜单那么简单它涉及到环境配置、依赖管理和 API 端点理解。最后我们将以一个具体的、可复现的示例展示如何将这些知识点串联起来构建一个简单但完整的工作流。无论你是想将 Codex 用于代码生成、文本处理还是其他自动化场景理解这套底层逻辑都将使你后续的探索事半功倍。1. 理解 Codex 的核心定位与工作模型在开始动手之前先厘清 Codex 是什么以及它如何工作这能帮你避免后续很多概念上的混淆。Codex 并非指某个单一的 AI 模型如 OpenAI 的 Codex 模型在当前的语境下它更可能指的是一种能够集成并切换不同后端 AI 模型如 GPT、Claude、DeepSeek 等的客户端工具、CLI 或本地服务。它的核心逻辑是作为一个“调度中心”或“适配层”。1.1 Codex 作为模型代理的架构你可以将 Codex 想象成一个智能路由器。你的应用程序或你通过命令行、UI 发出的请求并不直接调用 OpenAI 或 Anthropic 的 API而是将请求发送给 Codex。Codex 负责处理身份认证、请求格式转换、模型路由最后将请求转发给配置好的后端模型服务并将结果返回给你。这种架构带来了几个关键优势模型无关性你的业务逻辑代码不需要关心底层用的是 GPT-4 还是 Claude 3只需与 Codex 的固定接口交互。统一管理API 密钥、请求速率限制、日志记录、错误重试等策略可以在 Codex 层统一配置。灵活切换通过修改配置可以轻松地将流量从一个模型切换到另一个模型甚至实现负载均衡或故障转移。1.2 “模型”在 Codex 上下文中的含义在这里“模型”通常指一个可用的后端 AI 服务端点。它可能包括官方托管模型如 OpenAI 的gpt-4-turbo Anthropic 的claude-3-opus。使用这些通常需要配置对应的 API Key。第三方/开源模型如通过 Ollama、LM Studio 或 vLLM 等在本地部署的 Llama、Qwen 等模型。这些模型会提供一个本地 HTTP API 端点。自定义模型端点任何兼容 OpenAI API 格式的服务器都可以被 Codex 识别为一个“模型”。理解这一点至关重要Codex 切换模型本质上是切换它将要转发请求的目标 URL 和认证方式。很多“无法切换第三方模型”的问题根源在于没有正确配置这个后端端点的地址和参数。1.3 工作流Workflow的抽象工作流是 Codex 中更高层次的抽象它将一系列对模型的调用、数据处理、条件判断等步骤编排成一个自动化流程。一个简单的工作流可能包含“读取文件 - 调用模型 A 进行总结 - 调用模型 B 进行翻译 - 保存结果”。Codex 的工作流引擎负责按顺序执行这些节点并处理节点之间的数据传递。2. 环境准备与 Codex 的安装部署安装是第一步也是最容易因环境问题卡住的一步。我们假设在一个干净的 Linux/macOS 或 WindowsWSL2 推荐开发环境下进行操作。2.1 系统与语言环境检查首先确保你的系统具备基本的开发环境。打开终端执行以下命令进行检查# 检查 Python 版本Codex 通常需要 Python 3.8 python3 --version # 检查 pip 包管理工具 pip3 --version # 检查 Git用于克隆仓库或安装某些依赖 git --version如果缺少上述任何一项需要先进行安装。例如在 Ubuntu/Debian 上sudo apt update sudo apt install python3 python3-pip git2.2 安装 Codex多种途径与选择Codex 的安装方式可能因其具体形态而异。以下是几种常见情况及其安装方法。情况一作为 Python 包安装CLI 工具如果 Codex 发布在 PyPI 上安装最为简单。# 创建并激活一个虚拟环境是推荐做法避免污染系统环境 python3 -m venv codex-env source codex-env/bin/activate # Linux/macOS # 在 Windows 上: codex-env\Scripts\activate # 使用 pip 安装 pip install ai-codex-client # 假设包名为 ai-codex-client请替换为实际包名安装后通常可以通过codex --help命令验证是否安装成功。情况二通过 Docker 安装服务端如果 Codex 是一个需要常驻的服务Docker 是更干净的部署方式。# 拉取镜像 docker pull codex/server:latest # 运行容器映射端口并挂载配置目录 docker run -d -p 8000:8000 -v /path/to/your/config:/app/config --name codex-server codex/server:latest情况三从源码安装开发模式如果你想贡献代码或体验最新特性可以从代码仓库克隆并安装。git clone https://github.com/your-org/codex.git cd codex pip install -e . # 可编辑模式安装注意具体的安装包名、Docker 镜像名或仓库地址需要根据 Codex 项目的官方文档确定。安装过程中如果提示缺少某些系统依赖如build-essential,curl请根据错误信息先行安装。2.3 安装后的初步配置与验证安装完成后通常需要进行最小化的配置才能启动。常见的第一步是设置配置文件或环境变量。# 方式一设置环境变量常用于配置 API Key export OPENAI_API_KEYsk-your-openai-key-here export CODAI_BASE_URLhttp://localhost:8000/v1 # 如果 Codex 作为服务运行 # 方式二初始化配置文件 codex init # 这个命令可能会在 ~/.config/codex/config.yaml 生成一个模板配置文件生成配置文件后你需要用文本编辑器打开它进行初步编辑。一个最简化的配置可能如下所示# ~/.config/codex/config.yaml default_model: gpt-3.5-turbo providers: openai: api_key: ${OPENAI_API_KEY} base_url: https://api.openai.com/v1 local-llama: api_key: “no-key-needed” base_url: http://localhost:11434/v1 # 假设本地运行了 Ollama保存配置后运行一个简单的测试命令来验证 Codex 是否正常工作# 测试调用默认模型 codex complete “Hello, world” # 或者使用 curl 测试服务端 curl -X POST http://localhost:8000/v1/chat/completions \ -H “Content-Type: application/json” \ -d ‘{“model”: “gpt-3.5-turbo”, “messages”: [{“role”: “user”, “content”: “Hello”}]}’如果看到返回了 AI 生成的文本或正常的 JSON 响应说明安装和基础配置成功。3. 深入核心配置与切换不同的 AI 模型模型切换是 Codex 的核心功能。失败通常源于对“提供商”Provider和“模型端点”Endpoint配置的理解偏差。3.1 配置官方模型提供商如 OpenAI以 OpenAI 为例配置相对直接核心是提供正确的 API Key 和 Base URL。# config.yaml 中 providers 部分详解 providers: openai: # 提供商标识可自定义如 my-openai type: openai # 提供商类型告诉 Codex 使用哪种适配器 api_key: sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx # 你的 OpenAI API Key base_url: https://api.openai.com/v1 # 官方端点一般无需修改 models: # 可用的模型列表Codex 可能会自动获取也可手动指定 - gpt-4-turbo-preview - gpt-3.5-turbo - text-embedding-ada-002配置好后你可以在命令或工作流中通过openai/gpt-4-turbo-preview这样的格式来指定模型。openai是提供商 IDgpt-4-turbo-preview是该提供商下的模型名。3.2 接入第三方/本地模型解决“无法切换”问题这是问题高发区。第三方模型的关键在于其提供的 API 是否与 OpenAI 的 API 格式兼容。许多本地部署工具如 Ollama, LM Studio, text-generation-webui都提供了 OpenAI 兼容的 API 端点。步骤 1部署本地模型服务以 Ollama 为例首先在本地启动一个模型服务。# 拉取并运行 Llama2 模型 ollama pull llama2 ollama run llama2 # 默认会在 http://localhost:11434 提供 API 服务步骤 2在 Codex 中配置该本地端点在 Codex 的配置文件中添加一个新的 provider。providers: ollama: # 自定义提供商名称 type: openai # 关键即使不是 OpenAI但因其 API 格式兼容类型仍可设为 openai api_key: “ollama” # 如果本地服务不需要认证可以填任意非空字符串 base_url: http://localhost:11434/v1 # 指向本地服务的 OpenAI 兼容端点 models: - llama2 # 这里填写你通过 Ollama 拉取的模型名 - mistral步骤 3验证切换是否成功使用命令行测试明确指定使用新配置的提供商和模型。codex complete —provider ollama —model llama2 “Write a hello world program in Python.”如果遇到codex switch local proxy failed while handling codex endpoint /responses这类错误通常表明网络连接问题Codex 无法访问你配置的base_url。检查本地模型服务是否真的在运行curl http://localhost:11434/v1/models。API 格式不兼容本地服务返回的响应结构与 Codex 预期的 OpenAI 格式不符。可能需要检查本地服务的启动参数确保其开启了—api或—openai兼容模式。配置路径错误Codex 没有读取到你修改后的配置文件。确认配置文件的位置和环境变量CODEX_CONFIG_PATH的设置。3.3 模型切换的底层逻辑与排查清单当你在 UI 中选择一个模型或通过 CLI 指定模型时Codex 内部执行以下流程解析模型标识符如ollama/llama2。在配置中找到ollama这个 provider。获取该 provider 的type,base_url,api_key。根据type选择合适的客户端适配器如openai,anthropic。将你的请求提示词、参数按照该适配器的格式封装。向base_url发起 HTTP 请求并附上api_key如果需要。接收响应并通过适配器解析成 Codex 统一的内部格式返回。基于此我们可以制定一个排查清单问题现象可能原因检查点解决方案无法切换第三方模型1. 本地模型服务未启动2.base_url配置错误3. 防火墙/端口阻止1.curl base_url/v1/models2. 检查服务日志3. 确认端口监听netstat -tulnp | grep port1. 启动服务2. 修正base_url3. 开放端口或检查网络请求返回格式错误1. API 不兼容 OpenAI 格式2. 模型名称不对1. 直接向端点发一个简单请求看原始响应2. 检查 provider 下的models列表1. 确保本地服务开启兼容模式2. 使用正确的模型名或在models中列出认证失败1.api_key缺失或错误2. 本地服务需要特殊认证1. 检查配置文件中api_key字段2. 查看本地服务文档1. 填入正确的 key2. 按服务要求配置认证头Codex 提示“未知模型”1. 模型标识符格式错误2. 配置未生效1. 确认格式为provider/model2. 重启 Codex 服务或重新加载配置1. 使用codex models list查看可用模型2. 检查配置文件路径和权限4. 构建你的第一个自动化工作流理解了模型配置后我们可以将它们组合成工作流。工作流定义了任务的执行顺序和数据流向。这里我们以一个“代码审查”工作流为例读取一个 Python 文件调用模型检查代码风格和安全问题并输出报告。4.1 工作流定义YAML 还是代码Codex 可能支持多种方式定义工作流最常见的是 YAML 文件。一个基础的 YAML 工作流结构如下# code_review_workflow.yaml name: “Python Code Review” description: “自动审查 Python 代码的风格和潜在安全问题” version: “1.0” inputs: - name: “file_path” type: “string” description: “待审查的 Python 文件路径” required: true steps: - name: “read_file” type: “action” action: “read_file” params: path: “{{ inputs.file_path }}” - name: “analyze_code” type: “model” model: “openai/gpt-4-turbo” # 使用配置好的模型 prompt: | 你是一个资深的 Python 代码审查专家。请分析以下代码并给出 1. PEP 8 风格问题。 2. 潜在的逻辑错误或边界条件。 3. 安全性问题如 SQL 注入风险、硬编码密钥。 代码 python {{ steps.read_file.output }} 请用清晰的列表形式回复。 depends_on: [“read_file”] - name: “save_report” type: “action” action: “write_file” params: path: “./code_review_report.md” content: | # 代码审查报告 文件{{ inputs.file_path }} 时间{{ now() }} ## 审查结果 {{ steps.analyze_code.output }} depends_on: [“analyze_code”] outputs: - name: “report_path” value: “./code_review_report.md”4.2 工作流引擎如何执行当你运行这个工作流时引擎会解析输入获取file_path参数。拓扑排序根据depends_on确定步骤顺序。read_file最先执行。执行步骤read_file读取指定文件内容结果存入steps.read_file.output。analyze_code将prompt中的模板变量{{ steps.read_file.output }}替换为实际代码内容然后调用指定的模型openai/gpt-4-turbo进行处理结果存入steps.analyze_code.output。save_report将模型输出和元数据写入 Markdown 文件。收集输出返回report_path。4.3 运行与调试工作流通过 CLI 运行上面定义的工作流codex workflow run ./code_review_workflow.yaml —inputs ‘{“file_path”: “./my_script.py”}’运行后检查当前目录下是否生成了code_review_report.md文件。查看其内容以验证工作流是否按预期执行。调试技巧查看详细日志运行命令时添加—verbose或—debug标志查看每个步骤的输入输出和耗时。分步执行如果工作流复杂可以注释掉后面的步骤先确保前几步能正确执行。检查变量渲染在prompt或params中使用{{ … }}模板时确保引用的上一步输出名称正确且该步骤已成功执行。4.4 处理依赖缺失问题如果你在运行工作流时遇到类似“请安装缺失的包以使用此工作流。要安装缺失的节点请先在你的 python 环境中运行…”的错误这说明工作流中引用了某个自定义的“动作”Action或“节点”Node而该功能需要额外的 Python 包支持。例如工作流中可能包含一个type: “action”且action: “send_email”的步骤这需要你安装codex-action-email这样的插件包。解决方案是# 根据错误提示安装缺失的包 pip install codex-action-email # 或者如果 Codex 有统一的插件管理命令 codex plugins install email关键点工作流定义文件YAML只声明了要做什么而具体的执行能力如读写文件、发送HTTP请求、操作数据库是由“动作”实现来提供的。确保你的 Codex 环境安装了工作流所需的所有动作实现包。5. 进阶实践与生产环境考量当你成功运行了第一个工作流后可以考虑更复杂的场景和将其用于生产环境。5.1 工作流编排模式条件分支根据上一步的结果决定下一步走向。- name: “check_complexity” type: “model” prompt: “判断这段代码是否复杂只回答‘是’或‘否’。代码{{code}}” - name: “deep_review” type: “model” prompt: “进行深度审查…” depends_on: [“check_complexity”] when: “{{ steps.check_complexity.output }} ‘是’“ # 条件执行循环迭代对列表中的每一项执行相同操作。并行执行多个不依赖的步骤可以同时运行以提高效率。错误处理与重试为步骤配置重试策略和失败后的备用路径。5.2 生产环境最佳实践配置管理不要将 API Key 等敏感信息硬编码在 YAML 文件中。使用环境变量或专门的密钥管理服务。api_key: ${ENV_OPENAI_API_KEY}版本控制将工作流 YAML 文件纳入 Git 管理便于追踪变更和协作。日志与监控确保 Codex 服务和工作流引擎的日志被妥善收集如输出到文件或发送到 Logstash。监控工作流的成功/失败率、耗时。性能与限流对调用付费 API 的步骤设置速率限制避免意外费用。对于长时间运行的工作流考虑设置超时。测试为关键工作流编写测试用例使用模拟Mock的模型响应来验证逻辑正确性避免消耗真实的 API 额度进行测试。5.3 常见陷阱与规避陷阱一过度依赖单一模型提供商。解决方案在关键工作流中配置备用模型当主提供商不可用时自动切换。陷阱二工作流中硬编码模型名称。解决方案将模型名称也作为工作流的输入参数提高灵活性。陷阱三忽略令牌Token消耗和成本。解决方案在模型调用步骤后解析返回的usage字段记录并汇总成本甚至可以设置成本阈值报警。陷阱四工作流步骤设计过细导致请求次数激增。解决方案合理合并提示词在单次模型调用中完成多个相关任务。从下载安装到切换模型再到搭建工作流整个过程的核心在于理解 Codex 作为“模型路由与编排层”的定位。配置的本质是建立与后端服务的正确连接而工作流则是将多个连接和操作按逻辑串联起来。当你遇到问题时按照“网络连通性 - 配置正确性 - 模型兼容性 - 工作流语法”的顺序进行排查通常能快速定位根源。掌握了这套底层逻辑你就能灵活地运用 Codex 来组装适合自己项目的智能工具链而不仅仅是机械地复制粘贴命令。

相关新闻

财报阅读辅助与研究信息整理工具怎么选

财报阅读辅助与研究信息整理工具怎么选

AI工具在财报研究当中的价值,不是替用户做出投资判断,而是提取报表关键条目、梳理经营线索、整理公告与研报资料,降低海量文档的阅读负担。很多人拿到一份年报PDF,通篇翻阅之后,依旧分不清哪些科目需要重点留意&#x…

2026/10/16 6:44:31 阅读更多 →
Keras与vLLM集成:统一LLM训练与高性能推理的新范式

Keras与vLLM集成:统一LLM训练与高性能推理的新范式

如果你正在用 Keras 训练或微调大语言模型,那么最近一定被一个词刷屏了: vLLM 。这个由加州大学伯克利分校团队推出的推理引擎,凭借其 PagedAttention 技术和惊人的吞吐量,几乎成了部署 LLM 服务的“标配”。但问题也随之而来&a…

2026/10/16 13:09:03 阅读更多 →
Cocos Creator按钮交互进阶:从基础组件到沉浸式游戏体验

Cocos Creator按钮交互进阶:从基础组件到沉浸式游戏体验

1. 项目概述:从“能点”到“好玩”的交互跃迁在Cocos Creator里做游戏,UI交互是玩家感知最直接的部分。很多开发者,尤其是刚入门的同学,常常觉得Button(按钮)组件太简单了——拖个节点,挂上组件…

2026/10/17 19:05:57 阅读更多 →

最新新闻

数据分析师Python工具箱:从数据清洗到自动化报表的实战指南

数据分析师Python工具箱:从数据清洗到自动化报表的实战指南

数据分析师的Python工具箱做数据分析这几年,我最大的体会是:工具不在于多,而在于你把它用得多透。很多人一听说数据分析师用的Python,第一反应就是pandas、numpy、matplotlib这三件套,但真正落到实际业务里&#xff0c…

2026/10/18 10:00:37 阅读更多 →
自我监督表示学习如何让AI Agent摆脱场景脆弱性

自我监督表示学习如何让AI Agent摆脱场景脆弱性

自我监督表示学习这几年在视觉和语言领域已经证明了自己,但在 AI Agent 身上,它的价值远不止是“蹭热度”。一个在真实环境里跑过的 agent ,最怕的不是模型不够大,而是它学到的表示空间根本撑不起它需要完成的决策任务。我见过太多…

2026/10/18 10:00:37 阅读更多 →
Python批量导出Word文档图片与嵌入文件:基于zipfile的docx解包实战

Python批量导出Word文档图片与嵌入文件:基于zipfile的docx解包实战

简介:这份资源面向需要用Python自动化处理Word文档的开发者与办公自动化爱好者,聚焦于从.docx文件中批量导出内嵌图片与OLE嵌入文件这一常见却不易实现的场景。包内共2033个文件,以908个py源码、880个pyc字节码为主,辅以C扩展头文…

2026/10/18 10:00:37 阅读更多 →
永磁同步电机MTPA/MPTV查表自动生成Python脚本实战指南

永磁同步电机MTPA/MPTV查表自动生成Python脚本实战指南

简介:针对电动汽车永磁同步电机控制中的MTPA(最大转矩电流比)与MPTV(最大功率每伏特)算法,这份资源提供了一套从理论到代码实现的查询表自动生成方案。包含算法详解PDF、MATLAB脚本、GUI界面(fi…

2026/10/18 10:00:37 阅读更多 →
零知识证明如何为链上AI交易代理提供可信执行与可验证推理

零知识证明如何为链上AI交易代理提供可信执行与可验证推理

1. 先聊一个现实问题:链上的交易代理,凭什么让人信任做DeFi的人都清楚,链上环境是一个典型的零信任世界——代码公开、账本公开、人人可校验。但要在这个环境里跑一个AI交易代理,事情就变得拧巴了。假设你在某个协议里部署了一个自…

2026/10/18 10:00:37 阅读更多 →
NLM非局部均值滤波原理与MATLAB图像去噪实现及参数调优

NLM非局部均值滤波原理与MATLAB图像去噪实现及参数调优

简介:非局部均值滤波是图像降噪领域经典算法,这套MATLAB程序包专为学习或实现该算法的开发者与研究生准备,可帮助快速理解原理并完成代码落地。压缩包共十个文件,包含两个程序源文件、七张标准测试图和一个文档说明,整…

2026/10/18 9:59:37 阅读更多 →

日新闻

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

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

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

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

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

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

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

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

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

2026/10/18 0:00:55 阅读更多 →

周新闻

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

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

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

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

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

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

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

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

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

2026/10/18 0:00:55 阅读更多 →

月新闻

我发现了一个新思路:用 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/18 0:55:02 阅读更多 →
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/17 17:22:31 阅读更多 →
黑夜航拍船只数据集训练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 阅读更多 →