def __init__(
      self,
      *,
      model: language_model.LanguageModel,
      queries: Sequence[str],
      question: str,
      pre_act_key: str,
      add_to_memory: bool = False,
      memory_tag: str = '',
      memory_component_name: str = (
          memory_component.DEFAULT_MEMORY_COMPONENT_NAME
      ),
      clock_now: Callable[[], datetime.datetime] | None = None,
      summarization_question: str | None = None,
      num_memories_to_retrieve: int = 25,
      logging_channel: logging.LoggingChannel = logging.NoOpLoggingChannel,
  ):
    """Initialize a QuestionOfQueryAssociatedMemories component.

    Args:
      model: a language model
      queries: strings to use as queries to the associative memory
      question: The question to ask the model of the retrieved memories. The
        question should be a format string with the following fields:
        - agent_name: the name of the agent
        - query: the query used to retrieve the memories
      pre_act_key: Prefix to add to the output of the component when called in
        `pre_act`.
      add_to_memory: Whether to add the answer to the memory.
      memory_tag: The tag to use when adding the answer to the memory.
      memory_component_name: The name of the memory component from which to
        retrieve related memories.
      clock_now: Function that returns the current time. If None, the current
        time will not be included in the question.
      summarization_question: if not None, the resulting state will be a one
        sentence summary, otherwise state it would be a concatenation of
        separate characteristics. The summary question should be a format string
        with the following fields:
        - agent_name: the name of the agent
        - results_str: the concatenation of the results of the queries.
      num_memories_to_retrieve: how many related memories to retrieve per query
      logging_channel: The channel to use for debug logging.
    """
    super().__init__(pre_act_key)
    self._model = model
    self._clock_now = clock_now
    self._memory_component_name = memory_component_name
    self._add_to_memory = add_to_memory
    self._memory_tag = memory_tag

    self._queries = queries
    self._summarization_question = summarization_question
    self._num_memories_to_retrieve = num_memories_to_retrieve

    self._question = question

    self._logging_channel = logging_channel
Initialize a QuestionOfQueryAssociatedMemories component.

    Args:
      model: a language model
      queries: strings to use as queries to the associative memory
      question: The question to ask the model of the retrieved memories. The
        question should be a format string with the following fields:
        - agent_name: the name of the agent
        - query: the query used to retrieve the memories
      pre_act_key: Prefix to add to the output of the component when called in
        `pre_act`.
      add_to_memory: Whether to add the answer to the memory.
      memory_tag: The tag to use when adding the answer to the memory.
      memory_component_name: The name of the memory component from which to
        retrieve related memories.
      clock_now: Function that returns the current time. If None, the current
        time will not be included in the question.
      summarization_question: if not None, the resulting state will be a one
        sentence summary, otherwise state it would be a concatenation of
        separate characteristics. The summary question should be a format string
        with the following fields:
        - agent_name: the name of the agent
        - results_str: the concatenation of the results of the queries.
      num_memories_to_retrieve: how many related memories to retrieve per query
      logging_channel: The channel to use for debug logging.
    
concordia/components/agent/deprecated/question_of_query_associated_memories.py