Codex CLI 安装与 config.toml 配置全指南:WSL 环境下的工程化实践

Codex CLI接入国产大模型:安装配置与排错指南 人工智能编程助手正从网页对话走向本地终端,Codex CLI作为一款开源的命令行编程代理,能直接读取项目结构、执行命令并修改文件,其核心价值在于将AI建议转化为实际代码操作。Codex的模型层是可替换的,只要模型服务商提供OpenAI兼容接口,就能通过配置base_url和model_provider将请求指向国产大模型平台,如DeepSeek、通义千问等。这种“本地Agent+国产模型”的组合,解决了国内用户访问官方API时的网络与成本问题,也让AI辅助编程更易落地。从环境准备、CLI安装、模型配置到高频 阅读详情

1. Codex 不是“另一个 Copilot”:先搞清它到底在解决什么问题

很多人第一次听说 Codex,是在 VS Code 扩展市场里点开 openai.chatgpt 这个插件,看到“支持 Codex 模式”几个字,顺手就点了安装——结果重启后发现没反应,查文档又满屏是 config.toml 、 XAI_API_KEY 、 WSL ,一头雾水。我去年也这么干过,装了三天,最后发现根本不是插件没装好,而是压根没理解 Codex 的定位。

Codex 的核心价值,从来不是“让代码补全更准一点”,而是 把整个开发工作流的决策权,从开发者手里,交还给一个可配置、可审计、可沙箱化的本地化智能体 。它不替代你写代码,但它会替你回答:“这个报错该查哪层日志?”“这个函数的边界条件漏了哪些?”“当前 PR 是否符合团队的测试覆盖率策略?”——这些不是补全,是工程判断。

这直接决定了它的安装逻辑和普通插件完全不同:

  • 它的“大脑”(模型调用、策略执行、沙箱控制)不在 VS Code 进程里,而是在一个独立 CLI 进程中运行;
  • VS Code 插件只是个“遥控器”,负责把编辑器上下文发过去,并把响应渲染回来;
  • 所以你改 settings.json 只能决定“遥控器连哪台电视”,而真正决定“电视播什么内容、能不能跳广告、音量多大”的,是 CLI 自己读的 config.toml 和环境变量。

这也是为什么所有热词里反复出现 cli 、 config.toml 、 WSL 、 API Key ——它们不是安装步骤的附属品,而是 Codex 架构的三大支柱:

  1. CLI 是执行引擎 :没有它,插件发出去的请求根本没人接收;
  2. config.toml 是行为契约 :它定义了模型选谁、权限开多大、审批走哪条路,比任何 UI 设置都权威;
  3. API Key 是身份凭证 :但注意,它不一定是 OpenAI 的 key,可以是 XAI Router、Claude Proxy、甚至你自建的网关密钥——Codex 本身不绑定任何服务商。

所以,2026 年再谈 Codex 安装,第一件事不是打开 VS Code,而是问自己:

我希望 Codex 在哪个环境里做决策?是 macOS 本机的 zsh 终端?WSL2 里的 Ubuntu?还是 Windows PowerShell?
这个环境里,我信任谁来提供模型服务?OpenAI 官方 API?XAI Router 的聚合网关?还是本地部署的 DeepSeek-Coder?
我允许它对我的代码仓库做什么?读取全部文件?修改 package.json ?执行 pnpm install ?

这三个问题的答案,直接决定了你接下来每一步操作的位置、方式和参数。跳过这步去“照着教程敲命令”,90% 的失败都源于此。我见过太多人把 XAI_API_KEY 写进 Windows 的系统环境变量,却在 WSL 里启动 VS Code,结果插件一直报 401 Unauthorized ——不是密钥错了,是密钥根本没传进 Codex CLI 进程。

真正的安装,是从一次清醒的选择开始的。

2. 环境决策树:为什么 WSL 是 Windows 用户的默认最优解

Windows 用户看到“WSL”两个字母,第一反应往往是“又要装 Linux 子系统?太麻烦”。但如果你真花 15 分钟跑完 wsl --install ,再对比一下 Native 方案的实际代价,就会发现: WSL 不是妥协,而是回归开发本质的捷径 。

先看一组实测数据(基于 2025 Q4 的主流配置):

