リサーチ、計画、コーディング、タスク実行を行う自律型AIエージェントを、メモリ、RAG、100以上のLLMプロバイダー対応で構築できるPythonフレームワーク。
huggingface/smolagents
Pythonコードでアクションを記述・実行するAIエージェントを構築するための、軽量なPythonライブラリ。
- スター
- 29,943
- フォーク
- 3,111
- 未解決の Issue
- 974
- 最終コミット
- 14 日前
これは何?
smolagentsは、LLMを活用したエージェントを構築するための軽量なPythonライブラリです。中核となるCodeAgentは、各アクションをPythonのスニペットとして記述するため、ツール呼び出しは通常の関数呼び出しになり、1つのステップで複数のツールを連携させられます。エージェントのロジックは意図的にコンパクトに保たれており、主要なagentsモジュールは1,000行未満です。そのため、開発者はソースを直接読んで変更できます。
このライブラリは特定のモデルに依存しません。ローカルのtransformersモデルやOllamaモデル、Hugging Faceの推論プロバイダー経由で提供されるモデル、OpenAI互換エンドポイントのほか、Azure OpenAIやAmazon Bedrockを含む数百のモデルをLiteLLM経由で実行できます。ツールはMCPサーバー、LangChain、Hugging Face Spaces、Hubから利用でき、エージェントやツールをHubに公開したり、Hubから読み込んだりできます。
エージェントが生成したコードは危険を伴う可能性があるため、E2B、Modal、Blaxel、Dockerなどのサンドボックスで実行することをプロジェクトは推奨しています。組み込みのローカルPython executorは、セキュリティ境界ではないことが明示されています。JSON形式のツール呼び出しを使うToolCallingAgentも利用でき、パッケージには`smolagent`と`webagent`のCLIツールが含まれています。
主な機能
- 01CodeAgentはアクションをPythonコードで記述し、ツールを関数呼び出しとして実行します。
- 02ローカルのtransformersモデルやOllamaモデル、Hugging Faceのプロバイダー、OpenAI互換API、LiteLLMに対応しています。
- 03生成コードをE2B、Modal、Blaxel、Dockerなどのサンドボックスで実行できます。
- 04MCPサーバー、LangChain、Hugging Face Spacesからツールを取り込めます。
- 05Hugging Face Hubを通じてエージェントやツールを共有できます。
- 06smolagentとwebagentのCLIを備えています。
ユースケース
- 1回の実行で複数のWebツールやAPIツールを呼び出すエージェントのプロトタイピング。
- 複数ステップの推論が必要な、調査・ブラウジングアシスタントの構築。
- エージェント型ワークフローでのオープンソースモデルの実験。
- コードベースのエージェントとJSON形式のツール呼び出しを使うエージェントの違いを教えたり、学んだりすること。
クイックスタート
- 1
デフォルトのツールキットでパッケージをインストールする
pip install "smolagents[toolkit]" - 2
ツールとモデルを指定してCodeAgentを定義し、実行する
使う前に知っておきたいこと
- エージェントのコードを安全に実行するには、E2B、Blaxel、Modal、Dockerなどの外部サンドボックスが必要です。組み込みのLocalPythonExecutorはセキュリティ境界ではありません。
- デフォルトのデモモデルはHugging Faceでホストされているため、通常はプロバイダーのアカウントまたはAPIキーが必要です。
トピック
よくある質問
- smolagents とは?
- Pythonコードでアクションを記述・実行するAIエージェントを構築するための、軽量なPythonライブラリ。 smolagentsは、LLMを活用したエージェントを構築するための軽量なPythonライブラリです。中核となるCodeAgentは、各アクションをPythonのスニペットとして記述するため、ツール呼び出しは通常の関数呼び出しになり、1つのステップで複数のツールを連携させられます。エージェントのロジックは意図的にコンパクトに保たれており、主要なagentsモジュールは1,000行未満です。そのため、開発者はソースを直接読んで変更できます。
- smolagents は無料で使えますか?ライセンスは?
- smolagents は Apache-2.0 ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- smolagents は今もメンテナンスされていますか?
- 活発にメンテナンス中。smolagents の最終コミットは 2026年10月6日 です。
- smolagents は何に使えますか?
- 1回の実行で複数のWebツールやAPIツールを呼び出すエージェントのプロトタイピング。 複数ステップの推論が必要な、調査・ブラウジングアシスタントの構築。 エージェント型ワークフローでのオープンソースモデルの実験。 コードベースのエージェントとJSON形式のツール呼び出しを使うエージェントの違いを教えたり、学んだりすること。
- smolagents のインストール方法は?
- デフォルトのツールキットでパッケージをインストールする: pip install "smolagents[toolkit]" ツールとモデルを指定してCodeAgentを定義し、実行する
- smolagents はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/huggingface/smolagents
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
ロールベースの自律型AIエージェント(Crews)とイベント駆動型ワークフロー(Flows)をオーケストレーションする、オープンソースのPythonフレームワーク。
LangGraph上で長時間の複数ステップタスクをすぐに実行できる、Python向けの意見の反映された機能一式付きエージェントハーネス。
ツール、ハンドオフ、ガードレール、セッション、トレーシングを備えたマルチエージェントワークフローを構築できる、軽量なPythonフレームワーク。OpenAIを含む100種類以上のLLMに対応します。
Python、.NET、JavaでAIエージェントやマルチエージェントシステムを構築するためのSDK。モデル、プラグイン、ベクトルデータベースと連携できます。
PythonとTypeScriptで、ツール、MCP、メモリ、モデルのポータビリティを備えたAIエージェントを構築・実行するためのオープンソースSDK。