from smolagents import ( InferenceClientModel, FinalAnswerTool ) from tools.wikipedia_tools import wikipedia_summary, read_wikipedia_page from tools.file_tools import read_file_as_text from tools.youtube_tools import download_youtube_url_images, download_youtube_url_audio from tools.image_processing_tools import ask_question_about_image from agent.QuestionAnsweringAgent import QuestionAnsweringAgent from ui.builder import GradioUI model = InferenceClientModel( provider="auto", model_id="Qwen/Qwen3-Coder-30B-A3B-Instruct", temperature=0, top_p=1.0, seed=42 ) agent_tools = [ FinalAnswerTool(), wikipedia_summary, read_wikipedia_page, read_file_as_text, download_youtube_url_images, download_youtube_url_audio, ask_question_about_image ] additional_authorized_imports=[ "os", "bs4", "PIL", "transformers", "torch", "requests", "glob" ] agent = QuestionAnsweringAgent( name="question_answering_expert", model=model, add_base_tools=True, tools=agent_tools, additional_authorized_imports=additional_authorized_imports, planning_interval=None, max_steps=10, verbosity_level=2, # For better debugging ) if __name__ == "__main__": GradioUI(agent).launch()