/ examples / di / InfiAgent-DABench / run_InfiAgent-DABench_single.py
run_InfiAgent-DABench_single.py
 1  import fire
 2  from DABench import DABench
 3  
 4  from metagpt.logs import logger
 5  from metagpt.roles.di.data_interpreter import DataInterpreter
 6  from metagpt.utils.recovery_util import save_history
 7  
 8  
 9  async def main(id=0):
10      """Evaluate one task"""
11      bench = DABench()
12      requirement = bench.generate_formatted_prompt(id)
13      di = DataInterpreter()
14      result = await di.run(requirement)
15      logger.info(result)
16      save_history(role=di)
17      _, is_correct = bench.eval(id, str(result))
18      logger.info(f"Prediction is {'correct' if is_correct else 'incorrect'}.")
19  
20  
21  if __name__ == "__main__":
22      fire.Fire(main)