File size: 1,833 Bytes
174ff8b
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3abfacf
 
 
 
d8f8bab
be711a6
f190cd2
be711a6
f190cd2
 
be711a6
f190cd2
 
 
 
 
 
be711a6
f190cd2
3abfacf
f190cd2
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
import yaml
import os
from smolagents import GradioUI, CodeAgent, LiteLLMModel

# Get current directory path
CURRENT_DIR = os.path.dirname(os.path.abspath(__file__))

from tools.web_search import DuckDuckGoSearchTool as WebSearch
from tools.find_best_catering_service import SimpleTool as FindBestCateringService
from tools.suggest_menu import SimpleTool as SuggestMenu
from tools.visit_webpage import VisitWebpageTool as VisitWebpage
from tools.final_answer import FinalAnswerTool as FinalAnswer



model = LiteLLMModel(
max_tokens=8192,
model_id='gemini/gemini-2.0-flash',
api_base=None,
)

web_search = WebSearch()
find_best_catering_service = FindBestCateringService()
suggest_menu = SuggestMenu()
visit_webpage = VisitWebpage()
final_answer = FinalAnswer()


with open(os.path.join(CURRENT_DIR, "prompts.yaml"), 'r') as stream:
    prompt_templates = yaml.safe_load(stream)

agent = CodeAgent(
    model=model,
    tools=[web_search, find_best_catering_service, suggest_menu, visit_webpage],
    managed_agents=[],
    max_steps=10,
    verbosity_level=2,
    grammar=None,
    planning_interval=None,
    name=None,
    description=None,
    executor_type='local',
    executor_kwargs={},
    max_print_outputs_length=None,
    prompt_templates=prompt_templates
)




import gradio as gr

import gradio as gr

def agent_response(user_input):
    return agent.run(user_input)

with gr.Blocks() as demo:
    gr.Markdown("# 🎩 Band Baaja Bot - Your Wedding Assistant! 💍")
    
    user_input = gr.Textbox(label="Your Request", placeholder="Ask me anything about wedding planning...")  
    submit = gr.Button("Submit")  # Submit button below the input box  
    output = gr.Textbox(label="Agent Response")  # Output space below the button  

    submit.click(agent_response, inputs=user_input, outputs=output)

demo.launch()