Leonardo Kamigauti commited on
Commit
59c1b1a
·
1 Parent(s): 8885992

Try add user_input in tools

Browse files
Files changed (2) hide show
  1. app.py +4 -2
  2. tools/user_input.py +15 -0
app.py CHANGED
@@ -1,9 +1,10 @@
1
- from smolagents import CodeAgent,DuckDuckGoSearchTool,HfApiModel,load_tool,tool,UserInputTool
2
  import datetime
3
  import requests
4
  import pytz
5
  import yaml
6
  from tools.final_answer import FinalAnswerTool
 
7
 
8
  from kaggle.api.kaggle_api_extended import KaggleApi
9
  import os
@@ -77,6 +78,7 @@ def download_kaggle_dataset(
77
  return f"Dataset '{dataset_ref}' downloaded to '{download_path}'."
78
 
79
  final_answer = FinalAnswerTool()
 
80
 
81
  # If the agent does not answer, the model is overloaded, please use another model or the following Hugging Face Endpoint that also contains qwen2.5 coder:
82
  # model_id='https://pflgm2locj2t89co.us-east-1.aws.endpoints.huggingface.cloud'
@@ -98,7 +100,7 @@ agent = CodeAgent(
98
  model=model,
99
  tools=[final_answer,
100
  search_kaggle_datasets,
101
- UserInputTool(),
102
  download_kaggle_dataset,
103
  image_generation_tool],
104
  max_steps=6,
 
1
+ from smolagents import CodeAgent,DuckDuckGoSearchTool,HfApiModel,load_tool,tool
2
  import datetime
3
  import requests
4
  import pytz
5
  import yaml
6
  from tools.final_answer import FinalAnswerTool
7
+ from tools.user_input import UserInputTool
8
 
9
  from kaggle.api.kaggle_api_extended import KaggleApi
10
  import os
 
78
  return f"Dataset '{dataset_ref}' downloaded to '{download_path}'."
79
 
80
  final_answer = FinalAnswerTool()
81
+ user_input = UserInputTool()
82
 
83
  # If the agent does not answer, the model is overloaded, please use another model or the following Hugging Face Endpoint that also contains qwen2.5 coder:
84
  # model_id='https://pflgm2locj2t89co.us-east-1.aws.endpoints.huggingface.cloud'
 
100
  model=model,
101
  tools=[final_answer,
102
  search_kaggle_datasets,
103
+ user_input,
104
  download_kaggle_dataset,
105
  image_generation_tool],
106
  max_steps=6,
tools/user_input.py ADDED
@@ -0,0 +1,15 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ from typing import Any, Optional
2
+ from smolagents.tools import Tool
3
+
4
+ class UserInputTool(Tool):
5
+ name = "user_input"
6
+ description = "Asks for user's input on a specific question"
7
+ inputs = {"question": {"type": "string", "description": "The question to ask the user"}}
8
+ output_type = "string"
9
+
10
+ def forward(self, question):
11
+ user_input = input(f"{question} => Type your answer here:")
12
+ return user_input
13
+
14
+ def __init__(self, *args, **kwargs):
15
+ self.is_initialized = False