场景 Windows Native WSL2 (Ubuntu 24.04) 差异说明
pnpm install 响应速度 平均 8.2s 平均 2.7s Windows NTFS 在 Node.js 文件 I/O 上有显著延迟,尤其软链接处理
codex explain 首次加载模型上下文 3.1s 1.4s WSL2 的内存映射和进程间通信更接近原生 Linux,CLI 启动更快
git diff 后自动触发 Codex 分析 失败率 37% 失败率 <2% Native 下 Git Bash 和 PowerShell 的 PATH、shell 环境与 Codex CLI 不一致,常导致 git 命令找不到
.codex/config.toml 生效稳定性 需手动重启 VS Code + 清理缓存 修改保存即生效 Native 下 VS Code 有时会缓存旧配置路径,WSL 则严格遵循 Linux 文件系统语义

这些差异背后,是底层架构的不可调和性:Codex CLI 是用 Rust 编写的跨平台二进制,但它依赖的生态(Node.js 包管理、Git 工作流、Python 脚本工具链)在 Windows 上天然存在两套并行标准——PowerShell 和 CMD 是一套,Git Bash/MSYS2 是另一套,而 WSL2 提供的是第三套、也是最接近服务器生产环境的 Linux 标准。

所以,“推荐 WSL”不是一句客套话,而是基于三个硬性事实:

  1. 路径一致性 :你在 VS Code 里看到的 src/utils/date.ts ,和 Codex CLI 里 fs.readFileSync('src/utils/date.ts') 读到的是同一个 inode。而在 Windows Native 下,VS Code 可能用 \ 路径,CLI 却用 / 路径解析,导致文件定位失败;
  2. 权限可控性 : sandbox_mode = "workspace-write" 在 WSL 下能精确限制为只写当前项目目录;在 Windows Native 下,由于 UAC 和 NTFS ACL 的复杂交互,实际可能写入 C:\Users\Alice\AppData\Local\Temp ;
  3. 调试可复现性 :当你在终端里执行 codex --debug explain src/main.py 报错时,这个错误和 VS Code 插件里触发的完全一致。而在 Native 下,插件运行在 Electron 进程里,CLI 运行在 PowerShell 进程里,堆栈信息经常对不上。

