0Pricing
AI Agents · レッスン

一般的なツールセット(Web、計算機、RAG)

基本的なツールボックスを作ります。Web検索、計算、ナレッジベースへのクエリで、デモの80%をカバーできます。

「一般的なツールセット(Web、計算機、RAG)」はCoddyKit上の無料AI Agentsレッスンです。 これはレッスン3/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはAI Agents学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 AI Agentsコースには全4レッスンが含まれています。

このレッスンの一部はまだ翻訳されておらず、英語で表示されています。

基本ツールセット

次の 3 つのツールで、エージェントのデモの 80% をカバーできます:

  1. web_search — 公開ウェブを検索します
  2. calculator — 数式を評価します
  3. retrieve — 内部ナレッジベース(RAG)を検索します

ツール 1:ウェブ検索

Tavily、Serper、または Brave Search API を使います:

import requests

def web_search(query: str, k: int = 5):
    r = requests.post('https://api.tavily.com/search',
        json={'api_key': TAVILY_KEY, 'query': query, 'max_results': k})
    results = r.json()['results']
    return [
        {'title': r['title'], 'url': r['url'], 'snippet': r['content'][:300]}
        for r in results
    ]

Web Search Tool Schema

schema_search = {'type': 'function', 'function': {
    'name': 'web_search',
    'description': 'Search the public web. Use for current events or facts after the knowledge cutoff.',
    'parameters': {'type': 'object', 'properties': {
        'query': {'type': 'string', 'description': 'What to search for'},
        'k': {'type': 'integer', 'default': 5}
    }, 'required': ['query']}
}}
import json
print(json.dumps(schema_search, indent=2))

ツール 2:計算機

モデルは頭の中で算術計算を確実に行うことができません。計算機ツールを使えば、数値に関するエラーの大半を解消できます:

import math

ALLOWED = {k: getattr(math, k) for k in ['sqrt','log','exp','sin','cos','tan','pi','e']}

def calculator(expression: str) -> str:
    try:
        return str(eval(expression, {'__builtins__': {}}, ALLOWED))
    except Exception as e:
        return f'Error: {e}'

print(calculator('sqrt(16) + 2'))

Calculator Tool Schema

schema_calc = {'type': 'function', 'function': {
    'name': 'calculator',
    'description': 'Evaluate a math expression like 2 + 3 * sqrt(16). Use for any arithmetic.',
    'parameters': {'type': 'object', 'properties': {
        'expression': {'type': 'string'}
    }, 'required': ['expression']}
}}
import json
print(json.dumps(schema_calc, indent=2))

Tool 3: RAG / Knowledge Retrieval

from langchain_openai import OpenAIEmbeddings
from langchain_community.vectorstores import Chroma

store = Chroma(persist_directory='./db', embedding_function=OpenAIEmbeddings())

def retrieve(query: str, k: int = 4):
    docs = store.similarity_search(query, k=k)
    return [{'text': d.page_content, 'source': d.metadata.get('source')} for d in docs]

Retrieve Tool Schema

schema_retrieve = {'type': 'function', 'function': {
    'name': 'retrieve',
    'description': 'Search the internal knowledge base for company-specific information (policies, docs, history).',
    'parameters': {'type': 'object', 'properties': {
        'query': {'type': 'string'},
        'k': {'type': 'integer', 'default': 4}
    }, 'required': ['query']}
}}
import json
print(json.dumps(schema_retrieve, indent=2))

ツール 4:コードインタープリター(追加)

データに関するタスクには、Python サンドボックスをエージェントに提供します:

def run_python(code: str) -> str:
    # Use a sandboxed environment (E2B, Firecracker, gVisor)
    return sandbox.run(code).stdout

ツール 5:HTTP 取得(追加)

特定の URL を取得する場合に使います(web_search が有望なリンクを返した後など):

def fetch_url(url: str) -> str:
    r = requests.get(url, timeout=10)
    return BeautifulSoup(r.text, 'html.parser').get_text()[:5000]

ツールの説明に関するヒント

  • ツールが何をするかだけでなく、いつ使うかを記述します
  • 一般的な入力と出力を記載します
  • 制限事項(「英語のテキストにのみ対応」「タイムアウトは 5 秒」など)を明記します

ツールの重複を避ける

目的が重複する 2 つのツールがあると、モデルは混乱します。search_web と retrieve がどちらも「検索」する場合は、どの状況でどちらを使うのかを説明文で明確にしてください。

ツール使用の評価

50 問の小さなテストセットを作成します。それぞれに呼び出すべき「正しい」ツールを設定します。エージェントを実行し、正しいツールを選べた割合を測定します。非常に有益な指標です。

非表示のツール

便利でも常に必要とは限らないツールは、関連する場合にだけ表示します。たとえば、refund_order はユーザーが認証済みで、返金について尋ねている場合にだけ表示します。

選択を改善する最善の方法

エージェントが間違ったツールを頻繁に選択しています。最も簡単な修正方法は何でしょうか。

復習

基本ツールセットは web_search、calculator、retrieve です。構築して評価し、説明を繰り返し改善します。これで初期段階のエージェントのユースケースの大半をカバーできます。

よくある質問

「一般的なツールセット(Web、計算機、RAG)」レッスンは無料ですか?

はい。「一般的なツールセット(Web、計算機、RAG)」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、AI Agentsコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 AI Agentsコースには全4レッスンが含まれています。

「一般的なツールセット(Web、計算機、RAG)」で何を学びますか?

基本的なツールボックスを作ります。Web検索、計算、ナレッジベースへのクエリで、デモの80%をカバーできます。 ブラウザで直接実行するハンズオンコードでAI Agentsを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

AI Agentsを始めるのに経験は必要ですか?

事前経験は必要ありません。CoddyKitのAI Agentsは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン3/4です。

「一般的なツールセット(Web、計算機、RAG)」レッスンにはどのくらい時間がかかりますか?

ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。

このAI Agentsレッスンでコードを書いて実行できますか?

はい。すべてのAI Agentsレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。

このコースのすべてのレッスン

  1. ReAct:Reason + Actパターン
  2. ReActをゼロから実装する
  3. 一般的なツールセット(Web、計算機、RAG)
  4. ツールエラーの検出と復旧
← AI Agentsに戻る