Просто додайте @tool: створюємо власний інструмент
Ви щойно почали працювати в AgentsCafé, де клієнти за кожним столиком можуть робити кілька замовлень напоїв.
Бариста зараз записують коди замовлень від руки, наприклад T5_Latte_20250812_0915, але через описки та різний формат часто трапляються плутанини й неправильні видачі.
Щоб це виправити, ви створите простий інструмент generate_order_id, який приймає ID столика, назву напою та додає мітку часу, щоб кожен код замовлення був чітким і послідовним.
Примітка: бібліотеку datetime уже імпортовано.
Ця вправа є частиною курсу
AI-агенти з Hugging Face smolagents
Інструкції до вправи
- Імпортуйте декоратор
toolз бібліотекиsmolagents. - Використайте декоратор
@tool, щоб зареєструвати вашу функціюgenerate_order_idяк інструмент. - Поверніть відформатований рядок коду замовлення, що поєднує ID столика, назву напою та поточну мітку часу.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
# Import the tool decorator
from smolagents import ____
# Create a tool with the @tool decorator
____
def generate_order_id(table_id: str, drink_name: str) -> str:
"""
Generates a unique order ID for a café order.
Args:
table_id: The table's identifier (e.g. "T5")
drink_name: Name of the drink (e.g. "Latte")
Returns:
A string in the format "{table_id}_{drink_name}_{YYYYMMDD_HHMM}"
"""
timestamp = datetime.now().strftime("%Y%m%d_%H%M")
order_id = f"{table_id}_{drink_name}_{timestamp}"
# Return the order ID
return ____