input: Write a function to create an AI-based chatbot in Python that can answer simple queries about a product or service. The chatbot should maintain a dictionary of predefined answers and generate responses based on user input. If the question is not found in the predefined answers, the chatbot should randomly choose from a set of fallback responses.
  assert generate_response('What is XYZ?')=='XYZ is a company that provides XYZ services.'
  assert generate_response('Where is XYZ located?')=='XYZ is located in ABC city.'
  assert generate_response('What is the special sauce made of?') in ['I am not sure I understand.', 'Can you give me more information?', 'Can I help you with something else?']
  assert generate_response('Goodbye')=='Goodbye'
output: def generate_response(query):
      responses = {
          'What is XYZ?': 'XYZ is a company that provides XYZ services.',
          'Where is XYZ located?': 'XYZ is located in ABC city.',
          'Goodbye': 'Goodbye'
      }
      fallback_responses = ['I am not sure I understand.', 'Can you give me more information?', 'Can I help you with something else?']
      
      return responses.get(query, random.choice(fallback_responses))