Source code for council.controllers.basic_controller
from typing import List
from council.chains import Chain
from council.contexts import AgentContext, ScoredChatMessage
from council.runners import Budget
from .controller_base import ControllerBase
from .execution_unit import ExecutionUnit
[docs]class BasicController(ControllerBase):
"""a basic controller that requests all chains to be executed and returns all results"""
[docs] def get_plan(self, context: AgentContext, chains: List[Chain], budget: Budget) -> List[ExecutionUnit]:
return [ExecutionUnit(chain, budget) for chain in chains]
[docs] def select_responses(self, context: AgentContext) -> List[ScoredChatMessage]:
return context.evaluationHistory[-1]