solarcloud/ToolCallingAgentExample
0
1import yaml2import os3from smolagents import GradioUI, ToolCallingAgent, LiteLLMModel4 5# Get current directory path6CURRENT_DIR = os.path.dirname(os.path.abspath(__file__))7 8from tools.web_search import DuckDuckGoSearchTool as WebSearch9from tools.final_answer import FinalAnswerTool as FinalAnswer10 11 12 13model = LiteLLMModel(14num_ctx=8192,15model_id='ollama_chat/qwen2.5:7b',16api_base='http://127.0.0.1:11434',17)18 19web_search = WebSearch()20final_answer = FinalAnswer()21 22 23with open(os.path.join(CURRENT_DIR, "prompts.yaml"), 'r') as stream:24 prompt_templates = yaml.safe_load(stream)25 26agent = ToolCallingAgent(27 model=model,28 tools=[web_search],29 managed_agents=[],30 max_steps=20,31 verbosity_level=1,32 grammar=None,33 planning_interval=None,34 name=None,35 description=None,36 prompt_templates=prompt_templates37)38if __name__ == "__main__":39 GradioUI(agent).launch()40 