def __init__(
      self,
      agent_name: str,
      model: language_model.LanguageModel,
      clock_now: Callable[[], datetime.datetime],
      timeframe_delta_from: datetime.timedelta,
      timeframe_delta_until: datetime.timedelta,
      memory: associative_memory.AssociativeMemory,
      components: list[component.Component],
      component_name: str = 'Summary of observations',
      prompt: str | None = None,
      display_timeframe: bool = True,
      verbose: bool = False,
      log_colour='green',
  ):
    """Initializes the component.

    Args:
      agent_name: Name of the agent.
      model: Language model to summarise the observations.
      clock_now: Function that returns the current time.
      timeframe_delta_from: delta from the current moment to the begnning of the
        segment to summarise, e.g. 4h would summarise all observations that
        happened from 4h ago until clock_now minus timeframe_delta_until.
      timeframe_delta_until: delta from the current moment to the end of the
        segment to summarise.
      memory: Associative memory retrieve observations from.
      components: List of components to summarise.
      component_name: Name of the component.
      prompt: Language prompt for summarising memories and components.
      display_timeframe: Whether to display the time interval as text.
      verbose: Whether to print the observations.
      log_colour: Colour to print the log.
    """
    self._model = model
    self._agent_name = agent_name
    self._log_colour = log_colour
    self._name = component_name
    self._memory = memory
    self._timeframe_delta_from = timeframe_delta_from
    self._timeframe_delta_until = timeframe_delta_until
    self._clock_now = clock_now
    self._components = components
    self._state = ''
    self._display_timeframe = display_timeframe
    self._prompt = prompt or (
        'Summarize the observations above into one sentence '
        f'about {self._agent_name}.'
    )

    self._verbose = verbose
    self._history = []
Initializes the component.

    Args:
      agent_name: Name of the agent.
      model: Language model to summarise the observations.
      clock_now: Function that returns the current time.
      timeframe_delta_from: delta from the current moment to the begnning of the
        segment to summarise, e.g. 4h would summarise all observations that
        happened from 4h ago until clock_now minus timeframe_delta_until.
      timeframe_delta_until: delta from the current moment to the end of the
        segment to summarise.
      memory: Associative memory retrieve observations from.
      components: List of components to summarise.
      component_name: Name of the component.
      prompt: Language prompt for summarising memories and components.
      display_timeframe: Whether to display the time interval as text.
      verbose: Whether to print the observations.
      log_colour: Colour to print the log.
    
concordia/components/agent/deprecated/to_be_deprecated/observation.py