Codex 实战:用项目结果反推能力

Codex实战:21个编码智能体项目,从接单到内部提效 随着AI编程助手从代码补全向自主执行演进,编码智能体正在成为软件工程的新生产力。以Codex为代表的工具,基于大语言模型理解自然语言描述,能自动完成代码体检、接口文档生成、SQL优化等边界清晰的任务。其核心价值在于将收敛型编码任务的边际成本降至接近零,帮助开发者从机械劳动中释放,专注于审查与决策。无论是外包接单、内部提效、存量系统改造,还是构建工具链、处理数据流水线,编码智能体都有明确的商业回报场景。围绕21个可落地的Codex实战项目,覆盖五大方向,并附带环境配置与高频报错排查指南,为评估和引入AI编程工 阅读详情

聊《Codex 实战:一次新的项目切入》之前,先说一句实在的:别急着背概念,先看它在真实项目里到底解决什么问题。

摘要

先把这篇文章的目标说清楚:看完之后,你应该能判断这件事值不值得做,以及从哪里动手。

最近团队里掀起了一阵“AI 结对编程”的热潮。以前大家觉得 GitHub Copilot 够用了,现在看到 Codex 和 Claude Code 这种能直接操作文件系统的 Agent 式工具,很多技术负责人开始焦虑:这玩意儿到底能不能直接进生产环境?还是说只是个人提升效率的小玩具?

上周我硬着头皮把我们组的一个老旧 Spring Boot 模块接入了 Codex,想看看它在处理“屎山”代码时的真实表现。结果不仅没让我省心,反而给我上了一课:AI 编程工具从个人试用走向团队协作,最大的门槛不是模型智商,而是上下文的一致性和修改边界的控制。

这篇文章不聊虚的概念,就复盘这次实战中我犯的几个错误假设,以及最后怎么把这些坑填上的。

目录

  • 误判一:以为 AI 能自动理解业务逻辑
  • 项目上下文理解:如何喂给 AI “正确”的信息
  • 代码修改流程:从“生成”到“审查”
  • 测试与验证:AI 写测不如人写准
  • 团队使用建议:建立“人机协作”规范
  • 总结

误判一:以为 AI 能自动理解业务逻辑

文章插图 1

刚开始接入时,我犯了一个典型的“过度信任”错误。我把整个 src/main/java 目录扔给了 Codex,然后让它:“重构一下这个用户服务层,提取公共方法,保持原有逻辑不变。”

我以为它会像个老练的架构师一样,先读代码,再理解依赖,最后动手。但实际上,它生成的代码确实更整洁了,但业务语义丢失了。

举个例子,原代码里有一个奇怪的 if (user.getSource() == 3),这是三年前的一个历史遗留 bug workaround。Codex 把它当成“无意义的魔法值”给优化掉了,导致线上某个特定渠道的用户注册流程直接断裂。

教训:AI 擅长语法转换和模式匹配,但不具备“业务上下文”的记忆。在处理复杂遗留项目时,不能直接把整个仓库丢给它。你需要做的是最小化上下文注入。

实战策略:缩小攻击面

不要一次性让它改整个类。正确的做法是:

1. 明确边界:只把当前涉及的 Service 方法和相关的 DTO 给 AI。
2. 提供注释级指令:在代码上方加上详细的业务逻辑注释,告诉 AI 这段代码“为什么”这么写,而不仅仅是“怎么”写的。

/**
 * 【重要】此处判断 source=3 是为了兼容 2023 年 Q2 导入的旧数据格式。
 * 新数据 source 为 1 或 2。
 * 重构时请务必保留此逻辑,不要移除或合并到通用校验流程中。
 */
public UserDTO processLegacyUser(UserRequest req) {
    // ... 原有逻辑
}

当我加上这段注释后再让它重构,它虽然还是改了变量名,但保住了那个关键的 if 分支。这就是用文档约束 AI 行为的有效性。

项目上下文理解:如何喂给 AI “正确”的信息

文章插图 2

Codex 这类工具的强大之处在于它能读取文件树,但它的“视野”是有限的。如果你希望它理解全局依赖,必须通过结构化提示来引导。

在团队内部推广时,我发现最头疼的不是单个方法的生成,而是跨文件的引用错误。比如 AI 改了一个 Controller 的入参,却没去改对应的 Service 实现,或者反过来。