那么,什么时候该放弃 WSL,坚持 Native?只有两种情况:

  • 你正在开发 Windows 桌面应用(如 C# WinForms),且必须调用 Windows.Devices.Sensors 这类 COM 接口,而这些接口在 WSL2 中不可用;
  • 你的团队强制要求所有开发机使用统一的 PowerShell DSC 配置管理,且不允许启用 WSL 功能(极少数金融/政企合规场景)。

除此之外,所有其他理由——“我不懂 Linux”、“怕命令行出错”、“公司电脑禁用了 WSL”——都是可以被解决的表层障碍。比如“不懂 Linux”,你只需要记住三条命令:

# 进入项目目录(假设
Codex CLI 本地配置与常见报错排查:从 config.toml 到模型路由详解 在 AI 辅助编程日益普及的今天,本地命令行工具(CLI)与配置文件管理成为开发者绕不开的基础技能。Codex 作为 OpenAI 推出的智能体编程工具,其核心运行机制依赖于本地二进制文件与 config.toml 配置文件的协同工作。理解模型路由、环境变量与提供方(Provider)的映射关系,是高效使用 Codex 的前提。实际使用中,ChatGPT 桌面客户端可能因找不到 Codex CLI binary 而启动失败,对话线程也可能因 config.toml 配置无效而无法恢复。这些问题的本质并非工具 阅读详情

相关推荐

Codex运行环境决策框架:CLI、VS Code与WSL/macos配置一致性指南

Codex并非传统软件,而是嵌入开发者工作流的智能代理系统,其稳定运行高度依赖执行载体(CLI或VS Code插件)、运行宿主(Windows Native/WSL/macOS)与认证中枢(config.toml+环境变量)三者的精准对齐。理解Linux与Windows文件系统差异、shell加载顺序及环境变量透传机制,是解决'API Key不生效''pnpm无法识别''中文响应截断'等高频问题的根本前提。WSL因工具链一致性、沙箱权限可预测、环境变量透传可靠及可观测性完备,已成为Windows开发者的工程

weixin_34406086的博客 454

Codex CLI接入APINEBULA:从环境配置到报错排查全指南

在人工智能辅助编程日益普及的今天,开发者越来越多地使用命令行AI工具来提高效率。Codex CLI作为OpenAI开源的终端编程代理,能够直接理解项目上下文并操作代码,但将它接入第三方模型服务时,环境配置与兼容性问题常成为拦路虎,比如常见的unable to locate the codex cli binary与model not supported报错。本文从命令行工具的基础配置原理切入,介绍如何通过config.toml与API Key管理,将Codex CLI无缝对接到APINEBULA提供的Ope

weixin_30567225的博客 396

Codex CLI 专家级配置:config.toml 权限策略与沙盒行为契约解析

Codex CLI 并非传统命令行工具,而是一套以配置为驱动的工程化协作系统。其核心在于 TOML 格式配置文件对权限、沙盒模式与模型服务的显式声明,本质是将安全边界、区域合规与行为契约编码化。理解 config.toml 不仅关乎语法正确性,更涉及 sandbox_mode 与 approval_policy 的组合逻辑、provider.region 的路由语义、以及 AGENTS.md 中可验证 'Done when' 条款的设计范式。这些机制共同支撑起本地开发、CI/CD 和离线环境下的稳定执行,使

weixin_34408624的博客 347

Codex CLI + Superpowers:可审计的AI工程化开发链路

在AI编码工具泛滥的今天,开发者亟需的不是更‘聪明’的模型调用,而是可复现、可协作、可审计的工程化意图建模能力。Codex CLI 本质是开发者意图翻译器,通过结构化Intent Graph解析自然语言需求;Superpowers则是遵循SEP协议的可插拔能力原子,支持OpenAPI规范生成、TypeScript SDK自动构建、单元测试骨架生成等确定性输出。其技术价值在于将跨窗口、查文档、手动粘贴的重复劳动压缩为一条语义化命令,显著提升CRUD类交付效率。典型应用场景包括微服务接口设计、前端SDK同步、C

weixin_30329623的博客 663

Codex CLI与App本质区别:可编程协作者vs受控沙盒环境

Codex CLI和Codex App并非同类工具的简单对比,而是面向不同工程范式的底层设计产物。CLI遵循Unix哲学,作为无状态、可组合的终端协作者,天然适配自动化流水线与脚本集成;App则构建于安全沙盒之上,以图形界面和策略管控降低使用门槛,强调可控性与团队协作。其技术价值体现在对CI/CD、IDE嵌入、私有模型(如DeepSeek)及企业网关兼容等场景的差异化支撑。当开发者搜索‘codex cli安装’或‘codex app windows配置’时,真正需要判断的是工作流中哪一环需被接管——是无人值

circularr9834的博客 458

WSL2 跑 Codex CLI:网络、权限、路径三大坑工程化解决方案

网络层的隔离、文件层的权限映射、路径层的格式差异。不要拿原生 Linux 的教程直接套,针对性解决这三个问题之后,WSL2 里的 Codex CLI 体验和原生 Linux 几乎无差别,同时还能复用 Windows 的软件生态、IDE 工具链,兼顾开发效率和环境一致性。如果是 JetBrains / VSCode + WSL2 的开发组合,这套配置还可以和 IDE 的 WSL 开发环境无缝打通,直接在 IDE 里调用 WSL 内的 Codex CLI,体验非常流畅。

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 90

[EntLib]微软企业库5 0 学习之路 第八步 使用Configuration Setting模块等多种方式分类管理企业库配置信息

微软企业库5.0教程,网上不多见的学习资源

ThunderScope开源示波器

4CH,1GSa/S 开源示波器。前端很简洁,BUF802+LMH6518,ADC是HMCAD1511,用Xilinx A7 FPGA进行控制,数据通过PCIE总线传输到上位机处理。目前这个项目已经被挂到了Xilinx官网,强。设计日志:https://hackaday.io/project/180090-thunderscope开源地址:https://github.com/EEVengers/ThunderScope。

leida_wt的博客 8165

Microchip Studio 7.0 从下载到项目调试:AVR开发者的完整入门指南(附常见问题解决)

本文为AVR开发者提供了Microchip Studio 7.0从下载安装到项目调试的完整入门指南。详细介绍了如何获取安装包、创建第一个AVR工程项目,并配置编译与调试环境。同时,文章重点解决了开发过程中常见的编译错误和仿真问题,帮助开发者快速上手并高效使用这一官方集成开发环境。

joy55的博客 328

Dify+MCP Server打造禅道AI智能助手

Dify AI与MCP Server结合打造的禅道AI智能助手,实现了项目管理智能化升级。该方案通过大语言模型和自动化工作流,提供四大核心功能:1)自动化报表生成,支持多维度数据统计与可视化;2)禅道系统管理操作,简化产品/项目/任务管理流程;3)基于知识库的智能问答系统;4)数据库灵活查询与可视化输出。系统采用分层架构,通过MCP协议实现AI与数据源解耦,解决了传统禅道在数据孤岛、工具碎片化等问题。实际应用验证了其在用户管理、任务创建、Bug处理等场景的高效性,显著提升了项目管理效率。

