input: Write a python function to generate n-grams from a given text with a specified window size.
  assert generate_ngrams("The quick brown fox jumps over the lazy dog", 3) == Counter({'the quick brown': 1, 'quick brown fox': 1, 'brown fox jumps': 1, 'fox jumps over': 1, 'jumps over the': 1, 'over the lazy': 1, 'the lazy dog': 1})
  assert generate_ngrams("Hello world hello", 2) == Counter({'hello world': 1, 'world hello': 1})
  assert generate_ngrams("test test test", 1) == Counter({'test': 3})
output: def generate_ngrams(text, n):
      from collections import Counter
      
      words = text.lower().split()
      ngrams = [' '.join(words[i:i+n]) for i in range(len(words)-n+1)]
      
      return Counter(ngrams)