为了解决这个问题,我在项目中建立了一套简单的 AI_Context.md 规范,放在项目根目录。每次开启新会话前,我会先让 Codex 读取这个文件。


# Project Context Guide
1. **Architecture**: Hexagonal Architecture (Ports & Adapters).
2. **Key Dependencies**:
   - Use `JdbcTemplate` for raw SQL, never `MyBatis` in new code.
   - All services must return `Result<T>`, handle exceptions via `GlobalExceptionHandler`.
3. **Naming Convention**:
   - Service Impl suffix: `ServiceImpl`
   - DTO suffix: `Request` / `Response`
4. **Forbidden**: Do not generate unit tests yet. Focus on logic correctness first.

这种做法看似繁琐,但在多人协作时非常有效。它相当于给 AI 设了一道“护栏”,防止它用错误的技术栈或命名规范生成代码。

优快云资料领取方式

代码修改流程:从“生成”到“审查”

在实际操作中,我调整了工作流:不再直接 Accept AI 的代码,而是将其视为“草稿”。

Codex 生成的代码通常语法正确,但往往缺乏异常处理的健壮性。特别是在网络调用和数据库事务方面,它倾向于生成最简路径。

我的审查清单

每次 AI 提交 PR 或生成文件后,我会重点检查以下几点:

1. 事务传播行为:AI 经常忽略 @Transactional 的传播级别,默认 REQUIRED 可能在嵌套调用中引发死锁或数据不一致。
2. 资源释放:虽然 Java 有 try-with-resources,但 AI 有时会忘记关闭自定义的连接池对象。
3. 日志脱敏:AI 生成的日志往往直接打印对象,可能包含敏感信息(如手机号、身份证)。

// AI 生成的常见错误示例
public void updateOrder(Order order) {
    orderRepository.save(order);
    log.info("Order updated: {}", order); // 危险!可能打印敏感字段
}

// 修正后的代码
public void updateOrder(Order order) {
    orderRepository.save(order);
    log.info("Order [{}] updated successfully", order.getId()); // 安全
}

这个过程让我意识到,AI 是初级程序员,你是 Tech Lead。你的核心价值从“写代码”转移到了“Review 代码”和“定义规范”。

测试与验证:AI 写测不如人写准

很多博主推荐用 AI 生成单元测试,但我发现效果参差不齐。Codex 生成的测试用例往往覆盖了 Happy Path,但对边界条件和异常场景的覆盖很弱。

在我的实战中,我采取的策略是:让人写测试用例的描述,让 AI 生成测试代码。

例如,我不说“写一个测试”,而是说:
> “请为 UserService.login 方法编写 JUnit 5 测试。需要覆盖以下场景:
> 1. 用户名不存在时抛出 UserNotFoundException。
> 2. 密码错误时抛出 AuthenticationException。
> 3. 正常登录返回 Token。
> 请确保 Mock 掉 passwordEncoder 和 userRepository。”

这样生成的测试代码准确度大幅提升,且逻辑清晰。验证阶段,我会手动运行这些测试,并检查覆盖率报告。如果发现某个分支没被覆盖,我会再次要求 AI 补充。

团队使用建议:建立“人机协作”规范

从个人试用走向团队协作,最大的阻力来自于代码风格的不统一和安全风险。

1. 禁止直接 Commit:所有 AI 生成的代码必须经过人工 Review 后才能合入主分支。这一点必须作为硬性规定写入团队公约。
2. 标签化管理:在 Git 提交信息中标注 [AI-Helped],方便追溯哪些逻辑是 AI 生成的,便于后续维护和责任认定。
3. 知识库共建:将常用的 Context Guide 模板沉淀下来,新项目直接复用,减少重复配置成本。

总结

这次 Codex 实战让我明白,AI 编程助手并不是万能的“代码自动机”。它在处理标准化、模块化强的新代码时表现出色,但在面对复杂业务逻辑和历史遗留系统时,依然需要人类提供明确的指引和严格的审查。

技术负责人的角色正在发生转变:我们不再仅仅是架构的设计者,更是 AI 行为的“提示词工程师”和代码质量的“守门员”。

对于想尝试 AI 编程的团队,我的建议是:从小处着手,先在一个非核心的内部工具项目中跑通流程,积累 Context 模板和审查规范,然后再逐步推广到核心业务线。 不要指望一键重构,而要追求“人在回路”中的高效协作。