oNew_Lifeo的博客 1699

线性分类器(Linear Classifier)

线性分类器 如上图所示,这是二维空间中的一个数据集,如果他正好能够被一条直线分成两类,那么我们称它为线性可分数据集,这条直线就是一个线性分类器。 在三维空间中,如果数据集线性可分,是指能够被一个平面分为两类。 在一维空间中,所有的点都在一条直线上,如果线性可分。可以理解为它们能够被一个点分开。 这里的直线、平面、点被分为决策边界。 一个 m 维空间中的数据集,如果能够被一个超平面一分为二,那么这个数据集就是线性可分的,这个超平面就是决策边界。 例如,这是二维平面上的一条直线, 它可以把平面切分成两

xuechanba的博客 1万+

基于深度强化学习的柔性作业车间动态调度

在追求敏捷和灵活的生产调度方面,处理不可预测的动态事件的能力变得越来越重要。与此同时,生产系统中的网络-物理融合产生了大量需要实时挖掘和分析的工业数据。为了便于这种实时控制,本研究提出了一种分层分布式的体系结构来解决动态柔性作业车间调度问题。采用双深度Q网络算法(DDQN)训练调度智能体,捕捉生产信息与调度目标之间的关系,为具有恒定任务到达的柔性作业车间实时做出调度决策。为了处理动态调度中问题的可变规格说明,提出了专门的状态和动作表示法。此外,还提出了一种代理奖励整形技术(surrogate reward

太剧烈的快乐与太剧烈的悲哀是有相同之点的——同样地需要远离人群! 1万+

AI驱动视频剪辑自动化:cutcli命令行工具重塑工作流

视频剪辑自动化是提升内容生产效率的关键技术,其核心原理在于通过程序化指令替代手动操作,将创意执行过程代码化。这项技术的价值在于能够将创作者从重复性劳动中解放,实现批量化、标准化的视频内容生产,尤其适用于社交媒体运营、产品宣传等高频产出场景。通过封装专业软件(如剪映/CapCut)的底层草稿格式,自动化工具在保证工业级渲染质量的同时,提供了可编辑的中间态,为AI智能体(Agent)与生产工具的结合提供了清晰接口。本文以cutcli为例,深入探讨了如何通过命令行工具和AI助手,构建从自然语言指令到可编辑视频草稿

weixin_27210125的博客 1048

[深入研究4G/5G/6G专题-31]: 5G NR开机流程5.2 - UE Attach流程(Registeration Request/Accept/Complete)

目录前言:前置条件:第1章 5G NR UE attach流程(从UE log的视角看)1.0 NAS消息解析器1.1 消息交互流程1.2 UE Registeration Request消息(AMF->基站->UE)1.3 AMF Registeration Accept消息(AMF->基站->UE)1.4 UE Register complete消息(UE->基站->AMF)第2章 UE Register...............

文火冰糖(王文兵)的博客 7万+

CVPR 2026 即插即用 | 注意力篇 | MSEF:超轻注意力,空间-通道双分支并行融合,既增强特征又抑制噪声!

Multinex提出了一种超轻量级微光图像增强框架,其核心创新是MSEF模块。MSEF采用双分支并行架构,结合空间局部特征(深度可分离卷积)和全局通道注意力(改进SE),通过Tanh激活实现特征增强与抑制。相比传统注意力模块,MSEF在几乎不增加计算量的情况下显著提升性能,特别适合轻量级网络和边缘设备部署。实验表明,该模块能有效提升PSNR约3dB,同时保持极低的参数量(0.7K-45K)。

主要更新底层视觉(去噪、超分等)相关的科研内容,形式为【论文精读】+【论文复现】 587

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

上一篇: React 2022生态全景:核心演进与开发实践
下一篇: 微信小程序逆向解析:wxappUnpacker工具原理与实战指南
virusswb
博客等级 码龄21年 8粉丝 402原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值