一般的なツールセット(Web、計算機、RAG)
基本的なツールボックスを作ります。Web検索、計算、ナレッジベースへのクエリで、デモの80%をカバーできます。
「一般的なツールセット(Web、計算機、RAG)」はCoddyKit上の無料AI Agentsレッスンです。 これはレッスン3/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはAI Agents学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 AI Agentsコースには全4レッスンが含まれています。
このレッスンの一部はまだ翻訳されておらず、英語で表示されています。
基本ツールセット
次の 3 つのツールで、エージェントのデモの 80% をカバーできます:
- web_search — 公開ウェブを検索します
- calculator — 数式を評価します
- 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フィードバックを取得できます。ローカル設定は不要です。
このコースのすべてのレッスン
- ReAct:Reason + Actパターン
- ReActをゼロから実装する
- 一般的なツールセット(Web、計算機、RAG)
- ツールエラーの検出と復旧