ชุดเครื่องมือทั่วไป (เว็บ เครื่องคิดเลข RAG)
ชุดเครื่องมือเริ่มต้น: ค้นหาเว็บ คำนวณ และสอบถามฐานความรู้ ซึ่งครอบคลุมการสาธิตถึง 80%
ชุดเครื่องมือทั่วไป (เว็บ เครื่องคิดเลข RAG) เป็นบทเรียน AI Agents ฟรีบน CoddyKit นี่คือบทเรียนที่ 3 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน AI Agents และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส AI Agents มีบทเรียนทั้งหมด 4 บทเรียน
บางส่วนของบทเรียนนี้ยังไม่ได้รับการแปล และแสดงเป็นภาษาอังกฤษ
ชุดเครื่องมือเริ่มต้น
เครื่องมือสามรายการครอบคลุมการสาธิตเอเจนต์ 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]เคล็ดลับการอธิบายเครื่องมือ
- ระบุ WHEN ที่ควรใช้เครื่องมือ ไม่ใช่เพียงบอกว่าเครื่องมือทำอะไร
- กล่าวถึงอินพุตและเอาต์พุตที่พบได้ทั่วไป
- ระบุข้อจำกัด เช่น "ใช้ได้เฉพาะกับข้อความภาษาอังกฤษ" หรือ "หมดเวลาใน 5 วินาที"
หลีกเลี่ยงเครื่องมือที่ซ้ำซ้อน
เครื่องมือสองรายการที่มีจุดประสงค์ทับซ้อนกันจะทำให้โมเดลสับสน หาก search_web และ retrieve ต่างก็ "ค้นหา" ให้ระบุในคำอธิบายว่าเมื่อใดควรใช้เครื่องมือแต่ละรายการ
การประเมินการใช้เครื่องมือ
สร้างชุดทดสอบขนาดเล็กที่มีคำถาม 50 ข้อ โดยแต่ละข้อมีเครื่องมือที่ "ถูกต้อง" ซึ่งควรเรียกใช้ จากนั้นเรียกใช้เอเจนต์และวัดว่าเอเจนต์เลือกเครื่องมือที่ถูกต้องบ่อยเพียงใด นี่เป็นตัวชี้วัดที่ให้ข้อมูลอย่างมาก
เครื่องมือที่ซ่อนอยู่
เครื่องมือบางอย่างมีประโยชน์แต่ไม่จำเป็นต้องแสดงเสมอไป ให้แสดงเฉพาะเมื่อเกี่ยวข้อง เช่น refund_order ควรแสดงเฉพาะเมื่อผู้ใช้ยืนยันตัวตนแล้วและสอบถามเกี่ยวกับการคืนเงิน
วิธีปรับปรุงการเลือกที่ดีที่สุด
เอเจนต์ของคุณเลือกเครื่องมือผิดบ่อยเกินไป วิธีแก้ไขที่ง่ายที่สุดคืออะไร?
ทบทวน
ชุดเครื่องมือเริ่มต้น ได้แก่ web_search, calculator และ retrieve สร้างชุดนี้ ประเมินผล และปรับปรุงคำอธิบายเป็นรอบ ๆ ชุดนี้ครอบคลุมกรณีใช้งานเอเจนต์ในช่วงเริ่มต้นส่วนใหญ่
คำถามที่พบบ่อย
บทเรียน “ชุดเครื่องมือทั่วไป (เว็บ เครื่องคิดเลข RAG)” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “ชุดเครื่องมือทั่วไป (เว็บ เครื่องคิดเลข RAG)” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส AI Agents ให้อัปเกรดเป็น CoddyKit PRO คอร์ส AI Agents มีบทเรียนทั้งหมด 4 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “ชุดเครื่องมือทั่วไป (เว็บ เครื่องคิดเลข RAG)”
ชุดเครื่องมือเริ่มต้น: ค้นหาเว็บ คำนวณ และสอบถามฐานความรู้ ซึ่งครอบคลุมการสาธิตถึง 80% คุณปฏิบัติ AI Agents ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน AI Agents หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน AI Agents บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 3 จากทั้งหมด 4 บทเรียน
บทเรียน “ชุดเครื่องมือทั่วไป (เว็บ เครื่องคิดเลข RAG)” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน AI Agents นี้ได้ไหม
ได้ บทเรียน AI Agents ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- ReAct: รูปแบบการให้เหตุผลและลงมือทำ
- การพัฒนา ReAct ตั้งแต่ต้น
- ชุดเครื่องมือทั่วไป (เว็บ เครื่องคิดเลข RAG)
- การตรวจจับและกู้คืนจากข้อผิดพลาดของเครื่องมือ