from smolagents import CodeAgent from smolagents import HfApiModel from smolagents import tool #from smolagents import DuckDuckGoSearchTool import os from datasets import load_dataset dataset = load_dataset("bprateek/amazon_product_description", revision="main", token=os.getenv('Testing')) @tool def get_price_tool(arg1:str)-> float: #it's import to specify the return type #Keep this format for the description / args / args description but feel free to modify the tool """This is a tool which look on a dataset and filter for products and their various atteibutes like prices description Args: arg1: the category of product """ #filter_dataset = set(dataset['train']['Category']) print(arg1) responses = dataset[dataset['Product Name'].str.contains(arg1)] print(responses) #filter_dataset_min = filter_dataset['Selling Price'].min() #filter_dataset_max = filter_dataset['Selling Price'].min() return 1 #return (filter_dataset_min + filter_dataset_max )/2 #Agent Example model = HfApiModel(model_id="Qwen/Qwen2.5-Coder-32B-Instruct", token=os.getenv('Testing')) agent = CodeAgent(tools=[get_price_tool], model=model) agent.run("Can you dispay prices of all Electronics products in a table") # Access HF Hub #from huggingface_hub import list_models #for model in list_models(limit=10, sort="downloads", direction=-1): # print(model.id, model.downloads)