सिर्फ @tool जोड़ें: एक कस्टम टूल लिखना
आपने अभी-अभी AgentsCafé में काम शुरू किया है, जहाँ हर टेबल पर ग्राहक कई ड्रिंक ऑर्डर दे सकते हैं.
फिलहाल बारिस्ता ऑर्डर कोड हाथ से लिखते हैं, जैसे T5_Latte_20250812_0915, लेकिन टाइपो और असंगत फ़ॉर्मेटिंग की वजह से अक्सर गड़बड़ी और गलत डिलीवरी हो जाती है.
इसे ठीक करने के लिए, आप generate_order_id नाम का एक सरल टूल बनाएँगे जो टेबल ID, ड्रिंक का नाम लेता है और एक टाइमस्टैम्प जोड़ता है, ताकि हर ऑर्डर कोड साफ और एकसमान रहे.
नोट: datetime लाइब्रेरी पहले से इम्पोर्ट की गई है.
यह अभ्यास पाठ्यक्रम का हिस्सा है
Hugging Face smolagents के साथ AI Agents
अभ्यास निर्देश
smolagentsलाइब्रेरी सेtoolडेकोरेटर इम्पोर्ट करें.@toolडेकोरेटर का उपयोग करके अपनीgenerate_order_idफंक्शन को एक टूल के रूप में रजिस्टर करें.- वह फ़ॉर्मेट किया हुआ order ID स्ट्रिंग रिटर्न करें जो table ID, drink name, और current timestamp को जोड़ती है.
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
# 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 ____