import yaml import os from smolagents import GradioUI, CodeAgent, InferenceClientModel import smolagents # Get current directory path CURRENT_DIR = os.path.dirname(os.path.abspath(__file__)) from tools.web_search import DuckDuckGoSearchTool as WebSearch from tools.visit_webpage import VisitWebpageTool as VisitWebpage from tools.suggest_menu import SimpleTool as SuggestMenu from tools.catering_service_tool import SimpleTool as CateringServiceTool from tools.superhero_party_theme_generator import SuperheroPartyThemeTool as SuperheroPartyThemeGenerator from tools.final_answer import FinalAnswerTool as FinalAnswer web_search = WebSearch() visit_webpage = VisitWebpage() suggest_menu = SuggestMenu() catering_service_tool = CateringServiceTool() superhero_party_theme_generator = SuperheroPartyThemeGenerator() final_answer = FinalAnswer() dynamicTool_TextToImage = smolagents.load_tool( "m-ric/text-to-image", trust_remote_code=True ) spaceTool_ImageGenerator = smolagents.Tool.from_space( "black-forest-labs/FLUX.1-schnell", name="HF_Space_ImageGenerator", description="Generate an image from a prompt" ) with open(os.path.join(CURRENT_DIR, "prompts.yaml"), 'r') as stream: prompt_templates = yaml.safe_load(stream) codeAgent_Party = CodeAgent(model=InferenceClientModel(model_id='Qwen/Qwen2.5-Coder-3B-Instruct'), max_steps=10, verbosity_level=2, tools = [final_answer, web_search, visit_webpage, suggest_menu, catering_service_tool, superhero_party_theme_generator, dynamicTool_TextToImage, spaceTool_ImageGenerator], executor_type='local', executor_kwargs={}, max_print_outputs_length=None, prompt_templates=prompt_templates, ) if __name__ == "__main__": GradioUI(codeAgent_Party).launch()