#
智能体框架介绍

欢迎来到第二单元，在这里我们将探索不同的智能体框架（agentic frameworks），这些框架可用于构建强大的智能体应用。

我们将学习：

- 在单元 2.1：smolagents
- 在单元 2.2：LlamaIndex
- 在单元 2.3：LangGraph

让我们开始吧！🕵

##
何时使用智能体框架

构建围绕大语言模型（LLMs）的应用时，并不总是需要智能体框架。它们在工作流中提供了灵活性，可以高效地解决特定任务，但并非总是必需的。

有时，预定义的工作流足以满足用户请求，并且没有真正需要智能体框架。如果构建智能体的方法很简单，比如一系列提示，使用纯代码可能就足够了。优势在于开发者将完全控制和理解他们的系统，没有抽象层。

然而，当工作流变得更加复杂时，例如让大语言模型调用函数或使用多个智能体，这些抽象开始变得有用。

考虑到这些想法，我们已经可以确定对一些功能的需求：

- 一个驱动系统的大语言模型引擎。
- 智能体可以访问的工具列表。
- 用于从大语言模型输出中提取工具调用的解析器。
- 与解析器同步的系统提示。
- 一个记忆系统。
- 错误日志和重试机制以控制大语言模型的错误。

我们将探讨这些主题在各种框架中如何解决，包括 `smolagents`、`LlamaIndex` 和 `LangGraph`。

##
智能体框架单元

框架 | 描述 | 单元作者
--- | --- | ---
smolagents | 由 Hugging Face 开发的智能体框架。 | Sergio Paniego - HF - X - Linkedin
Llama-Index | 将上下文增强智能体带至生产端的端到端工具 | David Berenstein - HF - X - Linkedin
LangGraph | 允许对智能体进行有序协调的智能体 | Joffrey THOMAS - HF - X - Linkedin

< > Update on GitHub