File size: 1,389 Bytes
cb43752
efbf494
 
4337336
9d9535b
9d83242
f280b77
 
 
cb43752
f7d0260
9d9535b
3d54576
f280b77
76da739
9d9535b
7c09eaf
 
 
9d9535b
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
9d83242
9d9535b
 
 
 
4337336
f280b77
7c09eaf
4337336
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
from smolagents import CodeAgent, InferenceClientModel
from smolagents import VisitWebpageTool, WebSearchTool, WikipediaSearchTool, PythonInterpreterTool,FinalAnswerTool


class GaiaAgent:
    def __init__(self):
        import os
        token = os.getenv("hf_token")
        print("DEBUG: hf_token is", token[:6]+ "...")
        self.model = InferenceClientModel(
            max_tokens = 2048,
            temperature = 0.5, 
            model_id = "google/flan-t5-xxl",
            custom_role_conversions=None,      
            provider="hf-inference"
        )


#Creating the agent
        self.agent = CodeAgent(
            model=self.model,
            tools=[
                VisitWebpageTool(),
                WebSearchTool(),
                WikipediaSearchTool(),
                PythonInterpreterTool(),
                FinalAnswerTool(),
            ], 
            max_steps=10,
            verbosity_level = 1,        #or other parameter
            grammar = None,             
            planning_interval=None,      
            #name="web_agent",            
            #description="Brows the web to find information",      
            #additional_autorized_imports = ["pandas"],
        )
    def __call__(self, question: str) -> str:
        try:
            return self.agent.run(question)
        except Exception as e:
            return f"ERROR: {e}"