毕竟,工具再聪明,也替不了你对业务负责的那份心。

资料展示

下面是我整理的AI大模型学习资料和工具包预览,适合收藏后按主题逐步学习。

AI大模型资料展示 1

AI大模型资料展示 2

AI大模型资料展示 3

如果你想看完整资料目录,可以在评论区留言「资料」;也欢迎告诉我你更关注AI大模型里的哪类内容。

优快云官方大礼包

Jev智能体实战:从密钥申请到Codex接入完整指南 随着AI编程工具从对话式问答向任务型智能体演进,开发者开始追求能自动拆解需求、执行修改并完成验证的完整闭环。这类工具不再只是生成代码片段,而是深入仓库结构,自主完成批量重构、缺陷修复与测试补充。Jev正是这一方向的代表性智能体模型,它通过兼容OpenAI API协议与Codex CLI等客户端协同工作,形成“脑与手”的配合架构。对开发者而言,理解其原理、明确适用场景,并掌握密钥申请与模型配置的完整链路,是真正将其落地到日常工程实践的前提。本文从智能体的技术价值切入,结合真实使用过程,梳理接入方法、参数调优与 阅读详情

相关推荐

Claude与Codex实战选型指南:从环境配置到提示词工程

大语言模型在编程辅助中的应用,核心在于理解其底层设计逻辑与工程落地适配性。Codex源自GitHub代码语料,具备编译器级语法感知与强上下文依赖,适合结构化、契约式开发;Claude基于超长对话微调,以意图映射和自然语言容错见长,更适合渐进式、人主导的开发流程。二者差异本质是‘代码优先’与‘对话优先’范式的分野,直接影响安装复杂度、提示词编写成本、错误反馈可读性及本地部署可行性。对于Python开发者,尤其Windows用户,环境兼容性(如SSL证书、Python版本)常比模型能力更早成为瓶颈。本文聚焦Cl

weixin_34290631的博客 363

Codex 实战:用项目结果反推能力,TaoToken 统一 Key 接入的代码审查闭环

Codex 代码审查实战:用 AI_Context.md 注入项目上下文,配合审查指令模板定位事务、日志脱敏等问题,再通过 TaoToken 统一 Key 接入建立可复现闭环。官网 https://taotoken.net/?utm_source=taotoken_aicg_blog_end 提供 auth.json 配置与验证流程。

weixin_30995917的博客 38

Ubuntu上安装Codex CLI与Claude Code:PATH配置与报错排查实战

AI编程助手正从图形界面走向终端,Codex CLI和Claude Code是当前主流的命令行AI工具。它们基于Node.js运行,依赖npm安装与PATH环境变量配置,理解这一点是稳定使用的前提。在Linux服务器上,这类工具能显著提升多文件重构、代码解释、测试生成的效率,尤其适合无图形界面的开发环境。然而实际部署中,即使命令安装成功,也可能出现“unable to locate the codex cli binary”等报错,根源多在于编辑器进程与终端PATH不一致。本文以Ubuntu为例,详解从No

weixin_28841265的博客 268

GitHub热榜三项目:free-for-dev、codex、plane怎么用

开源生态中,GitHub热榜是发现优质开发者工具的重要入口。无论是寻找免费资源清单、借助AI命令行工具提升编码效率,还是搭建自托管项目管理平台,都需要从原理层面理解其适用边界。free-for-dev通过社区维护的清单聚合免费服务,帮助开发者快速选型;codex作为OpenAI官方终端工具,以代理式编程方式减少调试循环;plane则通过docker-compose自托管实现数据自主可控。三者分别解决资源、效率与协作问题。本文结合实践经验,拆解三个高星项目的核心功能、部署路径与避坑要点,为开发者在实际场景中做

weixin_30236595的博客 386

OpenAI Pro套餐回归:Codex安装鉴权与第三方模型接入实战

在AI辅助开发中,命令行编码代理通过读取项目上下文、生成补丁与执行验证,将自然语言意图转化为可运行代码,其核心价值在于提升工程效率与代码一致性。这类工具依赖API鉴权与模型调用,常涉及环境变量配置、代理转发及上下文长度限制等基础技术环节。典型应用场景包括批量代码审查、长上下文重构与自动化脚本生成。当工具进入生产依赖阶段,额度管理与模型路由策略变得尤为关键。围绕OpenAI、API、GPT-6、Pro、Codex等热词,本文聚焦Codex从安装、鉴权到接入第三方模型的完整链路,并梳理高频报错排查方法,帮助开发

