Letta:AI代理技术栈市场地图

Letta:AI代理技术栈市场地图

根据硅谷科技评论数据库(svtr.ai),在AI代理领域全球有50多家高潜初创企业获得知名机构投资(详情见文末附录),其中Letta是最近备受关注的一家AI代理框架企业。

Letta,2024年成立于美国加州伯克利,帮助人工智能模型记住用户和对话。完成1000万美元融资,投资方为Felicis的Astasia Myers、Google的Jeff Dean、Hugging Face的Clem Delangue、Runway的Cristóbal Valenzuela、Anyscale的Robert Nishihara等。本轮估值为7000万美元,累计融资1000万美元。

这是伯克利天空计算实验室的孵化项目,也是流行的 MemGPT 开源项目的商业实体。伯克利的 Sky 计算实验室由著名教授、Databricks 联合创始人 Ion Stoica 领导,是 RISELab 和 AMPLab 的后代,这两个实验室催生了 Anyscale、Databricks 和 SiFive 等公司。特别是Sky Lab,诞生了许多流行的开源大语言模型( LLM )项目,例如Gorilla LLM 、vLLM和LLM结构化语言SGLang。 LangChain 可能是其最著名的竞争对手。

视频

Charles Packer,Letta联合创始人兼CEO。曾是Berkeley人工智能研究院(BAIR)研究生研究员,曾是加州大学伯克利分校研究人员,也曾在加州大学圣地亚哥分校担任CSE课程的辅导员和系统管理员。他还曾是华盛顿州立大学NSF REU研究员。Charles在加州大学伯克利分校获得计算机科学博士学位,并在加州大学圣地亚哥分校获得计算机科学学士学位,毕业时获得最高荣誉。

🖼️
图片 2 1706 × 854px

📷 图片包含在完整版文章中,点击文末按钮查看

最近公司公布2024年最新的“代理栈”(Agent Stack),将 AI 代理堆栈分为三个关键层:代理托管/服务(agent hosting/serving)、代理框架(agent frameworks)以及LLM模型和存储(LLM models & storage)。

这套代理栈来源于其过去一年多在开源AI领域的实践,以及过去7年以上在AI研究中的积累。它不仅试图更真实地反映开发者的实际需求与行为,也开发者群体提供一个实用的参考框架。

难能可贵的是,Letta推出的代理栈并不仅仅是对现有工具的整理,更关注它们在实际应用中的价值与协作方式。

🖼️
图片 3 5100 × 6122px

📷 图片包含在完整版文章中,点击文末按钮查看

在2022年和2023年,我们见证了LLM框架与SDK的崛起,例如LangChain(2022年10月发布)和LlamaIndex(2022年11月发布)。与此同时,也有多种“标准”平台被广泛采用,用于通过API消费LLM或进行自部署的LLM推理,例如vLLM和Ollama。

进入2024年,AI“代理”(Agents)以及更广义上的复合系统(Compound Systems)成为了行业关注的核心。这种转变令人瞩目。尽管“代理”一词在人工智能领域已有数十年的历史(尤其是在强化学习领域),但在后ChatGPT时代,它的定义变得更加宽泛。如今,“代理”通常指大语言模型(LLMs)在自主环境中执行任务,具体表现为生成动作(如工具调用)并结合工具的使用进行自动化运行。

从LLMs向代理系统的转变,意味着需要整合工具使用、自主执行和记忆管理这三大关键能力。实现这一转变的需求催生了全新的代理技术栈。这套栈不仅满足了对复杂操作的需求,也推动了AI代理生态系统的快速发展。

这种进化表明,AI技术正在从单一的语言生成能力,向更复杂、更动态、更智能的任务执行框架迈进,为开发者和用户带来了前所未有的可能性。

与基础的LLM聊天机器人相比,AI代理的开发在工程上复杂得多。原因在于代理需要处理以下两大核心挑战:

正因为如此,AI代理栈的结构与传统的LLM栈有着显著差异。下文是当前AI代理栈的关键组成部分的逐层解析:

