用于构建自主 AI 智能体的 Python 框架,支持研究、规划、编码与执行任务,内置记忆与 RAG。
huggingface/smolagents
一个极简的 Python 智能体库,让 AI 智能体以代码形式编写并执行动作。
- Star
- 29,943
- Fork
- 3,111
- 未关闭 Issue
- 974
- 最近提交
- 14天前
这是什么?
smolagents 是一个用于构建大模型智能体的小型 Python 库。其核心组件 CodeAgent 以 Python 代码片段的形式编写每一步动作,工具调用因此变成普通的函数调用,智能体可以在一步中串联多个工具。库本身保持精简,主要的 agents 模块不足 1000 行,开发者可以直接阅读和修改源码。
该库与模型无关,可以运行本地 transformers 或 Ollama 模型、通过 Hugging Face 推理服务商调用的模型、兼容 OpenAI 接口的服务,并通过 LiteLLM 接入数百种模型,包括 Azure OpenAI 和 Amazon Bedrock。工具可以来自 MCP 服务器、LangChain、Hugging Face Space 或 Hub,智能体和工具也可以推送到 Hub 或从中加载。
由于智能体生成的代码可能带来安全风险,项目建议在 E2B、Modal、Blaxel 或 Docker 等沙箱环境中运行。内置的本地 Python 执行器明确不是安全边界。库中还提供基于 JSON 工具调用的 ToolCallingAgent,并附带 `smolagent` 和 `webagent` 命令行工具。
核心功能
- 01CodeAgent 以 Python 代码编写动作,工具调用即函数调用。
- 02支持本地 transformers 与 Ollama 模型、Hugging Face 推理服务商、兼容 OpenAI 的接口以及 LiteLLM。
- 03可在 E2B、Modal、Blaxel 或 Docker 等沙箱中执行生成的代码。
- 04可从 MCP 服务器、LangChain 和 Hugging Face Space 导入工具。
- 05支持通过 Hugging Face Hub 分享智能体和工具。
- 06提供 smolagent 与 webagent 命令行工具。
适用场景
- 快速搭建一个在单次运行中调用多个网页或 API 工具的智能体原型。
- 开发需要多步推理的研究或网页浏览助手。
- 用开源模型试验智能体工作流。
- 学习或研究基于代码的智能体与 JSON 工具调用智能体的区别。
快速上手
- 1
安装带默认工具集的软件包
pip install "smolagents[toolkit]" - 2
定义带工具和模型的 CodeAgent 并运行
使用前须知
- 安全运行智能体代码需要外部沙箱(如 E2B、Blaxel、Modal 或 Docker);内置的 LocalPythonExecutor 不是安全边界。
- 默认示例模型托管在 Hugging Face 上,通常需要服务提供方账户或 API 密钥。
标签
常见问题
- smolagents 是什么?
- 一个极简的 Python 智能体库,让 AI 智能体以代码形式编写并执行动作。 smolagents 是一个用于构建大模型智能体的小型 Python 库。其核心组件 CodeAgent 以 Python 代码片段的形式编写每一步动作,工具调用因此变成普通的函数调用,智能体可以在一步中串联多个工具。库本身保持精简,主要的 agents 模块不足 1000 行,开发者可以直接阅读和修改源码。
- smolagents 可以免费使用吗?用的什么许可证?
- smolagents 以 Apache-2.0 许可证开源。用于商业产品前,请先确认许可证条款。
- smolagents 还在维护吗?
- 活跃维护中。smolagents 最近一次提交是在 2026年10月6日。
- smolagents 适合用来做什么?
- 快速搭建一个在单次运行中调用多个网页或 API 工具的智能体原型。 开发需要多步推理的研究或网页浏览助手。 用开源模型试验智能体工作流。 学习或研究基于代码的智能体与 JSON 工具调用智能体的区别。
- smolagents 怎么安装和运行?
- 安装带默认工具集的软件包: pip install "smolagents[toolkit]" 定义带工具和模型的 CodeAgent 并运行
- 在哪里获取 smolagents?
- 源代码和安装说明在 GitHub 上:https://github.com/huggingface/smolagents
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
开源 Python 框架,用于编排基于角色的自主 AI 智能体(Crews)和事件驱动的工作流(Flows)。
开箱即用的 Python 智能体框架,基于 LangGraph,适合长链路多步骤任务。
一个轻量的 Python 多智能体工作流框架,支持工具调用、任务移交、护栏、会话与追踪,可接入 OpenAI 及 100 多种其他 LLM。
用于在 Python、.NET 和 Java 中构建 AI 智能体与多智能体系统的开源 SDK。
开源的 Python 与 TypeScript AI 智能体开发 SDK,支持工具调用、MCP、记忆与多模型切换。