weixin_29048309的博客 250

汽车TSN时间敏感网络测试技术与探索系列讲座4 -TSN802.1AS同步要求及验证方法

TSN网络各设备类型同步性能要求是什么?各类设备的测试组网及测试内容。也将通过演示来展示相关测试结果,及如何解决上述的测试关注点。

weixin_43903833的博客 761

GitHub Trending 新视角:从热搜词反推趋势与项目评估

GitHub 早已不止是代码托管平台,更是融合技术趋势、学习资源与开发者生态的风向标。热搜词汇往往比 Star 数更真实地反映行业热点——从知识库项目 howtolivebetter 的走红,到 champ teleop 等机器人遥操作方向的升温,背后都藏着可被拆解的技术信号。对开发者而言,学会“github项目评估”是关键能力:通过 Star 与 Fork 配比、Readme 质量、Release 与 License 状态、Issue/PR 处理节奏等维度,可以快速判断一个仓库是否值得深入跟踪。同时,gi

weixin_30423065的博客 211

HyperMesh 2025新功能尝鲜:用Volume Tetramesh一键生成工业级四面体网格

HyperMesh 2025推出的Volume Tetramesh功能,通过“体到体”的全新范式,实现了工业级四面体网格的一键生成。该功能利用Proximity与Curvature参数智能识别并加密几何特征,将工程师从繁琐的几何清理和表面网格划分中解放出来,在保证网格质量的同时,显著提升了前处理效率,尤其适用于发动机缸体等复杂模型的仿真分析。

weixin_29229055的博客 477

Codex本地化重构:JS逆向能力的AST图谱化实践

JavaScript逆向是现代Web数据采集的核心技术,其本质在于对混淆代码的确定性还原而非概率补全。传统方案依赖人工扣包与断点调试,效率低下且难以维护;而基于AST解析、运行时上下文注入与结构化补丁生成的技术路径,可将动态调用点、加密原语引用、Webpack模块标识等关键要素转化为可计算图谱。这种设计显著提升JS逆向的自动化水平与工程稳定性,广泛应用于电商比价、短视频签名破解、金融舆情采集等强对抗场景。本文聚焦Codex能力的本地化重构,通过SWC解析器、Unix Domain Socket通信与Skil

weixin_31115195的博客 790

3D Slicer5.7在win11下的源码编译安装

本博客主要参考官方安装文档以及部分优快云的博客,部分内容的书写会直接参考官方文档的内容。

Topsort的博客 4761

SI案例分享--PCB通孔互连新技术的应用(VeCS)

本文介绍了VeCS的物理结构和制造过程,并通过全波仿真模拟和测量,分析了VeCS的电性能,并与传统的测量方法进行了比较。结果表明,由于有一个连续的参考平面,VeCS的TDR阻抗可以很容易地控制到目标阻抗,同时可以大大减轻信道上的串扰,的确是一种性能不错的PCB互连创新设计方案。

一只豌豆象的博客 2116

Codex不是产品,而是GPT模型的代码能力分支

Codex常被误认为是一个独立可安装的AI编程工具,实则它是基于GPT系列大模型、在海量开源代码语料上专项微调后形成的代码生成与理解能力。其技术本质是通过数据清洗、指令微调和上下文架构设计,使同一基础模型具备自然语言对话与高质量代码输出的双重能力。这种能力已深度集成于ChatGPT、GitHub Copilot、Cursor等主流开发工具中,无需额外部署或‘接入’。对开发者而言,真正关键的是掌握Prompt工程、RAG增强与Agent编排等工程化方法,而非寻找所谓‘Codex离线包’或‘Codex镜像’。本

weixin_34025151的博客 288

基于STM32、HAL库的ZMOD4510AI4R气体传感器驱动程序设计

ZMOD4510AI4R是Renesas公司推出的一款数字空气质量传感器,主要用于检测臭氧(O₃)和总挥发性有机化合物(TVOC)浓度。(status & 0x80)) // 检查数据就绪位。// 等待测量完成 (实际应用中应该使用非阻塞方式)// 转换为ppb (简化转换,实际应根据传感器文档校准)* @param hzmod: ZMOD4510句柄。* @param tvoc: TVOC浓度(ppb)* @param ozone: 臭氧浓度(ppb)* @param hi2c: I2C句柄。

