code: def add_cmdline_args(
      cls, parser: ParlaiParser, partial_opt: Optional[Opt] = None
  ) -> ParlaiParser:
      parser.add_argument(
          "--server",
          type=str,
          choices=SERVERS.keys(),
          default="default",
          help="Which search server to use",
      )
      parser.add_argument(
          "--raw-server",
          type=str,
          default=None,
          help="Specify to override the server choices with your own.",
      )
      parser.add_argument(
          "--n-docs",
          type=int,
          default=5,
          help="How many docs to retrieve",
      )
      parser.add_argument(
          "--intra-doc-delimiter",
          type=str,
          default="\n",
          help="How to delimit intra-document contents",
      )
      return parser
  
file_path: ParlAI/projects/bb3/agents/search_agent.py
imports: from typing import Any, Dict, List, Optional, Union
  from parlai.agents.rag.retrieve_api import SearchEngineRetriever, SearchEngineRetrieverMock
  from parlai.agents.rag.retrievers import Document
  from parlai.core.agents import Agent
  from parlai.core.opt import Opt
  from parlai.core.params import ParlaiParser
  from parlai.core.message import Message
label_desc: Use image node_id 1 for calling the SearchAgent obj's underlying member method code with example usage: obj.add_cmdline_args(cls, parser, partial_opt) and returns: parser