🖼️
图片 4 2607 × 1157px

📷 图片包含在完整版文章中,点击文末按钮查看

在AI代理的核心是大语言模型(LLM)。为了让代理能够使用这些模型,模型需要通过推理引擎提供服务,通常是通过付费API服务运行。主流模型服务选项包括以下4大类:

OpenAIAnthropic 是目前封闭式API推理服务的领先提供商,它们提供高性能的专属前沿模型。这些服务通常适合需要高质量输出和强大支持的商业级应用。

Together.AIFireworksGroq 提供基于开放权重模型(例如Llama 3)的付费API服务。这些平台的优势在于结合了开放模型的灵活性和付费服务的便利性。

对于需要在本地部署模型的用户,以下解决方案最受欢迎:

在个人电脑上运行模型的用户(如Apple MacBook的M系列芯片)中,以下选项很受欢迎:

🖼️
图片 5 2060 × 1127px

📷 图片包含在完整版文章中,点击文末按钮查看

存储是状态化代理(stateful agents)的核心构件之一,支持代理的持续状态管理,如对话历史、记忆以及用于检索增强生成(RAG)的外部数据源。对于代理来说,存储解决方案的选择直接影响其处理复杂任务的能力和效率。主流存储工具包括以下两类:

向量数据库是代理存储的核心,特别适用于存储和检索大规模嵌入数据。以下是一些常见的选择:

尽管PostgreSQL是一种传统的关系型数据库,它通过pgvector扩展实现了向量搜索功能,使其在现代AI代理应用中焕发新生:

🖼️
图片 6 4641 × 941px

📷 图片包含在完整版文章中,点击文末按钮查看

AI代理与传统AI聊天机器人的主要区别之一在于代理可以调用“工具”(或称“函数”)。这种能力使代理能够执行超出文本生成范围的任务,从而显著提升其功能性和适应性。代理工具执行不是由LLM提供商本身完成的 - LLM仅选择要调用的工具以及要提供的参数。支持任意工具或工具中的任意参数的代理服务必须使用沙箱(例如ModalE2B )来确保安全执行。

OpenAI定义了一种JSON模式,成为代理调用工具的通用接口标准。由于这一标准化,工具可以在不同框架中实现互操作性。例如,Letta代理可以调用LangChain、CrewAI或Composio提供的工具。

这一互操作性推动了通用工具生态的形成,一些常用工具提供了特定功能:

🖼️
图片 7 4593 × 1067px

📷 图片包含在完整版文章中,点击文末按钮查看

代理框架是AI代理栈的核心,负责协调LLM调用并管理代理的状态。不同框架在状态管理、上下文窗口的构建、多代理通信、记忆处理,以及对开放模型的支持等方面有各自的设计特点。代理框架包括5大核心功能:

大多数框架支持将代理的状态(如对话历史、代理记忆、执行阶段)序列化为文件(JSON、字节流等),以便稍后加载。例如,Letta使用数据库(如消息表、代理状态表、记忆块表)来持久化状态,无需显式序列化。这种方法使得状态查询(如按日期查找过去消息)更加便捷。

状态管理的设计直接影响代理系统的扩展能力(例如处理更长的对话历史或更多代理实例)以及状态访问和修改的灵活性。

🖼️
图片 8 2849 × 1176px

📷 图片包含在完整版文章中,点击文末按钮查看

目前,大多数代理框架的设计局限于Python脚本或Jupyter Notebook环境,代理在这些环境中运行,但无法超越其所在的开发上下文。然而,随着代理技术的不断发展,代理服务化(Agent-as-a-Service)的未来趋势愈发明确:将代理部署到本地或云端基础设施,通过REST API提供访问服务。

类似于OpenAI的ChatCompletion API成为LLM服务的行业标准,预计未来会出现一个统一的Agents API标准。

🖼️
图片 9 1908 × 3218px

📷 图片包含在完整版文章中,点击文末按钮查看

https://www.letta.com/blog/ai-agents-stack