ホームページ > テクノロジー周辺機器 > AI > Smolagentsを使用したAIエージェント向けのカスタムツールの構築

Smolagentsを使用したAIエージェント向けのカスタムツールの構築

Lisa Kudrow
リリース: 2025-03-21 11:17:10
オリジナル
199 人が閲覧しました

LLMはさまざまな分野に革命をもたらし、Webベースのチャットボットを超えて企業や政府に統合しています。重要な進歩は、 smolagentsを使用してAIエージェント向けのカスタムツールの作成であり、機能を拡大することです。 smolagents 、AIエージェントにツールを利用し、定義された環境内でアクションを実行し、さらには他のエージェントと対話することができます。

このアプローチは、LLMを搭載したAIシステムの自律性を高め、完全なエンドツーエンドタスク実行の信頼性を向上させます。

学習目標

  • AIエージェント、従来のLLMSとの区別、およびカスタムツールを使用した最新のAIアプリケーションでの役割を理解します。
  • AIエージェントがリアルタイムのデータアクセス、アクション実行、および意思決定の改善のためにカスタムツールを必要とする理由を調べてください。
  • 実際のシナリオにsmolagentsを使用してAIエージェントを統合および展開する実践的な経験を積む。
  • smolagentsを使用して、強化されたAIエージェント機能のカスタムツールを作成および統合することを学びます。
  • カスタムツールを使用してAIエージェントとのホスティングと対話をマスターし、よりインタラクティブでインテリジェントなチャットボットエクスペリエンスを作成します。

*この記事は、***データサイエンスブログソンの一部です。

目次

  • 前提条件
  • 生成AIのエージェントを理解します
  • エージェントワークフロー
  • AIエージェントのコンポーネント
  • ツールの必要性
  • smolagents Library
  • 私たちのコードベース
  • 最初のツールを構築します
  • 最終ステップ:展開
  • まとめ
  • よくある質問

前提条件

このチュートリアルは、基本的なLLMに精通している中間開発者とデータの専門家を対象としています。以下が想定されています。

  • 中級のPythonプログラミングスキル。
  • コードでの基本的なLLM使用。
  • Genaiエコシステムに精通しています。
  • Pythonのハグするフェイスプラットフォームとtransformersライブラリの基本的な理解。

最適学習のためのさらに推奨される背景:

  • LangchainやOllamaなどのLLMライブラリの経験。
  • 基本的な機械学習理論の知識。
  • APIの使用とAPI応答による問題解決。

生成AIのエージェントを理解します

ChatGptを検討してください。質問に答え、コードを書きます。この機能はタスクの完了に拡張されます。リクエストを提供し、タスク全体を実行します。

たとえば、LLMはWebと理由を検索できます。これらを組み合わせると、旅行の旅程を作成できます。 「雪、スキー、ロープウェイ、緑の風景に焦点を当てて、4月1日から7日までのヒマーチャルプラデシュ州の休暇を計画してください。コルカタから最も安いフライトを見つけてください。」

AIは、飛行コストを比較し、場所を提案し、ホテルを見つけ、AIのエージェントアプローチを実証します。

エージェントワークフロー

エージェントは、テキストを介して外部世界と対話するLLMを使用します。

Smolagentsを使用したAIエージェント向けのカスタムツールの構築

エージェントは、テキストとして入力、言語を使用した理由、およびテキストを出力します。ここではツールが重要であり、エージェントが使用する価値を提供してテキスト応答を生成します。アクションは、市場トランザクションから画像生成までさまざまです。

Smolagentsを使用したAIエージェント向けのカスタムツールの構築

ワークフローは次のとおりです。

AIエージェントのコンポーネント

AIエージェントは次のとおりです。

  • エージェントの「脳」(LLAMA3、PHI4、またはGPT4のようなLLM)。
  • エージェントが呼び出すことができる外部ツール(API、その他のエージェント、計算機など)。

smolagents使用すると、関数呼び出し用に調整されたLLMを使用してPython関数を作成できます。私たちの例には、Qwen LLMを使用した犬の事実、タイムゾーン検索、および画像生成のツールが含まれます。

