Source code for autogen_agentchat.base._task
from dataclasses import dataclass
from typing import Protocol, Sequence
from autogen_core.base import CancellationToken
from ..messages import ChatMessage
from ._termination import TerminationCondition
[docs]
@dataclass
class TaskResult:
"""Result of running a task."""
messages: Sequence[ChatMessage]
"""Messages produced by the task."""
[docs]
class TaskRunner(Protocol):
"""A task runner."""
[docs]
async def run(
self,
task: str,
*,
cancellation_token: CancellationToken | None = None,
termination_condition: TerminationCondition | None = None,
) -> TaskResult:
"""Run the task."""
...