Spaces:
Runtime error
Runtime error
File size: 2,823 Bytes
9b5b26a c19d193 6aae614 8fe992b 9b5b26a 8baf584 9b5b26a 8c01ffb 8baf584 8c01ffb 8baf584 ae7a494 8baf584 ae7a494 8c01ffb 8baf584 8c01ffb 9b5b26a 8c01ffb 861422e 9b5b26a 8c01ffb 8fe992b f59a963 8c01ffb 861422e 8fe992b 9b5b26a 8c01ffb | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 | from smolagents import CodeAgent,DuckDuckGoSearchTool, HfApiModel,load_tool,tool
import datetime
import requests
import pytz
import yaml
from tools.final_answer import FinalAnswerTool
from Gradio_UI import GradioUI
# If the agent does not answer, the model is overloaded, please use another model or the following Hugging Face Endpoint that also contains qwen2.5 coder:
# model_id='https://pflgm2locj2t89co.us-east-1.aws.endpoints.huggingface.cloud'
model = HfApiModel(
max_tokens=2096,
temperature=0.5,
model_id='Qwen/Qwen2.5-Coder-32B-Instruct',# it is possible that this model may be overloaded
custom_role_conversions=None,
)
@tool
def get_current_time_in_timezone(timezone: str) -> str:
"""A tool that fetches the current local time in a specified timezone.
Args:
timezone: A string representing a valid timezone (e.g., 'America/New_York').
"""
try:
# Create timezone object
tz = pytz.timezone(timezone)
# Get current time in that timezone
local_time = datetime.datetime.now(tz).strftime("%Y-%m-%d %H:%M:%S")
return f"The current local time in {timezone} is: {local_time}"
except Exception as e:
return f"Error fetching time for timezone '{timezone}': {str(e)}"
@tool
def depict_city(city: str) -> str:
"""A tool that generates a description of a city at a given time with weather.
Args:
city: The name of the city to depict.
"""
agent = CodeAgent(
model=model,
tools=[get_current_time_in_timezone],
max_steps=6,
)
date = agent.run(f"What is the current date and time in {city}?")
return agent.run(
f"""Generate a detailed visual description of a random landmark in {city} for text-to-image tools.
The date is {date}. Ensure that your description reflects time and seasonal details appropriately.
For example, if it’s nighttime, depict a dark sky with artificial lighting; if it’s winter, illustrate snowy landscapes and winter-themed elements.
Incorporate environmental factors such as weather conditions, seasonal changes, and the surrounding urban or natural scenery to create a visually accurate and immersive representation."""
)
final_answer = FinalAnswerTool()
# Import tool from Hub
image_generation_tool = load_tool("agents-course/text-to-image", trust_remote_code=True)
with open("prompts.yaml", 'r') as stream:
prompt_templates = yaml.safe_load(stream)
agent = CodeAgent(
model=model,
tools=[final_answer, depict_city, image_generation_tool], ## add your tools here (don't remove final answer)
max_steps=6,
verbosity_level=1,
grammar=None,
planning_interval=None,
name=None,
description=None,
prompt_templates=prompt_templates
)
GradioUI(agent).launch() |