Spaces:
Sleeping
Sleeping
File size: 1,390 Bytes
7ffac53 9b5b26a c19d193 caed7c6 2c89473 7ffac53 61edc95 aaedf0d 7ffac53 aaedf0d 7ffac53 aaedf0d 7ffac53 aaedf0d 7ffac53 8c01ffb 7ffac53 725a248 8c01ffb 7ffac53 725a248 caed7c6 7ffac53 725a248 caed7c6 725a248 7ffac53 8c01ffb 8fe992b 7ffac53 8c01ffb caed7c6 8fe992b 7ffac53 725a248 | 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 | from smolagents import CodeAgent, HfApiModel, load_tool, tool
import datetime
import pytz
import yaml
from tools.final_answer import FinalAnswerTool
from Gradio_UI import GradioUI
# A simple working tool: Get current time in a timezone
@tool
def get_current_time_in_timezone(timezone: str) -> str:
"""Fetches the current time in a given timezone.
Args:
timezone: e.g., 'Asia/Kolkata', 'America/New_York'
"""
try:
tz = pytz.timezone(timezone)
local_time = datetime.datetime.now(tz).strftime("%Y-%m-%d %H:%M:%S")
return f"The current time in {timezone} is: {local_time}"
except Exception as e:
return f"Invalid timezone '{timezone}': {str(e)}"
# Required tool
final_answer = FinalAnswerTool()
# Hugging Face model setup
model = HfApiModel(
max_tokens=2048,
temperature=0.5,
model_id='Qwen/Qwen2.5-Coder-32B-Instruct'
)
# Optional: load text-to-image tool
image_generation_tool = load_tool("agents-course/text-to-image", trust_remote_code=True)
# Load prompt templates
with open("prompts.yaml", 'r') as stream:
prompt_templates = yaml.safe_load(stream)
# Create agent
agent = CodeAgent(
model=model,
tools=[final_answer, get_current_time_in_timezone, image_generation_tool],
max_steps=6,
verbosity_level=1,
prompt_templates=prompt_templates
)
# Start the Gradio UI
GradioUI(agent).launch()
|