File size: 457 Bytes
ad4c1f0
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
import concurrent.futures

from autogpt.agent.agent import Agent


def run_interaction_loop(agent: Agent, timeout: float | None):
    with concurrent.futures.ThreadPoolExecutor() as executor:
        future = executor.submit(agent.start_interaction_loop)
        try:
            result = future.result(timeout=timeout)
        except concurrent.futures.TimeoutError:
            assert False, f"The process took longer than {timeout} seconds to complete."