Isaac454's picture
Update app.py
23731d2 verified
import os
HF_TOKEN = os.getenv("HF_TOKEN")
from smolagents import Tool, FinalAnswerTool, ToolCallingAgent, DuckDuckGoSearchTool, tool, LiteLLMModel, PythonInterpreterTool
import datetime
import requests
import pytz
from tools.final_answer import FinalAnswerTool
from Gradio_UI import GradioUI
@tool
def sum_tool(a: float, b: float) -> float:
"""
Returns the sum of two numbers
Args:
a: The first value.
b: The second value.
"""
return a + b
@tool
def multiply_tool(a: float, b: float) -> float:
"""
Returns the product of two numbers.
Args:
a (float): The first value.
b (float): The second value.
Returns:
float: Product of a and b
"""
return a * b
@tool
def sub_tool(a: float, b: float) -> float:
"""
Returns the difference of two numbers
Args:
a: The first value.
b: The second value.
"""
return a - b
final_answer = FinalAnswerTool()
model = LiteLLMModel(
model_id="huggingface/google/gemma-2-2b-it",
api_key=HF_TOKEN
)
agent = ToolCallingAgent(
tools=[sum_tool, sub_tool, multiply_tool],
model=model,
max_steps=3
)
GradioUI(agent).launch()