tigerstride's picture
Add tool to read Philly crash data
4c25f2f verified
Raw
History Blame
1.35 kB
import gradio as gr
import random
import os
import getpass
from smolagents import GradioUI, CodeAgent, HfApiModel
# Import our custom tools from their modules
from tools import DuckDuckGoSearchTool, WeatherInfoTool, HubStatsTool, CrashInfoRetrieverTool
from retriever import load_guest_dataset, load_crash_data
#Set up in HuggingFace Space Secrets
#os.environ["HF_TOKEN"] = getpass.getpass("Enter HF token:")
# Ensure the HF_TOKEN environment variable is set
hf_token = os.getenv("HF_TOKEN")
if not hf_token:
raise ValueError("HF_TOKEN environment variable is not set.")
# Initialize the Hugging Face model
model = HfApiModel() #assume HF will look for it
# Initialize the web search tool
search_tool = DuckDuckGoSearchTool()
# Initialize the weather tool
weather_info_tool = WeatherInfoTool()
# Initialize the Hub stats tool
hub_stats_tool = HubStatsTool()
# Load the guest dataset and initialize the guest info tool
guest_info_tool = load_guest_dataset()
crash_info_tool = load_crash_data()
# Create Alfred with all the tools
alfred = CodeAgent(
tools=[guest_info_tool, weather_info_tool, hub_stats_tool, search_tool, crash_info_tool],
model=model,
add_base_tools=True, # Add any additional base tools
planning_interval=3 # Enable planning every 3 steps
)
if __name__ == "__main__":
GradioUI(alfred).launch()