corlin6688的博客 312

用Codex做短视频,不是写脚本那么简单,而是搭建一条生产线

最开始我做视频的时候,脚本在ChatGPT里,人物图片和素材在Midjourney里,视频在即梦里生成的,字幕又在另一个软件里。做着做着,我打开文件夹一大片全是保存的成片,根本不知道哪个才是我的最终版,然后灰头土脸的一个一个点开看。现在Codex把选题,到脚本、分镜、素材、字幕,一直到发布,每一步都有明确交付物。用户是谁、解决什么问题、视频形式、视频市场、核心买点、内容结构。0-3秒:做公众号最难的,不是写,而是不知道从哪开始。很多人有脚本,但没有分镜。这时候的脚本已经不是单纯的文案了,而是一个视频脚本。

Fang_YuanAI的博客 970

1、开启 Microsoft Power Automate 自动化之旅

本文介绍了 Microsoft Power Automate 的基本概念和其在信息时代自动化需求中的重要作用。Power Automate 是 Power Platform 的一部分,能够通过无代码/低代码的方式自动化处理重复性任务,例如邮件处理、文件复制等,从而提升工作效率。文章还详细讲解了 Power Automate 的核心术语、登录方式、创建第一个流程的操作步骤,并通过示例帮助用户快速上手。无论是终端用户还是管理员,都可以通过本文了解如何利用 Power Automate 实现业务流程自动化。

corn8的博客 169

[ATF]-smc指令详解

