注册并分享邀请链接,可获得视频播放与邀请奖励。

与「软件工程」相关的搜索结果

软件工程 贴吧
一个关键词就是一个贴吧,路径全站唯一。
创建贴吧
用户
未找到
包含 软件工程 的内容
[开源学习资源] AI Engineering from Scratch 59.8K ⭐️ 作者 @ghumare64 课程共 20 个阶段,以 Python 为主要编程语言,主张在导入任何框架之前,先用纯数学把每个算法手写一遍。 课程地址: 开源地址: 它和常见教程的本质区别 ? 大多数 AI 教程是“API 驱动”的:装个库、调个接口、跑个 demo。这个项目反其道而行,每节课遵循固定的六段结构: Motto → Problem → Concept → Build It → Use It → Ship It 以 Phase 10 的一节课「Tokenizers: BPE, WordPiece, SentencePiece」 为例,这个格式是真实落地的,而且写作质量相当高: · Problem 部分不讲废话,直接从代价切入:“你的 LLM 不读英语,它读整数。分词器决定这些整数是承载意义还是浪费意义”,然后解释为什么 tokenization 不是预处理,它是架构的一部分(影响上下文窗口利用率、API 计费、推理速度)。 · Concept 部分用“三种失败的方案和一种胜出的方案”来讲演化逻辑:词级切分(词表爆炸、[UNK] 问题)→ 字符级切分(序列过长)→ 子词切分(BPE 的折中),并配上真实语料上 BPE 逐步合并的手工演算。 每节约 3000+ 词,带 Mermaid 图、可运行代码和测试。 另外两个设计值得强调: · 每节课产出一个可复用的 artifact,一个 prompt、一个 skill、一个 agent 或一个 MCP server。学完整个课程,你手里有 523 个可展示的作品,不是 523 个跑完就扔的 notebook。 · 强调“证据留存”:保留命令、退出码、输出,作为学习发生的证明。这明显吸收了工程实践中“可验证性”的思路。 # 课程结构:从线性代数到自主智能体集群 20 个阶段构成一条完整的上升曲线,咱们它分成五个大块来看: 基础层(Phase 0–2):环境与工具链、数学基础(线性代数/概率/微积分)、经典机器学习。这是给基础不牢的读者铺的路。 深度学习与感知层(Phase 3–6):神经网络核心、计算机视觉(一路讲到 NeRF、高斯泼溅、世界模型,这已经超出一般教程的覆盖范围)、NLP、语音。 生成与决策层(Phase 7–9):Transformer 深挖、生成式 AI(GAN、扩散模型、flow matching)、强化学习。 LLM 层(Phase 10–12):这是全课程的重心之一。Phase 10 的目录我逐条看过,它不只是“从零实现 GPT”这种常规内容,还包含了相当前沿的论文级主题:DeepSeek-V3 架构走读、DualPipe 并行策略、Native Sparse Attention(NSA)、多 token 预测、Jamba 的 SSM-Transformer 混合架构、 speculative decoding 等。Phase 11 转向应用侧(RAG、LoRA、MCP、可观测性),Phase 12 覆盖多模态(从 CLIP 到 computer-use agent)。 智能体层(Phase 13–16):工具与协议(MCP、A2A、Agent Skills)、54 节课的 agent 工程、自主系统与安全、多智能体集群。这一层的分量很能说明项目的判断:它认为 AI 工程的重心正在从“训模型”转向“构建可靠协作的智能体”。 收尾(Phase 17–19):生产基础设施、伦理与对齐、毕业设计。 # 生态与周边:不只是一个课程仓库 网站:带浏览器本地存储的学习进度追踪、术语表、课程目录和路线图。 六卷本书籍:课程内容由 CI(pandoc)自动构建成 EPUB/PDF,附在 GitHub Releases 上,课程即书,且随仓库持续更新。 Agent 导师模式:运行 npx skills add rohitg00/ai-engineering-from-scratch,可以把整个课程装进 Claude Code、Codex 等编码智能体,变成一个带分级测验(placement quiz)和个性化路径的交互式导师,学习进度写在 LEARNING.md 里。这是“用你正在学的工具来学”的巧妙闭环。 认证备考:5 条备考路径、67 节课、505 道练习题,覆盖 Anthropic 的 Claude 认证和 Agentic AI Foundation 的 MCPA。项目明确声明与这些考试机构无关联,只是独立的备考材料。 12 种语言的翻译(含中文),以及四条核心学习路径(构建与部署 AI 应用、软件工程基础、Agent 辅助工程、产品判断与交付)供不同目标的人选路。
显示更多
0
11
75
16
转发到社区
Simon Willison 在 WeAreDeveloplers 世界大会闭幕主题演讲「2026 in LLMs (so far)」,以时间线梳理 2026 年 LLM 领域的关键事件,值得仔细阅读: Willison 把 2026 年的起点前移到 2025 年 11 月:Claude Opus 4.5 和 GPT-5.1 发布。这两个模型单看是渐进式改进,但与各自的 Coding Agents(Claude Code、Codex)配合后,跨过了一道“看不见的线”,从“经常出错”变成“可靠到可以日常使用”。这一质变是全年所有故事的引爆点。 # 主线一:Agent 成为新的软件形态 OpenClaw 革命:一个 2025 年 11 月才出现在 GitHub 的仓库,不到两个月积累 8,300 次提交,如今超过 10 万次,被他称为“史上最 vibe-coded 的软件”。它开创了 "Claw" 这一品类,如今被改称“个人智能体”或“通用智能体”,但本质是“换了一顶不那么吓人的帽子的编码智能体”:底层仍是写代码并在你的电脑上执行。湾区 Mac Mini 因此卖断货(Drew Breunig 的妙喻:买 Mac Mini 是给 Claw 买鱼缸)。 真实需求验证:3 月中国出现 OpenClaw 安装派对,非技术人群排队安装,证明普通用户确实想要一个能替自己办事的智能体。随后行业进入“谁能造出安全的 Claw”竞赛,Meta 的 Muse 目前居 App Store 免费榜首位。 泡沫侧写:MoltBook 周四上线、周五爆红、周一被《纽约时报》报道、周二就淹死在 slop 垃圾信息里,一个月后被 Meta 收购,一条完整的炒作生命周期样本。 # 主线二:开发范式的激进实验 StrongDM 的 "Software Factory"(Dan Shapiro 称之 Dark Factory,灯火全灭的自动化工厂)提出两条规矩:代码不许人写、代码不许人审。2 月时听来激进,如今很多人已在实践。 Willison 指出关键点:这是一家安全公司、由数十年经验的工程师在探索可行性与责任的边界,不是草台班子。 # 主线三:失控的训练智能体——全年最重的事件 5 月 RubyGems 遭可疑包轰炸、6 月德语游戏维基出现 "AgentOpenAIProbe" 等账号互相留言、澳大利亚 Medicare 网站被越权访问,当时都进了“疑案堆”。 7 月真相开始揭开:Hugging Face 遭自主智能体入侵,OpenAI 坦白是其 RLVR 训练中的智能体发现了沙箱漏洞、越狱出逃、攻击外部系统来“解决训练中本来无解的问题”。九天后 Anthropic 检查日志后承认自家训练智能体也发生过越狱,此前 PyPI 的恶意包 mlflow-ui 就是他们造成的。 9 月,独立研究者又确认德语维基和 RubyGems 事件均出自 OpenAI 训练智能体,澳大利亚总理更在联合国大会上就此警告,AI 实验室的失控智能体成了国际事件。 由此诞生的黑色幽默是 FelonyBench. com:按“重罪级网络攻击次数”给实验室排名,OpenAI 11 起、Anthropic 9 起、Google 3 起、Meta 1 起。Willison 的隐含质问是:还有多少没被发现的?连各家自己都要靠外部研究者才查清日志。 # 主线四:模型竞争与开放权重的崛起 王座周期极短:Claude Fable 6月发布后仅 3 天就被美国政府以国家安全为由下达出口管制叫停(起因是 Amazon 研究员发现“修复这段代码”的提示词能绕过其安全拒绝)。7 月 1 日解禁,风光 8 天后 GPT-5.6 就追平。Willison 的教训:“世界末日式营销”会反噬,Fable 登顶 30 天里有 18 天不可用。 本地模型逼近前沿:4 月笔记本上跑的 Qwen3.6-35B 画自行车胜过全新发布的 Claude Opus 4.7;8 月的 Qwen 3.8 27B(17GB 文件)已“几乎有前沿竞争力”。他认为原本预期要 5 年和一万美元硬件才能达到的水平,如今一台笔记本就够。 "Fable 级”模型:只要你能清晰定义目标、给出无歧义的约束、提供工具,它就能暴力解决问题。看似取代工程师,但“定义目标、写清约束、选对工具”本身就是软件工程;会做这些的人获得的是超能力,而非失业通知。 # 主线五:人的处境,Deep Blue 与 AI 躁狂症 他与 Cantrill、Leventhal 造了 "Deep Blue" 一词:AI 什么都能干导致工程师的倦怠与失重感,这是贯穿全年的行业情绪。 他自己得过 "AI mania"(躁狂):让智能体闲着就觉得浪费、熬夜赶工,直到用 Python vibe-code 出 JavaScript 解释器和 WASM 运行时,才被“世界真的需要一个又慢又 bug 多的解释器吗”治愈。 游戏实验是同一主题的注脚:智能体能做出“看起来像游戏”的东西,但好玩的核心循环依然造不出来;“能做出像游戏的东西,不代表我们是游戏开发者”。 收尾点题:为什么工具这么强、工作反而更难了?因为简单的事全被智能体做掉,剩下的全是难题,而且人人更敢想敢干了。他引用 Greg LeMond 的话作全年总结:“不会变容易的,你只是变快了。”
显示更多
NVIDIA 发布 Skill2Env:用“集体技能”强化智能体 NVIDIA 研究者们把社区公开的 Agent Skills 编译成可执行 RL 训练环境的数据流水线:3.4k 个 Skills 变成 8k 个带程序化测试和行为量规的终端任务;仅 300 步 RL 训练就让 Qwen3.8-27B 在 Terminal-Bench 2.1 上提升 4.7 个百分点,且模型行为显著向源 Skills 的方法论对齐。 开源项目: 核心洞察:公开 Agent Skills 是一个被忽视的监督来源 Agent Skills 是“教智能体做某件事”的文件夹:一个 SKILL.md 加上可选的脚本、参考资料和资产。论文指出,把公开 Skill 语料当作数据来读,它同时提供三样东西: · 任务分布的采样:人们真正想让智能体处理的任务分布(有人愿意花时间写下工作流,说明这活儿值得自动化); · 真实世界的锚点:指向真实的仓库、数据集、工具和工件; · 结果测试表达不了的质量标准:领域专长、默认参数、常见坑、“好结果长什么样”。 # 数据流水线:四阶段编译,验证靠构造 1. Plan(分解):容器化的 Codex 规划器读取完整 Skill 包、联网调研相关公共资产,把 Skill 拆解成若干可验证的 workflow,每个附带元计划(场景、初始世界、预埋缺陷、难点来源、解法草案、验证策略)、资产建议和“任务轴池”(任务原型 × 验证器模式 × 人物画像)。 2. Diversify(多样化):宿主从轴池采样一组组合,加上复杂度、指令语气、请求者专业水平。关键设计是轴池以 workflow 为条件:研究型 workflow 配“证据可追溯”验证和研究者画像,而不是从全轴乘积空间乱抽,这让多样化保持 sensible。 3. Create(构造):全新创建者 Codex agent 在 Docker 内工作,尽可能用真实素材(钉在特定 commit 的开源仓库、真实版本化文档、官方 API 规范);需要联网服务的场景改造成本地替身(stub 服务器、录制回放 fixture、PATH 上的假 CLI、种子数据库),求解时绝不依赖网络。创建顺序被严格固定:先建世界 → 写指令 → 写测试 → 写量规 → 最后才写参考解,测试先于解法冻结,保证解法必须迁就评分契约而非反过来。 4. Verify(验证):宿主端无模型参与的接收门:静态检查(布局、符号链接、Dockerfile 安全、基础镜像按内容摘要钉死)+ 两个容器内试跑:Oracle(参考解)必须全指标满分,NOP(什么都不做的 agent)必须全指标零分。任一失败即拒绝。 值得注意的一个反直觉选择:不做 teacher 模型预验证(不像部分工作用强模型试解、解不出就丢弃任务)。理由有二:这会把任务难度上限压到验证器能力,且成本翻倍;而 group-based RL 的在线动态过滤(rollout 无优势的 prompt 自动不产生梯度)天然淘汰过难/过易任务。 # 数据画像:广、贵、且忠实于源 规模与成本:7,971 个任务,用 GPT-5.6 Sol(xhigh 推理档)生成,API 花费超 9 万美元。(脚注:出于法律原因,公开发布的数据集改用 Kimi-K3-max 在同一流水线下生成。) 领域分布:13 个领域中,软件工程仅占 22.5%,AI/ML 10.5%,商业/金融/法律/HR 10.5%,营销 9.3%……论文对比了 TMax-15K、Terminal-Bench、DeepSWE 等,Skill2Env 是唯一全覆盖 13 域、且非技术知识工作占大头的语料。 忠实度探针(很聪明的设计):用任务指令+量规作查询、对 3.4k 个 SKILL.md 做 TF-IDF 检索,73.2% 的任务 top-1 命中真实源 Skill,94.6% 进 top-10(随机 0.03%)。单用量规也有 68.5% top-1,证明量规携带的是 Skill 专属方法论而非泛泛建议。 SFT 数据:用 GLM-5.3 对每个任务 rollout 两次,得到 15,968 条轨迹,平均奖励 0.74,中位轨迹 19 次模型调用 + 23 次工具调用。 S2EBench:考虑到公开基准饱和,从 SkillHub 另外生成、逐条人工审核(指令无歧义、忠实于源 Skill、测试公允)后的 79 任务私有 held-out 基准。 # RL 实验:基础设施 + 极简配方 基础设施(论文明确说“现代 agentic RL 首先是基础设施挑战”):Molt(PyTorch 原生全异步训练,Ray + vLLM + FSDP2)+ Polar(agent rollout 层:rootless Apptainer 沙箱、代理回传 token ID 和采样时 log-prob、prefix merging 把 harness 的多次补全缝合成训练轨迹)。 配方(刻意走“简单路线”):GRPO 组归一优势 + DPPO 的 binary-KL 信任域掩码(δ=0.05,超出阈值的 token 直接丢弃,无需参考模型,还能防训练-推理失配);G=8 rollouts/组,批 64,lr 1e-6 恒定,无 KL 惩罚、无熵奖励、无 SFT 热启动,每任务 65k 上下文。 量规校准奖励:开量规时,额外由 GPT-6 Astra 做 LLM-as-Judge(带“宪法”:惩罚无脑循环、reward hacking、答非所问;hacking 实证 = -5 分),总奖励 r = r_V + λs/5(λ=0.2),即 judge 最多把程序化奖励拉动 ±0.2。量规是校准可执行结果奖励,而非取代它,这是与“Rubrics as Rewards”一系的定位差异。 # 四项发现(论文最有信息量的部分) 发现 1:小规模 RL 即有跨域迁移。 仅 300 步、只用 2,400 任务子集训一个 epoch:S2EBench pass@1 +4.3(均分 +18.5),Terminal-Bench 2.1 +4.7(49.4→54.1)。训练集与 TB 无重叠(13-gram Jaccard < 0.8),且训练集从未针对 TB 调过,论文将其解读为规划、工具使用、收尾能力的通用提升而非任务族记忆。这让 27B 本地模型显著缩小了与云端前沿模型的差距。 发现 2:量规校准 RL 在基准上落后于纯结果 RL,一个诚实的负结果。 量规版在 TB 2.1 只有 50.1(纯结果版 54.1);训练中量规版的程序化奖励长期停在 0.5–0.6,judge 分项从头到尾无上升趋势,两个奖励在训练分布上互相拉扯。论文不把它当作对量规奖励的终审判决(两者优化不同目标,而基准只考结果那一半),并给出两个疑因:λ=0.2 的加性形式让失败任务仍能拿正奖励、judge 看不到文件系统等设定均未调优;以及更本质的,Skill 写下的方法论可能本来就不是最大化基准通过率的分布。 发现 3:行为确实向 Skill 对齐,量规的价值所在。 200 个任务的成对偏好测试(judge 拿源 SKILL.md 当标准,比较匿名化的 base 与 RL 轨迹):纯结果 RL 已被偏好 54.5% vs 33.5%;量规版被偏好 73.0% vs 24.0%。这说明量规奖励买到的东西在结果基准上看不见,但对“怎么做事”影响实质,对网页开发、报告综合、开放研究这类难验证任务尤其重要。 发现 4:GLM-5.3 蒸馏 SFT 反而伤害 Qwen。 在 GLM-5.3 轨迹上做 SFT:27B 上 TB 2.1 掉到 45.8;4B 上直接崩塌(TB 18.7→3.4,出现思维/工具调用死循环)。归因:教师的 interleaved-thinking + 工具调用风格与学生自身 post-training 不兼容,模仿覆盖了学生依赖的行为模式却带不来教师的能力。与 TMax 报告的“SFT 混合数据劣化已后训练的 Qwen”互相印证。因此论文所有 RL 结果都从未修改的原始 checkpoint 出发。
显示更多
AI 时代,职场人现在最该学的一项技能是什么? 吴恩达老师的建议是人人都该学编程。 不少企业高管劝大家别学编程了,理由是 AI 会把它自动化掉。吴恩达认为这个逻辑正好反了。正因为有了 AI 辅助,写代码变得前所未有地容易,所以才值得每个人都去学。 他已经在很多岗位上看到了明显的生产力差距。这不只发生在软件工程师身上。一边是会写代码、能自己做定制软件的人,另一边是不会的人,两者的效率已经拉开了。 学编程不等于手写代码 他说的学编程并不是一行行手敲代码,他自己几乎从不这么做。在可预见的未来,最重要的能力之一是能准确告诉计算机你要它做什么,让它替你完成。而代码就是计算机的语言。所以学编程的实质,是学会用计算机听得懂的方式把需求说清楚。 他团队里最好的市场人员有了想法,不用等工程师来搭网站,自己就能做出来。最好的招聘人员也不再靠肉眼一份份看简历,而是写代码让程序帮忙筛选。在他看来,能把需求交代给计算机的人,会变得强大得多、高效得多。
显示更多
0
11
30
2
转发到社区
Anthropic发布《检测与应对AI滥用》报告,指控阿里巴巴、月之暗面Moonshot、DeepSeek、小米Mimo、MiniMax、商汤等对Claude进行蒸馏。 报告声称发现了6起常规武器案例,其中有3起在中国。其中一例称,中国境内行为体用Claude起草反鱼雷火控系统中文规格书、200多页技术建议书和汇报材料,面向国内国防制造商审批与试验。另有无人机蜂群软件、电子战/压制防空瞄准软件等方向。 Anthropic还声称发现,Claude Code被当作软件工程师替代品,写制导、导航与控制(GNC)软件,参与也门手机级飞控制导火箭、射程超2000公里的多级弹道导弹的开发。
显示更多
0
15
46
2
转发到社区
这期播客是 The Pragmatic Engineer 对 OpenAI Codex 团队负责人 Thibault(Tibo)的访谈,聊了 Codex 的诞生、技术决策、工程文化以及软件开发方式的变迁。 以下是核心要点: 个人经历与加入 OpenAI Thibault 是比利时人,学应用数学出身,先后做过制药供应链优化的创业公司,在 Google 做过加速移动网页的项目(后被砍掉,让他学到了要时刻审视项目真实影响力的教训),之后在 Google Maps 做评论,再转到 DeepMind。在 DeepMind 期间,他参与了一个内部聊天机器人的开发——本质上就是 ChatGPT,但比 ChatGPT 早了一年。内部传播很快,大家都在分享对话,但 DeepMind 不具备把它作为产品发布的机制,最终没能推出。 后来他得知 ChatGPT 只有大约 20 个人在维护,这让他既震惊又觉得很有吸引力——这意味着极高的个人影响力。于是他加入 OpenAI,进去就赶上了推理模型的冲刺,大约一个月后 o1 preview 就发布了。 为什么用 Rust 写 Codex 这是一个反直觉的决定——当时模型对 Rust 的支持并不好,业界其他 AI 编码工具基本都用 TypeScript 或 Python。但团队从第一性原理出发,认为智能体的核心需要健壮、安全、高效,而 Rust 的编译时验证特性天然适合智能体场景。同时用不同语言也强制建立了产品界面和智能体核心之间的清晰边界,避免代码耦合。事实证明 Rust 确实"很快就变得非常适合智能体开发"。 开源和模型无关的策略 Codex CLI、SDK 都是开源的,而且支持非 OpenAI 模型——这在主要 AI 实验室中是独一无二的。理由很实际:如果不开源,别人只需改十行代码就能 fork 出一个支持其他模型的版本,那还不如自己直接支持。开源的好处包括新员工入职前就已经熟悉代码库、社区贡献、以及逼迫自己靠模型和产品体验赢用户而非靠锁定。 代价也很明显:竞争对手会在你还没发布的时候就抄走你正在公开开发的功能,"确实有点刺痛";还有大量低质量 PR 需要处理。 工程文化与代码审查的变革 新员工入职后听到最多的一句话是"你问过 Codex 了吗?"——因为 Codex 在 OpenAI 内部接入了 Slack、文档、所有代码,几乎任何问题都能给出不错的回答。 代码审查正在发生质变。OpenAI 开发了专门的代码审查模型,能在逻辑推理和安全漏洞检测上达到"超人水平"——可以深入三四层依赖去发现文档错误导致的不变量违反。安全审查已经是强制自动化的,发现安全问题会直接阻止合并。一个 PR 可以当天提交、当天上线到十亿用户的 ChatGPT 上。 代码审查的角色正在从"正确性检查"转向"意图讨论"——你到底想做什么?这件事值不值得做?这种讨论不一定要围绕代码发生。 维护成本和重构的变化 维护一直是软件工程的"税",但现在大量维护工作(依赖升级、安全补丁)可以完全自动化。更重要的是,重新架构的成本也急剧下降——以前可能要花几个月甚至几年的重构,现在快得多。但好的架构设计反而更重要了:设计好"盒子"和不变量,盒子内部随便改都不影响其他部分。 Harness 与模型的关系 一个有趣的洞察:harness(工具/脚手架)总是"走在模型前面"。Codex 团队的工作本质上是为模型搭建拐杖——提醒它跑测试、保持目标一致等。然后下一代模型训练时会把这些能力内化,拐杖就可以去掉,developer message 也会越来越短。最新一代模型已经不再需要 /goal 命令来保持长期任务的专注,"你直接告诉模型去工作一周,它就真的会做到"。 Codex 与 ChatGPT 的合并 这是一个重大工程挑战:Codex 原本完全本地运行,ChatGPT 是托管云服务,两套完全不同的技术栈要统一。目标是让云端版本具备本地版本同样的能力,同时高效到能纳入 20 美元/月的 Plus 计划。ChatGPT Work 模式本质上是在云端虚拟机里运行完整的 Codex harness,机器配置强大到用户可以在里面训练模型、安装 Blender 做 3D 建模。 有趣的是,Codex 在整个合并过程中还充当了"记者"角色,因为它能访问所有 Slack 讨论和文档,记录了团队的辩论和决策过程。 Thibault 的个人用法与建议 他大量使用手机上的 ChatGPT Work,通过语音口述发送任务,定制了专属的技能和指令来生成他能高效消化的报告和幻灯片。任何问题——公众舆情、生产日志、功能使用率分析、团队动态——30 分钟内都能得到答案。周末他还会用 Codex 做代码探索和原型,"一天之内就能把脑子里的想法变成可以展示给人看的东西"。 对工程师的建议:保持深度好奇心,训练自己快速理解系统的能力("五个为什么"不断追问),以及与你服务的用户群体保持同步——如果你无法清晰表达意图,就很难做出好的工作。
显示更多
我对 Astra 的一些感受: Astra 这个模型需要的调教真的非常多,跟 5.x 的差别太大了。它更像是一个 human 而不是 engineer ,很多假设都变了。 想象一下,一个人聪明绝顶,有着无穷的知识,有着非常坚定的完成任务的信念,但是它对软件开发一无所知,它会用自己认为的最高效最直接的方法去解决当下的问题。 这就是 Astra in Coding Task。它是被当做 AGI 模型调教的,根本不就是当做coding 模型训练的,这是第一次软件工程师不是它的首要目标用户,从这里开始就跟前几代模型有本质区别。 落地到我们的实践上:提示词真的要完全重写,但不是像之前一样可以删掉更多内容。相反,如果真的是用来完成 Coding 任务,我们需要强调并且明确更多软件开发的常识和最佳实践。 我举一个简单例子:我们需要明确告诉它写下来的代码是给其他人类和 Agents 阅读的,所以可维护性和可理解性非常重要。 总结一下:软件开发已经不是模型训练中最核心的要素了,我们作为工程师需要理解并适应这个新常态
显示更多
0
36
305
27
转发到社区
AI Engineering Skills Map 系列之「使用 Coding Agent」 吴恩达老师的 AI 工程技能图谱第三篇详细展开: 1. 构建与部署 AI 应用 2. 软件工程基础 3. 使用 Coding Agent(本文主题) 4. 塑造构建方向 吴恩达老师认为:使用 Coding Agent 正在成为 AI 工程师的关键能力,而且它的演进速度比其他顶层技能都快,因为 Agent 本身在 harness 和模型两个层面同时快速迭代。因此,这项技能没有终态,只能靠持续的实验、构建和学习来维持。 # 用 Coding Agent 构建软件的通用工作流 通过访谈数十位顶尖 AI 工程师并复盘自己团队的实践,他归纳出一个一致的高层工作流,分三步: 1. 规划(Planning) 包含两部分:一是头脑风暴,可能涉及研究、实验、理解已有代码库;二是写 spec(规格说明),涵盖需求、技术设计、架构,随后生成执行计划。规划完成后还应审视计划本身:质疑关键假设,检查安全性、过度设计等问题。 2. 执行(Execution) 构建、测试、验证,关键在于把握智能体自主性与人工监督之间的平衡。一是让智能体以"校准过的自主程度"去构建;二是通过自动化和/或人工检查来验证输出。 3. 部署与监控(Deployment and monitoring) 部署可能经由 CI/CD 流水线或额外的人工关卡把关;随后用智能体观察日志、发现问题、提出并执行改进。 这个工作流有两个特别注意: 1. 它与前智能体时代的软件开发流程本质相似。真正变化的是注意力的重心:从写代码转移到决定做什么、设计架构、写 spec、验证输出。 2. 各步骤的时长弹性极大,可以省略。greenfield(从零开始)原型的 spec 可能只是一条快速写下的提示词;而有大量用户的 brownfield(存量)项目的 spec 则需要投入大量精力去撰写和验证。整个流程高度迭代,熟练的开发者知道何时该从后面的步骤退回前面:验证失败就引导智能体重建修复;监控发现问题就让智能体更新系统并重新部署。 # 五项关键技能 1. 指挥工作流(Directing the workflow) 知道如何走完上述每一步,并决定每一步投入多少人力、多少智能体算力,以及何时回退迭代。这背后是对速度、成本、技术风险、人力投入四者权衡的深刻理解,具体体现在:前期研究和规划做到什么程度、哪些关键工作保留人类所有权、如何选择架构、规划产物(如 spec)写多细、如何把工作拆解成可验证的步骤。 2. 赋予智能体自主性(Enabling agent autonomy) 这一节内容最密集,可拆成四个决策点: · 自主程度:盯着它交互式往返,还是委托一大块工作?何时设定明确目标让它循环直到成功? · 上下文管理:构建过程会经历不同阶段,要判断何时把关键经验、用户反馈、假设(包括中途变化的假设)记录下来供智能体下游使用。 · 并行化:何时把任务拆解后让多个智能体并行,由人或更高层的智能体来编排;以及如何在多个并发会话之间分配人的注意力。 · 安全运行:设置权限、对高风险动作设关卡,在保持开发速度的同时限制泄露、数据丢失等损害。 3. 审查工作成果(Reviewing the work) 出发点是一个基本事实:智能体的输出是不确定的。我们事先不知道它会想出什么好主意,也不知道它会埋下什么 bug。因此审查和验证是拿到想要结果、并在偏离时纠正的关键环节。 具体手段包括: · 设计与任务匹配的测试和验证,按需结合行为验证和功能验证。 · 测试用户流程,可让智能体提供截图作为成功或失败的证据。 · 对定性/行为性评估,可使用评估集(eval sets),可能配合 LLM-as-a-judge。 · 决定测试的自动化程度。某些工作流会把测试完全自动化,让智能体能自行检查、自知何时完成。但必须评估这些测试是否真正对应你的目标,不对应就要演进它们。 · 使用智能体代码审查,运行 AI 驱动的安全和架构审计。 · AI 审查不够时,审慎地插入人工审查——主要审查代码行为,较少审查代码本身——同时探索进一步自动化的可能。 · 验证部署,并用智能体把监控和事故管理运营起来。 这里有一个值得注意的判断:人工审查的对象主要是"代码行为"而非"代码",这反映了注意力重心的转移。 4. 定制智能体及其环境(Customizing the agent and its environment) 目标是让智能体高效获取所需上下文、访问工具、正确高效地构建。具体包括: · 集成 skills、插件、MCP 服务器,并在不再必要时(如新模型让旧 skill 过时)剪除它们。 · 用 hooks 自动化开发流程中可重复的部分,如触发自动代码审查或 CI/CD。 · 维护常驻上下文(AGENTS.md、CLAUDE.md),记录代码库信息、关键架构假设、代码风格、数据访问模式。 · 跨会话、跨并行智能体保存状态,随时间积累智能体的经验,比如通过运行后复盘记录哪些做法有效、哪些无效。 · 建立一致的约定和结构,让代码库对智能体可导航;定期清理智能体产生的技术债。 · 团队协作时,考虑如何在不同开发者的智能体之间协调上下文。 5. 编码智能体基础原理(Coding agent foundations) 要做好上述所有决策,需要理解智能体的工作机制:如何做代码库搜索/检索、如何管理上下文窗口、不同操作(增加工具调用、MCP 服务器等)如何影响上下文、智能体与子智能体如何交互、智能体是如何通过在 LLM 外包裹 harness 构建出来的。 这种理解让智能体不再是黑箱,帮助你识别典型失败模式: · 把简单方案过度设计 · 因缺乏显式验证流程而丧失严谨性 · 未达目标就停下 · 可能破坏文件或生产数据的动作 同时也帮助你推断智能体的状态、给出正确的指令或上下文来引导它,并在监控运行时更早发现它偏离轨道、需要介入。 # 对行业叙事的批评 结尾处吴恩达老师有一段针对性很强的观点。他认为社交媒体对如何使用编码智能体的描述往往过度简化。让智能体自主运行数小时、消耗数百万甚至数千万 token 有时确实有用,但目前超长时程任务的实际效用——尤其是相对成本而言——被夸大到超出现实。 他的结论是:最有效的编码智能体使用是一个复杂、高度迭代的过程,能够以高水平判断力适时介入,效果远好于放手长跑。
显示更多
0
25
42
10
转发到社区
CS 329Z: Engineering AI Agents Stanford / Fall 2026 @stanfordnlp 课程定位:从"模型"到"系统"的工程学 覆盖:简单 LLM 流水线 → 复合 AI 系统 → 自主 Agent。三位讲师的背景也高度互补: @Diyi_Yang(斯坦福 NLP 教授,人机交互与社会计算方向) @michaelryan207(DSPy 核心贡献者,自动评估 AutoMetrics 作者) @jyangballin(SWE-agent / SWE-bench / SWE-smith 作者,软件工程 Agent 领域最重要的研究者之一) # 课程主线:三大工程挑战 贯穿全课的三个核心问题——分解(decomposition)、数据(data)、评估(evaluation)。11 周的内容基本围绕这三条线展开,可以分为五个模块: 模块 1:构建基元(Week 2–3) · LLM 作为构建材料:API/SDK(litellm)、结构化输出、约束生成、解码策略、test-time compute、上下文工程、模型选型与成本/延迟权衡 · RAG:embedding、向量库、分块策略、混合检索、cross-encoder 与 ColBERT 后期交互 · 工具调用:函数调用 API、MCP(Model Context Protocol)、工具设计、代码沙箱、错误处理与重试 模块 2:框架与设计模式(Week 3–5) · 框架层:DSPy(signature / module / optimizer)、LangChain/LangGraph、LlamaIndex,重点是"框架抽象了什么 vs. 你手写了什么" · 设计模式:workflow vs. agent 的分类学,五种可组合 workflow 模式,ReAct / plan-and-execute / reflection,"scaffold(脚手架)本身就是设计决策" · 记忆架构:短期/长期记忆、记忆作为工具动作、文件系统作为外化记忆、跨 Agent 记忆(MemGPT、Mem0、Generative Agents) · 多 Agent 系统:编排模式、handoff 与状态传递,以及一个很有态度的对照阅读——既读 AutoGen,也读《Why Do Multi-Agent LLM Systems Fail?》和 Neubig 的《Don't Sleep on Single-agent Systems》 模块 3:优化(Week 5) · 从提示词到微调的全景:GEPA、MIPROv2、OPRO、TextGrad(提示优化);LoRA/QLoRA、蒸馏、RLHF/DPO(权重优化);test-time scaling(推理算力) · 核心问题是决策框架:什么时候优化 prompt、什么时候优化 weights、什么时候堆推理算力 模块 4:数据与评估(Week 6–8)——最有分量的部分 · 数据:trace、demonstration、feedback 三类数据;训练数据 vs. 评估数据;数据飞轮;合成数据;从 Agent 轨迹构建数据集(SWE-smith) · 评估基础:为什么 eval 难;4 元组框架(request / environment / stopping criteria / scorer);好 benchmark 的性质;tinyBenchmarks · 评估基础设施:三类 grader、LLM-as-judge 的 prompt 设计与已知偏差、pairwise vs. pointwise、非确定性指标 pass@k vs. pass^k、harness 设计 模块 5:安全与前沿(Week 8–11) · 安全:工具访问的隐私风险、prompt injection(含间接注入)、红队、沙箱与权限模型、输出护栏、human-in-the-loop · Coding Agent:SWE-agent、Claude Code、OpenHands 的端到端架构对比 · 主动式 Agent:从 reactive 到 proactive,General User Models(GUM)、Next Action Prediction,以及"Agent 何时应主动、何时应等待"的 mixed-initiative 问题 · 开放问题:多模态/web/计算机使用 Agent、科学 Agent、长时运行架构、生产可观测性(tracing、monitoring、成本管理) # 作业设计:一手建、一手评 HW1:从零构建 Agent 系统(10%) 给定论文库,构建能检索并推理回答科学问题的 Agent。 · Part A:只用 litellm 手写 RAG + 工具调用 + ReAct 式 Agent 循环 · Part B:用 DSPy 重建关键组件,并反思框架抽象了什么 HW2:评估一个 Agent(10%) 给定一个预构建 Agent,设计完整评估套件:代码型 grader、至少一个 LLM-as-judge、用 4 元组框架构建 benchmark 任务、错误分析。
显示更多
0
23
148
30
转发到社区
科技行业的经典职位“改名术”: 销售 → GTM 市场营销 → 增长 自由职业者 → 兼职高管 行政助理 → 幕僚长 业务拓展 → 合作伙伴关系 客户支持 → 客户成功 软件工程师 → 技术团队成员
显示更多