class_docstr: Container for keeping the content of one interaction between agents.
class_docstr_tok: ["Container","for","keeping","the","content","of","one","interaction","between","agents","."]
code: def get_action(self):
      if self._sender == APPRENTICE:
          return self._format_action(WIZARD)
  
      if self._sender == SEARCH_AGENT:
          return self._format_action(WIZARD)
  
      # Must be WIZARD
      k = "is_search_query"
      if k in self._message and self._message[k]:
          return self._format_action(SEARCH_AGENT)
      else:
          return self._format_action(APPRENTICE)
  
imports: from typing import Dict, Union
  import parlai.utils.logging
  from parlai.crowdsourcing.projects.wizard_of_internet.wizard_internet_blueprint import WIZARD_INTERNET_PARLAICHAT_BLUEPRINT
  from parlai.crowdsourcing.utils.analysis import AbstractResultsCompiler
  from mephisto.abstractions.blueprint import AgentState
label_desc: Use image node_id 3 for calling the ChatMessage obj's underlying member method code with example usage: obj.get_action() and returns: self, self, self, self