AI・機械学習
中級

smolagents(スモールエージェンツ)

Hugging Faceが開発したシンプル・軽量なLLMエージェントライブラリ。CodeAgent(Pythonコードを生成・実行)とToolCallingAgent(JSON形式ツール呼び出し)の2種類のエージェントを提供し、HF Hubのモデルと直接統合できる。

0 回閲覧
0 いいね
2026/6/7 更新
関連タグ
LLM
エージェント
HuggingFace
コード生成
オープンソース

smolagents とは

smolagentsはHugging Faceが2025年1月に公開した軽量LLMエージェントライブラリです。「smol(小さい)」という名の通り、最小限のコードでパワフルなエージェントを実装できる設計思想が特徴で、コアは約1,000行のコードで構成されています。

2種類のエージェント

CodeAgent(推奨)

LLMがPythonコードをアクション手段として生成・実行するエージェントです。

from smolagents import CodeAgent, HfApiModel

agent = CodeAgent(
    tools=[],
    model=HfApiModel("Qwen/Qwen2.5-Coder-32B-Instruct")
)
agent.run("1から100の素数をリストアップして")

LLMは以下のようなPythonコードをアクションとして生成します。

primes = [n for n in range(2, 101) if all(n % i != 0 for i in range(2, n))]
print(primes)

ToolCallingAgent

JSON形式のツール呼び出しを使う従来型エージェントです。

from smolagents import ToolCallingAgent, DuckDuckGoSearchTool, HfApiModel

agent = ToolCallingAgent(
    tools=[DuckDuckGoSearchTool()],
    model=HfApiModel()
)
agent.run("今日のAI関連ニュースを教えて")

ツール定義

@tool デコレータでカスタムツールを簡潔に定義できます。docstringがツールの説明としてLLMに渡されます。

from smolagents import tool

@tool
def calculate_bmi(weight_kg: float, height_m: float) -> float:
    """BMIを計算する。Args: weight_kg=体重(kg), height_m=身長(m)"""
    return weight_kg / (height_m ** 2)

agent = CodeAgent(tools=[calculate_bmi], model=model)
agent.run("体重70kg、身長1.75mのBMIは?")

マルチモデル対応

from smolagents import HfApiModel, LiteLLMModel, TransformersModel

model = HfApiModel("meta-llama/Llama-3.3-70B-Instruct")  # HF Inference API
model = LiteLLMModel("gpt-4o-mini")                      # LiteLLM経由
model = TransformersModel("Qwen/Qwen2.5-0.5B-Instruct")  # ローカル

マルチエージェント

エージェント自体をツールとして別エージェントに渡すことで、階層的マルチエージェントが構成できます。

web_agent = ToolCallingAgent(tools=[search_tool], model=model)
manager_agent = CodeAgent(
    tools=[web_agent.as_tool(name="web_search_agent")],
    model=model
)

CodeAgentが優れている理由

Hugging Faceの研究によると、コード形式のアクション表現はJSON形式より複雑タスクで高精度を示します。コードは自己記述的で構造が明確であり、中間変数で複数ステップを組み合わせやすく、Pythonの標準ライブラリを直接活用できます。

まとめ

smolagentsはHF Hubとの緊密な統合と最小限のコードベースを武器に、迅速なプロトタイピングと研究用途に特に適したエージェントライブラリです。CodeAgentのコード実行アプローチは従来のJSON型エージェントより高性能で、2025年の注目フレームワークの一つです。

この記事について
カテゴリーAI・機械学習
難易度中級
作成日2026/6/7