1、在ree/tee调用smc之前 2、调用smc之后,cpu触发同步异常,进入ATF的sync_exception_aarch64—>handle_sync_exception—>smc_handler64处理函数 在smc_handler64中又调用了smc_handler func smc_handler64 /* ---------------------------------------------- * Detect if this is a RUN_IMAGE or ot

baron-周贺贺-代码改变世界ctw 1万+

Codex++安全边界探秘:从模型能力到风险防御的TaoToken实践

Codex++ 接入前先划安全边界:用 TaoToken 统一 Key 收敛调用入口,配置 Base URL、Key 与 Model ID 三件套,并通过 curl 与工具内请求验证通道和权限是否真正生效。官网 https://taotoken.net/?utm_source=taotoken_aicg_blog_end 提供统一通道与调用审计,配合默认拒绝的权限配置,让风险防御落到可复制的动作上。

weixin_35753291的博客 139

Linux内核进程管理子系统有什么第五十一回 —— 进程主结构详解(47)

Linux内核进程管理子系统有什么第五十一回 —— 进程主结构详解(47)

phmatthaus的专栏 1386

Codex Skill实战指南:10个生产级能力装配方案

Codex Skill并非传统IDE插件,而是基于AST解析、Git语义理解与项目行为学习的可配置化开发能力单元。其核心原理是将重复性高、易出错的工程实践(如空值校验、日志规范、测试范围识别)封装为规则驱动的原子能力,通过静态分析与上下文感知实现精准拦截与反馈。技术价值在于显著降低CR返工率、CI耗时与重构风险,已在Java/Spring Boot、Python/Django、Go微服务及TypeScript/React等主流栈落地验证。典型应用场景覆盖代码编写、审查、测试、重构与上线前门禁,尤其适用于对稳

weixin_42531923的博客 247

深度学习工具包 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")

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

JetBrains CC GUI 集成 Codex SDK 快速上手指南:对称架构、统一权限映射与实战调试

本文是 JetBrains Claude Code and Codex GUI 插件(本项目)中 **Codex SDK(@openai/codex-sdk)集成** 的完整技术指南,面向希望在 IDEA 内同时使用 Claude 与 Codex 的开发者。文章以官方集成文档 [CODEX-INTEGRATION-QUICKSTART.md](https://link.gitcode.com/i/

gitblog_00821的博客 225

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

Spec 文件管理实战:让 Codex 与 Claude Code 真正读懂你的项目

用四层文档架构管理 Spec 文件,让 Codex 与 Claude Code 读取同一份权威规格。本文提供 AGENTS.md 导航模板、客户模块 spec.md 示例与变更层三件套,并通过 TaoToken 统一两个工具的模型入口,附 401、local proxy failed 等报错排查。详见 https://taotoken.net/?utm_source=taotoken_aicg_blog_end

weixin_42594427的博客 180

GPT-5.6技术快照:从Codex日志解码模型演进逻辑

大语言模型(LLM)的版本演进已不再仅依赖训练完成或参数发布,而是深度耦合于推理基础设施的工程闭环。Codex作为OpenAI核心调度层,承担路由决策、协议翻译与行为观测三重职能,其生产环境日志中出现的模型标识(如gpt-5.6),实质标志着该模型已通过协议兼容性验证、工具调用稳定性测试及真实流量压力考验。这种‘灰度先行、日志为证’的演进范式,凸显了现代LLM工程中API兼容性、输出格式鲁棒性与persona隔离能力等底层技术价值。它广泛应用于代码补全、CLI智能代理、结构化JSON生成等高可靠性场景,也为

weixin_30808693的博客 435

Agent之Harness:Codex概述—以开放 Agent Harness 为核心,将上下文、工具、状态、沙箱、审批与代理循环嵌入既有产品,通过 codex exec、Codex SDK 与 Co

​ Agent之Harness:Codex概述—以开放 Agent Harness 为核心,将上下文、工具、状态、沙箱、审批与代理循环嵌入既有产品,通过 codex exec、Codex SDK 与 Codex app-server 构建面向工程、运营、安全、客服、销售和其他专业工作流的可控 AI 产品 目录 Codex—以开放 Agent Harness 为核心,将上下文、工具、状态、沙箱、审批与代理循环嵌入既有产品,通过 codex exec、Codex SDK 与 Codex app-

头部AI社区如有邀博主AI主题演讲请私信—心比天高,仗剑走天涯,保持热爱,奔赴向梦想!低调,专注,谦虚,自律,反思,成长,还算比较正能量的博主,公益免费传播…内心特别想在AI界做出一些可以推进历史进程影响力的技术(兴趣使然,有点小情怀,也有点使命感呀 721

Codex源码工程分层:高效阅读大型Rust项目的实践指南

阅读大型开源项目源码,效率往往取决于是否先理解其工程分层。分层架构通过定义模块间的依赖方向与职责边界,让系统在复杂演进中依然可控。以Rust编写的Codex源码为例,其核心分层包括入口层、核心执行层、工具能力层与模型协议层,而Agent循环作为状态机运行于核心层,驱动会话与工具调用。掌握这套分层视角,不仅能快速定位Codex中每个文件所属的层级,也能复用其事件驱动与状态机设计到自己的AI工程中。本文从整体骨架切入,展现Codex源码的工程分层全景。

weixin_30231327的博客 282

Codex智能体实战:从零构建多场景自动化生产流程

智能体自动化正从概念走向工程实践,核心原理是通过自然语言生成代码、调用工具并自我修正,形成可闭环的任务执行链路。这种模式让开发者从重复劳动中解放,将精力聚焦于业务决策,成为“超级个体”的关键杠杆。在具体应用中,日志异常解析、接口回归测试、CSV数据清洗、本地知识库问答、浏览器表单自动化等高频场景,都能通过定义清晰的任务目标与验收标准,交给AI智能体稳定执行。本文以Codex为例,从环境搭建、最小闭环到多场景实战,完整拆解了智能体自动化生产流程的落地方法,并总结了Prompt设计、失败重试、任务拆分等实用技巧

weixin_29031161的博客 258

Jev模型实战:从API密钥申请到接入Codex全流程解析

大语言模型正加速渗透到软件开发全流程,成为编程辅助与自动化任务的核心引擎。其原理在于通过API服务暴露模型能力,开发者只需申请密钥即可将模型集成到现有工具链中。这类模型在代码补全、逻辑推理和长文本理解上表现出色,尤其适合作为AI编程代理的推理大脑,显著提升编码效率。在工程实践中,将模型接入Codex等终端工具,需要完成密钥配置、端点设置与参数调优等步骤,实现仓库级重构、测试用例生成和Bug排查等场景落地。Jev作为新兴的代码生成与推理服务,凭借低成本接入和稳定长上下文表现,正成为开发者社区的热门选择。本文围

weixin_33158887的博客 271
上一篇: 前端转大模型:从一次踩坑讲到改进
下一篇: 从 ETL 到 RAG:数据工程师转型大模型,卡死你的不是算法而是这层“脏数据”基建
Java技术那些事儿
博客等级 码龄5年 2306粉丝 2584原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值