大型语言模型 (LLM) 正在以前所未有的速度改变软件开发的格局。Andrej Karpathy 在 Y Combinator AI Startup School 的演讲 “软件正在改变 (再次)” 引发了人们对 LLM 深远的思考。本文将以 Karpathy 的演讲为起点,探讨 LLM 如何从最初的工具,演变为类似操作系统的存在,最终可能进化为能够自主构建和优化自身及其他软件的强大生态系统,并深入分析这一演变过程中的关键技术,例如 Letta 团队的 MemGPT 以及“睡眠时间计算”,并展望 LLM 与 Software 2.0 的融合。

LLM:AI 新电力与操作系统

Andrew Ng 将 AI 比作“新电力”,而 LLM 正是这一比喻的完美诠释。LLM 就像电力公司一样,需要大量的资本支出 (CAPEX) 来训练模型,并投入运营成本 (OPEX) 通过标准化的 API 提供智能服务。用户通过计量访问的方式使用 LLM,对低延迟、高可用性和一致的质量有极高的要求,这与电网对电压稳定性的要求如出一辙。OpenRouter 就像一个转换开关,可以在不同的 LLM 服务提供商之间切换,应对诸如 OpenAI 宕机之类的“智能断电”情况。Karpathy 进一步指出,LLM 与操作系统 (OS) 有着惊人的相似之处。早期,人们通过分时的方式使用计算机,因为没有自己的操作系统。类似地,现在许多人都在共享使用 LLM 服务。然而,趋势是拥有自己的 LLM。这种类比揭示了 LLM 作为基础架构的重要性,它为各种应用和服务提供了运行环境和通用接口。

LLM 的“精神”:能力与局限

Karpathy 将 LLM 比作“人类灵魂”,这种拟人化的描述有助于我们理解 LLM 的特性。LLM 拥有百科全书般的知识储备和记忆,能够进行复杂的推理和规划。然而,它们也存在一些固有的局限性,例如会产生幻觉、表现出不稳定的智能水平,以及遭受顺行性遗忘症的困扰。此外,LLM 也容易受到欺骗。尽管存在这些局限性,LLM 的强大能力仍然令人印象深刻。例如,它们可以执行文本/代码生成、机器翻译和命名实体识别等任务。更重要的是,LLM 具有调用工具的能力,这使得它们能够与外部世界进行交互,完成更加复杂的任务。

工具调用:LLM 走向自主的关键

LLM 能够理解并正确调用工具是一项重大突破。这就像 LLM 操作系统有了驱动程序。没有工具调用能力,LLM 的输出只能是文本、图像甚至视频。现在,LLM 可以使用外部应用程序和程序 (Software 1.0),发送 API 请求,甚至点击按钮。这一能力赋予了 LLM 处理更广泛任务的能力,并推动了部分自主应用程序 (例如 Copilot 和 Cursor for X) 的发展。然而,仅仅依赖 Software 1.0 工具还不够。我们需要进一步探索如何让 LLM 使用 Software 2.0 工具,甚至让它们自主构建 Software 2.0 工具。

MemGPT 与睡眠时间计算:扩展 LLM 的记忆与能力

Letta 团队的研究成果表明,利用 LLM 的工具调用能力来管理自身磁盘是一项革命性的进步。LLM 的“内存”受到上下文窗口大小的限制。MemGPT 允许 LLM 使用自编辑记忆工具来管理自己的文件系统,有效地扩展了 LLM 的记忆能力。此外,Letta 还发明了“睡眠时间计算”,利用 LLM 的空闲时间来处理文件系统,进一步提升了效率。睡眠时间计算是一种新型的扩展 AI 能力的方式:让模型在空闲时间“思考”。这种方式避免了测试时的扩展计算瓶颈,为 LLM 的长期自主学习和进化提供了可能。MemGPT 的核心思想是为 LLM 配备一个可管理的磁盘,LLM 可以在其中存储长期记忆和知识,并使用特定的工具来访问和修改这些信息。这些工具可以被视为 LLM 的“动作脚本”,LLM 可以根据需要检索和执行这些脚本。

自主工具生成:LLM 的下一步进化

受到 Letta 自编辑记忆的启发,我们可以进一步设想,让 LLM 分析用户请求并将其转化为有用的实用程序 (或工具),然后将其存储在自己的工具箱中。这就像让 LLM 不断学习和积累经验,并根据需要创建新的工具来解决特定的问题。更进一步,我们可以让 LLM 使用 Software 2.0 工具,例如连接到 Hugging Face 模型图谱,甚至让 LLM 自主构建 Software 2.0 工具。想象一下,LLM 定义目标任务并训练自己的神经网络,就像一位资深的 AI 工程师一样。这将是 LLM 发展的下一个阶段,是智能体 AI (Agentic AI) 的一次重大飞跃,我们不妨称之为“智能体衍生 (Spawning in Agentic AI)”。

Software 2.0 的融合:通往 AGI 的桥梁

LLM 与 Software 2.0 的融合是通往通用人工智能 (AGI) 的重要一步。Software 2.0 指的是使用神经网络来定义软件的行为。传统软件 (Software 1.0) 是由人类编写的明确指令,而 Software 2.0 是通过训练数据来学习的。将 LLM 与 Software 2.0 相结合,可以创建更加智能、灵活和适应性强的软件系统。例如,我们可以让 LLM 使用 Software 2.0 工具来优化自身的性能,或者让 LLM 构建能够解决特定问题的 Software 2.0 模型。这种融合将极大地加速 AI 的发展,并为我们带来前所未有的可能性。Karpathy 提出的软件 3.0 理论,正是连接 LLM 和 AGI 的桥梁。通过 LLM 进行“氛围编码”的强大系统,将不仅仅局限于 LLM 本身。

结论:拥抱 LLM 驱动的软件未来

LLM 正在以惊人的速度改变软件开发的格局。从最初的工具,到类似操作系统的存在,再到能够自主构建和优化自身及其他软件的强大生态系统,LLM 的进化之路充满着无限的可能。我们需要深入理解 LLM 的特性和局限性,积极探索 LLM 与 Software 2.0 的融合,并拥抱 LLM 驱动的软件未来。MemGPT 和“睡眠时间计算”等技术,为扩展 LLM 的能力提供了新的思路。而让 LLM 自主生成和使用工具,将进一步推动 LLM 的发展。让我们共同期待,LLM 将如何改变我们构建和使用软件的方式,并最终引领我们走向 AGI 的未来。在这个过程中,理解 LLM 的工具调用能力,以及如何通过诸如 MemGPT 和睡眠时间计算等技术来增强其能力,至关重要。 展望未来,LLM 不仅能理解现有工具,还能创造并精进新的软件,最终实现更高级别的自主性和智能。