Coool2 commited on
Commit
6f11d78
·
verified ·
1 Parent(s): b85f2cf

Update agent.py

Browse files
Files changed (1) hide show
  1. agent.py +27 -15
agent.py CHANGED
@@ -478,7 +478,6 @@ analysis_tool = FunctionTool.from_defaults(
478
  **Input format:** Provide the query and mention any relevant files or context."""
479
  )
480
 
481
-
482
  code_tool = FunctionTool.from_defaults(
483
  fn=code_function,
484
  name="CodeAgent",
@@ -516,29 +515,42 @@ class EnhancedGAIAAgent:
516
  # Agent coordinateur principal qui utilise les agents spécialisés comme tools
517
  self.coordinator = ReActAgent(
518
  name="GAIACoordinator",
519
- description="Main GAIA coordinator that uses specialist agents as intelligent tools",
520
  system_prompt="""
521
  You are the main GAIA coordinator using ReAct reasoning methodology.
 
 
522
 
523
- Your process:
524
- 1. THINK: Analyze the GAIA question thoroughly
525
- 2. ACT: Use your specialist tools IF RELEVANT
526
- 3. OBSERVE: Review results from specialist tools
527
- 4. REPEAT: Continue until you have the final answer.
528
 
529
- CRITICAL: Your final answer must be EXACT and CONCISE as required by GAIA format:
 
 
 
 
 
 
 
 
530
 
531
- ABSOLUTE RULES:
532
- - NO explanations, NO additional text, NO units unless specifically requested
533
- - NO phrases like "The answer is", "Based on the analysis", "According to"
534
- - NO brackets, quotes, or formatting around the answer
535
- - NO trailing periods or punctuation unless part of the answer
536
- - If you cannot determine the answer, respond ONLY with: Unable to determine""",
 
 
 
537
  llm=proj_llm,
538
  tools=[analysis_tool, research_tool, code_tool],
539
- max_steps = 10,
540
  verbose = True,
541
  callback_manager=callback_manager,
 
542
  )
543
 
544
  async def format_gaia_answer(self, raw_response: str, original_question: str) -> str:
 
478
  **Input format:** Provide the query and mention any relevant files or context."""
479
  )
480
 
 
481
  code_tool = FunctionTool.from_defaults(
482
  fn=code_function,
483
  name="CodeAgent",
 
515
  # Agent coordinateur principal qui utilise les agents spécialisés comme tools
516
  self.coordinator = ReActAgent(
517
  name="GAIACoordinator",
518
+ description="Main GAIA coordinator that uses specialized capabilities as intelligent tools",
519
  system_prompt="""
520
  You are the main GAIA coordinator using ReAct reasoning methodology.
521
+
522
+ You have access to THREE specialist tools:
523
 
524
+ **1. AnalysisAgent** - Advanced multimodal document analysis specialist
525
+ - Use for: PDF, Word, CSV, image file analysis
526
+ - Capabilities: Extract data from tables/charts, cross-reference documents, semantic search
527
+ - When to use: Questions with file attachments, document analysis, data extraction
 
528
 
529
+ **2. Research Tool** - Intelligent research specialist with automatic routing
530
+ - Use for: External knowledge, current events, scientific papers
531
+ - Capabilities: Auto-routes between ArXiv (scientific) and web search (general), extracts full content
532
+ - When to use: Questions requiring external knowledge, factual verification, current information
533
+
534
+ **3. CodeAgent** - Advanced computational specialist using ReAct reasoning
535
+ - Use for: Mathematical calculations, data processing, logical operations
536
+ - Capabilities: Generates and executes Python code, handles complex computations, step-by-step problem solving
537
+ - When to use: Precise calculations, data manipulation, mathematical problem solving
538
 
539
+ IMPORTANT: Use tools strategically - only when their specific expertise is needed.
540
+ For simple questions, you can answer directly without using any tools.
541
+
542
+ CRITICAL: Your final answer must be EXACT and CONCISE as required by GAIA format:
543
+ - For numbers: provide only the number (e.g., "42" or "3.14")
544
+ - For strings: provide only the exact string (e.g., "Paris" or "Einstein")
545
+ - For lists: use comma separation (e.g., "apple, banana, orange")
546
+ - NO explanations, NO additional text, ONLY the precise answer
547
+ """,
548
  llm=proj_llm,
549
  tools=[analysis_tool, research_tool, code_tool],
550
+ max_steps=10,
551
  verbose = True,
552
  callback_manager=callback_manager,
553
+
554
  )
555
 
556
  async def format_gaia_answer(self, raw_response: str, original_question: str) -> str: