code: def test_tsp(human_input_mode="NEVER", max_consecutive_auto_reply=10):
      config_list = autogen.config_list_from_json(
          OAI_CONFIG_LIST,
          file_location=KEY_LOC,
          filter_dict={
              "model": [
                  "gpt-4",
                  "gpt4",
                  "gpt-4-32k",
                  "gpt-4-32k-0314",
                  "gpt-4-32k-v0314",
              ],
          },
      )
      hard_questions = [
          "What if we must go from node 1 to node 2?",
          "Can we double all distances?",
          "Can we add a new point to the graph? It's distance should be randomly between 0 - 5 to each of the existing points.",
      ]
  
      class TSPUserProxyAgent(UserProxyAgent):
          def __init__(self, *args, **kwargs):
              super().__init__(*args, **kwargs)
              with open(f"{here}/tsp_prompt.txt", "r") as f:
                  self._prompt = f.read()
  
          def generate_init_message(self, question) -> str:
              return self._prompt.format(question=question)
  
      # autogen.ChatCompletion.start_logging()
      assistant = AssistantAgent(
          "assistant",
          llm_config={"temperature": 0, "config_list": config_list},
      )
      user = TSPUserProxyAgent(
          "user",
          code_execution_config={"work_dir": here},
          human_input_mode=human_input_mode,
          max_consecutive_auto_reply=max_consecutive_auto_reply,
      )
      user.initiate_chat(assistant, question=hard_questions[2])
  
file_path: autogen/test/agentchat/test_assistant_agent.py
imports: import os
  import sys
  import pytest
  import autogen
  from autogen.agentchat import AssistantAgent, UserProxyAgent
  from conftest import skip_openai
label_desc: Use image node_id 4 for calling a global function with example usage: test_tsp(human_input_mode, max_consecutive_auto_reply) and returns: self