Spaces:
Sleeping
Sleeping
import datetime | |
import pytz | |
import yaml | |
from smolagents import CodeAgent, HfApiModel, load_tool, tool, DuckDuckGoSearchTool | |
from tools.final_answer import FinalAnswerTool | |
from Gradio_UI import GradioUI | |
# Instantiate the DuckDuckGo search tool provided by smolagents. | |
duckduckgo_tool = DuckDuckGoSearchTool() | |
# Final answer tool (must be included) | |
final_answer = FinalAnswerTool() | |
# Define the model configuration. | |
model = HfApiModel( | |
max_tokens=1000, # Reduced max_tokens to help prevent token limit issues. | |
temperature=0.5, | |
model_id='Qwen/Qwen2.5-Coder-32B-Instruct', | |
custom_role_conversions=None, | |
) | |
# Optionally, load an additional tool from the Hub (e.g., a text-to-image tool) | |
image_generation_tool = load_tool("agents-course/text-to-image", trust_remote_code=True) | |
# Load prompt templates from YAML. | |
with open("prompts.yaml", 'r') as stream: | |
prompt_templates = yaml.safe_load(stream) | |
# Initialize the CodeAgent with the DuckDuckGo search tool. | |
agent = CodeAgent( | |
model=model, | |
tools=[final_answer, duckduckgo_tool], | |
max_steps=3, # Reduced steps to limit the chain-of-thought length. | |
verbosity_level=1, | |
grammar=None, | |
planning_interval=None, | |
name="SearchAgent", | |
description="An AI agent that uses DuckDuckGo search to fetch information from the web.", | |
prompt_templates=prompt_templates | |
) | |
# Launch the Gradio UI to interact with the agent. | |
GradioUI(agent).launch() | |