ツールの必要性

LLMSは、単なるテキスト完了ツールではありません。それらは大規模なシステムのコンポーネントであり、多くの場合、非生成AI部品からの入力が必要です。

Smolagentsを使用したAIエージェント向けのカスタムツールの構築

ツールは、gena​​iと他のシステムコンポーネントの間のギャップを橋渡しします。 LLMSには制限があります:

  • 知識のカットオフ日。
  • 幻覚。
  • 答えを拒否できない。
  • 次のWeb検索の選択肢。

決定論的ツールはこれらの問題に対処します。

smolagents Library

smolagents (hugging face)は、エージェントを構築するためのフレームワークです。 JSONを出力するいくつかのライブラリとは異なり、 smolagents Pythonコードを直接出力し、効率を向上させます。

私たちのコードベース

GitHubリポジトリには次のものが含まれています。

  • Gradio_UI.py :ユーザーインタラクションのGradio UIコード。
  • agent.json :エージェント構成。
  • requirements.txt :プロジェクトの依存関係。
  • prompts.yaml :例のプロンプトと応答(Jinjaテンプレートを使用)。
  • app.py :コアアプリケーションロジック。

最初のツールを構築します

Dog Facts API( https://www.php.cn/link/0feaf58e2a12936c84c2510541b6e75a )を使用します。 AIエージェントがPython機能を使用できるようにするには:

  • @toolデコレーターを使用します。
  • 明確なドキュストリングを書いてください。
  • タイプの注釈を追加します。
  • 明確な返品値を確保します。
  • 十分なコメントを含めます。
 @道具
def get_amazing_dog_fact() - > str:
    "" "パブリックAPIからランダムな犬の事実を取得する" ""
    #...(APIコールとエラー処理)...
ログイン後にコピー

タイムゾーンツール:

 @道具
def get_current_time_in_timezone(timezone:str) - > str:
    "" "指定されたタイムゾーンで現在の時間を取得します。" "
    #...(タイムゾーンの取り扱い)...
ログイン後にコピー

画像生成ツールを統合することもできます。

 image_generation_tool = load_tool( "agents-course/text-to-image"、trust_remote_code = true)
ログイン後にコピー

QWEN2.5-CODER-32B-INSTRUCTモデルが使用されます(アクセスにアプリケーションが必要です):

モデル= hfapimodel(
    max_tokens = 2096、
    温度= 0.5、
    model_id = 'qwen/qwen2.5-coder-32b-instruct'、
    #...
))
ログイン後にコピー

プロンプトはprompts.yamlからロードされます。エージェントが作成されます:

 agent = codeagent(
    モデル=モデル、
    ツール= [get_amazing_dog_fact、get_current_time_in_timezone、image_generation_tool]、
    #...
))
ログイン後にコピー

tools引数には、使用可能な関数がリストされています。

最終ステップ:展開

エージェントは、フェイススペースを抱き締めるために展開できます。

まとめ

AIエージェントは、ツール統合を通じてLLM機能を強化し、自律性を高め、複雑なタスクの完了を可能にします。 smolagentsエージェントの作成を簡素化し、カスタムツールは標準のLLMを超えて機能を拡張します。フェイススペースを抱き締めるなどのプラットフォームでの展開により、簡単な共有と相互作用が容易になります。

よくある質問

Q1。 AIエージェントとは何ですか? AIエージェントは、タスクを実行するツールと対話するLLM駆動システムです。

Q2。なぜカスタムツールが必要なのですか?リアルタイムのデータアクセス、コマンド実行、およびLLM機能を超えたアクションを可能にします。

Q3。 smolagentsとは何ですか?カスタムツールを使用してAIエージェントを作成するための抱き合ったフェイスフレームワーク。

Q4。カスタムツールを作成する方法は?機能を定義し、 @toolで飾り、エージェントに統合します。

Q5。どこに展開しますか?フェイススペースを抱き締めるようなプラットフォーム。

(注:元の入力のように画像が含まれていると想定されています。)

以上がSmolagentsを使用したAIエージェント向けのカスタムツールの構築の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート