sayed99's picture
Upload tool
8c01e97 verified
from smolagents import Tool
from typing import Any, Optional
class SimpleTool(Tool):
name = "get_user_background"
description = "Retrieves a user's background information based on their name, \nproviding a personalized experience."
inputs = {"name":{"type":"string","description":"The name of the person to look up."}}
output_type = "string"
def forward(self, name: str) -> str:
"""
Retrieves a user's background information based on their name,
providing a personalized experience.
Args:
name: The name of the person to look up.
Returns:
str: A brief description of the user's background and interests,
or a default message if the user is not found.
"""
database = {
"sayed": "Sayed is a data scientist in his final year of engineering. He is not a dog person. He is eager to learn about AI agents, LLMs, Azure Cloud, and computer vision topics like tracking.",
"sara": "Sara is a medical student specializing in neurology. She is passionate about brain-computer interfaces, neuroimaging, and understanding cognitive disorders. She loves cats.",
"ahmed": "Ahmed is an economist focusing on financial markets and behavioral economics. He enjoys analyzing stock trends, economic policies, and market predictions using data-driven methods."
}
name_lower = name.lower()
return database.get(name_lower, f"Hello, {name.title()}! I don't have details about you yet, but I'd love to learn more.")