WeatherAgent / tools /get_weather_data.py
ChinarQ-AI's picture
Upload 10 files
9a5cbd7 verified
from smolagents import Tool
from typing import Any, Optional
class SimpleTool(Tool):
name = "get_weather_data"
description = "Returns sample weather data for a given city."
inputs = {'city': {'type': 'string', 'description': 'Name of the city (new york, london, or tokyo)'}}
output_type = "object"
def forward(self, city: str) -> dict:
"""
Returns sample weather data for a given city.
Args:
city: Name of the city (new york, london, or tokyo)
"""
# Sample data for demonstration
sample_data = {
"new york": {
"temps": [72, 75, 65, 68, 70, 74, 73],
"rain": [0, 0.2, 0.5, 0, 0, 0.1, 0],
"unit": "F"
},
"london": {
"temps": [15, 14, 16, 13, 15, 17, 16],
"rain": [0.5, 0.2, 0, 0.1, 0.3, 0, 0.2],
"unit": "C"
},
"tokyo": {
"temps": [22, 24, 23, 25, 26, 25, 22],
"rain": [0, 0, 0.3, 0.2, 0, 0, 0.1],
"unit": "C"
}
}
city_lower = city.lower()
return sample_data.get(city_lower, {"error": f"No data for {city}"})