我制作了一架 3D 打印的垂直起降无人机,可以飞行 130 英里

Tsung Xu 分享了他制作的一款 3D 打印的 VTOL(垂直起降)无人机,该无人机单次充电可飞行 3 小时,飞行里程可达 130 英里,这使其成为全球续航里程和耐力最长的 3D 打印 VTOL 无人机之一。Tsung Xu 表示,这是他到目前为止最自豪的项目,甚至得到了 Reid Hoffman 的高度评价,被比作是像莱特兄弟开创动力飞行一样的 “超级代理行动”。

#3D #无人机 #创造

I made a 3D printed VTOL drone that can fly 130 miles

我如何使用 Agent 编程

David Crawshaw 分享了他如何将编程经验适应到与能够对话的计算机世界中,这是他关于自我教育系列的第二部分。David 首先定义了“agent”一词在 LLM(大型语言模型)背景下的含义:一个 agent 是一个包含 LLM 调用的 for 循环,能够执行命令并查看输出,而无需人工干预。通过这种方式,agent 成为一种反馈驱动的 LLM,能够显著提升编程能力。

David 通过“白板编程”的类比说明了 LLM 在没有外部工具支持时的局限性。例如,在白板上编写代码时,程序员需要依赖记忆来处理复杂的编码任务,而没有编译器反馈、文档查询等辅助手段。类似地,agentless LLM 编写代码时也面临类似挑战。然而,当 LLM 获得更多工具支持时,其表现会大幅提升。例如,agent 可以调用编译器查看错误并修复、使用 grep 和 cat 查看项目文件、修改文件并运行测试等。这些工具使得 agent 能够更好地处理 API 调用、减少语法错误、优化依赖管理以及生成测试代码。

David 还提到,agent 的缺点在于时间成本。一个简单的请求可能会引发大量中间步骤和工具调用,导致整个过程耗时数分钟。此外,目前使用 agent 进行编程的成本较高,但随着硬件性能的提升,这一问题有望得到解决。

David 通过两个实际案例展示了 agent 的强大功能。第一个案例是实现 GitHub App 认证。agent 在实现过程中表现出色,但在安全性方面存在漏洞,允许未经授权的用户访问某些仓库。经过修复后,agent 还解决了性能问题,优化了代码。第二个案例是处理 SQL 数据库中 JSON 数据的约定。agent 在处理这种特殊风格的 SQL 时遇到了困难,但通过在 SQL 模式文件中添加描述性注释,agent 的行为得到了显著改善。

David 进一步探讨了 agent 在编程中的价值,尤其是在维护现有产品方面。尽管有人认为代码生成只是编程成本的一小部分,但 agent 通过其工具集能够读取和修改代码,甚至可以删除代码,从而推动项目的变更。尽管 agent 当前可能还不足以处理大型项目,但其发展方向是积极的。

David 还讨论了 agent 的出现背景,指出其背后的关键在于模型训练过程的优化。2023 年的 LLM 无法有效驱动 agent,而 2025 年的模型已经针对这一功能进行了优化。目前,agent 的使用主要集中在 IDE 或开发机器上的本地仓库中,但这种方式存在安全风险和效率问题。为了解决这些问题,David Crawshaw 正在探索使用容器技术来运行 agent,从而实现并行化操作并提高效率。

David Crawshaw 提出了关于 IDE 在 agent 环境下的未来形态的思考。例如,是否可以通过容器化的方式直接从 GitHub 获取代码并生成分支或拉取请求,而无需传统 IDE 的介入。同时,David Crawshaw 强调了在与 LLM 技术相关的学习和实验过程中保持好奇心和谦逊的重要性,因为这一领域的变化迅速,许多现有的编程规范和工具都需要重新审视和调整。

#AI #Agents #实践

crawshaw - 2025-06-08

一台收据打印机治好了我的拖延症

Laurie Herault 分享了其通过游戏化机制克服拖延症并提升生产力的独特方法。Laurie Herault 患有注意力缺陷障碍(ADHD),多年来一直受拖延症困扰,尝试了多种方法提升生产力,但效果有限。他发现,自己能够长时间专注地玩游戏,却在处理工作任务时拖延,这表明大脑具备专注能力,关键在于如何将游戏的成瘾机制应用到任务中。

Laurie 分析了视频游戏的成瘾机制,以第一人称射击游戏(FPS)为例,指出其核心是一个简单循环:瞄准 → 射击 → 击中或未击中,这一循环被称为“游戏循环”。游戏循环的快速重复和即时反馈是其成瘾的关键。现代 FPS 游戏通过视觉、声音等多种方式增强反馈,例如击中敌人时出现的血迹、伤害数字、死亡动画等。这些反馈能够刺激大脑释放多巴胺,使玩家进入“心流”状态,从而全神贯注、忘却时间。此外,游戏易于开始,无需太多动力或自律。

基于这一机制,Laurie 提出了“任务游戏化”的方法。首先,将任务分解为更小的子任务,例如将“打扫房间”分解为“整理床铺”“清洁地板”等具体步骤,增加任务循环的频率。其次,通过使用便利贴记录任务,完成任务后将其揉成一团扔进透明罐子,增强反馈感。这种物理动作和视觉效果能够让人更直观地感受到任务的完成进度,从而减少拖延。